FREECIV(6)

okay bestie, welcome to FREECIV(6) from the Games Manual ๐ŸŽฎ๐Ÿ’– โ€” this is the manual page for the Freeciv clients, and we're gonna make it make sense. no cap.

โœจ NAME โœจ

freeciv-gtk3.22, freeciv-gtk4, freeciv-sdl2, freeciv-sdl3, and freeciv-qt โ€” these are the clients for the Freeciv game. yes, all of them, they're the main characters here ๐Ÿ‘‘

๐ŸŒˆ SYNOPSIS ๐ŸŒˆ

here's the whole big mood, literally:

freeciv-gtk3.22|freeciv-gtk4|freeciv-sdl2|freeciv-sdl3|freeciv-qt [
-A|--Announce protocol ] [ -a|--autoconnect ] [ -d|--debug level ] [
-F|--Fatal [ signal_number ] ] [ -f|--file filename ] [ -h|--help ] [
-l|--log filename ] [ -M|--Meta URL ] [ -n|--name name ] [ -p|--port
port ] [ -P|--Plugin string ] [ -r|--read filename ] [ -s|--server
address ] [ -S|--Sound name ] [ -t|--tiles name ] [ -v|--version ] [ --
client-specific-parameters ]

and each client has its own extra little after--- situation:

  • freeciv-gtk3.22 accepts the standard Gtk parameters following --; see the Gtk documentation. It also accepts [ -h|--help ] [ -r|--resolution WIDTHxHEIGHT ]
  • freeciv-gtk4 accepts the following parameters following --: [ -h|--help ] [ -r|--resolution WIDTHxHEIGHT ]
  • freeciv-qt accepts the standard Qt parameters following --; see the Qt documentation. It also accepts [ -h|--help ] [ -f|--flags ]
  • freeciv-sdl2 accepts the following parameters following --: [ -f|--fullscreen ] [ -F|--Font ize ] [ -h|--help ] [ -s|--swrenderer ] [ -t|--theme string ]
  • freeciv-sdl3 accepts the following parameters following --: [ -f|--fullscreen ] [ -F|--Font ize ] [ -h|--help ] [ -t|--theme string ]

๐Ÿ’– DESCRIPTION ๐Ÿ’–

Freeciv is a free turn-based multiplayer strategy game, in which each player becomes the leader of a civilization, fighting to obtain the ultimate goal: To become the greatest civilization. periodt, that's the goal ๐Ÿ‘‘

Players of Civilization IIยฎ by Microproseยฎ should feel at home, since one aim of Freeciv is to have compatible rules. slay.

Freeciv is maintained by an international team of coders and enthusiasts, and is easily one of the most fun and addictive network games out there! (this is literally in the manual, bestie, not me being extra ๐Ÿ˜ญ)

This is the client program used to connect to a Freeciv server โ€” see also freeciv-server(6). freeciv-gtk3.22, freeciv-gtk4, freeciv-qt, freeciv-sdl2, and freeciv-sdl3 can also spawn their own local server for single-player games. iconic.

This manual page only lists the command line arguments. For more details about using freeciv-gtk3.22, freeciv-gtk4, freeciv-sdl2, freeciv-sdl3, or freeciv-qt, see the Client Manual which can be found at the Freeciv website as well as the documentation which is part of the Freeciv distribution.

๐ŸŽ€ OPTIONS ๐ŸŽ€

okay so the following options are accepted by all clients. they may not be combined; that is, -np caesar 5557 will not work, instead you would need to enter -n caesar -p 5557. All options have a short form (single hyphen and single letter) and a long form (double hyphen and a complete word); their effects are identical. iykyk.

โš ๏ธ no combining, bestie โ€” -np caesar 5557 is a no, -n caesar -p 5557 is the yes.
  • -A protocol, --Announce protocol โ€” uses protocol when searching for games on a LAN. Possible values for protocol are:
    • IPv4
    • IPv6
    • none
  • -a, --autoconnect โ€” skips the connect dialog, automatically inserting the default values. This is quite convenient when all has been set up properly.
  • -d level, --debug level โ€” sets the amount of debugging information to be logged in the file named by the -l option. Acceptable values for the level are:
    • fatal โ€” for fatal messages only.
    • error โ€” for fatal and error messages.
    • warning โ€” for fatal, error and warning messages
    • normal โ€” for fatal, error, warning and normal messages (default).
    • verbose โ€” for fatal, error, warning, normal, and verbose messages.
  • -F [ signal_number ], --Fatal [ signal_number ] โ€” raise a custom signal on failed assertion. If signal_number is not specified, then the ABRT signal will be used.
  • -f filename, --file filename โ€” loads a saved game file (filename). This is for reloading previously saved games, or for starting scenarios from the command line.
  • -h, --help โ€” prints a short summary of the standard command line options.
  • -l filename, --log filename โ€” defines a log file, filename, to be produced during processing. Use the -d option to set how much is logged. By default, fatal, error, warning, and normal messages are printed to standard output. With a log file, such messages go to the log instead. If filename already exists, it is appended to.
  • -M URL, --Meta URL โ€” specifies the URL of the metaserver to connect to. A metaserver is a place where Freeciv servers can publish their presence. Freeciv clients consult the metaserver to offer users a selection of games to join. By default, the standard metaserver run by the Freeciv maintainers will be used.
  • -n name, --name name โ€” specifies the user name (name) to use to connect to the server. This option is critical when reconnecting to a game. Please note that you might need to quote your username.
  • -p port, --port port โ€” specifies the server port to connect to. By default this is 5556, if in doubt ask the server administrator.
  • -P string, --Plugin string โ€” specifies the plugin to use for sound output. Available options for string are:
    • none
    • sdl
  • -r filename, --read filename โ€” specifies a file, filename, of server commands which a server spawned by the client will automatically read and process, as if you had typed them in at the server's prompt.
  • -s address, --server address โ€” specifies the game server address to connect to. This server might easily run on the same machine as the client.
  • -S name, --Sound name โ€” specifies the sound set to use. A file called name.soundspec is searched for in the usual places (see the FILES section).
  • -t name, --tiles name โ€” specifies the map graphics ("tiles") to be used within the game. A file called name.tilespec is searched for in the usual places (see the FILES section). Currently the following tilespecs are distributed with Freeciv:
    • amplio2.tilespec
    • cimpletoon.tilespec
    • hex2t.tilespec
    • isophex.tilespec
    • isotrident.tilespec
    • trident.tilespec
  • -v, --version โ€” prints the version number and exits.
  • -- โ€” All parameters following this -- will be considered as client-specific parameters.
  • -- -f, -- --fullscreen โ€” starts the client in full screen mode. Only implemented in the freeciv-sdl2 and freeciv-sdl3 clients.
  • -- -h, -- --help โ€” print the client-specific parameter help.
  • -- -r WIDTHxHEIGHT, -- --resolution WIDTHxHEIGHT โ€” behave as if screen resolution were WIDTHxHEIGHT. Only implemented in the freeciv-gtk3.22 and freeiv-gtk4 clients.
  • -- -t theme, -- --theme theme โ€” use a particular GUI theme. Only implemented in the freeciv-sdl2 and freeciv-sdl3 clients.

๐ŸŒธ EXAMPLES ๐ŸŒธ

freeciv-gtk3.22 --name "King Richard" --server io.daimi.aau.dk

Starts the GTK3.22 client using the name King Richard and connecting to the server at io.daimi.aau.dk. royal behavior, honestly ๐Ÿ‘‘

freeciv-sdl3 -a -t trident

Starts the SDL3-client with the trident tiles and autoconnects to localhost. cute and efficient ๐Ÿฆ‹

๐Ÿ“ FILES ๐Ÿ“

  • ~/.freeciv/freeciv-client-rc-[version-number] โ€” this is where your local settings will be stored.
  • tilespecs โ€” these are searched for in the data path; see ENVIRONMENT.
  • soundspecs โ€” these are searched for in the data path; see ENVIRONMENT.

The freeciv-modpack(6) utility can be used to locate and download additional content such as tilesets and soundsets and (for client-spawned servers only) scenarios and rulesets; it saves files under ~/.freeciv.

๐ŸŒธ ENVIRONMENT ๐ŸŒธ

okay bestie, the Freeciv client accepts these environment variables โ€” yes, all of them, and we are not skipping a single one ๐Ÿ’…

  • FREECIV_CAPS โ€” A string containing a list of "capabilities" provided by the server. The compiled-in default should be correct for most purposes, but if you are familiar with the capability facility in the source you may use it to enforce some constraints between clients and server.
  • FREECIV_COMPRESSION_LEVEL โ€” Sets the compression level for network traffic.
  • FREECIV_DATA_ENCODING โ€” Sets the character encoding used for data files, savegames, and network strings. This should not normally be changed from the default of UTF-8, since that is the format of the supplied rulesets and the standard network protocol. fr fr, leave it alone unless you know what you're doing ๐Ÿซถ
  • FREECIV_INTERNAL_ENCODING โ€” Sets the character encoding used internally by the freeciv client. This generally needs to match the GUI toolkit, so its default depends on the specific client; most clients default to UTF-8.
  • FREECIV_LOCAL_ENCODING โ€” Sets the local character encoding (used for the command line and terminal output). The default is inferred from other aspects of the environment.
  • FREECIV_MULTICAST_GROUP โ€” Sets the multicast group (for the LAN tab).
  • FREECIV_DATA_PATH โ€” A colon separated list of directories pointing to the freeciv data directories. By default Freeciv looks in the following directories, in order, for any data files: the current directory; the "data" subdirectory of the current directory; the subdirectory ".freeciv/"3.2"" in the user's home directory; and the directory where the files are placed by running "make install". If not set, [the original page literally smooshes FREECIV_SAVE_PATH onto the end of this sentence โ€” we're untangling it below, bestie ๐Ÿซถ]
  • FREECIV_SAVE_PATH โ€” A colon separated list of directories pointing to the freeciv save directories. By default Freeciv looks in the following directories, in order, for save files: the current directory; and the subdirectory ".freeciv/saves" in the user's home directory.
Heads up: This does not affect where the server spawned by the client creates save game files; these are always created in ".freeciv/saves" in the user's home directory.
  • FREECIV_SCENARIO_PATH โ€” A colon separated list of directories pointing to the freeciv scenario directories. By default Freeciv looks in the following directories, in order, for scenario files: the current directory; the "data/scenarios" subdirectory of the current directory; the subdirectories ".freeciv/"3.2"/scenarios" and then ".freeciv/scenarios" in the user's home directory; and the directory where the files are placed by running "make install".
Heads up: This does not affect where the server spawned by the client creates scenario files; these are always created in ".freeciv/scenarios" in the user's home directory.
  • FREECIV_OPT โ€” Specifies a file to contain local settings, instead of ~/.freeciv/freeciv-client-rc-[version-number].
  • HOME โ€” Specifies the user's home directory.
  • http_proxy โ€” Set this variable accordingly when using a proxy.
  • LANG or LANGUAGE โ€” Sets the language and locale on some platforms.
  • LC_ALL or LC_CTYPE โ€” Similar to LANG (see documentation for your system).
  • USER โ€” Specifies the username of the current user.

๐Ÿ› BUGS ๐Ÿ›

Please report bugs to the Freeciv bug tracker. Do it for the plot โ€” bug reports are lowkey iconic ๐Ÿ’–


๐Ÿ”ฅ MORE INFO ๐Ÿ”ฅ

See the Freeciv homepage.

Updates and new info is first posted there. iykyk โœจ


๐Ÿ‘‘ AUTHORS ๐Ÿ‘‘

The Freeciv Team <"freeciv-dev at freelists.org">.

This manpage was originally put together by Florian Ernst <florian_ernst AT gmx.net> using the Client Manual and the comments in the sourcecode. It was updated by Ben Bettin <bwbettin AT gmail.com> to add new features, integrate information from the website's online documentation, and for slight formatting adjustments. Feel free to use it as you wish.


๐Ÿฆ‹ SEE ALSO ๐Ÿฆ‹

Check out freeciv-server(6), freeciv-modpack(6), and the Client Manual at the Freeciv homepage. slay ๐Ÿ’œ


xoxo, bestie โ€” this was FREECIV(6), dated June 28th 2023 ๐Ÿ’–โœจ

๐Ÿ“ฆ where this page comes from