Freeciv
(Updated (second only) Tilesets link to point to Tileset Downloads)
No edit summary
Tag: Visual edit
(40 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
{{FAQ languages|This page in other languages:}}
 
{{FAQ languages|This page in other languages:}}
:*''Note: This FAQ is continuously updated. For a version that is frozen for version 2.0 and earlier, see [[FAQ 2.0]].''
+
:*''Note: This FAQ is continuously updated. For a version that is frozen for version 2.0 and earlier, see [[FAQ 2.0]]. For version 2.5, see [[FAQ 2.5]]. For upcoming 3.0, see [[FAQ 3.0]]''
== Gameplay ==
+
== Gameplay ==
  +
  +
=== What do I need to play, where can I go to play? ===
  +
You will need to [http://www.freeciv.org/download.html download] then [[install]] free software.
   
 
=== OK, so I installed Freeciv. How do I play? ===
 
=== OK, so I installed Freeciv. How do I play? ===
   
Freeciv is a client/server system. But in most cases you don't have to worry about this; the server is run automatically for you when you start a new game. So unless you're using one of the older Freeciv client programs all you have to do is run the client. Do this by double-clicking on the <code>freeciv-gtk3</code> executable program or by typing <code>freeciv-gtk3</code> in a [[terminal]] (''in the case of the gtk3 client'').
+
Start the client. Depending on your system, you might choose it from a menu, double-click on the <code>freeciv-gtk3</code> executable program, or type <code>freeciv-gtk3</code> in a [[terminal]] (to start the default "gtk3" client).
  +
 
Once the client starts, to begin a single-player game, select {{kbd|Start new game}}. Now edit your game settings (the defaults should be fine for a beginner-level single-player game) and press the {{kbd|Start}} button.
   
  +
(Freeciv is a client/server system. But in most cases you don't have to worry about this; the client starts a server automatically for you when you start a new game.)
Once the client starts, select {{kbd|start new game}}. Now edit your game settings (the defaults should be fine for a beginner-level single-player game) and press the {{kbd|start}} button.
 
   
 
Once the game is started you can find information in its {{grey|Help}} menu. If you've never played a Civilization-style game before you may want to look at the help on '''Strategy and Tactics'''.
 
Once the game is started you can find information in its {{grey|Help}} menu. If you've never played a Civilization-style game before you may want to look at the help on '''Strategy and Tactics'''.
Line 17: Line 22:
 
=== How do I play multiplayer? ===
 
=== How do I play multiplayer? ===
   
You can either join a network game run by someone else, or host your own.
+
You can either join a network game run by someone else, host your own, or visit a web-server such as ''[http://www.freecivweb.org freecivweb.org]''.
   
To join a network game, choose {{kbd|Connect to Network Game}} and then {{kbd|Internet Metaserver}}. A list of active servers should come up; double-click one to join it.
+
To join a network game, choose {{kbd|Connect to Network Game}} and then {{kbd|Internet Metaserver}}. A list of active servers should come up; double-click one to join it. (The Freeciv project does not currently run any game servers, so any servers you find are likely to be run by third parties who have decided to advertise them.)
   
 
You can also choose to directly connect to a specific server (including ones not on the metaserver list), provided you know the [[IP]] address and [[port]] of the server you're connecting to. This server will then show up under '''Local Area Network'''.
 
You can also choose to directly connect to a specific server (including ones not on the metaserver list), provided you know the [[IP]] address and [[port]] of the server you're connecting to. This server will then show up under '''Local Area Network'''.
Line 36: Line 41:
 
The [[chatline]] is located at the bottom of the window. Sometimes you have to activate a {{grey|Chat}} tab to see it.
 
The [[chatline]] is located at the bottom of the window. Sometimes you have to activate a {{grey|Chat}} tab to see it.
   
In '''SDL''' Freeciv you have to press {{kbd|Tab}} to access the chatline.
+
In the '''Gtk''' client, a shortcut to reach the chatline is the apostrophe ({{kbd|'}}) key. In the '''SDL''' client you have to press {{kbd|Tab}} to access the chatline.
   
 
The chatline can be used for normal chatting, or for issuing [[Server commands|server commands]] by typing a forward-slash '/' followed by the server command.
 
The chatline can be used for normal chatting, or for issuing [[Server commands|server commands]] by typing a forward-slash '/' followed by the server command.
Line 44: Line 49:
 
You have to declare war first. See section for [[#How do I declare war on another player?|How do I declare war on another player]] below.
 
You have to declare war first. See section for [[#How do I declare war on another player?|How do I declare war on another player]] below.
   
As a note, you start out at war with all players, but normal AI players offer you a cease-fire treaty upon first contact which if accepted has to be broken before you can attack the player's units or cities.
+
(As a note, you start out at war with all players; at lower skill levels, AI players offer you a cease-fire treaty upon first contact, which if accepted has to be broken before you can attack the player's units or cities.)
   
 
=== How do I declare war on another player? ===
 
=== How do I declare war on another player? ===
Line 62: Line 67:
 
=== How can I change the way a Freeciv game is ended? ===
 
=== How can I change the way a Freeciv game is ended? ===
   
A standard Freeciv game ends when only one player/team is left alive, when a player's spaceship arrives at [[Alpha Centauri]], or when you reach the ending turn - whichever comes first.
+
A standard Freeciv game ends when only allied players/teams are left alive, when a player's spaceship arrives at [[Alpha Centauri]], or when you reach the ending turn - whichever comes first.
   
You can change the default [[Server_options#endturn_-_Turn_the_game_ends|ending turn]] by changing the <code>endturn</code> setting. You can do this through {{grey|Remote Server}} (see [[Server options]]) under the {{grey|Options}} menu item in the {{grey|Game}} menu or by typing into the [[chatline]] something like:
+
You can change the default [[Server_options#endturn_-_Turn_the_game_ends|ending turn]] by changing the <code>endturn</code> setting. You can do this through {{grey|Remote Server}} (see article on [[Server options]]) under the {{grey|Options}} menu item in the {{grey|Game}} menu or by typing into the [[chatline]] something like:
 
<pre>/set endturn 300</pre>
 
<pre>/set endturn 300</pre>
   
Line 73: Line 78:
 
<pre>/help endgame</pre>
 
<pre>/help endgame</pre>
   
If you want to avoid the game ending by space race, you can change the <code>spacerace</code> setting - again either through the {{grey|Server Options}} dialog or through the chatline by:
+
If you want to avoid the game ending by space race, or require a single player/team to win, you can change the <code>victories</code> setting - again either through the {{grey|Server Options}} dialog or through the chatline. For instance this changes from the default setting <code>spacerace|allied</code> to disallow allied victory and space race:
<pre>/set spacerace disabled</pre>
+
<pre>/set victories ""</pre>
 
You can instead allow space races without them ending the game by instead changing the <code>endspaceship</code> setting.
 
You can instead allow space races without them ending the game by instead changing the <code>endspaceship</code> setting.
   
A single player who defeats all enemies will always win the game -- this conquest victory condition cannot be changed. An alliance of players may also win the game; this is controlled by the <code>alliedvictory</code> server setting.
+
A single player who defeats all enemies will always win the game -- this conquest victory condition cannot be changed.
  +
  +
In rulesets which support it, a cultural domination victory can be enabled, again with the <code>victories</code> setting.
   
 
=== My irrigated grassland produces only 2 food. Is this a bug? ===
 
=== My irrigated grassland produces only 2 food. Is this a bug? ===
Line 93: Line 100:
 
<pre>/set aifill 30</pre>
 
<pre>/set aifill 30</pre>
   
Difficulty levels are set with the <code>/hard</code>, <code>/normal</code>, <code>/easy</code>, and <code>/novice</code> commands.
+
Difficulty levels are set with the <code>/cheating</code>, <code>/hard</code>, <code>/normal</code>, <code>/easy</code>, <code>/novice</code>, and <code>/handicapped</code> commands.
   
 
You may also create [[AI]] players individually. For instance, to create one hard and one easy AI player, enter:
 
You may also create [[AI]] players individually. For instance, to create one hard and one easy AI player, enter:
Line 121: Line 128:
 
Before the game is started, you may change settings through the server options dialog (available in the pregame screen). You may also change these settings or use server commands through the [[chatline]]. If you use the [[chatline]], use the
 
Before the game is started, you may change settings through the server options dialog (available in the pregame screen). You may also change these settings or use server commands through the [[chatline]]. If you use the [[chatline]], use the
 
<pre>/show</pre>
 
<pre>/show</pre>
command to display the most commonly-changed settings (see [[Server_commands#show_-_Show_server_options.|show]]), or
+
command to display the most commonly-changed settings (see article on [[Server_commands#show_-_Show_server_options.|show]]), or
 
<pre>/help <setting></pre>
 
<pre>/help <setting></pre>
 
to get help on a particular setting, or
 
to get help on a particular setting, or
 
<pre>/set <setting> <value></pre>
 
<pre>/set <setting> <value></pre>
to change a setting to a particular value (see [[server options]]). After the game begins you may still change some settings (but not others).
+
to change a setting to a particular value (see article on [[server options]]). After the game begins you may still change some settings (but not others).
   
 
World maps can be created using the built-in map editor in the GTK clients. It is also possible to edit running games: Just enable {{grey|Editing Mode}} from the {{grey|Edit}} menu. (You may also unzip and edit any savegame with a text editor, if you're ambitious, although the format is not documented and is subject to change.)
 
World maps can be created using the built-in map editor in the GTK clients. It is also possible to edit running games: Just enable {{grey|Editing Mode}} from the {{grey|Edit}} menu. (You may also unzip and edit any savegame with a text editor, if you're ambitious, although the format is not documented and is subject to change.)
Line 135: Line 142:
 
=== How compatible is Freeciv with the commercial Civilization games? ===
 
=== How compatible is Freeciv with the commercial Civilization games? ===
   
Freeciv was created as a multiplayer version of ''Civilization'' with players moving simultaneously. Rules and elements of ''Civilization II'', and features required for single-player use, such as [[AI]] players, were added later.
+
Freeciv was created as a multiplayer version of ''Civilization'' with players moving simultaneously. Rules and elements of ''Civilization II'', and features required for single-player use, such as [[AI]] players, were added later.
   
This is why Freeciv comes with three game configurations ([[ruleset]]s): the ''[[civ1]]'' and ''[[civ2]]'' rulesets implement game rules, elements and features that bring it as close as possible to ''Civilization I'' and ''Civilization II'' respectively, while the default ''classic'' ruleset tries to reflect the most popular settings among Freeciv players. Unimplemented Civilization I and II features are mainly those that would have little or no benefit in multiplayer mode, and nobody is working on closing this gap.
+
This is why Freeciv comes with several game configurations ([[ruleset]]s): the ''[[civ1]]'' and ''[[civ2]]'' rulesets implement game rules, elements and features that bring it as close as possible to ''Civilization I'' and ''Civilization II'' respectively, while other rulesets such as the default ''classic'' ruleset tries to reflect the most popular settings among Freeciv players. Unimplemented Civilization I and II features are mainly those that would have little or no benefit in multiplayer mode, and nobody is working on closing this gap.
   
 
Little or no work is being done on implementing features from other similar games, such as ''SMAC'', ''CTP'' or ''Civilization III''.
 
Little or no work is being done on implementing features from other similar games, such as ''SMAC'', ''CTP'' or ''Civilization III''.
Line 164: Line 171:
 
You are not expanding fast enough. Read the [[How to Play]] article for some general tips how to get a head start in the game.
 
You are not expanding fast enough. Read the [[How to Play]] article for some general tips how to get a head start in the game.
   
You can also turn off Fog of War. That way, you will see the attacks of the AI. Just type '/set fogofwar 0' on the chat line before the game starts.
+
You can also turn off Fog of War. That way, you will see the attacks of the AI. Just type '/set fogofwar disabled' on the chat line before the game starts.
   
 
=== Why are the AI players so easy on 'hard'? ===
 
=== Why are the AI players so easy on 'hard'? ===
   
Several reasons. For example, the AI is heavily playtested under and customized to the default ruleset and [[Server_options|server settings]]. Although there are several provisions in the code to adapt to changing rules, playing under different conditions is quite a handicap for it. Though mostly the AI simply doesn't have a good, all encompassing strategy besides "eliminate nation x". For further details, see the article on [[AI]].
+
Several reasons. For example, the AI is heavily playtested under and customized to the default ruleset and [[Server options|server settings]]. Although there are several provisions in the code to adapt to changing rules, playing under different conditions is quite a handicap for it. Though mostly the AI simply doesn't have a good, all encompassing strategy besides "eliminate nation x". For further details, see the article on [[AI]].
   
To make the game harder, you could try putting some or all of the AI into a team. This will ensure that they will waste no time and resources negotiating with each other and spend them trying to eliminate you. They will also help each other by trading techs. You can use the [[Server commands#team__-__Change.2C_add_or_remove_a_player.27s_team_affiliation.|team command]] to set teams before the game starts. For AI teams you have to create the AI players first using the [[Server_commands#create__-__Create_an_AI_player_with_a_given_name.|create command]]. For example
+
To make the game harder, you could try putting some or all of the AI into a team. This will ensure that they will waste no time and resources negotiating with each other and spend them trying to eliminate you. They will also help each other by trading techs. See the question [[#How do I create teams of AI or human players?|How do I create teams of AI or human players?]]
   
 
You can also form more than one AI team by using any of the different predefined teams, or put some AI players teamed with you.
<pre>
 
/create ai1
 
/create ai2
 
/team ai1 "Team 2"
 
/team ai2 "Team 2"
 
</pre>
 
 
You can also form more than one AI team by using any of the different predefined team names, or put some AI players teamed with you.
 
   
 
=== What distinguishes AI players from humans? What do the skill levels mean? ===
 
=== What distinguishes AI players from humans? What do the skill levels mean? ===
   
[[AI]] players in Freeciv operate in the server, partly before all clients move, partly afterwards. Unlike the clients, they can observe the full state of the game, including everything about other players. Additionally, ''Hard'' AI players can see every game unit even through fog of war.
+
[[AI]] players in Freeciv operate in the server, partly before all clients move, partly afterwards. Unlike the clients, they can in principle observe the full state of the game, including everything about other players, although most levels deliberately restrict what they look at to some extent.
   
AI players can change production without penalty and switch [[government]]s without going through [[anarchy]]. Additionally, ''Hard'' AI players can set their research, tax or luxury to 100% regardless of their governments.
+
All AI players can change production without penalty. Some levels (generally the harder ones) get other exceptions from game rules; conversely, easier levels get some penalties, and deliberately play less well in some regards.
   
  +
For more details about how the skill levels differ from each other, see the help for the relevant server command (for instance <code>/help hard</code>).
Further, the ''Novice'' and ''Easy'' AI are less eager to build cities, and at ''Novice'', ''Easy'' and ''Normal'', the AI 'forgets' where huts are and cannot plan attacks against enemy units they shouldn't be aware of.
 
  +
  +
Other than as noted here, the AI players are not known to cheat.
   
 
=== How do I play on a hexagonal grid? ===
 
=== How do I play on a hexagonal grid? ===
   
It is possible to play with hexagonal instead of rectangular tiles. To do this you need to set your topology before the game starts
+
It is possible to play with hexagonal instead of rectangular tiles. To do this you need to set your topology before the game starts; set this with ''Map topology index'' from the game settings, or in the chatline:
 
<pre>/set topology hex|iso|wrapx</pre><div style="float:right; margin:0; padding:0; font-size:8px;">
 
<pre>/set topology hex|iso|wrapx</pre><div style="float:right; margin:0; padding:0; font-size:8px;">
/\
+
/\
 
| |
 
| |
\/
+
\/
</div>and switch to a isometric hexagonal tileset (''Game'' > ''Options'' >''Local options'' and choose a different tileset from the drop-down; ''isophex'' is included with the game). Note if you do it wrong, you may end up playing with a rectangular tileset on a "true" hexagonal grid or to play with a hexagonal tileset on a rectangular grid - the game doesn't stop you trying this, but it's probably not what you want.{{-}}<div style="float:right; margin:0; padding:0; font-size:8px;">
+
</div>This will cause the client to use an isometric hexagonal tileset when the game starts (go to ''Game'' > ''Options'' >''Local options'' to choose a different one from the drop-down; ''hexemplio'' and ''isophex'' are included with the game).{{-}}<div style="float:right; margin:0; padding:0; font-size:8px;">
_
+
_
 
/ \
 
/ \
\_/
+
\_/
</div>You may also play with overhead hexagonal, in which case you want to set the topology setting to 'hex|wrapx' and use the ''hex2t'' tileset.
+
</div>You may also play with overhead hexagonal, in which case you want to set the topology setting to 'hex|wrapx'; the ''hex2t'' tileset is supplied for this mode.
 
If you start a new game in the client, the grid (topology) will automatically be set to match your tileset. However since you can't change the tileset in pre-game this may not be helpful. You can try running the client as
 
<pre>freeciv-gtk3 -t isophex</pre>
 
or
 
<pre>freeciv-gtk3 -t hex2t</pre>
 
to set the tileset immediately on startup. (''This assumes that you are using the gtk3 client.'')
 
   
 
=== How do I create teams of AI or human players? ===
 
=== How do I create teams of AI or human players? ===
  +
The GTK and Qt clients have a GUI for setting up teams - just right click on any player and assign them to any team.
See also the [[#How do I play against computer players?|How do I play against computer players?]] section.
 
   
The GTK client has a GUI for setting up teams - just right click on any player and assign it to any team. You may also use the command-line interface (through the [[chatline]].)
+
You may also use the command-line interface (through the [[chatline]].)
   
First of all try the <code>/list</code> command. This will show you all players created, including human players and created [[AI]] players. To assign AI players to teams you have to create them first, as in <code>/create ai1</code> to create an AI player named "ai1".
+
First of all try the <code>/list</code> command. This will show you all players created, including human players and [[AI]] players (both created automatically by <code>aifill</code> or manually with <code>/create</code>).
   
Now, you're ready to assign players to teams. To do this you use the team command. For example, to create two AI players and put them on the same team you can do
+
Now, you're ready to assign players to teams. To do this you use the team command. For example, if there's one human player and you want two more AI players on the same team, you can do
  +
to create two AI players and put them on the same team you can do
   
 
<pre>
 
<pre>
  +
/set aifill 2
/create ai1
 
  +
/team AI*2 1
/create ai2
 
/team ai1 "Team 2"
+
/team AI*3 1
/team ai2 "Team 2"
 
 
</pre>
 
</pre>
   
Line 258: Line 254:
 
Please ask questions about the game, its installation, or the rest of this site at the [http://forum.freeciv.org Freeciv Forums].
 
Please ask questions about the game, its installation, or the rest of this site at the [http://forum.freeciv.org Freeciv Forums].
   
Patches and bug reports are best reported to the Freeciv bug tracking system at https://www.hostedredmine.com/projects/freeciv.
+
Patches and bug reports are best reported to the Freeciv bug tracking system at https://osdn.net/projects/freeciv/ticket/.
   
 
== Technical Stuff ==
 
== Technical Stuff ==
=== I've found a bug, what should I do ? ===
+
=== I've found a bug, what should I do? ===
 
See the article on [[Bug Reporting]].
 
See the article on [[Bug Reporting]].
   
Line 280: Line 276:
 
2: AI*4 has been added as Easy level AI-controlled player (classic).
 
2: AI*4 has been added as Easy level AI-controlled player (classic).
 
2: AI*5 has been added as Easy level AI-controlled player (classic).
 
2: AI*5 has been added as Easy level AI-controlled player (classic).
2: Now accepting new client connections.
+
2: Now accepting new client connections on port 5556.
   
 
For introductory help, type 'help'.
 
For introductory help, type 'help'.
 
 
> start
 
> start
 
Starting game.
 
Starting game.
Line 290: Line 285:
 
If the server is not running, you will NOT be able to connect to your local server.
 
If the server is not running, you will NOT be able to connect to your local server.
   
If you can't connect to any of the other games listed, e.g. those on [http://meta.freeciv.org/ metaserver], a firewall in your organisation/ISP is probably blocking the connection.
+
If you can't connect to any of the other games listed, e.g. those on the [http://meta.freeciv.org/ metaserver], a firewall in your organization/ISP is probably blocking the connection.
   
 
If you are running a personal firewall, make sure that you allow communication for freeciv-server and the Freeciv client to the trusted zone. If you want to allow others to play on your server, allow freeciv-server to act as a server on the Internet zone.
 
If you are running a personal firewall, make sure that you allow communication for freeciv-server and the Freeciv client to the trusted zone. If you want to allow others to play on your server, allow freeciv-server to act as a server on the Internet zone.
Line 296: Line 291:
 
=== I can play on my own server, but the metaserver doesn't seem to work. ===
 
=== I can play on my own server, but the metaserver doesn't seem to work. ===
   
If your {{kbd|Metaserver}} tab turns up an empty list, there might something wrong with your setup. First, check your Freeciv version. Freeciv clients can only talk to servers of the same major version (2.6.x can only talk to 2.6.y), and there may simply be no public servers for the version you're running. Check out the [http://meta.freeciv.org/metaserver.phtml metaserver] "version" column.
+
If your {{kbd|Metaserver}} tab turns up an empty list, there might something wrong with your setup.
  +
  +
First, check your Freeciv version. Freeciv clients can only talk to servers of the same major version (2.6.x can only talk to 2.6.y), and there may simply be no public servers for the version you're running. Check out the [http://meta.freeciv.org/ web interface] (which shows servers for all versions) and look at the "version" column.
   
If you can view the metaserver page with your web browser, and servers are listed, but the client's {{kbd|Metaserver}} tab still fails to list them, you may be behind a non-transparent [[Freeciv_Proxy_Settings|proxy]]; see [[Freeciv_Proxy_Settings|proxy settings]] for a detailed explanation.
+
If you can view the metaserver page with your web browser, and servers are listed, but the client's {{kbd|Metaserver}} tab still fails to list them, you may be behind a non-transparent [[Freeciv Proxy Settings|proxy]]. See article on [[Freeciv Proxy Settings|proxy settings]] for a detailed explanation.
   
 
=== How do I change the metaserver info string? ===
 
=== How do I change the metaserver info string? ===
Line 311: Line 308:
 
The <code>NEWS-#.#.#</code> article is only updated for a new release; updates to [[Git]] can be reviewed in the online [https://github.com/freeciv/freeciv source code browser].
 
The <code>NEWS-#.#.#</code> article is only updated for a new release; updates to [[Git]] can be reviewed in the online [https://github.com/freeciv/freeciv source code browser].
   
If you decide to upgrade, see the [http://www.freeciv.org/download.html Download page] for source code or contributed binaries. If you have a working client, and you don't know its version, start it, load a game or scenario, or just start a new game, click on {{grey|help}} for the help menu, and on {{grey|about}} to see the version and what it actually is (GTK2, GTK3, QT, SDL2, &hellip;).
+
If you decide to upgrade, see the [http://www.freeciv.org/download.html Download page] for source code or contributed binaries. If you have a working client, and you don't know its version, start it, load a game or scenario, or just start a new game, click on {{grey|Help}} for the help menu, and on {{grey|About Freeciv}} to see the version and the client type (GTK2, GTK3, QT, SDL2, &hellip;).
   
It's unlikely that all precompiled binaries and ports have been updated to {{msg:version}} yet. If you can contribute, please do! Prepare a package and announce it to [https://www.freelists.org/list/freeciv-dev freeciv-dev@freelists.org].
+
It's possible that not all precompiled binaries and ports have been updated to {{msg:version}} yet. If you can contribute, please do! Prepare a package and announce it to [https://www.freelists.org/list/freeciv-dev freeciv-dev@freelists.org].
   
 
Clients and servers of different major versions are generally incompatible due to changes in the client/server protocol. You will see incompatibilities as a 'mismatched capabilities' error. Different minor versions should be compatible, however. For example, 2.5.4 and 2.5.0 are compatible; 2.5.4 and {{msg:version}} are not.
 
Clients and servers of different major versions are generally incompatible due to changes in the client/server protocol. You will see incompatibilities as a 'mismatched capabilities' error. Different minor versions should be compatible, however. For example, 2.5.4 and 2.5.0 are compatible; 2.5.4 and {{msg:version}} are not.
Line 325: Line 322:
 
=== HOME directory not set? ===
 
=== HOME directory not set? ===
   
The Freeciv client wants to write a configuration file named <code>.freeciv-client-rc-2.6</code> (for Freeciv 2.6.x) in your <code>$HOME</code> directory. On Windows the <code>%HOME%</code>-directory can be either explicitly set, or defaults to <code>%APPDATA%</code>. Starting with Freeciv 2.6 the Windows clients put their common configuration file in <code>%HOME%\.freeciv</code>, e.g., <samp>C:\Users\username\AppData\Roaming\.freeciv\.freeciv-client-rc-2.6</samp>.
+
The Freeciv client wants to write a configuration file named <code>freeciv-client-rc-2.6</code> (for Freeciv 2.6.x) in a directory called <code>.freeciv</code> in your <code>$HOME</code> directory. On Windows the <code>%HOME%</code>-directory can be either explicitly set, or defaults to <code>%APPDATA%</code>. So for instance for Freeciv 2.6 the Windows clients might put their common configuration file in <samp>C:\Users\username\AppData\Roaming\.freeciv\freeciv-client-rc-2.6</samp>.
 
=== How do I start the next game? ===
 
 
A running Freeciv server can only run a single game. Once the game has been started with the <code>/start</code> command, restarting is impossible.
 
 
To start a new game, <code>/quit</code> the server and start a new one, then reconnect the client to it.
 
   
 
=== How do I restart a saved game? ===
 
=== How do I restart a saved game? ===
   
If for some reason you can't use the start-screen interface for loading a game, you can load one directly through the client or server command line (see [[Command-line options]]). You can start a client such as <code>freeciv-gtk2</code>, or <code>freeciv-server</code> with the <code>-f</code> option, for example:
+
If for some reason you can't use the start-screen interface for loading a game, you can load one directly through the client or server command line (see [[Command-line options]]). You can start a client such as <code>freeciv-gtk3</code>, or <code>freeciv-server</code>, with the <code>-f</code> option, for example:
 
<pre>freeciv-server -f freeciv-T0175-Y01250-auto.sav.bz2</pre>
 
<pre>freeciv-server -f freeciv-T0175-Y01250-auto.sav.bz2</pre>
   
Line 346: Line 337:
 
=== Where are the save games located by default? ===
 
=== Where are the save games located by default? ===
   
On Unix like system, it will be in ~/.freeciv/saves
+
On Unix like systems, they will be in <code>~/.freeciv/saves</code>.
On Windows XP, it will be in $HOME\.freeciv\saves where $HOME is usually "C:\Documents and Settings\username\Application Data" On Windows 7 it can be found under "C:\Users\username\AppData\Roaming"
 
   
  +
On Windows, they are typically found in a directory like <code>C:\Users\username\AppData\Roaming\.freeciv\saves</code>.
You could change this by setting the HOME environment
 
variable, or using the --saves command line argument to
 
the server (you would have to run it separately).
 
   
  +
On MacOS systems, it's "/Users/{username}/.freeciv/saves", but the finder won't show you folders that start with ".". You can toggle that by entering CMD+Shift+. while in a finder window. While the hidden stuff is visible you can create an alias to the ".freeciv" folder which will always be visible.
=== Why are some of the menus in the Freeciv client disabled? ===
 
   
 
You could change the save games location by setting the <code>HOME</code> environment
Menus that cannot be used will be disabled. This means some menus are disabled during pregame, or unless you select a unit, or if the game has ended.
 
 
variable, or using the <code>--saves</code> command line argument to
 
 
the server (you would have to run it separately).
It's also possible that you're not connected to a game server at all. If you start the client it should allow you to create a new game automatically (by pressing the {{kbd|Start New Game}} button). You may also try running the server from the command line (as <code>freeciv-server</code>) then connecting to it manually with the client (connect to <code>localhost</code>). Use the <code>/start</code> command to begin the game once you have connected. The server will now load some configuration files that some of the menus depend on.
 
   
 
=== How do I find out about the available units, improvements, terrain types, and technologies? ===
 
=== How do I find out about the available units, improvements, terrain types, and technologies? ===
There is extensive help on this in the {{grey|Help}} menu, but only once the game has been started - this is because all of these things are configurable up to that point; see also section on [[#Why are some of the menus in the Freeciv client disabled?|Why are some of the menus in the Freeciv client disabled?]] above. (Some work needs to be done to make this more intuitive.)
+
There is extensive help on this in the {{grey|Help}} menu, but only once the game has been started - this is because all of these things are configurable up to that point. (Some work needs to be done to make this more intuitive.)
   
The game comes shipped with an interactive [[tutorials|tutorial]] scenario. To run it, select {{grey|Start Scenario Game}} from the main menu, then load the ''tutorial'' scenario.
+
The game comes with an interactive [[tutorials|tutorial]] scenario. To run it, select {{grey|Start Scenario Game}} from the main menu, then load the ''tutorial'' scenario.
   
 
Outside the Freeciv client, we have some online tutorials in the [[Docs]] section of the wiki. A graph of the (default) technology tree is available [[:image:technologies.png|on the wiki]].
 
Outside the Freeciv client, we have some online tutorials in the [[Docs]] section of the wiki. A graph of the (default) technology tree is available [[:image:technologies.png|on the wiki]].
 
=== My diagonal arrow keys do not work on Solaris. ===
 
 
Why exactly, I don't know, but you have to xmodmap a few keys around. From my <code>.xinitrc</code>:
 
 
<pre>
 
xmodmap -e 'keycode 27 = Up' \
 
-e 'keycode 31 = Left' \
 
-e 'keycode 34 = Down' \
 
-e 'keycode 35 = Right' \
 
-e 'keycode 76 = Up' \
 
-e 'keycode 98 = Left' \
 
-e 'keycode 120 = Down' \
 
-e 'keycode 100 = Right'
 
</pre>
 
 
=== The client complains it can't read the <code>.freeciv-client-rc-x.x</code> file. ===
 
 
This is harmless: the file will be created to store your client options, as soon as you save them; but it isn't supplied initially.
 
 
=== My Freeciv client dumps core when I start it! ===
 
 
Read on if you are using the [[Xaw]] client under certain Linux distributions or [[wikipedia:IRIX|IRIX]].
 
 
In all likelihood, the problem is an enhanced version of the Xaw library, (Xaw3d, Xaw95,or neXtaw). A Freeciv binary compiled against the 'plain' Xaw library will segfault upon startup when used with these.
 
 
Remedies:
 
* Freeciv can be recompiled to use Xaw3d, if you have it: use
 
<pre>configure --with-xaw3d</pre>
 
* Make sure the <code>libXaw.so</code> Freeciv is seeing is an unenhanced version (by installing the appropriate package, pointing to the right version using environment variables, or whatever; details depend on platform)
 
* If for some reason you can't, but there is a 'plain' <code>libXaw.a</code> somewhere: hunt through the Makefiles and change lines which contain <code>-lXaw</code> to <code>/usr/X11/lib/libXaw.a</code>, or wherever <code>libXaw.a</code> is stored on your machine, then recompile (this was suggested by &lt;dva AT uu.gatech.edu&gt;
 
* Install [[Gtk|GTK+]] (if not installed already), compile and use the [[Gtk|GTK+]] client instead of the [[Xaw]] one.
 
 
This problem used to be documented in the SuSE Linux support database.
 
 
If your SEGV at startup is due to a different problem, please report it to the developers' [[Bug Reporting|bug reporting system]].
 
 
=== Freeciv fails to compile due to the Xaw libraries. ===
 
 
As reported with Debian 2.1:
 
 
<pre>
 
> make[2]: Entering directory `/usr/src/freeciv/client'
 
> Making all in gui-xaw
 
> make[3]: Entering directory `/usr/src/freeciv/client/gui-xaw'
 
> gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I. -I./.. -I./../include
 
> -I../../common -I../../intl -I/usr/X11R6/include -g -O2 -Wall -c
 
> pixcomm.c
 
> In file included from pixcomm.c:54:
 
> pixcommp.h:54: X11/Xaw3d/CommandP.h: No such file or directory
 
> make[3]: *** [pixcomm.o] Error 1
 
[...]
 
</pre>
 
 
This is, again, an Xaw/Xaw3d confusion problem. In this particular case, the Debian '''xaw3dg''' package is not installed on the system.
 
 
To select plain Xaw or Xaw3d explicitly, use:
 
 
<pre>
 
./configure --with-xaw [...]
 
./configure --with-xaw3d [...]
 
</pre>
 
 
=== How do I compile Freeciv under Solaris? ===
 
 
Solaris (2.5 and up) has its own version of [[X]] in <code>/usr/openwin</code>, its own version of <code>make</code> in <code>/usr/ccs/bin/make</code>, and its own compiler (to be purchased separately) which, if you have it, is available in <code>/opt/SUNWspro/bin</code>. Solaris does not provide the XPM library, which is required for the [[Xaw]] client; it doesn't provide any of the stuff required for imlib, gdk and gtk, either, which is required to build the [[gtk|GTK+]] client. (This stuff can be compiled however, and is now more readily installable with the [http://www.ximian.com/ Ximian] GNOME distribution.)
 
 
To confuse matters further, many local systems administrators add MIT X (usually, in <code>/usr/X11</code>), GNU <code>make</code>, and the <code>gcc</code> compiler. If you're unlucky, the
 
<pre>./configure && make</pre>
 
procedure will get confused about these different versions of tools.
 
 
However, with some patience, everything can be compiled without problems. Details are provided in the Freeciv {{INSTALL}} document.
 
   
 
=== I hate isometric view! How do I play with Civilization I style graphics? ===
 
=== I hate isometric view! How do I play with Civilization I style graphics? ===
  +
When starting the game, go to {{grey|More Game Options}} > {{grey|Geological}} > {{grey|Map topology index}}, and make sure ''Isometric'' is not checked.
   
  +
The overhead tileset ''trident'' is supplied for this topology.
Start the client as
 
<pre>
 
freeciv-gtk3 --tiles trident
 
</pre>
 
 
for the gtk3 client.
 
 
There is also a client option in the {{grey|Local Client}} sub-menu under {{grey|Options}} (gtk client) or {{grey|Local Settings}} (xaw client) menu.
 
   
 
=== What other GUI options do I have for the Freeciv client? ===
 
=== What other GUI options do I have for the Freeciv client? ===
Line 453: Line 363:
 
The look and feel of your GUI is mainly determined by the Freeciv client you use.
 
The look and feel of your GUI is mainly determined by the Freeciv client you use.
   
The recommended client is the [[Gtk]] client. There are a range of different Gtk clients for different versions of the Gtk library&mdash;Gtk2/3/etc&mdash;but they all support more or less the same feature set.
+
The recommended client is the [[Gtk]] client. There are a range of different Gtk clients for different versions of the Gtk library&mdash;Gtk2/3/etc&mdash;but they all support more or less the same feature set. If in doubt, pick the Gtk3 client.
   
The Qt client is a newer client using the Qt toolkit. It has a more immersive main map screen and supports most features, with the notable exception of the [[editor|map editor]].
+
The Qt client is a newer client using the Qt toolkit. It has a more immersive interface. It supports most features, with the notable exception of the [[editor|map editor]].
   
The [[SDL]] client provides a more immersive experience, but lags behind somewhat in features.
+
The [[SDL]] clients provide a more immersive experience, but lags behind somewhat in features. (Again, there are two versions of this for different versions of the SDL library.)
   
The original client was based on the Athena widget set ([[Xaw]]), which is fast and was at the time more widely available, but it is no longer maintained and lacks features; it will be removed in a future release. The client can also be compiled to use Xaw3d.
+
The original client was based on the Athena widget set ([[Xaw]]), which is fast and was at the time more widely available, but it is no longer maintained, is buggy, and lacks features; it will be removed in a future release. This client can also be compiled to use Xaw3d.
   
 
All of these clients should compile and run on any Unix variant we are aware of, not just the ones for which [[download|our download section]] provides native installation support.
 
All of these clients should compile and run on any Unix variant we are aware of, not just the ones for which [[download|our download section]] provides native installation support.
Line 467: Line 377:
 
Some details of the GUI can be configured from the running client.
 
Some details of the GUI can be configured from the running client.
   
A larger impact is made by the tileset used to display terrain, cities, units, etcetera. A tileset can be specified when the client is started up.
+
A larger impact is made by the tileset used to display terrain, cities, units, etcetera. Freeciv comes with some tilesets for all topologies; some more can be acquired with the <code>freeciv-modpack</code> utility.
 
Other tilesets in both categories are separately available from our download page.
 
   
 
We do not distribute commercial Civilization™ game tiles for obvious copyright reasons.
 
We do not distribute commercial Civilization™ game tiles for obvious copyright reasons.
   
 
=== How do I enable/disable sound support? ===
 
=== How do I enable/disable sound support? ===
The client can be started without sound by supplying the commandline arguments: <code>-P none</code>
+
The client can be started without sound by supplying the commandline arguments: <code>-P none</code>. The default sound plugin can also be configured in the client settings.
  +
  +
If the client was compiled with sound support, it will be enabled by default. (The only sound plugin supported currently is <code>sdl</code>.)
   
 
Further instructions are in <code>./doc/README.sound</code> in the source tarball.
 
Further instructions are in <code>./doc/README.sound</code> in the source tarball.
   
 
If sound does not work, try:
Please note that the stdsounds are extracted to data/stdsounds with soundspec file data/stdsounds.soundspec. For a system-wide installation you can extract that into <code>/usr/local/share/freeciv</code>, such that a directory <code>/usr/local/share/freeciv/data/stdsounds</code> will exist.
 
 
You can then start the (gtk3) client as follows:
 
<pre>
 
freeciv-gtk3 -P <plugin> -S stdsounds
 
</pre>
 
 
If that does not work, try:
 
 
<pre>
 
<pre>
 
freeciv-gtk3 -d 3 -P <plugin> -S stdsounds
 
freeciv-gtk3 -d 3 -P <plugin> -S stdsounds
 
</pre>
 
</pre>
   
This will help you get some debug information (e.g. why the sound does not work).
+
This will help you get some debug information, which might give a clue why the sound does not work.
   
 
=== Where can I find more information on the *.ruleset files? ===
 
=== Where can I find more information on the *.ruleset files? ===
   
There is some documentation in the <code>./doc/</code> directory, such as <code>./doc/README.effects</code>. The default ruleset also has a minimal explanation of what all the fields mean, so <code>default/buildings.ruleset</code> would for instance list the meaning of the fields in the <code>buildings.ruleset</code>. Also of interest might be the [[rulesets]] page on freeciv.org; currently it contains little in the way of documentation but you may help change this by contributing some.
+
There is some documentation in the <code>./doc/</code> directory, such as <code>./doc/README.effects</code>. The supplied ruleset files also have a minimal explanation of what all the fields mean, so <code>classic/buildings.ruleset</code> would for instance list the meaning of the fields in the <code>buildings.ruleset</code>. Also of interest might be the [[rulesets]] page on freeciv.org.
   
 
=== How can I add additional civilizations in the nation/ subdirectory, or add cities to the list for an existing nation? ===
 
=== How can I add additional civilizations in the nation/ subdirectory, or add cities to the list for an existing nation? ===
   
 
See the [[Nations]] article or ./doc/README.nations in the source tarball.
 
See the [[Nations]] article or ./doc/README.nations in the source tarball.
 
=== How do I change the font? ===
 
 
For the '''[[Gtk]]''' client, once the game has started, you can change the fonts in ''Game'' > ''Options'' > ''Local Client'', on the ''Font'' tab.
 
 
For the '''[[Xaw]]''' client, you can change the font with [[X]] resources. You can specify them on the command line with the <code>-xrm</code> command-line option, or put them in your <code>.Xdefaults</code> file or the Freeciv <code>app-defaults</code> file.
 
 
To change the main font, try something like:
 
<pre>freeciv-xaw -- -xrm "Freeciv*.font: 8x16"</pre>
 
 
If the font isn't fixed-width, some of the dialogs won't look right, but they'll still work.
 
 
<p>Note that on Microsoft Windows systems the <code>HOME</code> environment variable usually isn't set by default, so you have to set it. In that case, create a directory for Freeciv settings somewhere (on Windows obvious places include <code>%APPDATA%</code> or <code>%USERPROFILE%</code>), then open a command shell and typing something like:
 
 
<pre>set HOME=%APPDATA%</pre> If a <code>HOME</code> is already defined for other applications, just use that directory. Now copy the settings file to it as instructed above (note the '''<code>.</code>''' at the start of the resulting filename).
 
 
=== I am having problems with accented characters. What gives? ===
 
 
The problem is that Freeciv (the server or client) simply cannot display the characters properly in the character encoding it is set to use. This is particularly a problem in older clients like the XAW client.
 
 
* In the server, this can be fixed by changing your locale to use [[WikiPedia:UTF-8|UTF-8]]. Normally this is done by changing the <code>$LANG</code> environment variable (you can see your current <code>$LANG</code> with <code>echo $LANG</code>). A full explanation is beyond the scope of this document, but here are a few common examples. If your <code>$LANG</code> is empty, try setting it to <code>en_US.UTF-8</code> (for US English). If it is <code>ru_RU.KOI8-R</code>, try setting it to <code>ru_RU.UTF-8</code>. Note that the <code>$LANG</code> of the server only affects terminal input and output of the server, and will not have any effect on client behavior.
 
 
* In the XAW client, the problem occurs for the exact same reason as in the server. The solution is the same: change your locale to use UTF-8. If this isn't possible you may improve things by installing [http://gnu.org/software/libiconv/ GNU libiconv]. GNU's iconv library has better transliteration support than the iconv that comes on most unix-like systems.
 
 
* The [[Gtk|GTK+]] client should not have any character problems. If you do it is probably a font issue.
 
   
 
=== How can I change the language of my client/server? ===
 
=== How can I change the language of my client/server? ===
   
See [[Interface Language]].
+
See the [[Interface Language]] wiki article.
   
 
=== How do I get the latest development code? ===
 
=== How do I get the latest development code? ===
Line 548: Line 426:
 
See also [[How to Contribute]] to Freeciv development.
 
See also [[How to Contribute]] to Freeciv development.
   
=== How do I disable full screen mode? ===
+
=== What are the system requirements? ===
 
In the [[Gtk|GTK]] client, go to {{grey|View}} and select {{grey|Full Screen}}. It may not take effect until the next time you start the client.
 
 
In the [[SDLClient|SDL]] client, open the {{grey|Options}} dialogue, select {{grey|Video options}}, deselect the {{grey|Fullscreen Mode}} check box and then select the resolution of your choice. The change will take effect immediately.
 
 
=== What are the system requirements ? ===
 
 
;Memory:
 
;Memory:
 
In a typical game the server takes about 30MB of memory and the client needs about 200MB. These values may change with larger maps or [[tilesets]]. For a single player game you need to run both the client and the server.
 
In a typical game the server takes about 30MB of memory and the client needs about 200MB. These values may change with larger maps or [[tilesets]]. For a single player game you need to run both the client and the server.
 
;Processor:
 
;Processor:
We recommend at least a 200MHz processor. If you find your game running too slow, these may be the reasons:
+
We recommend at least a 200MHz processor. The server is almost entirely single-threaded, so more cores will not help. If you find your game running too slow, these may be the reasons:
 
:; Too little memory
 
:; Too little memory
 
:: Swapping memory pages on disc (virtual memory) is really slow. Look at the memory requirements above.
 
:: Swapping memory pages on disc (virtual memory) is really slow. Look at the memory requirements above.
Line 568: Line 440:
 
:: This is a really useful client side agent which helps you to organize our citizens. However, it consumes many CPU cycles.
 
:: This is a really useful client side agent which helps you to organize our citizens. However, it consumes many CPU cycles.
 
:; Maps and compression
 
:; Maps and compression
:: Creating map images and/or the compression of saved games for each turn will slow down new turns. Consider to use no compression.
+
:: Creating map images and/or the compression of saved games for each turn will slow down new turns. Consider using no compression.
 
;Graphic display:
 
;Graphic display:
 
The [[Gtk|GTK]] client works well on 1024x800 or higher resolutions. On smaller screens you may want to enable the ''Arrange widgets for small displays'' option under {{grey|Interface}} tab in local options.
 
The [[Gtk|GTK]] client works well on 1024x800 or higher resolutions. On smaller screens you may want to enable the ''Arrange widgets for small displays'' option under {{grey|Interface}} tab in local options.
Line 600: Line 472:
   
 
=== How do I use a different tileset? ===
 
=== How do I use a different tileset? ===
Since 2.3, some popular tilesets are available through the "Freeciv Modpack Installer" utility. To install these, just launch the installer from the Start menu, and choose the one you want; it should then be automatically downloaded and made available for the current user.
+
If the tilesets supplied with Freeciv don't do it for you, some popular add-on tilesets are available through the "Freeciv Modpack Installer" utility. To install these, just launch the installer from the Start menu, and choose the one you want; it should then be automatically downloaded and made available for the current user.
   
Otherwise, the first thing to do is to download the tileset you want to use (e.g., from [[Tileset Downloads]]).
+
If the tileset you want is not available via the modpack installer, you'll have to install it by hand from somewhere.
   
  +
Then you have to unpack the tileset into the appropriate place. It's best to install it in your user directory. Locate the existing client settings file <code>freeciv-client-rc-2.6</code>; see the question [[#HOME directory not set?|HOME directory not set?]] to see where that might be. You want to put the tileset in a subdirectory named after the current version (e.g., <code>2.6\</code>) in the same place as the client settings file. Usually, the main tilespec file <code>foo.tilespec</code> goes directly under <code>2.6\</code>, and the rest of the tileset files will go in a subdirectory named after the tileset (e.g., <code>2.6\foo</code>).
Then you have to unpack the tileset into the <code>DATA</code> or root directory in your Freeciv directory (so if your Freeciv directory is <code>C:\FREECIV-{{Version}}</code>, then you'd tell 7-Zip to extract to <code>C:\FREECIV-{{Version}}\DATA</code>.) Make sure you tell your extraction program to extract into the subdirectories in the file.
 
   
  +
You can alternatively unpack the tileset into the same <code>data</code> directory as the rest of your Freeciv installation, alongside the supplied <code>.tilespec</code> files, but that can lead to trouble with uninstallation or upgrades.
Once that's done you can start using the new tileset (FINALLY!)
 
   
  +
Once the tileset is installed, you should be able to select it in the topology-specific tileset dropdowns in the client options. You will need to make sure your game uses the appropriate map topology for the tileset in the game options.
The more advanced Freeciv clients, including the gtk version, have an in-game GUI option to select tileset. Find it under local client options.
 
   
Another way to accomplish this is to pass a command-line argument to the Freeciv client when you start it. Open a Command Prompt (from Start?Programs?Accessories?Command Prompt in my case, sometimes called an MS-DOS Window). Change to the Freeciv directory (for example, <code>cd \FREECIV-{{Version}}</code>) and start the client with the <code>--tiles ''tilesetname''</code> option. For example for the gtk3 client,
+
You can also pass a command-line argument to the Freeciv client when you start it to force use of a specific tileset. This also requires that the tileset has been installed in a correct place. Open a Command Prompt, find the client executable, and start the client with the <code>--tiles ''tilesetname''</code> option. For example for the gtk3 client, you might start
<pre>FREECIV-GTK3 --tiles hexemplio</pre>
+
<pre>freeciv-gtk3 --tiles hexemplio</pre>
 
You should be good to go then!
 
   
 
=== How do I use a different ruleset? ===
 
=== How do I use a different ruleset? ===
Again, this is easiest if the ruleset is available through the "Freeciv Modpack Installer" utility that's shipped with Freeciv since 2.3.
+
Again, this is easiest if the ruleset is available through the "Freeciv Modpack Installer" utility that's shipped with Freeciv.
   
Otherwise, a different ruleset can be used by downloading the ruleset and extracting it in the Freeciv root or data directory (<code>C:\FREECIV-{{Version}}\DATA</code>, for example). This should create a subdirectory with the ruleset name (<code>ancients</code>, for example.)
+
Otherwise, a different ruleset can be used by downloading the ruleset and extracting it in the same place as you would a tileset (see previous question). Generally, the <code>.ruleset</code> and <code>.lua</code> files go in a subdirectory named after the ruleset (for instance <code>ancients\*.ruleset</code>; if there is a <code>.serv</code> file it generally goes directly in the <code>2.6\</code> directory.
   
  +
Then you need to tell Freeciv to use it. For single-player games, if there is a <code>.serv</code> file, the ruleset should be available to select from the drop-down in the client. Otherwise, you can load a ruleset which has a <code>foo.serv</code> file with
Then you need to tell the server to use it. This is done by typing
 
 
<pre>/read foo</pre>
  +
from the client chatline or server command line '''before''' starting the game; you can read a ruleset without a <code>.serv</code> file by typing
 
<pre>/rulesetdir ''ruleset directory''</pre>
 
<pre>/rulesetdir ''ruleset directory''</pre>
in the chat line of the client '''before''' pressing the {{kbd|Start Game}} button.
 
   
 
=== I opened a ruleset file in Notepad and it is very hard to read ===
 
=== I opened a ruleset file in Notepad and it is very hard to read ===
Line 628: Line 499:
 
The ruleset files (and other configuration files) are stored with UNIX line endings which Notepad doesn't handle correctly. Please use an alternative editor like WordPad, [http://www.flos-freeware.ch/notepad2.html notepad2], or [http://notepad-plus.sourceforge.net/uk/site.htm notepad++] instead.
 
The ruleset files (and other configuration files) are stored with UNIX line endings which Notepad doesn't handle correctly. Please use an alternative editor like WordPad, [http://www.flos-freeware.ch/notepad2.html notepad2], or [http://notepad-plus.sourceforge.net/uk/site.htm notepad++] instead.
   
  +
==Mac OS X==
{{-}}{{About}}
 
  +
None of the current development team use the Mac OS. We're no longer building official packages, and don't have recent experience.
  +
  +
There are unofficial installer packages available; see the [[Install-MacOSX]] article on the Freeciv wiki for links and more information.
  +
  +
{{-}}
  +
{{GuideTopNavbox}}
  +
{{GuideNavbox}}
   
 
[[ca:PMF]]
 
[[ca:PMF]]

Revision as of 00:34, 18 May 2021

This page in other languages:   Català – Dansk – Deutsch – English – Español – Français – Italiano – 日本語 – Nederlands – Polski – Русский –

  • Note: This FAQ is continuously updated. For a version that is frozen for version 2.0 and earlier, see FAQ 2.0. For version 2.5, see FAQ 2.5. For upcoming 3.0, see FAQ 3.0

Gameplay

What do I need to play, where can I go to play?

You will need to download then install free software.

OK, so I installed Freeciv. How do I play?

Start the client. Depending on your system, you might choose it from a menu, double-click on the freeciv-gtk3 executable program, or type freeciv-gtk3 in a terminal (to start the default "gtk3" client).

Once the client starts, to begin a single-player game, select Start new game. Now edit your game settings (the defaults should be fine for a beginner-level single-player game) and press the Start button.

(Freeciv is a client/server system. But in most cases you don't have to worry about this; the client starts a server automatically for you when you start a new game.)

Once the game is started you can find information in its Help menu. If you've never played a Civilization-style game before you may want to look at the help on Strategy and Tactics.

You can continue to change the game settings through the Remote Server menu item in the Options submenu of the Game menu. Type /help in the chatline (or server command line) to get more information about server commands.

Detailed explanations of how to play Freeciv are also in the ./doc/README file distributed with the source code, and in the in-game help.

How do I play multiplayer?

You can either join a network game run by someone else, host your own, or visit a web-server such as freecivweb.org.

To join a network game, choose Connect to Network Game and then Internet Metaserver. A list of active servers should come up; double-click one to join it. (The Freeciv project does not currently run any game servers, so any servers you find are likely to be run by third parties who have decided to advertise them.)

You can also choose to directly connect to a specific server (including ones not on the metaserver list), provided you know the IP address and port of the server you're connecting to. This server will then show up under Local Area Network.

To host your own game, we recommend starting a separate server by hand. (As of 2.4.0, it's no longer possible to host a network game from the client; in any case, we didn't recommend it, as if the client crashed or quit, the server and hence the game would be lost.)

To start the server, enter freeciv-server in a terminal or by double-clicking on the executable. This will start up a text-based interface.

If all players are on the same LAN, they should launch their clients, choose Connect to Network Game and then Local Area Network. You should see the existing server listed; double-click on it to join.

To play over the Internet, players will need to enter the hostname and port into their clients, so the host will need to tell the other players those details. You may also start up the server with the -m command-line option to make it report to the Metaserver and allow other players to connect to it through the Internet Metaserver tab.

Note that hosting an Internet server from a home Internet connection is often problematic, due to firewalling and NAT that can make the server unreachable from the wider Internet. The metaserver does not currently check that a server is reachable before publishing it, so unfortunately it is entirely possible to publish the existence of a game that no-one will be able to connect to. Safely bypassing NAT and firewalls is beyond the scope of this FAQ.

Where is the chatline you are talking about, how do I chat?

The chatline is located at the bottom of the window. Sometimes you have to activate a Chat tab to see it.

In the Gtk client, a shortcut to reach the chatline is the apostrophe (') key. In the SDL client you have to press Tab to access the chatline.

The chatline can be used for normal chatting, or for issuing server commands by typing a forward-slash '/' followed by the server command.

Why can't I attack another player's units?

You have to declare war first. See section for How do I declare war on another player below.

(As a note, you start out at war with all players; at lower skill levels, AI players offer you a cease-fire treaty upon first contact, which if accepted has to be broken before you can attack the player's units or cities.)

How do I declare war on another player?

Go to the Nations report, select the player, then choose Cancel Treaty from the bottom-located Diplomacy menu. This drops you from "cease fire", "armistice", or "peace" into "war". If you've already signed a permanent "alliance" treaty with the player, you will have to cancel treaties several times to get to "war".

See the in-game help on Diplomacy for more detail.

How do I do diplomatic meetings?

Go to the Nations report, select a player, then choose Meet from the bottom-located Diplomacy menu. But remember that you have to either have contact with the player or an embassy established in one of their cities.

How do I trade money with other players?

If you want to make a monetary exchange, first initiate a diplomatic meeting as described in the section about How do I do diplomatic meetings above. In the diplomacy dialog, enter the amount you wish to give in the gold input field on your side or the amount you wish to receive in the gold input field on their side. With the focus in either input field, press Enter to insert the clause into the treaty.

How can I change the way a Freeciv game is ended?

A standard Freeciv game ends when only allied players/teams are left alive, when a player's spaceship arrives at Alpha Centauri, or when you reach the ending turn - whichever comes first.

You can change the default ending turn by changing the endturn setting. You can do this through Remote Server (see article on Server options) under the Options menu item in the Game menu or by typing into the chatline something like:

/set endturn 300

You can end a running game immediately with:

/endgame

For more information, try:

/help endgame

If you want to avoid the game ending by space race, or require a single player/team to win, you can change the victories setting - again either through the Server Options dialog or through the chatline. For instance this changes from the default setting spacerace|allied to disallow allied victory and space race:

/set victories ""

You can instead allow space races without them ending the game by instead changing the endspaceship setting.

A single player who defeats all enemies will always win the game -- this conquest victory condition cannot be changed.

In rulesets which support it, a cultural domination victory can be enabled, again with the victories setting.

My irrigated grassland produces only 2 food. Is this a bug?

No, it isn't. It's a feature. Your government is probably despotism, which has a -1 output whenever a tile produces more than 2 units of food/production/trade. You should change your government (see Government) to get rid of this penalty.

How do I play against computer players?

See also the How do I create teams of AI or human players? section below.

In most cases when you start a single-player game you can change the number of players, and their difficulty, directly through the spinbutton. Note the number of players here includes human players (an aifill of 5 adds AI players until the total number of players becomes 5).

If you are playing on a remote server, you'll have to do this manually. Change the aifill server option through the Remote Server options dialog, or do it on the chatline with something like:

/set aifill 30

Difficulty levels are set with the /cheating, /hard, /normal, /easy, /novice, and /handicapped commands.

You may also create AI players individually. For instance, to create one hard and one easy AI player, enter:

/create ai1
/hard ai1
/create ai2
/easy ai2
/list

More details are in the ./doc/README file supplied with Freeciv and the online manual on this site.

Can I build up the palace or throne room as in the commercial Civilization games?

No. This feature is not present in Freeciv, and will not be until someone draws the graphics for it.

Can I build land over sea/transform ocean to land?

Yes. You can do that by placing engineer units on a transport and going to the ocean tile you want to build land on (this must be in a land corner). Click the transport to display a list of the transported engineers and activate them. Then give them the order of transforming this tile to swamp. This will take a very long time though, so you'd better try with 6 engineers at a time. There must be 3 adjacent land tiles to the ocean tile you are transforming.

Can I change settings or rules to get different types of games?

Of course.

Before the game is started, you may change settings through the server options dialog (available in the pregame screen). You may also change these settings or use server commands through the chatline. If you use the chatline, use the

/show

command to display the most commonly-changed settings (see article on show), or

/help <setting>

to get help on a particular setting, or

/set <setting> <value>

to change a setting to a particular value (see article on server options). After the game begins you may still change some settings (but not others).

World maps can be created using the built-in map editor in the GTK clients. It is also possible to edit running games: Just enable Editing Mode from the Edit menu. (You may also unzip and edit any savegame with a text editor, if you're ambitious, although the format is not documented and is subject to change.)

You can create rulesets or "modpacks" - alternative sets of units, buildings, and technologies. Several different rulesets come with the Freeciv distribution, including a civ1 (Civilization 1 compatibility mode), and civ2 (Civilization 2 compatibility mode). Use the rulesetdir command (see rulesetdir) to change the ruleset (as in /rulesetdir civ2). Note the ruleset mechanism is still being refined from version to version. In the GTK client you are able to choose the ruleset from a dropdown on the pregame screen.

Finally, upgrade! Freeciv continues to improve from version to version: a rule may change when the mailing list agrees it is 'wrong'. See, for instance, the NEWS.

How compatible is Freeciv with the commercial Civilization games?

Freeciv was created as a multiplayer version of Civilization™ with players moving simultaneously. Rules and elements of Civilization II, and features required for single-player use, such as AI players, were added later.

This is why Freeciv comes with several game configurations (rulesets): the civ1 and civ2 rulesets implement game rules, elements and features that bring it as close as possible to Civilization I and Civilization II respectively, while other rulesets such as the default classic ruleset tries to reflect the most popular settings among Freeciv players. Unimplemented Civilization I and II features are mainly those that would have little or no benefit in multiplayer mode, and nobody is working on closing this gap.

Little or no work is being done on implementing features from other similar games, such as SMAC, CTP or Civilization III.

So the goal of compatibility is mainly used as a limiting factor in development: when a new feature is added to Freeciv that makes gameplay different, it is generally implemented in such a way that the "traditional" behaviour remains available as an option. However, we're not aiming for absolute 100% compatibility; in particular, we're not aiming for bug-compatibility.

See also Projects.

My opponents seem to be able to play two moves at once!

Freeciv's multiplayer facilities are asynchronous: during a turn, moves from connected clients are processed in the order they are received. Server managed movement is executed in between turns. This allows human players to surprise their opponents by clever use of goto or quick fingers.

Server settings to mitigate this problem include:

  • phasemode, which has an alternating movement mode, in which only one player can move their units at a time.
  • timeaddenemymove (which extends the turn timeout when an enemy's unit is seen moving).
  • (since 2.3.x) unitwaittime (which imposes a minimum time between moves of a single unit on successive turns).

I am far superior to my opponent but their last city is on a 1x1 island so I cannot conquer it, and they won't give up. What can I do?

Research 'amphibious warfare', build a marine, and get them. Alternatively research 'combined arms' and either move a helicopter or airdrop a paratroopers unit there.

If you can't build marines yet, but you do have engineers, and other land is close-by, you can also build a land-bridge to the island (i.e. transform the ocean).

Why are the AI players so hard on 'novice' or 'easy'?

You are not expanding fast enough. Read the How to Play article for some general tips how to get a head start in the game.

You can also turn off Fog of War. That way, you will see the attacks of the AI. Just type '/set fogofwar disabled' on the chat line before the game starts.

Why are the AI players so easy on 'hard'?

Several reasons. For example, the AI is heavily playtested under and customized to the default ruleset and server settings. Although there are several provisions in the code to adapt to changing rules, playing under different conditions is quite a handicap for it. Though mostly the AI simply doesn't have a good, all encompassing strategy besides "eliminate nation x". For further details, see the article on AI.

To make the game harder, you could try putting some or all of the AI into a team. This will ensure that they will waste no time and resources negotiating with each other and spend them trying to eliminate you. They will also help each other by trading techs. See the question How do I create teams of AI or human players?

You can also form more than one AI team by using any of the different predefined teams, or put some AI players teamed with you.

What distinguishes AI players from humans? What do the skill levels mean?

AI players in Freeciv operate in the server, partly before all clients move, partly afterwards. Unlike the clients, they can in principle observe the full state of the game, including everything about other players, although most levels deliberately restrict what they look at to some extent.

All AI players can change production without penalty. Some levels (generally the harder ones) get other exceptions from game rules; conversely, easier levels get some penalties, and deliberately play less well in some regards.

For more details about how the skill levels differ from each other, see the help for the relevant server command (for instance /help hard).

Other than as noted here, the AI players are not known to cheat.

How do I play on a hexagonal grid?

It is possible to play with hexagonal instead of rectangular tiles. To do this you need to set your topology before the game starts; set this with Map topology index from the game settings, or in the chatline:

/set topology hex|iso|wrapx
 /\ 
|  |
 \/ 

This will cause the client to use an isometric hexagonal tileset when the game starts (go to Game > Options >Local options to choose a different one from the drop-down; hexemplio and isophex are included with the game).

 _ 
/ \
\_/ 

You may also play with overhead hexagonal, in which case you want to set the topology setting to 'hex|wrapx'; the hex2t tileset is supplied for this mode.

How do I create teams of AI or human players?

The GTK and Qt clients have a GUI for setting up teams - just right click on any player and assign them to any team.

You may also use the command-line interface (through the chatline.)

First of all try the /list command. This will show you all players created, including human players and AI players (both created automatically by aifill or manually with /create).

Now, you're ready to assign players to teams. To do this you use the team command. For example, if there's one human player and you want two more AI players on the same team, you can do to create two AI players and put them on the same team you can do

/set aifill 2
/team AI*2 1
/team AI*3 1

You may also assign teams for human players, of course. If in doubt use the /list command again; it will show you the name of the team each player is on. Make sure you double-check the teams before starting the game; you can't change teams after the game has started.

I want more action.

In Freeciv, expansion is everything, even more so than in the single-player commercial Civilization games. Some players find it very tedious to build on an empire for hours and hours without even meeting an enemy.

There are various techniques to speed up the game. The best idea is to reduce the time and space allowed for expansion as much as possible. One idea for multiplayer mode is to add AI players: they reduce the space per player further, and you can toy around with them early on without other humans being aware of it. This only works after you can beat the AI, of course.

Another idea is to create starting situations in which the players are already fully developed. There is no automated support for this yet, but you can create populated maps with the built-in editor.

I can't see trade routes in the city dialog (GTK+)

In the GTK client, you can see the effect of trade routes by left clicking and holding on the trade value in the Info panel of the city dialog.

Community

Does Freeciv violate any rights of the makers of Civilization I or II?

There have been debates on this in the past and the honest answer seems to be: We don't know.

Freeciv doesn't contain any actual material from the commercial Civilization games. (The Freeciv maintainers have always been very strict in ensuring that materials contributed to the Freeciv distribution or website do not violate anyone's copyright.) The name of Freeciv is probably not a trademark infringement. The user interface is similar, but with many (deliberate) differences. The game itself can be configured to be practically identical to Civilization I or II, so if the rules of a game are patentable, and those of the said games are patented, then Freeciv may infringe on that patent, but we don't believe this to be the case.

Incidentally, there are good reasons to assume that Freeciv doesn't harm the sales of any of the commercial Civilization games in any way.

How do I wake up in the morning?

We're open to suggestions on this one.

You can try to give Freeciv to your boss. There is no guarantee, but he may wake up later than you. Remind yourself that if you run into him at Civilization Anonymous, it's time to change jobs.

Where can I ask questions or send improvements?

Please ask questions about the game, its installation, or the rest of this site at the Freeciv Forums.

Patches and bug reports are best reported to the Freeciv bug tracking system at https://osdn.net/projects/freeciv/ticket/.

Technical Stuff

I've found a bug, what should I do?

See the article on Bug Reporting.

I've started a server but the client cannot find it!

By default, your server will be available on host localhost (your own machine), port 5556; these are the default values your client uses when asking which game you want to connect to.

So if you don't get a connection with these values, your server isn't running, or you used -p to start it on a different port, or your system's network configuration is broken.

To start your local server, run freeciv-server. Then type start at the server prompt to begin!

mike@localhost:/usr/local/bin$ ./freeciv-server
This is the server for Freeciv version 2.6.0
You can learn a lot about Freeciv at http://www.freeciv.org/
2: Loading rulesets.
2: AI*1 has been added as Easy level AI-controlled player (classic).
2: AI*2 has been added as Easy level AI-controlled player (classic).
2: AI*3 has been added as Easy level AI-controlled player (classic).
2: AI*4 has been added as Easy level AI-controlled player (classic).
2: AI*5 has been added as Easy level AI-controlled player (classic).
2: Now accepting new client connections on port 5556.

For introductory help, type 'help'.
> start
Starting game.

If the server is not running, you will NOT be able to connect to your local server.

If you can't connect to any of the other games listed, e.g. those on the metaserver, a firewall in your organization/ISP is probably blocking the connection.

If you are running a personal firewall, make sure that you allow communication for freeciv-server and the Freeciv client to the trusted zone. If you want to allow others to play on your server, allow freeciv-server to act as a server on the Internet zone.

I can play on my own server, but the metaserver doesn't seem to work.

If your Metaserver tab turns up an empty list, there might something wrong with your setup.

First, check your Freeciv version. Freeciv clients can only talk to servers of the same major version (2.6.x can only talk to 2.6.y), and there may simply be no public servers for the version you're running. Check out the web interface (which shows servers for all versions) and look at the "version" column.

If you can view the metaserver page with your web browser, and servers are listed, but the client's Metaserver tab still fails to list them, you may be behind a non-transparent proxy. See article on proxy settings for a detailed explanation.

How do I change the metaserver info string?

Use the /metamessage command. See /help metamessage.

Am I using the latest version? Do I need to upgrade?

The current stable Freeciv version is 3.1.0. For an overview of changes that went into this release, see the NEWS-3.1.0 article.

The NEWS-#.#.# article is only updated for a new release; updates to Git can be reviewed in the online source code browser.

If you decide to upgrade, see the Download page for source code or contributed binaries. If you have a working client, and you don't know its version, start it, load a game or scenario, or just start a new game, click on Help for the help menu, and on About Freeciv to see the version and the client type (GTK2, GTK3, QT, SDL2, …).

It's possible that not all precompiled binaries and ports have been updated to 3.1.0 yet. If you can contribute, please do! Prepare a package and announce it to freeciv-dev@freelists.org.

Clients and servers of different major versions are generally incompatible due to changes in the client/server protocol. You will see incompatibilities as a 'mismatched capabilities' error. Different minor versions should be compatible, however. For example, 2.5.4 and 2.5.0 are compatible; 2.5.4 and 3.1.0 are not.

"cannot open display :0"

The Freeciv client is unable to open a window on your local X display. Are you running an X server at all? Maybe you need to install and run one, or switch to a Freeciv client that doesn't need X; see the previous question.

Under Mac OS X, try starting the Freeciv client from the xterm session running under X.

HOME directory not set?

The Freeciv client wants to write a configuration file named freeciv-client-rc-2.6 (for Freeciv 2.6.x) in a directory called .freeciv in your $HOME directory. On Windows the %HOME%-directory can be either explicitly set, or defaults to %APPDATA%. So for instance for Freeciv 2.6 the Windows clients might put their common configuration file in C:\Users\username\AppData\Roaming\.freeciv\freeciv-client-rc-2.6.

How do I restart a saved game?

If for some reason you can't use the start-screen interface for loading a game, you can load one directly through the client or server command line (see Command-line options). You can start a client such as freeciv-gtk3, or freeciv-server, with the -f option, for example:

freeciv-server -f freeciv-T0175-Y01250-auto.sav.bz2

Or you can use the /load command inside the server before starting the game.

The server cannot save games!

In a local game started from the client, the games will be saved into the default Freeciv save directory (typically ~/.freeciv/saves/). If you are running the server from the command line, however, any savegames will be stored in the current directory. If the autosaves server setting is set appropriately, the server will periodically save the game automatically (which can take a lot of disk space in some cases); the frequency is controlled by the saveturns setting. In any case, you should check the ownership, permissions, and disk space/quota for the directory or partition you're trying to save to.

Where are the save games located by default?

On Unix like systems, they will be in ~/.freeciv/saves.

On Windows, they are typically found in a directory like C:\Users\username\AppData\Roaming\.freeciv\saves.

On MacOS systems, it's "/Users/{username}/.freeciv/saves", but the finder won't show you folders that start with ".". You can toggle that by entering CMD+Shift+. while in a finder window. While the hidden stuff is visible you can create an alias to the ".freeciv" folder which will always be visible.

You could change the save games location by setting the HOME environment variable, or using the --saves command line argument to the server (you would have to run it separately).

How do I find out about the available units, improvements, terrain types, and technologies?

There is extensive help on this in the Help menu, but only once the game has been started - this is because all of these things are configurable up to that point. (Some work needs to be done to make this more intuitive.)

The game comes with an interactive tutorial scenario. To run it, select Start Scenario Game from the main menu, then load the tutorial scenario.

Outside the Freeciv client, we have some online tutorials in the Docs section of the wiki. A graph of the (default) technology tree is available on the wiki.

I hate isometric view! How do I play with Civilization I style graphics?

When starting the game, go to More Game Options > Geological > Map topology index, and make sure Isometric is not checked.

The overhead tileset trident is supplied for this topology.

What other GUI options do I have for the Freeciv client?

The look and feel of your GUI is mainly determined by the Freeciv client you use.

The recommended client is the Gtk client. There are a range of different Gtk clients for different versions of the Gtk library—Gtk2/3/etc—but they all support more or less the same feature set. If in doubt, pick the Gtk3 client.

The Qt client is a newer client using the Qt toolkit. It has a more immersive interface. It supports most features, with the notable exception of the map editor.

The SDL clients provide a more immersive experience, but lags behind somewhat in features. (Again, there are two versions of this for different versions of the SDL library.)

The original client was based on the Athena widget set (Xaw), which is fast and was at the time more widely available, but it is no longer maintained, is buggy, and lacks features; it will be removed in a future release. This client can also be compiled to use Xaw3d.

All of these clients should compile and run on any Unix variant we are aware of, not just the ones for which our download section provides native installation support.

For Windows, the Gtk and Qt clients are recommended.

Some details of the GUI can be configured from the running client.

A larger impact is made by the tileset used to display terrain, cities, units, etcetera. Freeciv comes with some tilesets for all topologies; some more can be acquired with the freeciv-modpack utility.

We do not distribute commercial Civilization™ game tiles for obvious copyright reasons.

How do I enable/disable sound support?

The client can be started without sound by supplying the commandline arguments: -P none. The default sound plugin can also be configured in the client settings.

If the client was compiled with sound support, it will be enabled by default. (The only sound plugin supported currently is sdl.)

Further instructions are in ./doc/README.sound in the source tarball.

If sound does not work, try:

freeciv-gtk3 -d 3 -P <plugin> -S stdsounds

This will help you get some debug information, which might give a clue why the sound does not work.

Where can I find more information on the *.ruleset files?

There is some documentation in the ./doc/ directory, such as ./doc/README.effects. The supplied ruleset files also have a minimal explanation of what all the fields mean, so classic/buildings.ruleset would for instance list the meaning of the fields in the buildings.ruleset. Also of interest might be the rulesets page on freeciv.org.

How can I add additional civilizations in the nation/ subdirectory, or add cities to the list for an existing nation?

See the Nations article or ./doc/README.nations in the source tarball.

How can I change the language of my client/server?

See the Interface Language wiki article.

How do I get the latest development code?

Use Git directly:

  1. Obtain and install Git on your Unix machine. On modern distributions it is already there; look for the git command. You can get Git from git-scm.com.
  2. Grab the source:
    $ git clone https://github.com/freeciv/freeciv

Once you're retrieved the source, to update it, cd into the freeciv directory and issue git pull.

Another useful git command is git diff.

This shows the changes between the version you have on disk and the current development code.

This is development code; it may contain new features, bugs, and incompatibilities with older versions.

See also How to Contribute to Freeciv development.

What are the system requirements?

Memory

In a typical game the server takes about 30MB of memory and the client needs about 200MB. These values may change with larger maps or tilesets. For a single player game you need to run both the client and the server.

Processor

We recommend at least a 200MHz processor. The server is almost entirely single-threaded, so more cores will not help. If you find your game running too slow, these may be the reasons:

Too little memory
Swapping memory pages on disc (virtual memory) is really slow. Look at the memory requirements above.
Large map
Larger map doesn't necessary mean a more challenging or enjoyable game. You may try a smaller map.
Many AI players
Again, having more players doesn't necessary mean a more challenging or enjoyable game.
City Governor (CMA)
This is a really useful client side agent which helps you to organize our citizens. However, it consumes many CPU cycles.
Maps and compression
Creating map images and/or the compression of saved games for each turn will slow down new turns. Consider using no compression.
Graphic display

The GTK client works well on 1024x800 or higher resolutions. On smaller screens you may want to enable the Arrange widgets for small displays option under Interface tab in local options.

Network

A 56Kb modem should be enough to play a typical online game. However, many players suggest that a large ping is a big disadvantage. Your ISP mustn't block ports 5556 - 5600, because these are the ports which typical servers are run on.

Windows

How do I use Freeciv under MS Windows?

Precompiled binaries can be downloaded from www.freeciv.org. The native Windows packages come as self-extracting installers.

Simply download and install one of the .EXE installers (GTK, SDL, or QT). All versions require Windows 7 or later.

OK, I've downloaded and installed it, how do I run it?

If you used one of the self installer versions then there's a program group with the name chosen at installation time (for example, Freeciv 3.1.0 (GTK+3 client).) Just go to click on Start→Programs→Freeciv 3.1.0 (GTK+3 client)→Freeciv

That's it! You should be up and running.

I've started the Freeciv client, but don't know what to do next?

The following steps should get you started:

  1. The Freeciv client will pop up and after a second you will be taken to the main menu.
  2. If you want to play against other humans (I think they're human anyway :-) then click on the Connect to Network Game button in the main menu. Then either type in the IP address of the server or select the Internet Metaserver tab to play on online public servers. Then select an available game and click the Connect button. (You may need to click the Update button to get the list of servers initially and to update it after a while.)
  3. If you want to play on your local machine against the AI (all other players are AI controlled) then click on the Start New Game button. Then select your difficulty level and the Total players (it includes yourself, so if you wanted to play against four AI players, you'd select 5).
  4. Click the Pick Nation button to choose your nation, leader name, sex, and city style.
  5. Click the Start button.

That's it! Enjoy!

How do I use a different tileset?

If the tilesets supplied with Freeciv don't do it for you, some popular add-on tilesets are available through the "Freeciv Modpack Installer" utility. To install these, just launch the installer from the Start menu, and choose the one you want; it should then be automatically downloaded and made available for the current user.

If the tileset you want is not available via the modpack installer, you'll have to install it by hand from somewhere.

Then you have to unpack the tileset into the appropriate place. It's best to install it in your user directory. Locate the existing client settings file freeciv-client-rc-2.6; see the question HOME directory not set? to see where that might be. You want to put the tileset in a subdirectory named after the current version (e.g., 2.6\) in the same place as the client settings file. Usually, the main tilespec file foo.tilespec goes directly under 2.6\, and the rest of the tileset files will go in a subdirectory named after the tileset (e.g., 2.6\foo).

You can alternatively unpack the tileset into the same data directory as the rest of your Freeciv installation, alongside the supplied .tilespec files, but that can lead to trouble with uninstallation or upgrades.

Once the tileset is installed, you should be able to select it in the topology-specific tileset dropdowns in the client options. You will need to make sure your game uses the appropriate map topology for the tileset in the game options.

You can also pass a command-line argument to the Freeciv client when you start it to force use of a specific tileset. This also requires that the tileset has been installed in a correct place. Open a Command Prompt, find the client executable, and start the client with the --tiles tilesetname option. For example for the gtk3 client, you might start

freeciv-gtk3 --tiles hexemplio

How do I use a different ruleset?

Again, this is easiest if the ruleset is available through the "Freeciv Modpack Installer" utility that's shipped with Freeciv.

Otherwise, a different ruleset can be used by downloading the ruleset and extracting it in the same place as you would a tileset (see previous question). Generally, the .ruleset and .lua files go in a subdirectory named after the ruleset (for instance ancients\*.ruleset; if there is a .serv file it generally goes directly in the 2.6\ directory.

Then you need to tell Freeciv to use it. For single-player games, if there is a .serv file, the ruleset should be available to select from the drop-down in the client. Otherwise, you can load a ruleset which has a foo.serv file with

/read foo

from the client chatline or server command line before starting the game; you can read a ruleset without a .serv file by typing

/rulesetdir ''ruleset directory''

I opened a ruleset file in Notepad and it is very hard to read

The ruleset files (and other configuration files) are stored with UNIX line endings which Notepad doesn't handle correctly. Please use an alternative editor like WordPad, notepad2, or notepad++ instead.

Mac OS X

None of the current development team use the Mac OS. We're no longer building official packages, and don't have recent experience.

There are unofficial installer packages available; see the Install-MacOSX article on the Freeciv wiki for links and more information.


Top Navigation
Game Anatomy & ModdingDevelopmentGuidesDownloadsAbout Freeciv
Guides
IntroductionManualsFAQTutorials