Freeciv
m (change 'civclient' to 'the client')
Tag: rte-wysiwyg
Line 104: Line 104:
 
* Building a Palace
 
* Building a Palace
 
* Defending against enemy invasions
 
* Defending against enemy invasions
* Using your free units
+
# Using your free units
 
[[Category:Gameplay]]
 
[[Category:Gameplay]]

Revision as of 00:01, 20 February 2016

Genseric wanted to own the wealth of the world. Genseric had the special ability to recruit many free units to fight for Genseric. So Genseric pondered how to raid some cities. Genseric created a simple plan. All units will act berserk and attack the nearest city.

This is why barbarians always fail! Barbarians attack too much and waste their free units. Barbarians neglect the defense of their conquered cities. Someone else always defeats the barbarians! Unless you help them...

Your defection

Barbaricum

Barbaricum is the Barbarian capital city.

You were formerly a tactician for one of the world's major civilizations. You defected to the barbarians. You understood that the barbarian civilization has a permanent advantage over other civilizations. You changed the plan. You will conserve your units, defend your cities and take the world.

With some slight cheating, you can control the barbarian units. (This guide is for Freeciv 2.1.x. Other versions of Freeciv might work, or might be different.) The basic idea is to add the letter 'b' to the server option 'allowtake', then /take Genseric. The problem here is that Freeciv never allows you to disable the barbarian AI. Any attempt to /aitoggle Genseric replies with, "Cannot toggle a barbarian player."

You must understand that the only way to disable the barbarian AI is to edit a saved game.

Editing a save file

So you need an existing save file that you can convert for playing as barbarians. You want a save file where the barbarians already control one or more cities. (This is more probable if the game has "raging hordes, lots of barbarians": /set barbarians 4.) You might already have a save file with barbarian cities. Otherwise, you can play a normal game on your own civserver, and you can save when you see barbarian cities.

Each barbarian nation is one of two flavors: land barbarians and sea barbarians. In Freeciv 2.2, the sea barbarians became pirates.

A save file is an ordinary, compressed text file. You can decompress your chosen save file, then open it in some text editor.

  1. Find your save files. Unix clones (like Linux, BSD) tend to have ~/.freeciv/saves, but other systems might have a different location.
    • Example: $ cd .freeciv/saves
  2. Decompress your chosen file, but keep the original save file. Freeciv 2.1, with default server options, saves .sav.gz gzip files. (Freeciv 2.2 saves .sav.bz2 bzip2 files.)
    • Example: $ zcat game5-turn270.sav.gz > barbarian5-turn270.sav
  3. Open the decompressed file in a text editor.
    • Example: $ mg barbarian5-turn270.sav
  4. In the open file, find the allow_take= line, and add the letter 'b', to allow players to take barbarians. (You can instead /set allowtake HAhadOob after you start the server, but this line is easy to edit now.)
    • Example: Change allow_take="HAhadOo" to allow_take="HAhadOob".
  5. In the open file, find a section for the barbarian player (nation="Barbarian") who is alive and has some cities. Note the name of the player. Disable the AI by changing ai.control=1 to ai.control=0.
  6. Save the file. (Freeciv can already open .sav files, so there is no need to compress the file.)

You need to edit only two lines. For example, I changed only two lines when I converted game5-turn270.sav.gz to barbarian5-turn270.sav:

$ zdiff game5-turn270.sav.gz barbarian5-turn270.sav
--- -   Tue Jan 19 23:12:09 2010
+++ barbarian5-turn270.sav      Fri Jan  8 17:29:52 2010
@@ -72,7 +72,7 @@
 occupychance=0
 autoattack=0
 demography="NASRLPEMOqrb"
-allow_take="HAhadOo"
+allow_take="HAhadOob"
 borders=4
 happyborders=1
 diplomacy=2
@@ -28715,7 +28715,7 @@
 city_style_by_name="European"
 is_male=1
 is_alive=1
-ai.control=1
+ai.control=0
 ai={ "love","spam","countdown","war_reason","patience","warn_space","ask_peace","ask_alliance","ask_ceasefire"
 1,0,-1,5,0,0,0,0,0
 1,1,-1,5,0,0,0,0,0

Identifying a section for the barbarian player

Inside the save file, a barbarian player has a section with nation="Barbarian" and either ai.is_barbarian=1 or ai.is_barbarian=2. Here is an example.

[player20]
name="Genseric"
username="Unassigned"
ranked_username="Unassigned"
nation="Barbarian"
...
is_male=1
is_alive=1
ai.control=1
...
ai.skill_level=7
ai.is_barbarian=2
gold=2806
tax=100
science=0
luxury=0
...

To disable the AI, change ai.control=1 to ai.control=0.

Loading a converted save file

This is the procedure after you convert the save file.

  1. Start the client, click "Load Saved Game".
  2. "Choose Saved Game to Load:" Select and load your .sav file. The file appears in the list, or else through the "Browse..." button.
  3. "Choose a nation to play:" This list never includes the barbarians, so you must choose one of the other nations. Choose any nation and start the game.
  4. In the Chat tab, say /list to list the nations. Find the barbarians in the list.
    • Example: Genseric (user Unassigned, Barbarian, difficulty level hard, Barbarian, Team 19)
  5. Now /take the barbarians.
    • Example: /take Genseric
  6. Enable AI for all other nations, except the barbarians.
    • One way is to say /set autotoggle 1 then say /set autotoggle 0.
  7. Optionally, change the tax rates.
  8. Optionally, change the city produtions.

TODO

  • Game glitches
  • Building a Palace
  • Defending against enemy invasions
  1. Using your free units