Outpost Universe Forums

Outpost Series Games => Outpost 2 Divided Destiny => Topic started by: douglasrac on October 17, 2015, 02:54:54 PM

Title: Anyway I could use cheats for single player?
Post by: douglasrac on October 17, 2015, 02:54:54 PM
Just wanna have fun in a different way.
Title: Re: Anyway I could use cheats for single player?
Post by: Highlander on October 18, 2015, 12:54:03 PM
You will need the original game for it :)
Title: Re: Anyway I could use cheats for single player?
Post by: Sirbomber on October 18, 2015, 01:04:51 PM
The official cheats have all been disabled, but those are limited in their scope anyways so not sure how much "fun" you could actually have with them.  There are a few trainers people have made over the years but they're not centrally located so you'll have to dig through old forum posts if you want them.

Alternatively, why not just make a colony game where you start with everything so you can power-trip against a weak AI?
Title: Re: Anyway I could use cheats for single player?
Post by: douglasrac on October 18, 2015, 01:29:49 PM
How do I make a colony game?
Title: Re: Anyway I could use cheats for single player?
Post by: leeor_net on October 18, 2015, 07:06:29 PM
It's not terribly simple. It requires using the map editor to build the map itself and then building a DLL file to go along with it.

Me, Hooman and Leviathan are working on a solution to make this much less painful. May be a bit of time before it's as simple as launching a map editor, doing your thing then hitting the play button.

However, there are some decent posts about how to develop your own maps if you're interested and are at least somewhat familiar with C++.
Title: Re: Anyway I could use cheats for single player?
Post by: Leviathan on October 24, 2015, 08:27:00 PM
Personally I think we should maybe release/provide a exe with the cheats enabled if people want to use them for single player etc. No worry about trying to use it in multilayer, just set the exe to a older version and the game wont start with the other player in multilayer.

Our exe contains various improvements over the CD exe so its better if we could provide one which is CD exe + patchs but missing cheats removal..

Either way I don't think there is a huge call for it? But more content/ways to play the game is good.

As for new colony games with lots of stuff already placed (like a sandbox), great idea!
Title: Re: Anyway I could use cheats for single player?
Post by: leeor_net on October 26, 2015, 03:09:42 PM
Could do that and then have the installer create several links, e.g., Outpost 2 and Outpost 2 Cheats Enabled, etc.
Title: Re: Anyway I could use cheats for single player?
Post by: Leviathan on October 26, 2015, 05:00:08 PM
That's a even better idea, include it in the game download so no other download/config required by the end-user :)

Only problem is you have to switch the exe I believe.. so you would need a simple launcher but that's not too difficult to do.
Title: Re: Anyway I could use cheats for single player?
Post by: Hooman on October 29, 2015, 02:09:32 AM
I wouldn't mind having that included in the download. The checksum, if it hasn't been disabled, should prevent people from joining multiplayer games, unless everyone is using the same version. Everyone would have to agree to use the cheat enabled version to cheat in multiplayer, which is a valid thing for people to want to do.

I think it's a one byte change. The text processing code called a function in the special hand crafted assembly segment (it was named differently than the rest) of the executable that did the cheat processing. The first instruction of that function was changed to RET, basically gutting the function. I had a text file somewhere that detailed the byte changes for the various patches. Not sure where it went, but this change would be easy to undo without it. Both the original EXE and current EXE are in SVN, so it'd be easy enough to load up an old EXE and see what byte used to be at that address. The function in question had a labelled name in OllyDbg. I don't remember the exact name off the top of my head, but it was quite obvious. If the labels are sorted by address, and someone scanned down the list to the address of the segment with the different naming scheme, the function name would pop out pretty quick.

Just checked into this quickly. Adding details for reference, for whenever someone takes this up:
In the DSEG segment, there is a function CheckChatForCheatCode at address 0x58642A.
The original first byte was 0x55 which corresponds to the instruction PUSH EBP.