Modding your i25 Server

From OuroDev

Due to the nature of the source and data we received for i25, modding your server is a little more ad-hoc than with the Ouroboros V2 setup. That said, it is still possible, and this guide should give you the tools you need to be able to do so.

Pre-requisites


i25 Source code

Make sure that you download the "Neptune" branch

https://git.ourodev.com/score/SCoRE

i25 Binning setup

Make sure that you download the "Neptune" branch

https://git.ourodev.com/score/i25p2-bin-server

Procedure

This procedure assumes that you are already running with the VM3, or your own setup, and are relatively confident with managing and maintaining your server.

Building from source

After cloning the repository, make any modifications to the source that you require, build the following solutions first, note that you need to build ALL of the versions available for each, so for example Debug, Release, ReleaseTCG, ReleaseSSELTCG, etc:

3rdparty\cryptopp\cryptlib.sln

3rdparty\zlibsrc\zlibvc.sln

Utilities\StructParser\StructParser.sln

Then you can build all the binaries from these solutions:

MasterSolution\MasterSolution.sln

AuthServer\src\AuthServer\AuthServer.sln

You will need to make debug exes for the binning process, and release exes for your client and server.

Key point: You need to build this using Visual Studio 2008 edition.

Rename the debug mapserver.exe and cityfheroes.exe to mapserver_debug.exe and cityofheroes_debug.exe and copy them to the i25p2-bin-server\bin folder in your binning setup.

Copy the release exes to your server bin folder, and the cityofheroes.exe is also copied to your client download location.

Binning

After cloning the repository, copy the debug exes you have created over the ones in the setup i25p2-bin-server\bin folder. If you are not updating source and only working on data then you don't need to complete this step the setup you have will work fine.

Make any changes you want to the data files, and then run through the batch files:

1-delete-old-bins.bat

2-rebuild-server-bins.bat

3-rebuild-client-bins.bat

8-copy-product-catalog.bat

9-copy-binned-files.bat

If you are making quick updates for testing you can instead run:

6-update-server-bins.bat

7-update-client-bins.bat

8-copy-product-catalog.bat

9-copy-binned-files.bat

However, use this only for testing, the update is much quicker than the full rebuild, but better avoided on production systems. Once you are satisfied with your updates run a full re-binning.

Copy the contents of the binned folder (\bin & \server\bin) to your server data directly over writing those files already there.

Running templates

Copy the mapservertemplates.exe from either your source download in \SCoRE\bin, or from the binning setup in \i25p2-bin-server\bin to your server bin directory.

Open a command prompt on the server, cd to the directory that the mapservertemplates.exe is stored in and run

mapservertermplates.exe -productionmode -templates

Wait for that to finish running.

Piggs and patch

In your server browse to the patch directory, edit the makepigs.bat file and remove the text after version= so that it is only blank.

Once that is done, run the makepiggs.bat file and wait for it to finish. It will populate the patch directory with 23 piggs.

Copy these piggs to the server's piggs directory, also copy them to your client patch folder (eg \i26\)


You have now updated your server!