Patching the ACK player module

Chris H.'s Ultima / ACS-style game development system!

Moderators: Ice Cream Jonsey, joltcountry

rld
Posts: 223
Joined: Sun Jan 25, 2009 2:17 am
Location: Dallas, TX

Patching the ACK player module

Post by rld »

Since Chris released the source code for ACK, I had done a bit of poking around in it out of curiosity, but this was my first attempt to actually modify the code and make an experimental patch. I used the following procedure:

1) Copy the following files from the top level of the ACK distribution (the full version with launcher and DOSBox) to a new directory (we'll call this \patch for now):
o dosbox.exe
o dosbox.conf
o SDL.dll
o SDL_net.dll

2) In the new directory, modify the dosbox.conf file, changing the [autoexec] section at the end to:

Code: Select all

[autoexec]
# Lines in this section will be run at startup.
mount c .
c:
This will cause DOSBox to stay at the command prompt instead of immediately launching ACK when you run dosbox.exe.

3) Download the ACK distribution w/o launcher from:

http://www.80sgaming.org/ack/ACKv3.2-nolauncher.zip

and unpack its contents in a new directory underneath the one with your new copy of DOSBox (\patch\ack)

4) Download the ACK source distribution from:

http://www.80sgaming.org/ack/source.htm

and unpack its contents in another subdirectory (\patch\acksrc)

5) Modify the desired source files in your favorite plain text editor.

6) Launch DOSBox, type "cd acksrc", and then use the "make" batch file to rebuild the portion of the engine you have modified. On the currently available source release package, I get an error when building "make all", so at this point I am just sticking to the "make player" option to rebuild the game playing module only.

Image

Image

7) Once the compilation has completed, copy the newly generated files (anything ending in .EXE, and .OVR) into your \patch\ack directory, overwriting the original binaries from the distribution. (Note: I was copying the .TPU files as well for a while, but these are only needed at the compilation stage, it appears)

8) cd ..\ack, and run 'ack' to launch ACK with your changes.

9) Find out what sort of splendiferous bugs and crashes you have introduced with your unwise code editing.