This repository is no longer in development. Please use Civilization II User Interface Additions by @FoxAhead instead.
The project modifies Civilization 2 Multiplyer Gold Edition to include additional features and fixes.
Only the unmodified Civilization 2 Multiplyer Gold Edition v1.3 US version is supported.
Extract all of the files into the folder where Civilization 2 Multiplyer Gold Edition is installed. Launch civ2patch.exe.
When running for the very first time, a configuration file civ2patch.ini will be created.
All of the fields in the Options section are feature toggles. To enable a feature, set the value to 1. To disable a feature, set the value to 0.
LogWhen enabled, error messages will be written to theciv2patch.logfile.MusicWhen enabled, the application will look in theMusicfolder and play MP3 or OGG tracks. The name of the files must be in the format ofTrack##.mp3orTrack##.ogg, where##is the 2 digits track number.MultiplayerWhen enabled, SDL will be used for networking instead of Winsock.FixCpuUsageWhen enabled, reduce CPU usage when the application is idle.Fix64BitCompatibilityWhen enabled, patch the application to run on 64-bit Windows.DisableCdCheckWhen enabled, allow the application to run without the game CD.DisableHostileAiWhen enabled, AI will not be unreasonably hostile to the player.SetRetirementYearWhen enabled, allow the retirement year to be modified.SetCombatAnimationFrameLengthWhen enabled, allow the combat animation speed to be modified.SetPopulationLimitWhen enabled, allow the population limit to be modified.SetGoldLimitWhen enabled, allow the gold limit to be modified.SetMapTilesLimitWhen enabled, allow the number of map tiles limit to be modified.
When the associated feature has been enabled, these fields allow the user to set the behaviour of the features.
RetirementYearThe year at which the game will force the user to retire. (Min:1, Max:9999)RetirementWarningYearThe year at which the game will warn the user of inevitable retirement. (Min:0, Max:RetirementYear - 1)MapTilesLimitThe maximum number of map tiles when generating a new map. (Min:10000, Max:32767)PopulationLimitThe maximum population in 10000. (Min:32000, Max:2147483647)GoldLimitThe maximum amount of gold. (Min:30000, Max:2147483647)
These fields should not be changed. Refer to the source code to see what they do.
PurgeMessagesIntervalThe time interval in milliseconds at which the Windows message queue is purged.MessageWaitTimeoutThe time to wait for user inputs when the application idles.CombatAnimationLengthReduce this number to speed up combat animation.ProcessTimeToSleepTimeRatioThe ratio between process time to sleep time. The lower the number, the less CPU cycles are used. However, low value may cause the game to run slowly.CpuSamplingIntervalThe time interval in milliseconds to recalculate the process time to sleep time ratio.
These fields configures the music player when the feature is enabled.
FrequencyThe audio sampling frequency.ChunkSizeThe audio buffer size in bytes.VolumeThe music volume.AlbumThe soundtrack to use. This determines the number of tracks the game will recognize. (0for MGE,1for Classic,2for Conflicts in Civilization,3for Fantastic Worlds)
These fields configures network connections when the feature is enabled.
ConnectionPortThe TCP port for connecting to the server/client. (Min:1024, Max:65535)BroadcastPortThe UDP port for broadcasting messages over LAN. (Min:1024, Max:65535)ConnectionTimeoutThe time in milliseconds to wait for connection before disconnecting. (Min:1000, Max:60000)
This project uses the following tools and libraries:
- MinGW (http://www.mingw.org)
- SDL 2.0 (https://www.libsdl.org)
- SDL_mixer 2.0 (https://www.libsdl.org/projects/SDL_mixer/)
Once all the software has been installed, run the Makefile to build the project.
mingw32-make