diff -Xdiff_ignore -r -u freeciv-cvs-Oct-26-old/common/city.c freeciv-cvs-Oct-26-new/common/city.c --- freeciv-cvs-Oct-26-old/common/city.c Sat Oct 27 07:56:00 2001 +++ freeciv-cvs-Oct-26-new/common/city.c Sat Oct 27 13:38:57 2001 @@ -1014,8 +1014,8 @@ int city_rapture_grow(struct city *pcity) { struct government *g = get_gov_pcity(pcity); - return (pcity->rapture>0 && pcity->food_surplus>0 && - government_has_flag(g, G_RAPTURE_CITY_GROWTH)); + return (pcity->rapture>0 && pcity->rapture%game.rapturedelay==0 && + pcity->food_surplus>0 && government_has_flag(g, G_RAPTURE_CITY_GROWTH)); } /************************************************************************** diff -Xdiff_ignore -r -u freeciv-cvs-Oct-26-old/common/game.c freeciv-cvs-Oct-26-new/common/game.c --- freeciv-cvs-Oct-26-old/common/game.c Sat Oct 27 07:56:01 2001 +++ freeciv-cvs-Oct-26-new/common/game.c Sat Oct 27 13:27:03 2001 @@ -703,6 +703,7 @@ game.cityfactor = GAME_DEFAULT_CITYFACTOR; game.citymindist = GAME_DEFAULT_CITYMINDIST; game.civilwarsize= GAME_DEFAULT_CIVILWARSIZE; + game.rapturedelay= GAME_DEFAULT_RAPTUREDELAY; game.unhappysize = GAME_DEFAULT_UNHAPPYSIZE; game.angrycitizen= GAME_DEFAULT_ANGRYCITIZEN; game.foodbox = GAME_DEFAULT_FOODBOX; diff -Xdiff_ignore -r -u freeciv-cvs-Oct-26-old/common/game.h freeciv-cvs-Oct-26-new/common/game.h --- freeciv-cvs-Oct-26-old/common/game.h Sat Oct 27 07:56:01 2001 +++ freeciv-cvs-Oct-26-new/common/game.h Sat Oct 27 13:28:25 2001 @@ -74,6 +74,7 @@ int cityfactor; int citymindist; int civilwarsize; + int rapturedelay; int min_players, max_players, nplayers; int aifill; int notradesize, fulltradesize; @@ -332,6 +333,10 @@ #define GAME_DEFAULT_CIVILWARSIZE 10 #define GAME_MIN_CIVILWARSIZE 6 #define GAME_MAX_CIVILWARSIZE 1000 + +#define GAME_DEFAULT_RAPTUREDELAY 1 +#define GAME_MIN_RAPTUREDELAY 1 +#define GAME_MAX_RAPTUREDELAY 99 #define GAME_DEFAULT_FOODBOX 10 #define GAME_MIN_FOODBOX 5 Only in freeciv-cvs-Oct-26-new/: my_patch diff -Xdiff_ignore -r -u freeciv-cvs-Oct-26-old/server/savegame.c freeciv-cvs-Oct-26-new/server/savegame.c --- freeciv-cvs-Oct-26-old/server/savegame.c Sat Oct 27 07:56:11 2001 +++ freeciv-cvs-Oct-26-new/server/savegame.c Sat Oct 27 13:29:49 2001 @@ -1762,6 +1762,9 @@ game.citymindist = secfile_lookup_int_default(file, GAME_DEFAULT_CITYMINDIST, "game.citymindist"); + game.rapturedelay = secfile_lookup_int_default(file, + GAME_DEFAULT_RAPTUREDELAY, "game.rapturedelay"); + if (has_capability("watchtower", savefile_options)) { game.watchtower_extra_vision = secfile_lookup_int(file, "game.watchtower_extra_vision"); @@ -2108,6 +2111,7 @@ secfile_insert_int(file, game.cityfactor, "game.cityfactor"); secfile_insert_int(file, game.citymindist, "game.citymindist"); secfile_insert_int(file, game.civilwarsize, "game.civilwarsize"); + secfile_insert_int(file, game.rapturedelay, "game.rapturedelay"); secfile_insert_int(file, game.diplcost, "game.diplcost"); secfile_insert_int(file, game.freecost, "game.freecost"); secfile_insert_int(file, game.conquercost, "game.conquercost"); diff -Xdiff_ignore -r -u freeciv-cvs-Oct-26-old/server/stdinhand.c freeciv-cvs-Oct-26-new/server/stdinhand.c --- freeciv-cvs-Oct-26-old/server/stdinhand.c Sat Oct 27 07:56:11 2001 +++ freeciv-cvs-Oct-26-new/server/stdinhand.c Sat Oct 27 13:36:31 2001 @@ -548,6 +548,12 @@ "every direction. If it is set to 0 (default), it is overwritten by " "the current ruleset when the game starts.") }, + { "rapturedelay", &game.rapturedelay, NULL, NULL, + SSET_RULES, SSET_TO_CLIENT, + GAME_MIN_RAPTUREDELAY, GAME_MAX_RAPTUREDELAY, GAME_DEFAULT_RAPTUREDELAY, + N_("Slows down the rapture effect."), + N_("Sets the number of turns between rapture growth of a city.") }, + { "razechance", &game.razechance, NULL, NULL, SSET_RULES, SSET_TO_CLIENT, GAME_MIN_RAZECHANCE, GAME_MAX_RAZECHANCE, GAME_DEFAULT_RAZECHANCE,