Re: [Freeciv-Dev] (PR#37537) [Patch] Base build time

2007-08-10 Thread Marko Lindqvist

URL: http://bugs.freeciv.org/Ticket/Display.html?id=37537 

On 10/08/07, William Allen Simpson [EMAIL PROTECTED] wrote:

 Each terrain should have a different
 build time for each base.

 Feel free to implement it. But in a proper way that does not hardcode
number of bases.


 - ML



___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


Re: [Freeciv-Dev] (PR#37537) [Patch] Base build time

2007-08-10 Thread William Allen Simpson

URL: http://bugs.freeciv.org/Ticket/Display.html?id=37537 

Since this was originally posted before I was developing, I didn't pay
attention.  This is a bad idea!  Each terrain should have a different
build time for each base.

Building an airport on a hill is (should be) harder than on plains.
Likewise, a fortress in a swamp. ;-)

This is/was especially needed for civ3+ as the nations with fast/slow
workers are affected proportionately.

Maybe there's going to be some nice multiplier/divisor system, but right
now the data for everything is in the terrain files.



___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


Re: [Freeciv-Dev] (PR#37537) [Patch] Base build time

2007-08-05 Thread Marko Lindqvist

URL: http://bugs.freeciv.org/Ticket/Display.html?id=37537 

On 03/08/07, Marko Lindqvist [EMAIL PROTECTED] wrote:
 On 05/03/07, Marko Lindqvist [EMAIL PROTECTED] wrote:
 
   This makes built time property of base type.

  Updated against svn

 Again only updated so that it applies and compiles. This requires
complete retesting to make sure that it still works after all these
small updates.


 - ML

diff -Nurd -X.diff_ignore freeciv/client/packhand.c freeciv/client/packhand.c
--- freeciv/client/packhand.c	2007-08-05 17:26:44.0 +0300
+++ freeciv/client/packhand.c	2007-08-05 17:54:41.0 +0300
@@ -2467,8 +2467,6 @@
   pterrain-transform_result = terrain_by_number(p-transform_result);
   pterrain-transform_time = p-transform_time;
   pterrain-rail_time = p-rail_time;
-  pterrain-airbase_time = p-airbase_time;
-  pterrain-fortress_time = p-fortress_time;
   pterrain-clean_pollution_time = p-clean_pollution_time;
   pterrain-clean_fallout_time = p-clean_fallout_time;
   
@@ -2535,6 +2533,8 @@
 
   pbase-gui_type = p-gui_type;
 
+  pbase-build_time = p-build_time;
+
   pbase-flags = p-flags;
 
   tileset_setup_base(tileset, pbase);
diff -Nurd -X.diff_ignore freeciv/common/base.h freeciv/common/base.h
--- freeciv/common/base.h	2007-08-05 17:26:44.0 +0300
+++ freeciv/common/base.h	2007-08-05 17:55:40.0 +0300
@@ -53,6 +53,7 @@
   char activity_gfx[MAX_LEN_NAME];
   struct requirement_vector reqs;
   enum base_gui_type gui_type;
+  int build_time;
 
   bv_unit_classes native_to;
   bv_base_flags flags;
diff -Nurd -X.diff_ignore freeciv/common/packets.def freeciv/common/packets.def
--- freeciv/common/packets.def	2007-08-03 22:14:13.0 +0300
+++ freeciv/common/packets.def	2007-08-05 17:54:41.0 +0300
@@ -1264,8 +1264,6 @@
   TERRAIN transform_result;
   UINT8 transform_time;
   UINT8 rail_time;
-  UINT8 airbase_time;
-  UINT8 fortress_time;
   UINT8 clean_pollution_time;
   UINT8 clean_fallout_time;
   
@@ -1292,6 +1290,7 @@
   REQUIREMENT reqs[MAX_NUM_REQS:reqs_count];
   BASE_GUI gui_type;
   BV_UNIT_CLASSES native_to;
+  UINT8 build_time;
   BV_BASE_FLAGS flags;
 end
 
diff -Nurd -X.diff_ignore freeciv/common/terrain.h freeciv/common/terrain.h
--- freeciv/common/terrain.h	2007-08-03 22:14:13.0 +0300
+++ freeciv/common/terrain.h	2007-08-05 17:54:41.0 +0300
@@ -175,8 +175,6 @@
   struct terrain *transform_result;
   int transform_time;
   int rail_time;
-  int airbase_time;
-  int fortress_time;
   int clean_pollution_time;
   int clean_fallout_time;
 
diff -Nurd -X.diff_ignore freeciv/common/tile.c freeciv/common/tile.c
--- freeciv/common/tile.c	2007-08-05 17:26:44.0 +0300
+++ freeciv/common/tile.c	2007-08-05 18:08:03.0 +0300
@@ -319,9 +319,9 @@
 enum base_type_id base)
 {
   if (base == BASE_AIRBASE) {
-return ptile-terrain-fortress_time * ACTIVITY_FACTOR;
+return base_by_number(BASE_AIRBASE)-build_time * ACTIVITY_FACTOR;
   } else {
-return ptile-terrain-airbase_time * ACTIVITY_FACTOR;
+return base_by_number(BASE_FORTRESS)-build_time * ACTIVITY_FACTOR;
   }
 
   return 0;
diff -Nurd -X.diff_ignore freeciv/data/civ1/terrain.ruleset freeciv/data/civ1/terrain.ruleset
--- freeciv/data/civ1/terrain.ruleset	2007-08-03 22:13:41.0 +0300
+++ freeciv/data/civ1/terrain.ruleset	2007-08-05 17:54:41.0 +0300
@@ -909,6 +909,7 @@
 ; reqs 	  = requirements to build the base (see effects.ruleset
 ;   and README.effects for help on requirements)
 ; gui_type= How gui should handle this base. Fortress/Airbase/Other
+; build_time  = How long it takes for a unit to build this base
 ; flags
 ;   - NoAggressive  = Units inside are not considered aggressive
 ;   - DefenseBonus  = Units inside gain defense bonus
@@ -929,6 +930,7 @@
   UnitFlag, Settlers, Local
 }
 gui_type = Fortress
+build_time   = 3
 native_to= Land
 flags= NoAggressive, DefenseBonus, ClaimTerritory,
NoStackDeath, DiplomatDefense
@@ -943,5 +945,6 @@
   Tech, Never, Player
 }
 gui_type = Airbase
+build_time   = 3
 native_to= Air, Missile
 flags= NoStackDeath, DiplomatDefense, ParadropFrom
diff -Nurd -X.diff_ignore freeciv/data/civ2/terrain.ruleset freeciv/data/civ2/terrain.ruleset
--- freeciv/data/civ2/terrain.ruleset	2007-08-03 22:13:41.0 +0300
+++ freeciv/data/civ2/terrain.ruleset	2007-08-05 17:54:41.0 +0300
@@ -1000,6 +1000,7 @@
 ; reqs 	  = requirements to build the base (see effects.ruleset
 ;   and README.effects for help on requirements)
 ; gui_type= How gui should handle this base. Fortress/Airbase/Other
+; build_time  = How long it takes for a unit to build this base
 ; flags
 ;   - NoAggressive  = Units inside are not considered aggressive
 ;   - DefenseBonus  = Units inside gain defense bonus
@@ 

Re: [Freeciv-Dev] (PR#37537) [Patch] Base build time

2007-08-03 Thread Marko Lindqvist

URL: http://bugs.freeciv.org/Ticket/Display.html?id=37537 

On 05/03/07, Marko Lindqvist [EMAIL PROTECTED] wrote:

  This makes built time property of base type.

 Updated against svn


 - ML

diff -Nurd -X.diff_ignore freeciv/client/packhand.c freeciv/client/packhand.c
--- freeciv/client/packhand.c	2007-08-03 22:14:26.0 +0300
+++ freeciv/client/packhand.c	2007-08-03 22:50:38.0 +0300
@@ -2433,8 +2433,6 @@
   pterrain-transform_result = terrain_by_number(p-transform_result);
   pterrain-transform_time = p-transform_time;
   pterrain-rail_time = p-rail_time;
-  pterrain-airbase_time = p-airbase_time;
-  pterrain-fortress_time = p-fortress_time;
   pterrain-clean_pollution_time = p-clean_pollution_time;
   pterrain-clean_fallout_time = p-clean_fallout_time;
   
@@ -2505,6 +2503,8 @@
 
   pbase-gui_type = p-gui_type;
 
+  pbase-build_time = p-build_time;
+
   pbase-flags = p-flags;
 
   tileset_setup_base(tileset, pbase);
diff -Nurd -X.diff_ignore freeciv/common/base.h freeciv/common/base.h
--- freeciv/common/base.h	2007-03-09 16:03:32.0 +0200
+++ freeciv/common/base.h	2007-08-03 22:50:38.0 +0300
@@ -47,6 +47,7 @@
   char activity_gfx[MAX_LEN_NAME];
   struct requirement_vector reqs;
   enum base_gui_type gui_type;
+  int build_time;
   bv_unit_classes native_to;
 
   bv_base_flags flags;
diff -Nurd -X.diff_ignore freeciv/common/packets.def freeciv/common/packets.def
--- freeciv/common/packets.def	2007-08-03 22:14:13.0 +0300
+++ freeciv/common/packets.def	2007-08-03 22:50:38.0 +0300
@@ -1264,8 +1264,6 @@
   TERRAIN transform_result;
   UINT8 transform_time;
   UINT8 rail_time;
-  UINT8 airbase_time;
-  UINT8 fortress_time;
   UINT8 clean_pollution_time;
   UINT8 clean_fallout_time;
   
@@ -1292,6 +1290,7 @@
   REQUIREMENT reqs[MAX_NUM_REQS:reqs_count];
   BASE_GUI gui_type;
   BV_UNIT_CLASSES native_to;
+  UINT8 build_time;
   BV_BASE_FLAGS flags;
 end
 
diff -Nurd -X.diff_ignore freeciv/common/terrain.h freeciv/common/terrain.h
--- freeciv/common/terrain.h	2007-08-03 22:14:13.0 +0300
+++ freeciv/common/terrain.h	2007-08-03 22:50:38.0 +0300
@@ -175,8 +175,6 @@
   struct terrain *transform_result;
   int transform_time;
   int rail_time;
-  int airbase_time;
-  int fortress_time;
   int clean_pollution_time;
   int clean_fallout_time;
 
diff -Nurd -X.diff_ignore freeciv/common/tile.c freeciv/common/tile.c
--- freeciv/common/tile.c	2007-08-03 22:14:13.0 +0300
+++ freeciv/common/tile.c	2007-08-03 23:05:36.0 +0300
@@ -315,9 +315,9 @@
 enum base_type_id base)
 {
   if (base == BASE_AIRBASE) {
-return ptile-terrain-fortress_time * ACTIVITY_FACTOR;
+return base_type_get_by_id(BASE_AIRBASE)-build_time * ACTIVITY_FACTOR;
   } else {
-return ptile-terrain-airbase_time * ACTIVITY_FACTOR;
+return base_type_get_by_id(BASE_FORTRESS)-build_time * ACTIVITY_FACTOR;
   }
 
   return 0;
diff -Nurd -X.diff_ignore freeciv/data/civ1/terrain.ruleset freeciv/data/civ1/terrain.ruleset
--- freeciv/data/civ1/terrain.ruleset	2007-08-03 22:13:41.0 +0300
+++ freeciv/data/civ1/terrain.ruleset	2007-08-03 22:54:21.0 +0300
@@ -909,6 +909,7 @@
 ; reqs 	  = requirements to build the base (see effects.ruleset
 ;   and README.effects for help on requirements)
 ; gui_type= How gui should handle this base. Fortress/Airbase/Other
+; build_time  = How long it takes for a unit to build this base
 ; flags
 ;   - NoAggressive  = Units inside are not considered aggressive
 ;   - DefenseBonus  = Units inside gain defense bonus
@@ -929,6 +930,7 @@
   UnitFlag, Settlers, Local
 }
 gui_type = Fortress
+build_time   = 3
 native_to= Land
 flags= NoAggressive, DefenseBonus, ClaimTerritory,
NoStackDeath, DiplomatDefense
@@ -943,5 +945,6 @@
   Tech, Never, Player
 }
 gui_type = Airbase
+build_time   = 3
 native_to= Air, Missile
 flags= NoStackDeath, DiplomatDefense, ParadropFrom
diff -Nurd -X.diff_ignore freeciv/data/civ2/terrain.ruleset freeciv/data/civ2/terrain.ruleset
--- freeciv/data/civ2/terrain.ruleset	2007-08-03 22:13:41.0 +0300
+++ freeciv/data/civ2/terrain.ruleset	2007-08-03 22:53:23.0 +0300
@@ -1000,6 +1000,7 @@
 ; reqs 	  = requirements to build the base (see effects.ruleset
 ;   and README.effects for help on requirements)
 ; gui_type= How gui should handle this base. Fortress/Airbase/Other
+; build_time  = How long it takes for a unit to build this base
 ; flags
 ;   - NoAggressive  = Units inside are not considered aggressive
 ;   - DefenseBonus  = Units inside gain defense bonus
@@ -1020,6 +1021,7 @@
   UnitFlag, Settlers, Local
 }
 gui_type = Fortress
+build_time   = 3
 native_to= Land
 flags= NoAggressive, DefenseBonus, ClaimTerritory,

Re: [Freeciv-Dev] (PR#37537) [Patch] Base build time

2007-03-11 Thread Marko Lindqvist

URL: http://bugs.freeciv.org/Ticket/Display.html?id=37537 

On 3/6/07, Marko Lindqvist [EMAIL PROTECTED] wrote:

 On 3/5/07, Marko Lindqvist [EMAIL PROTECTED] wrote:
 
   This makes built time property of base type.

  - Updated against svn
  - Necessary modifications to civ1  civ2 rulesets too

 - Updated against svn
 - Removed unused fortress_time and airbase_time definitions from
terrains in rulesets


 - ML

diff -Nurd -X.diff_ignore freeciv/client/packhand.c freeciv/client/packhand.c
--- freeciv/client/packhand.c	2007-03-09 16:14:15.0 +0200
+++ freeciv/client/packhand.c	2007-03-11 23:38:22.0 +0200
@@ -2415,8 +2415,6 @@
   pterrain-transform_result = get_terrain(p-transform_result);
   pterrain-transform_time = p-transform_time;
   pterrain-rail_time = p-rail_time;
-  pterrain-airbase_time = p-airbase_time;
-  pterrain-fortress_time = p-fortress_time;
   pterrain-clean_pollution_time = p-clean_pollution_time;
   pterrain-clean_fallout_time = p-clean_fallout_time;
   
@@ -2487,6 +2485,8 @@
 
   pbase-gui_type = p-gui_type;
 
+  pbase-build_time = p-build_time;
+
   pbase-flags = p-flags;
 
   tileset_setup_base(tileset, pbase);
diff -Nurd -X.diff_ignore freeciv/common/base.h freeciv/common/base.h
--- freeciv/common/base.h	2007-03-09 16:03:32.0 +0200
+++ freeciv/common/base.h	2007-03-11 23:39:13.0 +0200
@@ -47,6 +47,7 @@
   char activity_gfx[MAX_LEN_NAME];
   struct requirement_vector reqs;
   enum base_gui_type gui_type;
+  int build_time;
   bv_unit_classes native_to;
 
   bv_base_flags flags;
diff -Nurd -X.diff_ignore freeciv/common/packets.def freeciv/common/packets.def
--- freeciv/common/packets.def	2007-03-09 16:14:15.0 +0200
+++ freeciv/common/packets.def	2007-03-11 23:39:50.0 +0200
@@ -1252,8 +1252,6 @@
   TERRAIN transform_result;
   UINT8 transform_time;
   UINT8 rail_time;
-  UINT8 airbase_time;
-  UINT8 fortress_time;
   UINT8 clean_pollution_time;
   UINT8 clean_fallout_time;
   
@@ -1280,6 +1278,7 @@
   REQUIREMENT reqs[MAX_NUM_REQS:reqs_count];
   BASE_GUI gui_type;
   BV_UNIT_CLASSES native_to;
+  UINT8 build_time;
   BV_BASE_FLAGS flags;
 end
 
diff -Nurd -X.diff_ignore freeciv/common/terrain.h freeciv/common/terrain.h
--- freeciv/common/terrain.h	2007-03-03 18:28:05.0 +0200
+++ freeciv/common/terrain.h	2007-03-11 23:38:22.0 +0200
@@ -144,8 +144,6 @@
   struct terrain *transform_result;
   int transform_time;
   int rail_time;
-  int airbase_time;
-  int fortress_time;
   int clean_pollution_time;
   int clean_fallout_time;
 
diff -Nurd -X.diff_ignore freeciv/common/tile.c freeciv/common/tile.c
--- freeciv/common/tile.c	2007-03-06 03:31:58.0 +0200
+++ freeciv/common/tile.c	2007-03-11 23:38:22.0 +0200
@@ -292,13 +292,13 @@
   case ACTIVITY_IRRIGATE:
 return ptile-terrain-irrigation_time * ACTIVITY_FACTOR;
   case ACTIVITY_FORTRESS:
-return ptile-terrain-fortress_time * ACTIVITY_FACTOR;
+return base_type_get_by_id(BASE_FORTRESS)-build_time * ACTIVITY_FACTOR;
   case ACTIVITY_RAILROAD:
 return ptile-terrain-rail_time * ACTIVITY_FACTOR;
   case ACTIVITY_TRANSFORM:
 return ptile-terrain-transform_time * ACTIVITY_FACTOR;
   case ACTIVITY_AIRBASE:
-return ptile-terrain-airbase_time * ACTIVITY_FACTOR;
+return base_type_get_by_id(BASE_AIRBASE)-build_time * ACTIVITY_FACTOR;
   case ACTIVITY_FALLOUT:
 return ptile-terrain-clean_fallout_time * ACTIVITY_FACTOR;
   default:
diff -Nurd -X.diff_ignore freeciv/data/civ1/terrain.ruleset freeciv/data/civ1/terrain.ruleset
--- freeciv/data/civ1/terrain.ruleset	2007-03-11 19:33:15.0 +0200
+++ freeciv/data/civ1/terrain.ruleset	2007-03-11 23:41:58.0 +0200
@@ -604,6 +604,7 @@
 ; reqs 	  = requirements to build the base (see effects.ruleset
 ;   and README.effects for help on requirements)
 ; gui_type= How gui should handle this base. Fortress/Airbase/Other 
+; build_time  = How long it takes for a unit to build this base
 ; flags
 ;   - NoAggressive  = Units inside are not considered aggressive
 ;   - DefenseBonus  = Units inside gain defense bonus
@@ -624,6 +625,7 @@
   UnitFlag, Settlers, Local
 }
 gui_type = Fortress
+build_time   = 3
 native_to= Land
 flags= NoAggressive, DefenseBonus, ClaimTerritory,
NoStackDeath, DiplomatDefense
@@ -638,5 +640,6 @@
   Tech, Never, Player
 }
 gui_type = Airbase
+build_time   = 3
 native_to= Air, Missile
 flags= NoStackDeath, DiplomatDefense, ParadropFrom
diff -Nurd -X.diff_ignore freeciv/data/civ2/terrain.ruleset freeciv/data/civ2/terrain.ruleset
--- freeciv/data/civ2/terrain.ruleset	2007-03-10 19:40:14.0 +0200
+++ freeciv/data/civ2/terrain.ruleset	2007-03-11 23:42:38.0 +0200
@@ -696,6 +696,7 @@
 ; reqs 	  = requirements to build the base (see effects.ruleset
 ;   and README.effects for help on 

Re: [Freeciv-Dev] (PR#37537) [Patch] Base build time

2007-03-05 Thread Marko Lindqvist

URL: http://bugs.freeciv.org/Ticket/Display.html?id=37537 

On 3/5/07, Marko Lindqvist [EMAIL PROTECTED] wrote:

  This makes built time property of base type.

 - Updated against svn
 - Necessary modifications to civ1  civ2 rulesets too


 - ML

diff -Nurd -X.diff_ignore freeciv/client/packhand.c freeciv/client/packhand.c
--- freeciv/client/packhand.c	2007-03-06 03:31:58.0 +0200
+++ freeciv/client/packhand.c	2007-03-06 03:45:35.0 +0200
@@ -2414,8 +2414,6 @@
   pterrain-transform_result = get_terrain(p-transform_result);
   pterrain-transform_time = p-transform_time;
   pterrain-rail_time = p-rail_time;
-  pterrain-airbase_time = p-airbase_time;
-  pterrain-fortress_time = p-fortress_time;
   pterrain-clean_pollution_time = p-clean_pollution_time;
   pterrain-clean_fallout_time = p-clean_fallout_time;
   
@@ -2481,6 +2479,8 @@
 
   pbase-native_to = p-native_to;
 
+  pbase-build_time = p-build_time;
+
   pbase-flags = p-flags;
 }
 
diff -Nurd -X.diff_ignore freeciv/common/base.h freeciv/common/base.h
--- freeciv/common/base.h	2007-03-06 03:31:58.0 +0200
+++ freeciv/common/base.h	2007-03-06 03:46:29.0 +0200
@@ -39,6 +39,7 @@
   char name_orig[MAX_LEN_NAME];
   int id;
   struct requirement_vector reqs;
+  int build_time;
   bv_unit_classes native_to;
 
   bv_base_flags flags;
diff -Nurd -X.diff_ignore freeciv/common/packets.def freeciv/common/packets.def
--- freeciv/common/packets.def	2007-03-06 03:31:58.0 +0200
+++ freeciv/common/packets.def	2007-03-06 03:47:22.0 +0200
@@ -1250,8 +1250,6 @@
   TERRAIN transform_result;
   UINT8 transform_time;
   UINT8 rail_time;
-  UINT8 airbase_time;
-  UINT8 fortress_time;
   UINT8 clean_pollution_time;
   UINT8 clean_fallout_time;
   
@@ -1272,6 +1270,7 @@
   STRING name[MAX_LEN_NAME];
   UINT8 reqs_count;
   REQUIREMENT reqs[MAX_NUM_REQS:reqs_count];
+  UINT8 build_time;
   BV_UNIT_CLASSES native_to;
   BV_BASE_FLAGS flags;
 end
diff -Nurd -X.diff_ignore freeciv/common/terrain.h freeciv/common/terrain.h
--- freeciv/common/terrain.h	2007-03-03 18:28:05.0 +0200
+++ freeciv/common/terrain.h	2007-03-06 03:45:35.0 +0200
@@ -144,8 +144,6 @@
   struct terrain *transform_result;
   int transform_time;
   int rail_time;
-  int airbase_time;
-  int fortress_time;
   int clean_pollution_time;
   int clean_fallout_time;
 
diff -Nurd -X.diff_ignore freeciv/common/tile.c freeciv/common/tile.c
--- freeciv/common/tile.c	2007-03-06 03:31:58.0 +0200
+++ freeciv/common/tile.c	2007-03-06 03:45:35.0 +0200
@@ -292,13 +292,13 @@
   case ACTIVITY_IRRIGATE:
 return ptile-terrain-irrigation_time * ACTIVITY_FACTOR;
   case ACTIVITY_FORTRESS:
-return ptile-terrain-fortress_time * ACTIVITY_FACTOR;
+return base_type_get_by_id(BASE_FORTRESS)-build_time * ACTIVITY_FACTOR;
   case ACTIVITY_RAILROAD:
 return ptile-terrain-rail_time * ACTIVITY_FACTOR;
   case ACTIVITY_TRANSFORM:
 return ptile-terrain-transform_time * ACTIVITY_FACTOR;
   case ACTIVITY_AIRBASE:
-return ptile-terrain-airbase_time * ACTIVITY_FACTOR;
+return base_type_get_by_id(BASE_AIRBASE)-build_time * ACTIVITY_FACTOR;
   case ACTIVITY_FALLOUT:
 return ptile-terrain-clean_fallout_time * ACTIVITY_FACTOR;
   default:
diff -Nurd -X.diff_ignore freeciv/data/civ1/terrain.ruleset freeciv/data/civ1/terrain.ruleset
--- freeciv/data/civ1/terrain.ruleset	2007-03-06 03:31:56.0 +0200
+++ freeciv/data/civ1/terrain.ruleset	2007-03-06 03:50:17.0 +0200
@@ -614,6 +614,7 @@
   Tech, Construction, Player
   TerrainClass, Land, Local
 }
+build_time  = 3
 native_to   = Land
 flags   = NoAggressive, DefenseBonus, ClaimTerritory,
   NoStackDeath, DiplomatDefense
@@ -624,5 +625,6 @@
 { type, name, range
   Tech, Never, Player
 }
+build_time  = 3
 native_to   = Air, Missile
 flags   = NoStackDeath, DiplomatDefense, ParadropFrom
diff -Nurd -X.diff_ignore freeciv/data/civ2/terrain.ruleset freeciv/data/civ2/terrain.ruleset
--- freeciv/data/civ2/terrain.ruleset	2007-03-06 03:31:57.0 +0200
+++ freeciv/data/civ2/terrain.ruleset	2007-03-06 03:48:58.0 +0200
@@ -706,6 +706,7 @@
   Tech, Construction, Player
   TerrainClass, Land, Local
 }
+build_time  = 3
 native_to   = Land
 flags   = NoAggressive, DefenseBonus, ClaimTerritory,
   NoStackDeath, DiplomatDefense
@@ -717,5 +718,6 @@
   Tech, Radio, Player
   TerrainClass, Land, Local
 }
+build_time  = 3
 native_to   = Air, Helicopter, Missile
 flags   = NoStackDeath, DiplomatDefense, ParadropFrom
diff -Nurd -X.diff_ignore freeciv/data/default/terrain.ruleset freeciv/data/default/terrain.ruleset
--- freeciv/data/default/terrain.ruleset	2007-03-06 03:31:57.0 +0200
+++ freeciv/data/default/terrain.ruleset	2007-03-06 03:48:08.0 +0200
@@ -773,6 +773,7 @@
   Tech, Construction, Player
   TerrainClass, Land, Local
 }
+build_time  = 3
 native_to   = Land
 flags   =