installer?

How would i go about creating an installer for my game so that when installed, it automatically creates directories and files needed for saving, loading and storage etc?

http://installforge.net/
http://www.installsimple.com
http://www.sminstall.com/

^^

If you want to go deeper, you can use NSIS.NSIS is script-based windows installer and allows you to create the logic to handle even the most complex installation tasks. I’m using it for my game and it meets every specific need I may have.

I haven’t used NSIS yet but there is a portable app for it… Here is the link to it. Here I like portable apps cause I can work on most think almost any were. This is very helpful to me as I go to a high school and I don’t have admin rights to install things.

Here is the NSIS script for Krum Demo(just replace the title/author and add all your project files instead of mine and compile with NSIS):
You can customize installer icon,installer theme,add custom image in the installer window, specify install directory, ask for permission to install prerequisites like .NET, show license text for your game, add password protection and much more.

!define APP_NAME "Krum Demo"
!define COMP_NAME "by Haidme"
!define WEB_SITE "http://www.krum-game.com"
!define VERSION "01.02.00.00"
!define COPYRIGHT "Haidme  © 2015"
!define DESCRIPTION "Application"
!define LICENSE_TXT "C:\BlenderTools\KrumDEMO\system\Game-License.txt"
!define INSTALLER_NAME "C:\BlenderTools\KrumDemoInstaller\KrumDemoSetup.exe"
!define MAIN_APP_EXE "launcherIt.exe"
!define INSTALL_TYPE "SetShellVarContext all"
!define REG_ROOT "HKCU"
!define REG_APP_PATH "Software\Microsoft\Windows\CurrentVersion\App Paths\system\${MAIN_APP_EXE}"
!define UNINSTALL_PATH "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APP_NAME}"


!define REG_START_MENU "Start Menu Folder"


var SM_Folder


!include "MUI.nsh"
!include RemoveFilesAndSubDirs.nsh
######################################################################


VIProductVersion  "${VERSION}"
VIAddVersionKey "ProductName"  "${APP_NAME}"
VIAddVersionKey "CompanyName"  "${COMP_NAME}"
VIAddVersionKey "LegalCopyright"  "${COPYRIGHT}"
VIAddVersionKey "FileDescription"  "${DESCRIPTION}"
VIAddVersionKey "FileVersion"  "${VERSION}"


######################################################################
!define MUI_ICON "C:\BlenderTools\KrumDEMO\krum.ico"
!define MUI_UNICON "C:\BlenderTools\KrumDEMO\krum.ico"


SetCompressor ZLIB
Name "${APP_NAME}"
Caption "${APP_NAME}"
OutFile "${INSTALLER_NAME}"
#BrandingText "${APP_NAME}"
BrandingText /TRIMRIGHT "HA Studios."
Icon "C:\BlenderTools\KrumDEMO\krum.ico"
CRCCheck force
XPStyle on
RequestExecutionLevel admin
InstallDirRegKey "${REG_ROOT}" "${REG_APP_PATH}" ""
#InstallDir "$PROGRAMFILES\Krum Demo"
InstallDir "C:\Games\Krum Demo"


######################################################################


!define MUI_ABORTWARNING
!define MUI_UNABORTWARNING


!insertmacro MUI_PAGE_WELCOME


!ifdef LICENSE_TXT
!insertmacro MUI_PAGE_LICENSE "${LICENSE_TXT}"
!endif


!insertmacro MUI_PAGE_DIRECTORY


!ifdef REG_START_MENU
!define MUI_STARTMENUPAGE_NODISABLE
!define MUI_STARTMENUPAGE_DEFAULTFOLDER "Krum Demo"
!define MUI_STARTMENUPAGE_REGISTRY_ROOT "${REG_ROOT}"
!define MUI_STARTMENUPAGE_REGISTRY_KEY "${UNINSTALL_PATH}"
!define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "${REG_START_MENU}"
!insertmacro MUI_PAGE_STARTMENU Application $SM_Folder
!endif


!insertmacro MUI_PAGE_INSTFILES


!define MUI_FINISHPAGE_RUN "$INSTDIR\system\${MAIN_APP_EXE}"
!insertmacro MUI_PAGE_FINISH


!insertmacro MUI_UNPAGE_CONFIRM


!insertmacro MUI_UNPAGE_INSTFILES


!insertmacro MUI_UNPAGE_FINISH


!insertmacro MUI_LANGUAGE "English"


######################################################################


Section -MainProgram
${INSTALL_TYPE}
SetOverwrite ifnewer
SetOutPath "$INSTDIR"
#File /r "c:\MyProject\MyApp\*" #THIS INCLUDES ALL SUBFOLDERS
File "C:\BlenderTools\KrumDEMO\system\launcherIt.exe"
File "C:\BlenderTools\KrumDEMO\config.cfg"
File "C:\BlenderTools\KrumDEMO\krum.ico"

###### Add all project files like this ############

SetOutPath "$INSTDIR\_data\scripts"
File "C:\BlenderTools\KrumDEMO\_data\scripts\2dFilters.py"

############End Adding project files ####################


SectionEnd


######### creating icon #########################################


Section -Icons_Reg
SetOutPath "$INSTDIR\system"
WriteUninstaller "$INSTDIR\uninstall.exe"


######### creating directories #########################################


!ifdef REG_START_MENU
!insertmacro MUI_STARTMENU_WRITE_BEGIN Application
CreateDirectory "$SMPROGRAMS\$SM_Folder"
CreateShortCut "$SMPROGRAMS\$SM_Folder\${APP_NAME}.lnk" "$INSTDIR\system\${MAIN_APP_EXE}"
CreateShortCut "$DESKTOP\${APP_NAME}.lnk" "$INSTDIR\system\${MAIN_APP_EXE}" "" "$INSTDIR\krum.ico"
CreateShortCut "$SMPROGRAMS\$SM_Folder\Uninstall ${APP_NAME}.lnk" "$INSTDIR\uninstall.exe"


!ifdef WEB_SITE
WriteIniStr "$INSTDIR\${APP_NAME} website.url" "InternetShortcut" "URL" "${WEB_SITE}"
CreateShortCut "$SMPROGRAMS\$SM_Folder\${APP_NAME} Website.lnk" "$INSTDIR\${APP_NAME} website.url"
!endif
!insertmacro MUI_STARTMENU_WRITE_END
!endif


!ifndef REG_START_MENU
CreateDirectory "$SMPROGRAMS\Krum Demo"
CreateShortCut "$SMPROGRAMS\Krum Demo\${APP_NAME}.lnk" "$INSTDIR\system\${MAIN_APP_EXE}"
CreateShortCut "$DESKTOP\${APP_NAME}.lnk" "$INSTDIR\system\${MAIN_APP_EXE}" "" "$INSTDIR\krum.ico"
CreateShortCut "$SMPROGRAMS\Krum Demo\Uninstall ${APP_NAME}.lnk" "$INSTDIR\uninstall.exe"


!ifdef WEB_SITE
WriteIniStr "$INSTDIR\${APP_NAME} website.url" "InternetShortcut" "URL" "${WEB_SITE}"
CreateShortCut "$SMPROGRAMS\Krum Demo\${APP_NAME} Website.lnk" "$INSTDIR\${APP_NAME} website.url"
!endif
!endif


WriteRegStr ${REG_ROOT} "${REG_APP_PATH}" "" "$INSTDIR\system\${MAIN_APP_EXE}"
WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}"  "DisplayName" "${APP_NAME}"
WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}"  "UninstallString" "$INSTDIR\uninstall.exe"
WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}"  "DisplayIcon" "$INSTDIR\system\${MAIN_APP_EXE}"
WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}"  "DisplayVersion" "${VERSION}"
WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}"  "Publisher" "${COMP_NAME}"


!ifdef WEB_SITE
WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}"  "URLInfoAbout" "${WEB_SITE}"
!endif
SectionEnd


####### Prerequisites window asks the user to install Yes/NO #####################
Section -Prerequisites
  SetOutPath $INSTDIR\Prerequisites
  MessageBox MB_YESNO "Python 2.6 is required to run the game properly. Install Python 2.6 ?" /SD IDYES IDNO endPython26
    ExecWait '"msiexec" /i "$INSTDIR\Prerequisites\python-2.6.2.msi"'
    Goto endPython26
  endPython26:
SectionEnd
##################################################################################################


Section Uninstall
${INSTALL_TYPE}
!insertmacro RemoveFilesAndSubDirs "$INSTDIR"






!ifdef REG_START_MENU
!insertmacro MUI_STARTMENU_GETFOLDER "Application" $SM_Folder
Delete "$SMPROGRAMS\$SM_Folder\${APP_NAME}.lnk"
Delete "$SMPROGRAMS\$SM_Folder\Uninstall ${APP_NAME}.lnk"
!ifdef WEB_SITE
Delete "$SMPROGRAMS\$SM_Folder\${APP_NAME} Website.lnk"
!endif
Delete "$DESKTOP\${APP_NAME}.lnk"


RmDir "$SMPROGRAMS\$SM_Folder"
!endif


!ifndef REG_START_MENU
Delete "$SMPROGRAMS\Krum Demo\${APP_NAME}.lnk"
Delete "$SMPROGRAMS\Krum Demo\Uninstall ${APP_NAME}.lnk"
!ifdef WEB_SITE
Delete "$SMPROGRAMS\Krum Demo\${APP_NAME} Website.lnk"
!endif
Delete "$DESKTOP\${APP_NAME}.lnk"


RmDir "$SMPROGRAMS\Krum Demo"
!endif


DeleteRegKey ${REG_ROOT} "${REG_APP_PATH}"
DeleteRegKey ${REG_ROOT} "${UNINSTALL_PATH}"


RmDir "$INSTDIR"
SectionEnd


######################################################################



Thank you so much for all the help, i really appreciate it!

you can also use inno setup

In debian based Linux distros(Ubuntu, Mint, Debian) it is quite easy. You just have to make a folder directory in which inside everything looks like in global directories(for example, make a folder called MyGame and folders /usr/games/mygame/all_the_game_data_is_here and(this only for Ubuntu, AFAIK and /DEBIAN folder is required here with .control file and also(optional) some others) /usr/share/applications/mygame_dash_executer.desktop and than you jsut execute dpkg-deb --build /path/to/the/folder/where/the/folder/you/made/is

And this is how basic Debian packages are made.