-
OK, so I installed Freeciv. How do I play?
Freeciv is a client/server system. To host a game, create computer
players, etcetera, you must run the Freeciv server executable. To join
a game as a player, you must run the Freeciv client executable and connect
to a server. That's right, even when you're playing all by yourself,
you have to start up two different executables.
On Unix-like systems, the superuser (root) has special privileges,
to be used only for system administration.
Freeciv has a built-in check that prevents you from running it as root,
but in some environments (eg. KDE) you may not see the error message.
Make sure you run the Freeciv client and server, and your graphical
desktop environment such as KDE itself, as a normal user, not root.
See the relevant bug report for details.
Once the client is started you can find information in its Help
menu. See also the The README supplied with
Freeciv and the online manual
on this site (which is a little out of date).
If you use MS Windows, see our Freeciv on
MS Windows page. Note that there are two Windows ports, one
requiring cygwin and an X server, one native.
For the Amiga version, see the instructions supplied with it.
Some visual front ends to control the server have been written, but
none of them are distributed with Freeciv yet.
The Freeciv
contributed software directory may contain something to your liking.
Detailed explanations of how to play Freeciv are in
the README file distributed with
the source code, and in the online
manual available on this site which can be downloaded separately.
Once the game is running, extensive help will be available in the
Help menu.
-
I've started a server but the client cannot find it!
By default, your own server will be available on host localhost,
port 5555; by default, your client will try to connect there.
This uses the 'loopback interface', a pseudo-network connection to your
own machine that can be used even on standalone machines.
In fact, it's supposed to be there, but at least one Linux distribution
doesn't always install it.
localhost is supposed to be a name for the IP number
127.0.0.1; on Unix variants, the file /etc/hosts
is usually where this is defined. If this is in order, make sure
127.0.0.1 is operational:
if you're running a Unix variant, try the commands
ifconfig -a
ping 127.0.0.1
The first command must list a network interface with an IP address
of 127.0.0.1, the second must not return an error.
If the loopback device is missing, add it, using your system's
preferred network configuration method. (This varies widely
across OS distributions.)
-
Help! Something started talking to me and I don't know what it is!
Upgrade.
Before version 1.8.0, the Freeciv server would try to connect to the
metaserver
by default. As a result, the majority of games announced there was
started by first-time users who hadn't even read the
README; they would be visited by
'ghosts' that started to chat and ask questions. Most often,
the visitors would never even be noticed.
For this reason, 1.8.0 and up only connect to the metaserver when the
-m flag is specified. When you connect to a game on the
metaserver now, you can count on being invited.
-
I can play on my own server, but the metaserver doesn't seem to work.
We have dedicated gameservers now
(civserver.freeciv.org and
freeciv.netc.pt), so if your metaserver button turns up an empty
list, there's probably something wrong with your setup.
First, check your Freeciv version. Freeciv 1.8.1 and below connect to
the old
metaserver; 1.9.0 and up use the new metaserver; if you're
mixing versions, you may be getting the wrong list.
If you can view the metaserver page with your WWW browser, and servers
are listed, but the client's Metaserver button still fails to list them,
you may be behind a non-transparent WWW proxy. The
README explains how to solve this.
-
How do I change the metaserver info string?
A; Use the metainfo command.
In version 1.11.5 and up, it can be abbreviated to m.
-
Am I using the latest version? Do I need to upgrade?
The current stable Freeciv version is 1.12.0.
For an overview of changes that went into this release,
see the NEWS-1.12.0 file.
For a list of all changes, see the complete
ChangeLog (warning: very large!).
The NEWS-#.#.# file is only updated for a new release; updates to CVS
are listed in the freeciv-cvs archives
and the actual code changes can be reviewed using our online
source code browser.
If you decide to upgrade, see the main page for source code,
or the download page for contributed binaries.
Not all precompiled binaries and ports have been updated to 1.12.0 yet.
If you can contribute, please do! Prepare a package and announce it to
freeciv@freeciv.org.
Clients and servers of different versions are often incompatible due to
changes in the client/server protocol. You will see incompatibilities
as a 'mismatching capabilities' error. For example,
1.8.0 and 1.8.1 are compatible; 1.10.0 and 1.11.0 are not.
-
How do I use Freeciv under MS Windows 95/98/NT ?
See our Freeciv on Windows document.
MS Windows support is relatively recent, and still experimental;
Freeciv was originally written for Unix and the X window system, and
is, in fact, extremely portable across Unix versions. One option is to
install a Unix variant on your PC (such as Linux) and use that.
For a list of supported Freeciv platforms, see the requirements and download
pages.
-
"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 that doesn't need X; see the previous question.
-
HOME directory not set?
The Freeciv client wants to write a configuration file named
.civclientrc in your $HOME directory. On MS Windows,
the $HOME variable is not always set. This can be done from the
DOS prompt or a .bat file, for example:
set home=C:\freeciv
You can still play if this error message appears, but your client options
won't be saved.
-
How do I restart a saved game?
It is not yet possible to load a saved game from a running civserver.
Instead you have to start it with the -f option, for example:
civserver -f civgame1150.sav
-
The server cannot save games!
If the saveturns server variable is set, the server
will attempt to save games in the directory you were in when you
started it. Check its ownership, permissions, and disk space/quota for
the partition it is on. It may be convenient to use a wrapper script that creates and uses a
separate directory for each server session.
-
Why are some of the menus in the Freeciv client disabled?
In
order to play Freeciv, you must start the Freeciv client and connect
to a server. If you play by yourself, start the Freeciv server first,
and connect the client to localhost. On the server command
line, use the s command to start the game. 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?
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; see also 'Why are some
of the menus disabled?'
(Some work needs to be done to make this more intuitive.)
Outside the Freeciv client, we have some online tutorials on
www.freeciv.org, but they are
not entirely up to date.
A graph of the (default) technology tree is available from David Pfitzner: see
http://msowww.anu.edu.au/~dwp/freeciv/.
-
Sometimes, I cannot move; the map doesn't get focus.
This was a known bug in the 1.10.0 GTK+ client, fixed in 1.11.0.
Make sure the map panel has focus!
-
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
.xinitrc:
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'
See also the
April, 2000 thread on this subject.
[6~
-
Menu items do not work under KDE.
Deactivate NumLock.
-
Popup windows are sent to the back in KDE and pile up there.
When opening popups in the Xaw client activated from other popups,
eg. the Change production dialog in the city window, the
popup that was previously open gets sent to the back. After a while
the client slows down due to the number of open city windows, and they
have to be closed one by one. The same thing may happen to report windows.
This problem is specific to the KDE window manager.
If you know a way around it, please let us know.
-
The client complains it can't read the
.civclientrc 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!
Don't tell us: you're using the Xaw client under certain Linux distributions
or 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
configure --with-xaw3d.
- make sure the libXaw.so 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' libXaw.a
somewhere: hunt through the Makefiles and
change lines which contain "-lXaw" to
"/usr/X11/lib/libXaw.a", or wherever libXaw.a is stored on
your machine, then recompile
(this was suggested by dva@uu.gatech.edu)
- install GTK+ (if not installed already), compile and use the
GTK+ client instead of the Xaw one
See also
the SuSE Linux
support database on this problem (in German, or
in English).
If your SEGV at startup is due to a different problem, please
report it to the developers' bug reporting system, by sending it
to bugs@freeciv.org.
-
Freeciv fails to compile due to the Xaw libraries.
As reported with Debian 2.1:
> 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
[...]
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:
./configure --with-xaw [...]
./configure --with-xaw3d [...]
-
When compiling Freeciv from source, the no command cannot be found.
This silly error message, and possibly others, may arise if you
./configure --with-included-gettext to use the
multilingual support library (GNU gettext)
distributed with Freeciv, but change your mind later. The problem is
the creation of a libintl.h -> intl/libgettext.h that
should be removed upon reconfiguration, but isn't. See
this
question asked on freeciv-dev and
the
answer given there.
The same error message may arise if you have no gettext on your system
and forget to use --with-included-gettext.
-
How do I compile Freeciv under Solaris?
Solaris (2.5 and up) has its own version of X in /usr/openwin, its
own version of make in /usr/ccs/bin/make, and its own compiler
(to be purchased separately) which, if you have it, is available in
/opt/SUNWspro/bin. 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+ client. (This stuff can be compiled however and is now more
readily installable with the Ximian
GNOME distribution.
To confuse matters further, many local systems administrators add
MIT X (usually, in /usr/X11), GNU make, and the gcc compiler.
If you're unlucky, the ./configure && make 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.
-
How do I compile Freeciv under Solaris or FreeBSD?
On Solaris, FreeBSD, and some other systems, the default make isn't
GNU make. In order to compile with such a make you must either
- use GNU make or
-
./configure --disable-cvs-deps --disable-nls
in order to disable the GNU make specific parts of the Makefile.
-
I hate isometric view! How do I play with Civ I style graphics?
Start the client as "civclient --tiles trident".
-
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.
Two clients are actively being maintained for
Unix/X11. The default
client uses the GTK+ windowing toolkit.
The original client is based on the Athena widget set ('Xaw'), which is fast
and very widely available, but many users find it old-fashioned. The client
can also be compiled to use Xaw3d. New features are sometimes implemented
in the GTK+ version only, but the Xaw one still has some advantages.
Both clients compile and run on any Unix variant we are aware of, not just
the ones for which our download section provides native
installation support.
This includes MacOS X, and MS Windows with Cygwin and a suitable
X11 server such as Exceed; see our
Freeciv on Windows FAQ for details.
For Amiga and MS Windows, clients exist that use the native windowing system
rather than X11. They are both in under active maintenance and in the main CVS tree.
For 'classic' MacOS, BeOS, Java, and possibly other platforms, clients
are under development - see the projects page
for details. A KDE/Qt client was once started but is not under
development now, as far as we know - see a discussion
on freeciv-dev.
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.
command line option. 1.11.4 and earlier versions default to the trident
tileset, which gives a flat 2D, Civ I-like look. 1.11.6 and up support
an isometric (quasi-3D) tileset.
See also the previous question.
Other tilesets in both categories are separately available: see our
1.11.5 screenshots for an overview.
An older tileset, with larger tiles, was the default for 1.8.1, and is still
bundled with the distribution. Use civclient's -tiles engels
option to select it.
The original Civ I or II tiles can be used with Freeciv.
We do not distribute them for copyright reasons.
If you don't think this is good enough: the developers list
has witnessed many discussions on wrapping at the edges,
hexagonal tiles, playing on a sphere, etc. Unfinished work
exists on a Java client and an OpenGL client.
Most of these solutions would be less portable than what we have now.
See also our graphics section.
-
How do I enable sound support?
Sound support has been implemented by David Weisgerber; an up to date
patch was available in October 2001, but it still isn't part of the
development code.
Earlier discussions on freeciv-dev:
1,
2,
3,
4,
5,
6,
7,
8,
9 (a functional patch),
A (another).
-
Can I build up the palace or throne room as in the commercial Civs?
No. This feature is not present in Freeciv.
-
Can I change settings or rules to get different types of games?
On the server command line, before the game is started, you can change
various game settings: for example, the way in which the world map is
generated, the number and strength of AI players, the cost of stealing
or exchanging technology. When you join someone else's game, don't
forget to check the settings.
World maps can be created using the CivWorld map editor (available
separately). It is not yet possible to edit savefiles from running
games; the editor will turn them into empty maps.
You can create 'modpacks': alternative sets of units, buildings,
and technologies. They are defined in the data/*/*.ruleset files.
The 'default' is to mimic Civ II; the 'civ1' modpack makes the game
more like Civ I. The modpack mechanism is still being enhanced from
version to version.
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-1.12.0 file,
differences between Civ II and Freeciv,
and lists that have appeared on freeciv-dev (partly listing differences
fixed in later Freeciv releases):
On the differences with Civ III, see
(a link
I am unable to check right now).
-
How do I attack another player?
From version 1.11.4 and up, you are initially at peace with everyone -
except AI players, which do not know how to use diplomacy. Therefore,
you cannot attack any enemy units or cities unless you explicitly
cancel the peace treaty with this enemy: use F3, select the player, and
Cancel Pact.
-
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. AI players have the opportunity to move at the end of a turn;
automated moves such as the execution of goto are executed at the start.
This allows AI players to move units twice without client-side interruption
(see bug reports
286
and
371).
It also allows human players to surprise their opponents by clever use of goto.
-
Why are the AI players so damn good on 'easy'?
You are not expanding fast enough.
See
a discussion on freeciv-dev.
-
What distinguishes AI players from humans? What do the skill levels mean?
AI players in Freeciv operate in the server, partly before after all clients
move, partly afterwards. Unlike the clients, they can observe the full state
of the game, including everything about other players.
Hard AI
players can set their research, tax or luxury to 100% regardless of
their governments. Other than this, the AI players are not known to cheat.
Further (see the code),
the easy AI are less eager to build cities, and
at easy and normal, the AI 'forget' where huts are
and which unknown techs exist (see the code).
-
I want more action.
In Freeciv, expansion is everything, even more so than in Civ I or II.
Some players find it very tedious to build on an empire for hours and
hours without even meeting an enemy.
See
some techniques to speed up the game.
The basic 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.
-
How do I change the font?
For the GTK+ client, you can specify fonts in $HOME/freeciv.rc.
For example,
style "help_text"
{
font = "-*-courier-medium-r-*-*-14-*-*-*-*-*-iso8859-*"
}
For the Xaw client, you can change the font with X resources.
You can specify them on the
command line with the -xrm command-line option, or put them
in your .Xdefaults file or the Freeciv app-defaults
file.
To change the main font, try something like:
civclient -xrm "Freeciv*font: 8x16"
If the font isn't fixed width, some on the dialogs won't look right,
but they'll still work.
-
How do I get the latest development code?
A snapshot of the development code is made every day;
simply retrieve the
latest version
with your browser.
This is development code; it
may contain new features, bugs, and incompatibilities with
older versions.
An alternative is to use CVS directly:
-
Obtain and install CVS on your Unix machine. On modern distributions
it is already there; look for the cvs command.
You can get CVS from
Cyclic Software.
-
Set your CVSROOT environment variable:
-
using /bin/sh:
CVSROOT=:pserver:freecvs@www.freeciv.org:/home/freeciv/CVS;
export CVSROOT
-
using ksh or bash:
export CVSROOT=:pserver:freecvs@www.freeciv.org:/home/freeciv/CVS
-
using csh or tcsh:
setenv CVSROOT :pserver:freecvs@www.freeciv.org:/home/freeciv/CVS
-
Tell the CVS server who you are:
cvs login (password: freecvs)
-
Grab the source:
cvs co freeciv
Once you're retrieved the source, to update it, cd into
the freeciv directory and issue cvs update.
|
Another useful cvs command is:
cvs diff -u
This shows the changes between the version you have on disk
and the current development code.
See also how to contribute to Freeciv
development.
If you'd like to know more about CVS, try
here .
-
Does Freeciv violate any rights of the makers of Civilization I or II?
There have been debates on this and the honest answer seems to be: we don't know.
Freeciv doesn't contain any actual material from Civ I or II, so it doesn't
infringe on copyright. The name 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 Civ I
and Civ II. If the rules of a game are patentable, and those of Civ I
or II are patented, then Freeciv may infringe on that patent.
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.
-
Where can I ask questions or send improvements?
Please send questions about the game, its installation, this FAQ, or the
rest of this site to the freeciv@freeciv.org mailing list.
Patches are welcomed on the freeciv-dev@freeciv.org list;
bug reports at bugs@freeciv.org.
The mailing lists are archived;
see our mailinglists overview.
There is a Freeciv newsgroup:
alt.games.freeciv. It was created early 1999.
Few Usenet servers carry it.
If you have a question about Freeciv that isn't answered
on this site, a better answer to a question that is already here,
or another suggestion to improve this FAQ, please mail it to
freeciv@freeciv.org and we'll include it.
The
mailing list archives are available online.
Bug reports are best reported to the Freeciv bug tracking system, either
by WWW form at http://www.freeciv.org/cgi-bin/bugs or by e-mail to
bugs@freeciv.org.