; Modifying this file: ; You should not modify this file except to make bugfixes or ; for other "maintenance". If you want to make custom changes, ; you should create a new datadir subdirectory and copy this file ; into that directory, and then modify that copy. Then use the ; command "rulesetdir " in the server to have freeciv ; use your new customized file. ; Note that the freeciv AI may not cope well with anything more ; than minor changes. [datafile] description="Civ2Civ3 game rules for Freeciv" options="+Freeciv-2.4-ruleset" [about] ; Ruleset name name = _("Civ2Civ3 ruleset") ; Description of the ruleset description = _("\ You are playing Freeciv with civ2civ3 rules:\ \n\n\ Gameplay more similar to civ3, keeping the combat system from civ2.\ \n\n\ Adapted for single player, with AI less aggressive at start,\ but more challenging at the end.\ ") [options] global_init_techs="" global_init_buildings="Palace" [civstyle] ; Value added to city pollution base_pollution = -20 ; Cost in luxuries of making one citizen happier happy_cost = 2 ; Cost in food of upkeeping a single citizen food_cost = 2 ; Parameters used to generalize the calculation of city granary size: ; if city_size <= num_inis: ; city_granary_size = (granary_food_ini[city_size] * foodbox / 100) ; if city_size > num_inis; ; city_granary_size = (granary_food_ini[num_inis] + ; granary_food_inc * (city_size - num_inis)) * foodbox / 100 granary_food_ini = 20, 20, 20, 20, 20, 30, 30, 40 granary_food_inc = 0 ; City center minimum outputs min_city_center_food = 1 min_city_center_shield = 0 min_city_center_trade = 0 ; Square of initial city radius init_city_radius_sq = 5 ; Square of initially visible radius (true distance). init_vis_radius_sq = 5 ; The type of collateral contamination produced by a nuclear attack. ; "Pollution" - Pollution (same as industrial/population-generated). ; "Fallout" - Nuclear Fallout (distinct from industrial/population). nuke_contamination = "Fallout" ; A base bribe cost, modified heavily by other factors base_bribe_cost = 750 ; Barbarian leader ransom in gold ransom_gold = 100 ; Number of veteran levels lost when upgrading a unit upgrade_veteran_loss = 0 ; Number of veteran levels lost when auto-upgrading a unit autoupgrade_veteran_loss = 0 ; Whether player gets to select which terrain improvement to pillage. pillage_select = 1 ; Method of paying unit and improvement gold upkeep ; 0 - The player's total gold must be non-negative after paying upkeep ; costs associated with each city. If for any city the player's gold ; is negative, random buildings in the city are sold off. If the gold ; is still negative, then supported units with gold upkeep are ; disbanded. ; 1 - In the first step, the player's total gold must be non-negative after ; paying upkeep for all buildings within a city. If for any city the ; player's gold is negative, random buildings in the city are sold off. ; In the second step, gold upkeep for all units is paid in a lump sum. ; If the player does not have enough gold, random units with gold upkeep ; are disbanded. ; 2 - Gold upkeep for all buildings and units is paid in a lump sum after ; all cities have been processed. If the player does not have enough ; gold, alternatively a random buildings from a random cities is sold ; and a random units with gold upkeep is disbanded till the treasury is ; balanced. gold_upkeep_style = 2 ; Method of calculating technology costs ; 0 - Civ (I|II) style. Every new tech add researchcost to cost of next tech. ; 1 - Cost of technology is: ; MAX((1+parents) * (researchcost/2) * sqrt(1+parents), researchcost) ; where num_parents == number of requirement for tech, counted ; recursively. ; 2 - Cost are read from tech.ruleset. Missing costs are generated by ; style 1. ; 3 - Cost of technology is: ; cost = base * (reqs - 1)^2 / (1 + sqrt(sqrt(reqs))) - base/2 ; 4 - Cost are read from tech.ruleset. Missing costs are generated by ; style 3. tech_cost_style = 2 ; Base research cost for tech styles 1 & 2 base_tech_cost = 20 ; Technology leak from other civilizations ; 0 - No reduction of the technology cost. ; 1 - Technology cost is reduced depending on the number of players ; which already know the tech and you have an embassy with. ; 2 - Technology cost is reduced depending on the number of all players ; (human, AI and barbarians) which already know the tech. ; 3 - Technology cost is reduced depending on the number of normal ; players (human and AI) which already know the tech. tech_leakage = 1 [illness] ; Whether plagues (illness) are possible illness_on = 1 ; the base factor for illness (of percent) illness_base_factor = 10 ; minimum city size for illness illness_min_size = 5 ; factor for how much trading with a plagued city increases our city's ; chance for plague (in percent) illness_trade_infection = 50 ; factor for how much pollution within a city increases its chance for ; plague (in percent) illness_pollution_factor = 50 [incite_cost] ; city_incite_cost = total_factor * (city_size) * (base_incite_cost ; + (units_cost) * unit_factor ; + (improvements_cost) * improvement_factor) ; / ((distance to capital) * 100) ; See city_incite_cost() for more details base_incite_cost = 1000 improvement_factor = 1 unit_factor = 2 total_factor = 100 [global_unit_options] ; Shore landing style ; 0 - normal movement ; 1 - (default) slow invasions by removing all ; movement points from ground units moving ; from ocean tile to land slow_invasions = 1 [combat_rules] ;If killstack is set to 1, each time a defender unit lost in combat, and is ;not inside a city, fortress or airbase, all units in the same tile are ;destroyed along with the defender. This is the freeciv default. ;If this options is set to 0, only the defender unit is destroyed. killstack = 1 ;If tired_attack is set to 1, units that attack with only 1/3 or 2/3 moves ;left will have their attack power reduced by 2/3 or 1/3 respectively. If ;this is set to 0 units will attack with full strength even if they have ;only fractional moves left. tired_attack = 0 [borders] ; Base border radius from city. radius_sq_city = 5 ; Border radius square increased by this amount / point of city size size_effect = 1 [research] ; Method of paying tech upkeep ; 0 - no upkeep ; 1 - upkeep is calculated as: ; / tech_upkeep_divider + tech_upkeep_free tech_upkeep_style = 1 ; upkeep cost is divided by this value tech_upkeep_divider = 200 [calendar] ; Year in the beginning of the game start_year = -4000 ; Year 1 instead of 0. skip_year_0 = 1 ; What labels are used of positive and negative years. positive_label = _("CE") negative_label = _("BCE") [playercolors] background.r = 86 background.g = 86 background.b = 86 ; player colors for 32 players are defined below colorlist = { "r", "g", "b" 255, 0, 0 0, 128, 0 255, 255, 255 255, 255, 0 138, 43, 226 255, 140, 0 0, 255, 255 139, 69, 19 211, 211, 211 255, 215, 0 255, 20, 147 124, 252, 0 218, 112, 214 30, 144, 255 250, 128, 114 154, 205, 50 25, 25, 112 0, 255, 127 139, 0, 0 100, 149, 237 0, 128, 128 255, 192, 203 255, 250, 205 119, 136, 153 255, 127, 80 255, 0, 255 128, 128, 0 245, 222, 179 184, 134, 11 173, 216, 230 102, 205, 170 255, 165, 0 } [teams] ; freeciv optional team names definition. ; ; name = ; _("Team 0"), ; _("Team 1"), ; _("Team 2"), ; _("Team 3"), ; etc... [settings] ; freeciv game settings for the default ruleset ; ; set = ; { "name", "value", "lock" ; "bool_set", TRUE, FALSE ; "int_set", 123, FALSE ; "str_set", "test", FALSE ; } ; freeciv game settings for civ2civ3 ruleset ; ;set = ; { "name", "value", "lock" ; "aifill", 6, FALSE ; "generator", "FRACTAL", FALSE ; "topology", "WRAPX|WRAPY|ISO", FALSE ; "mapsize", "PLAYER", FALSE ; "tilesperplayer", 100, FALSE ; "tinyisles", TRUE, FALSE ; "separatepoles", TRUE, FALSE ; "startunits", "cwx", FALSE ; "citymindist", 3, FALSE ; "techlevel", 1, FALSE ; "sciencebox", 100, FALSE ; "borders", "ENABLED", FALSE ; "foggedborders", TRUE, FALSE ; "happyborders", TRUE, FALSE ; "trademindist", 999, FALSE ; "restrictinfra", TRUE, FALSE ; "unreachableprotects", FALSE, FALSE ; "onsetbarbs", 120, FALSE ; "migration", TRUE, FALSE ; "separatepoles", TRUE, FALSE ; }