Complete.Org: Mailing Lists: Archives: freeciv-dev: July 2004:
[Freeciv-Dev] Re: (PR#8680) README.rulesets out of date
Home

[Freeciv-Dev] Re: (PR#8680) README.rulesets out of date

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: marko.lindqvist@xxxxxxxxxxx
Cc: freeciv-data@xxxxxxxxxxx
Subject: [Freeciv-Dev] Re: (PR#8680) README.rulesets out of date
From: "Per Inge Mathisen" <per@xxxxxxxxxxx>
Date: Tue, 13 Jul 2004 08:23:22 -0700
Reply-to: rt@xxxxxxxxxxx

<URL: http://rt.freeciv.org/Ticket/Display.html?id=8680 >

A patch to update doc/README.rulesets.  Mostly the file is gutted of
outdated information and information that is going to be outdated when gen
eff hits the streets.

Vasco, you might want to look at the original file to check if you got all
that variant stuff right.

  - Per

Index: doc/README.rulesets
===================================================================
RCS file: /home/freeciv/CVS/freeciv/doc/README.rulesets,v
retrieving revision 1.6
diff -u -r1.6 README.rulesets
--- doc/README.rulesets 2 Nov 2002 13:33:54 -0000       1.6
+++ doc/README.rulesets 13 Jul 2004 15:20:42 -0000
@@ -8,8 +8,7 @@
  Rulesets allow modifiable sets of data for units, advances, terrain,
  improvements, wonders, nations, cities, governments and miscellaneous
  game rules, without requiring recompilation, in a way which is
- consistent across a network and through savegames.  (In the future
- there could be other categories of rulesets.)
+ consistent across a network and through savegames.
 
 - To play Freeciv normally: don't do anything special; the new
   features all have defaults which give the standard Freeciv 
@@ -33,7 +32,9 @@
   Freeciv rules.
 
   Note that the Freeciv AI might not play as well with rules other
-  than standard Freeciv.  (See notes below.)
+  than standard Freeciv.  The AI is supposed to understand and 
+  utilize all sane rules variations, so please report any AI 
+  failures so that they can be fixed.
 
 The rest of this file contains:
 
@@ -46,47 +47,11 @@
 Using and modifying rulesets:
 -----------------------------
 
-Rulesets are specified using new server options.  The command above
-of "./ser -r data/civ1.serv" just reads a file which sets these 
-options (as well as a few of the standard server options).  
-The new server options are:
-
-        techs, governments, units, buildings,
-        terrain, nations, cities, game.
-
-They are special server options in that they take string values, but 
-otherwise the behave like normal server options.  Eg, try the server 
-command "explain techs".
-
-For each of these options, the value of the option specifies a 
-subdirectory of the Freeciv data directory, containing a file
-name techs.ruleset, units.ruleset, buildings.ruleset, etc.
-
-Eg, the commands:
-   
-       set techs default
-       set governments default
-       set units civ1
-       set buildings custom
-       set terrain civ2
-       set nations default
-       set cities default
-       set game custom
-
-would specify the files:
-
-       data/default/techs.ruleset
-       data/default/governments.ruleset
-       data/civ1/units.ruleset
-       data/custom/buildings.ruleset
-       data/civ2/terrain.ruleset
-       data/default/nations.ruleset
-       data/default/cities.ruleset
-       data/custom/game.ruleset
-
-(This is just an example, and may not give very sensible rules; the
-directory data/custom and the file data/custom/buildings.ruleset do 
-not exist in standard Freeciv.)
+Rulesets are specified using the server command "rulesetdir".  The 
+command above of "./ser -r data/civ1.serv" just reads a file which 
+uses this command (as well as a few of the standard server options).  
+The server command specifies in which directory the ruleset files
+are to be found.
 
 The ruleset files in the data directory are user-editable, so you can
 modify them to create modified or custom rulesets (without having to
@@ -102,13 +67,7 @@
 - The files are not all independent, since eg, units depend on
   advances specified in the techs file.
 
-- Wonders and city improvements have a new field, "variant".  This
-  allows limited changes to the effects of specific wonders and
-  improvements, where such changes have been implemented.  See the
-  "TODO Variants" section below for which variant effects which have
-  been implemented so far.
-
-- Units have a new field, "roles", which is like "flags", but 
+- Units have a field, "roles", which is like "flags", but 
   determines which units are used in various circumstances of the
   game (rather than intrinsic properties of the unit).
   See comments in common/unit.h
@@ -154,57 +113,12 @@
 Properties of units and advances are now fairly well generalised.
 Properties of buildings are still rather inflexible.
 
-NOTE:  There is much in the rulesets that is not completely
-implemented.  Be sure to read Restrictions and Limitations, below.
-
-----------------------------------------------------------------------
-The civstyle option:
---------------------
-
-The server option civstyle still exists, but its only current use is
-to determine how much of the map is revealed when the Apollo Program
-id built.
-
-The civstyle option will be removed in the near future.
-
-----------------------------------------------------------------------
-The AI:
--------
-
-An important caveat regarding rulesets is that while rulesets allow
-considerable flexibility, the AI has been designed and tested using
-"standard Freeciv" (effectively Civ2) rules.  So the AI may not do as
-well with modified rules.
-
-Some changes to the AI have been made to try to take some of the
-ruleset changes into account, and the combat calculations have been
-fudged to try to avoid core dumps, but in general you should not
-expect the AI to work as well with non-default options (where Civ1 is
-definitely included in "non-default").
-
-Examples of problems which have not been fixed:
-- Units not having hitpoints in Civ1 can make a big difference to 
-  appropriate combat strategies.  
-- City walls are sufficiently different (increased build cost, and 
-  upkeep; and effect vs sea) to require different handling?
-- Without the Harbour and Offshore Platform improvements, cities with
-  many ocean squares are much more limited in Civ1.  
-- Wonders which only work on a single continent are not given special
-  consideration by the AI.
-
-Hopefully this situation can be improved in the future, but the more 
-flexible the rules, the harder to write a good AI...
-
 ----------------------------------------------------------------------
 Restrictions and Limitations:
 -----------------------------
 
 units.ruleset:
 
-  Unused entries:
-
-    - uk_gold
-
   Restrictions:
 
     - At least one unit with role "FirstBuild" must be available
@@ -227,23 +141,10 @@
     - These unit flag combinations won't work:
       - "Diplomat" and "Caravan"
 
-buildings.ruleset:
-
-  Unused entries:
-
-    - terr_gate
-    - spec_gate
-    - sabotage
-    - effect
-
 nations.ruleset:
 
   Unused entries:
 
-    - attack
-    - expand
-    - civilized
-    - advisors
     - tech_goals
     - wonder
     - government
@@ -262,106 +163,4 @@
 
 For units and advances, all information regarding each unit or advance
 is now captured in the data tables, and these are now "fully
-customizable", with the old enumeration types completely removed.  For
-improvements and wonders, each one has a largely unique effect, so the
-effects themselves are still hardwired in the code.  The "variant"
-field now allows some flexibility, though the effects themselves must
-still be hard-coded.  There are some plans to improve this situation.
-
-----------------------------------------------------------------------
-TODO:
------
-
-- More improvement and wonder variants for Civ1 (see next section).
-- Other alternative (non-Civ1) variants?  (If desired.)
-- Better: Scrap variants completely and do something more general...
-
-- Fix up AI dynamic government choice code.
-- Work on making the AI handle non-default cases better.
-- Could have other information to help the AI?
-  Eg, scores for units/techs/buildings, to help the AI know which 
-  ones to prefer?
-
-- Rulesets for: time progression, ...?
-
-----------------------------------------------------------------------
-TODO Variants: 
---------------
-
-First, those variants which have been implemented:
-(Note Variant=0 should always be "standard Freeciv" effect.)
-
-Barracks:       Variant=0: just works for ground units (Civ2)
-                Variant=1: works also for air and sea units (Civ1)
-Barracks II, Barracks III, Sun Tzu:
-                These use the same variant value and effect as
-                Barracks.
-City Walls:      Variant=0: only applies against land and heli units
-                Variant=1: applies against sea units too
-Police Station:  This uses the same variant value and effect as 
-                Women's Suffrage (see below).
-
-Pyramids:       Variant=0: counts as Granary in every city (Civ2)
-                Variant=1: allows all government types and there is 
-                           no transition anarchy (Civ1)
-United Nations:  Variant=0: units regain extra hp per turn (Freeciv)
-                Variant=1: allows all government types and there is 
-                           no transition anarchy (Civ1) (see note(*))
-Hoover Dam:     Variant=0: works on all cities owned
-                Variant=1: only works for cities on the same 
-                           continent as where the wonder is built
-J.S. Bach:      Variant=0: works on all cities owned
-                Variant=1: only works for cities on the same 
-                           continent as where the wonder is built
-Women's Suff.:   Variant=0: -1 unit-unhappy per City (-2 under 
-                           Democracy) (Freeciv)
-                Variant=1: -1 unit-unhappy per Unit (Civ1)
-Magellan's Exp.: Variant=0: gives sea units 2 extra move points
-                Variant=1: gives sea units only 1 extra move point
-Great Wall:     Uses same variant and effect as City Walls.
-Leo's Workshop:  Variant=0: Upgrades one obsolete unit per game turn.
-                Variant=1: Upgrades all obsolete units each turn.
-Michelangelo's:  Variant=0: same as a Cathedral in every city
-                Variant=1: doubles effect of cathedrals
-
-Other differences between Civ1 and Civ2/Freeciv which have not been
-implemented as variants:
-
-Copernicus' Obs.: Freeciv: science output +50% in a city
-                 Civ1:    doubles knowledge production in city, after
-                          all other effects.
-Isaac Newton's:   Freeciv: science output +100% in a city
-                 Civ1:    "increases effects of Libraries and 
-                          Universities" - by how much??
-
-There are other more minor Civ1/Civ2/Freeciv differences, which 
-could be handled using variants, for:
-    Courthouse 
-    Cure For Cancer
-    Hanging Gardens
-    Lighthouse
-
-Notes:
-
-Aqueduct and Sewer System: 
-   The maximum sizes for cities without these improvements is handled 
-separately, without using variants.  This leaves variants available 
-if some other effects are desired.
-
-Colosseum, Cathedral, Temple:
-   Note that the technology effects on the effectiveness of these
-buildings are not handled by variants, but by specially noting the
-techs; see game.rtech fields cathedral_plus, cathedral_minus,
-colosseum_plus, and temple_plus.  (Also applies to Michelangelo's.)
-
-(*) United Nations: 
-    I'm not sure what to do here: the diplomatic effect of Civ1,Civ2 
-isn't appropriate for multiplayer Freeciv, and the hp effect of 
-Freeciv isn't appropriate for Civ1 (no hitpoints).  The govchange 
-effect seems reasonable -- note there is no Statue of Liberty in 
-Civ1, and Pyramids, which has the same effect in Civ1, becomes 
-obsolete.  Alternatively a Suffrage-like effect would seem sensible: 
-your population is more willing to go to war if it has the sanction 
-of the United Nations!
-
-----------------------------------------------------------------------
+customizable", with the old enumeration types completely removed.

[Prev in Thread] Current Thread [Next in Thread]
  • [Freeciv-Dev] Re: (PR#8680) README.rulesets out of date, Per Inge Mathisen <=