Below is the current Version Info resource script for op2ext.dll as an example.
Plus, extensions are not always updated on the same cycle as the game, so it's questionable to use the game package version for them.
To be clear here, I was just planning to update the product version to 1.3.0.7 and leave the file version whatever version that particular dll/exe was on in its release cycle. So the file version would represent the individual extension's release while the product version would represent its inclusion in the overall Outpost 2 download. Again though, I was just following what I thought was already halfway happening.
If we are wanting to not update the resources each release, what do we think of removing the 2 lines referring to product version from the Resource Script? This way, there would be not question about updating them in the future. Only problem is this would probably affect OllyDbg again on Outpost2.exe. Maybe we just leave Outpost2.exe alone and change the others. I can update the PublishingReadMe to reflect this.
Do we maintain notes on any of the dlls in Outpost 2 for OllyDbg, or is it just Outpost2.exe that we are concerned about?
1 VERSIONINFO
FILEVERSION 2,0,0,0
PRODUCTVERSION 1,3,0,7
FILEOS 0x40004
FILETYPE 0x2
{
BLOCK "StringFileInfo"
{
BLOCK "040904b0"
{
VALUE "CompanyName", "The Outpost Universe"
VALUE "FileDescription", "Extends Outpost 2 with new functionality"
VALUE "FileVersion", "2.0.0.0"
VALUE "InternalName", "op2ext.dll"
VALUE "LegalCopyright", "Copyright (C) 2017"
VALUE "OriginalFilename", "op2ext.dll"
VALUE "ProductName", "Outpost 2"
VALUE "ProductVersion", "1.3.0.7"
}
}
BLOCK "VarFileInfo"
{
VALUE "Translation", 0x0409 0x04B0
}
}
Minor point: To ease debugging with OllyDbg, perhaps upon release we should create a revision with the icon stripped. The change in file size invalidates the OllyDbg comments. The icon can be immediately re-added in a subsequent revision. I currently have a copy of the repo pegged at revision r915, which was the last update to the game download before the icon update in revision r1100.
Yeah, keeping OllyDbg relevant is important. I'm guessing we would need to push the old icon back into the resource in addition to removing the new icon to make sure everything lines up properly. Then make sure it compiles exactly the same way it did on the original file. Also, if I strip the ProductVersion from Outpost2.exe, I'm guessing this would cause the same problem as changing the icon did.
Is there an alternate solution that would allow us to account for embedded resource changes when loading OllyDbg?
Hooman, if you are comfortable with it, I will just notify you when I'm ready to push the final version of the game. Then you could mess with Outpost2.exe to get OllyDbg relevant, tag the code, then restore Outpost2 in the main branch. Then we can proced with tagging the actual release version. I'm not familiar enough with OllyDbg to trust myself in the matter without some help.
Thanks,
Brett