See the full ChangeLog in the source for a comprehensive list of all changes.

Download links for older releases can be found in the download archive.

WHAT'S CHANGED SINCE 2.5.0-beta1[]

Highlights of this release are a new map generator, a basically complete Qt client, and a large number of bug fixes.

Server / General[]

Changes affecting players (supplied rulesets)[]

  • New map generation features ported from warserver:
  • Barbarian players no longer get a free Palace when they conquer a city. (This was a recent regression, only introduced in beta1.) GNA#22340
  • When a city is struck by plague, it now cannot grow again in the same turn. GNA#22803
  • When following orders into fogged territory, a unit will now abort its orders if it runs into an unexpected unit or city on its last step (rather than blindly attacking, etc). GNA#20618
  • When there are multiple possible transports for a unit to load onto, the server is cleverer about choosing one. Among other criteria, idle transports are preferred, as are those from which units can unload at any time. This preference order is now used in more circumstances. GNAPATCH#4982 GNAPATCH#5367
  • Numerous fixes to research in games with teams:
    • With team_pooled_research enabled:
      • Technology cost now takes into account effects from all players in the team; previously it was picking a random player for Novice AI science penalty, cost reduction from embassies in civ2civ3, etc. GNAPATCH#5098
      • Similarly, tech upkeep now takes into account all players in a team. GNAPATCH#5099 Notably, in the civ2civ3 ruleset, upkeep scales with the total number of cities in a team, not those of a random team member. GNA#22158
      • If a technology is lost, all team members share the effects (such as losing their government), and all clients can see that the tech is lost. GNA#21935
      • All clients are kept up to date with accurate progress of current research. GNAPATCH#5100 GNAPATCH#5185 GNA#22705
    • With team_pooled_research disabled: only one player per team was getting the free techs given at the start of the game (e.g., with the 'techlevel' setting). GNA#22522
  • Other fixes to tech loss:
    • There was a small chance of technology not being lost when it should have been. GNA#22576
    • The server's count of a player's technologies was not reduced. This could cause technology cost to be too high and have other bad effects. GNA#22579
    • Ruleset effects that survived the global loss of a technology (such as wonder obsoletion) did not survive a save/reload cycle. GNA#22909
  • Fixes to rulesets with root requirements in their technology tree, such as the experimental ruleset:
  • Tech upkeep cost was slightly larger than intended. GNA#22912
  • Fix numerous problems with visibility of unit movement and destruction:
    • Fix bugs that could leave a 'ghost' unit visible in clients, such as land units alone in the sea (GNA#22600):
      • If a foreign unit was briefly visible loading onto a transport.
      • If a barbarian unit reached the end of its life while on a transport.
    • Fix trouble when a city is transferred, particularly by diplomatic treaty. GNA#20705
    • Transported units or those in cities could fail to be revealed when entering an alliance. GNA#20726 GNA#22851
    • Fix some bugs and error messages related to visibility of foreign units loading and unloading from transports. GNAPATCH#4912
    • An assertion could fail when foreign transports moved out of sight. GNA#22852
    • Fix client error "Server wants us to remove unit" when witnessing the defeat of a cargo-carrying transport in a game with 'killstack' disabled, or in complicated alliance breakup situations. GNA#22721 GNA#22795
    • Fix some bugs related to visibility of units moved or killed as a result of other units' movement, for instance by a ruleset script; and show unit movement in more cases where units move into or out of visibility. GNA#22765 GNA#22853
    • Fix some cases where unit information was not sent correctly to global observers. GNA#22764 GNAPATCH#4973
  • Units were spuriously prevented from moving from one transport to another. GNA#22380
  • 'unitwaittime' now applies to exploding nuclear units in place as well as to regular attacks. GNA#22838
  • Investigating an empty city that was previously known to contain units mistakenly displayed the former units as still present/supported. GNA#22498
  • When the 'foggedborders' server option was enabled, border information was not included in map transfers between players. GNA#22497
  • Fix a server crash when paradropping. GNA#22391 GNA#22479
  • Fix a possible server crash when a diplomat is killed after bribing a unit. GNA#22762
  • Fix a possible assertion failure from autosettlers. GNA#22345
  • Fix some assertion failures when changing player (for instance in edit mode). GNA#19848
  • Fix bugs with taking AI players and entering/leaving AI or 'away' mode: GNA#22716 GNAPATCH#5046
    • Taking an AI player could leave the player with invalid tax rates.
    • Putting a player who'd previously been /away under full AI control could leave them with the conservative 'away' skill level rather than a proper AI skill level.
    • AI state was not set up and cleared correctly when changing '/away' mode. For the classic AI, this could lead to incorrect defense calculations.
    • 'autotoggle' and 'aitoggle' now work for barbarian players (as 'away' did before). GNA#22724
  • Minor fixes to civ2civ3 ruleset corner cases:
    • You can no longer sell your Aqueduct after building a Sewer System and still have your city grow. GNA#22804
    • Triremes starting their turn in coastal river cities missed out on the Lighthouse move bonus. GNA#22438
    • Barbarian players without a capital no longer suffer crippling corruption and waste. GNA#22330
    • Prevent Transport units from performing land terrain improvements while in cities. GNA#22417
    • Ensure that cold war and related effects survive destruction of Apollo Program and/or Manhattan Project. GNA#22805
    • Treat Solar Plants as redundant with the Hoover Dam. GNA#22434
  • Fixes to the multiplayer ruleset:
  • In the classic and experimental rulesets, close a loophole where a Lighthouse and Port Facility together could yield hardened sea units. (This would have required a very unusual game.) GNA#22081
  • Prevent diplomacy with barbarian players in the civ1 and civ2 rulesets (in civ1, it was possible to attempt treaty with pirates but not barbarians). GNA#22727 GNA#22728
  • Map generation fixes:
    • When map generation leads to a change in settings, announce the fallback settings afterwards. If multiple attempts are required to generate a map, reset these settings between each attempt. GNAPATCH#5180
    • The 'tilesperplayer' setting is now enacted more accurately. GNAPATCH#5187
    • Remove spurious assertion failures about MAP_MAX_LINEAR_SIZE when generating large maps. GNA#19429 GNA#22640
  • For the purposes of credit in the rank log, any user detaching from a player (even an observer) was resetting the username used for ranking. For now the ranking rules have been reverted to those used up until 2.3.2. GNA#22458
  • Fixes to voting:
    • Do not call votes which will immediately pass (for instance if a user is alone on a server). GNAPATCH#5181
    • Fix incorrect vote information displayed in a client which connects while a vote is in progress. GNA#22566
  • The 'surrender' command now does additional sanity checks. GNA#22622
  • Fix display of team names. GNA#22394
  • Silence some warnings when loading games saved with previous versions:
    • Spurious "City size and number of citizens does not match" warnings from 2.4 default ruleset games. GNA#22360
    • "Trying to put <number> into 8 bits" warnings from pre-2.3 savegames. GNA#22364

Changes affecting other rulesets / modders[]

  • When upgrading a unit which has the NoVeteran flag (cannot gain veteran levels through experience), any existing veteran levels are no longer discarded. GNA#22425
  • The server now handles the case of a city being destroyed while being transferred (which is most likely to happen as a result of a Lua script). GNA#18191
  • If team_pooled_research is enabled, the tech_researched script signal is now sent to all players on a team, not just one of them. GNA#22474 GNAPATCH#5430 GNA#22782
  • Lua scripts can determine whether two players share research with the new (Player):shares_research() function. GNAPATCH#5408
  • Calling (Tile):has_base() in Lua with a nonexistent base name could crash the server. GNA#22341
  • Clients were not always kept up to date after a Lua script called (Tile):set_label(). GNA#19962
  • Extra sanity checking when loading rulesets. GNAPATCH#4972
  • Apply patch 2 to the included Lua 5.2.3. GNAPATCH#5307

Changes affecting server operators[]

  • On Unix, the server could fail to start again shortly after quitting, dying with "bind failed: Address already in use". This was a regression from 2.4. GNA#22702
  • Comments are now only accepted at the start of a server command line, allowing a '#' character to be entered in commands. GNA#16864
  • Servers built with support for multiple database backends could only use one of them. GNA#20723
  • The event cache can now store much more history. GNA#18742
  • Some of the settings in server scripts written by the '/write' command did not take effect, because the 'rulesetdir' command at the end was resetting settings set earlier in the script. GNA#22447
  • When the server was in edit mode, detached clients could receive unwanted packets and emit warnings. GNA#21468
  • Creating a player midgame (with /create or Lua script) didn't initialize city style and gender correctly. GNA#22832
  • The /create command now validates the AI type argument better. GNA#22697
  • When built without readline support, the server could stop accepting input after an empty line. GNA#18254
  • More robustness against loading invalid savegames. GNA#22523 GNA#21327
  • Send more information to metaserver: nation flag tag (GNAPATCH#5199) and ruleset name (GNAPATCH#5229).



  • The AI can now take into account the defense value of existing bases when picking a site for a new city. GNA#22079
  • The AI now counts the pillaging of any fortress it owns against the responsible player, even if that caused it to lose the territory on which the fortress stood. GNA#22445
  • The AI was undervaluing units defined as good defenders in the ruleset, and overvaluing 'OK' defenders. GNA#22617
  • The AI was undervaluing cities in various ways for the purpose of diplomatic treaties. GNA#22436
  • The AI now considers the effect of the 'diplcost' setting when evaluating the value of a gold transfer clause in a treaty. GNAPATCH#5399
  • The AI's evaluation of improvement benefits was broken in the presence of effect clauses with zero value in the ruleset. (Should not affect most rulesets, but may sometimes occur when testing a new ruleset.) GNA#22363
  • Some fixes to the AI's evaluation of benefits in rulesets using negated requirements. Does not affect the supplied rulesets. GNA#22399
  • Fix some possible crashes with the threaded AI. GNA#22344 GNAPATCH#5328
  • Allow threaded AI to be built in without classic AI. GNA#22529


  • The Qt client is now substantially complete, with many features added since beta1.
  • The Windows Gtk client is built against a different Gtk version, fixing major problems in East Asian locales, including inability to use the chatline and other text boxes, and failure to display the online help. GNA#21038 GNA#22607
  • Fix a longstanding bug in the Gtk client that could make it impossible to select a new government. GNA#18764
  • The client now supports loading a save file from the command line directly, with the --file command line option. GNAPATCH#3180
  • The 'Explode Nuclear' command is now more careful; previously, if the nuclear unit was unable to reach the specified destination (or move at all), it would explode regardless (this could happen due to 'unitwaittime', due to another bug). Also, the command now supports setting waypoints. GNA#21934 GNA#22624 GNA#22722
  • Various fixes to client goto. (Some of these may resolve a client crash observed on Windows: GNA#21774.)
  • Fix client error messages when manipulating units with a zero move rate. GNA#22571
  • Some fixes to spy and caravan action dialogs:
  • Fix a random client crash or error message after selecting 'Connect to Network Game'. GNA#22449 GNA#22316
  • Fix a cause of the client starting a server which it then could not connect to. GNA#22463
  • Fix error messages and possible instability when the city governor is working on a city that has been destroyed. GNA#16438
  • The client could report an incorrect ping time when the real time was not yet known. GNAPATCH#5349 GNA#22761
  • Fix some graphical glitches when moving units. GNA#19946 GNA#22770
  • Fix an error message when observing a player who is building a spaceship. GNA#22933
  • Map editor fixes and improvements:
    • Make it possible to select a nation for barbarian players. GNA#22741 Prevent setting normal players to barbarian and other unsuitable nations. GNA#22742
    • Players' research progress can now be edited. GNA#22840
    • Fix bugs in tile copy and paste:
      • Tiles were pasted in completely the wrong place. GNA#21655
      • Copying units could cause assertion failures. GNA#22558
      • The client could remember possibly-invalid tiles from one game to the next. GNA#22553
  • (Gtk) With the 'Help' box checked in the science dialog, technology help would pop up randomly at turn end and other times. GNA#19882
  • (Gtk) The apostrophe key now focuses the chatline in pregame (as it already did during play). GNA#22429 GNA#22453
  • (Gtk) Fix an assertion failure on quit after opening the Lua console. GNA#22431
  • (Gtk3) Clicking on specialists in the city dialog did the wrong thing. GNA#22366
  • (Gtk3) Fix a bug causing the chat window to be minimised after reconnecting, and assertion failures. GNA#21639 GNA#22673
  • (Gtk3) Various display issues:
  • (SDL) The SDL client now supports changing nation sets. GNAPATCH#4351
  • (SDL) Fix client crash when attempting industrial sabotage of a city with no buildings. GNA#22495
  • (SDL) Don't prevent bases from being built on city center tiles in rulesets which allow this. GNA#22509
  • (SDL) Fix incorrect background color on some dialogs. GNA#22511

Tilesets / Art[]

  • The Cimpletoon tileset now includes graphics for the Migrant unit in the civ2civ3 ruleset. GNA#20029
  • The maglev graphics in the Amplio2 and Cimpletoon rulesets were never displayed. GNA#22371
  • Enable display of mines on water in all supplied tilesets, to support modpacks with different mining rules from the supplied rulesets. GNA#22424
  • Added a sound effect for an illegal server command to the standard soundset. GNAPATCH#5232

Help / Documentation[]


  • Updated translations:
    • Complete translations: French.
    • Incomplete translations: Polish (99.9% core, 100% nations), Catalan (99.5% core, 100% nations), British English (98.4% core, 100% nations), Finnish (89% core, 87% nations), Scottish Gaelic (88% core, 84% nations), German (88% core, 84% nations).


See NEWS for older lists of changes.