Greetings
I have been attempting to make a game I play portable using the PortableApps Launcher Generator and this website's documentation. The only thing I really need to do to make the game portable is to redirect some registry accesses.
I eventually managed to create a launcher which I thought was what I needed. Unfortunately, I have been having problems running the game and I have narrowed them down to the initial registry settings. Basically, when the game is installed, the installer creates some registry entries which have to be present for the game to run properly.
I have seen that some of the portable apps I have looked at have registry keys stored in the App/DefaultData/Settings folder that are presumably integrated into the Data/Settings folder's registry but I couldn't find anything in the documentation concerning this. I attempted to create a registry file in the App/DefaultData/Settings folder that looked the same as how other portable apps had it but the keys from that file are not being stored in the Data/Settings folder's registry file.
This is the contents of the App/DefaultData/Settings registry file:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Westwood\Emperor]
"Name"="Emperor"
"InstallPath"="C:\\Westwood\\Emperor\\Emperor.EXE"
"FolderPath"="C:\\Users\\Admin\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Westwood\\Emperor - Battle For Dune"
"HTMLPath"="C:\\Westwood\\Emperor\\Data\\HTML"
"SKU"=dword:00001f00
"Version"=dword:00010009
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Westwood\Emperor\URL]
"Ladder"="http://battleclans.westwood.com/cgi-bin/cgiclient?rosetta&request=do_ladder&LANGCODE=0&SKU=7936&embedded=1"
"LadderX"="http://battleclans.westwood.com/cgi-bin/cgiclient?rosetta&request=do_ladder&LANGCODE=0&SKU=7936"
"NetStatus"="http://battleclans.westwood.com/cgi-bin/cgiclient?rosetta&request=do_netstatus&LANGCODE=0&SKU=7936&embedded=1"
"NetStatusX"="http://battleclans.westwood.com/cgi-bin/cgiclient?rosetta&request=do_netstatus&LANGCODE=0&SKU=7936"
"Signup"="http://games2.westwood.com/cgi-bin/cgiclient?register&request=expand_template&Template=newreg_menu.html&LANGCODE=0&embedded=1&SKU=7936"
"SignupX"="http://games2.westwood.com/cgi-bin/cgiclient?register&request=expand_template&Template=newreg_menu.html&LANGCODE=0"
"BattleClans"="http://battleclans.westwood.com/cgi-bin/cgiclient?dunesquad&request=expand_template&Template=index.html&SKU=7936&LANGCODE=0&embedded=1"
"BattleClansX"="http://battleclans.westwood.com/cgi-bin/cgiclient?dunesquad&request=expand_template&Template=index.html&SKU=7936&LANGCODE=0"
"News"="http://battleclans.westwood.com/cgi-bin/cgiclient?rosetta&request=do_news&LANGCODE=0&SKU=7936&embedded=1"
"NewsX"="http://battleclans.westwood.com/cgi-bin/cgiclient?rosetta&request=do_news&LANGCODE=0&SKU=7936"
"Insider"="http://games2.westwood.com/cgi-bin/cgiclient?register_insider&request=expand_template&Template=dune_insider_login.html&LANGCODE=0"
"InsiderX"="http://games2.westwood.com/cgi-bin/cgiclient?register_insider&request=expand_template&Template=dune_insider_login.html&LANGCODE=0"
This is the contents of the Data/Settings registry file after opening the game's Portable Apps launcher:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Westwood\Emperor]
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Westwood\Emperor\Options]
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Westwood\Emperor\Options\Game]
"AutoSaveName"="AutoSave"
"GameSpeed"="6"
"Insider"=""
"IntroPlayed"="0"
"MouseSpeed"="100"
"ScrollRate"="5"
"ShowTargetLines"="1"
"Tooltips"="1"
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Westwood\Emperor\Options\Graphics]
"GraphicsLOD"="0"
"ColorDepth"="16"
"Shadows"="0"
"ModelLOD"="0"
"TextureLOD"="0"
"TerrainLOD"="0"
"EffectLOD"="0"
"ScreenWidth"="640"
"ScreenHeight"="480"
"MultiTexture"="1"
"HardwareTL"="1"
"AltDevice"="0"
"ShadowQuality"="0"
"LimitFrameRate"="0"
"LimitTo16BitTex"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Westwood\Emperor\Options\Movies]
"MovieListCount"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Westwood\Emperor\Options\Multiplayer]
"AutoLoginChoice"="NoAutoRadioButton"
"FilterLanguage"="1"
"Persona"=" - - "
"Server"=" - - "
"House"="0"
"SubHouse1"="3"
"SubHouse2"="5"
"HasSetQM"="0"
"LastLoginNickname"=""
"ServerListCount"="0"
"Locale"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Westwood\Emperor\Options\Network]
"SocketNumber"="0"
"DestinationNetwork"="0"
"NetworkCard"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Westwood\Emperor\Options\Sound]
"Sound"="1"
"MusicVolume"="45"
"SoundVolume"="80"
"VoiceVolume"="80"
As you can see, the registry keys from the DefaultData registry file are not being saved into the Data registry file.
If it helps, here are, I think, the relevant entries in my Launcher's INI file:
[Activate]
Registry=true
[RegistryKeys]
EmpBfD=HKLM\SOFTWARE\Wow6432Node\Westwood\Emperor
[RegistryValueWrite]
HKLM\SOFTWARE\Wow6432Node\Westwood\Emperor\InstallPath=REG_SZ:%PAL:AppDir%\Emperor\Emperor.EXE
HKLM\SOFTWARE\Wow6432Node\Westwood\Emperor\FolderPath=REG_SZ:%PAL:AppDir%\Start Menu\Westwood\Emperor - Battle For Dune
HKLM\SOFTWARE\Wow6432Node\Westwood\Emperor\HTMLPath=REG_SZ:%PAL:AppDir%\Emperor\Data\HTML
On a side note, I have three registry keys in my Launcher INI that are supposed to be edited every time the launcher is run. I don't, however, see these keys being stored in the Data folder's registry file. Is this supposed to be happening or is this another problem that needs to be fixed?
Help will be greatly appreciated.