First commit

This commit is contained in:
2026-02-21 14:29:36 +01:00
commit 27c674d2d6
14 changed files with 17542 additions and 0 deletions
+919
View File
@@ -0,0 +1,919 @@
=================================
Domesecration ruleset for FreeCiv
=================================
OBJECTIVES:
-----------
Base FreeCiv on *Animal Oppression and Human Violence: A History of Domesecration*.
INFO:
-----
- Help texts have been updated (mainly buildings and wonders), so the
info showed ingame already takes into account the changed rules. Some
graphical tables from the manual might not match (mainly terrains and
governments), so better use the tables in this Readme as reference.
- I suggest new players to start a game with 6 players or so, AI skill
level Normal, and default ruleset options (small continental map with
100 land tiles per player).
- For challenging games, you may place several AI players in the same
team. For example, one team with 5 AIs together against you.
- Cheating AI level was adjusted for these rules, I suggest experienced
players to use it (better than Hard AI). The "AI Love" effect reduces
the amount of wars between the AIs, even when they are not in the same
team, making them more hostile against the human players (or against
other non cheating AIs).
CHEATING AI: +40% Science, Luxury, Gold and Production, +40 AI love,
+40% Veteran chance, +40% Bribe and Incite costs, -20% Pollution, +1
Content per city, no food penalty from units.
The following is a full list of changes compared to classic ruleset
(although it should be playable without reading it)...
CORE CHANGES:
-------------
- No Rapture Growth (celebration only causes additional Trade per tile,
same as civ3). Foodbox readjusted to keep a constant city growth.
- Settlers cost 2 population (as in civ3). This way, the number of tiles
worked in the original city are reduced by 2, equal to the number of
tiles worked in the newly created city.
- Disabled national trade routes: it is still possible to create trade
routes, but only to foreign cities that you are not at war with (trade
routes are canceled when war breaks out). Each city can support a
maximum of 2 trade routes. Removed the one time revenues, and reduced
the ongoing revenues.
- Every unit (except Settlers, Migrants, and Fanatics, which cost
population to build) pays some kind of upkeep cost. Some governments
pay shields as upkeep, and others pay coins (similar to civ3), but not
both.
- Most units also require upkeep in Food, except for Workers/Engineers,
Diplomat/Spy, Caravan/Freight, Explorer/AWACS, and Cruise
Missile/Nuclear.
A city can support for free as many units (with upkeep in Food) as
its population size (min 4, max 20). Additional units cause waste of
Food. If the city shrinks due to starvation, one of those extra units
will be disbanded.
- Units lose one veteran level when upgraded.
- Enabled tired attack: units that attack with less than a single move
point will have their attack power reduced accordingly.
If they have 2/3 movement points, they will attack with 2/3 strength.
If they have 1/3 movement points, they will attack with 1/3 strength.
- Unlimited movement on rails delayed to maglev (available with
Superconductors). Movement bonus on railroads x6, on roads x3, on
rivers x3 (non diagonal).
- Added Fort and Airstrip bases, required before you can build Fortress
or Airbase, respectively. It prevents the construction of full bases
in one single turn. The bases no longer protect full stacks from being
killed when one unit is defeated.
- All military infantry units can build fortresses. All worker units can
build airbases. The working time required to build a base is 2 times
the movement cost of the terrain.
- Specialists output reduced to 2 (same as civ2). There are wonders that
increase it to 3 for all players.
- Enabled Tech Leakage: technologies are cheaper if already discovered
by other nations you have embassy with.
- The cost of each tech is equal to the number of steps needed to get
the tech (Tech Cost = Base Cost * Number of Parents). It is a linear
formula more similar to civ2, and it fits better the new reduced
bonuses from Trade and Science.
- Tech upkeep assigned to cities: some bulbs (research points) are
required from each city to maintain a given technological level. The
upkeep grows from 0 during the middle ages, up to 10 bulbs per city
when the whole tech tree was researched.
- No holes allowed in the tech tree. To acquire a tech you must know
its prerequisites, and you cannot lose a tech that another depends on.
- Enabled culture points, generated in your cities by wonders
(proportional to their build cost), and by certain buildings
(proportional to their upkeep cost): Temple, Amphitheatre,
Cathedral, Library, University, Research Lab, and Palaces.
The culture accumulated by each city increases its resistance in
diplomatic fights against enemy agents (+5% for each 100 culture
points, up to +50%).
The culture accumulated by your nation increases the cost to bribe
your units or incite your cities (+50% for each 1000 culture points,
up to +500%).
- Certain achievements give extra culture points: Metropolis (city reaches
size 20), Cultured City (city reaches 1000 culture points), Multicultural
(2 nationalities), Literate (libraries in every city), Land Ahoy (2nd
continent sighted), Entire Map Known, and Spaceship Launch.
- Enabled risk of plague at cities with population greater than 4.
Chances reduced by the buildings Aqueduct and Sewer System, the tech
Medicine, and the wonder Cure for Cancer.
- Added other random disasters: Earthquake (city on Hills), Fire (city
larger than 8), Flood (city near rivers), Industrial Accident (city
with Mfg. Plant), and Nuclear Accident (city with Nuclear Plant).
OPTIONAL RULES:
---------------
- Every player starts with 1 Settler, 1 Worker, 1 Explorer, 1 Diplomat,
and 1 free tech. ('startunits', 'techlevel')
- Minimum distance between cities set to 3. ('citymindist')
- Initial national border equal to city radius (2 tiles). ('borders')
- Restricted the use of infrastructure (roads, railroads, and rivers)
for enemy units inside national borders. ('restrictinfra')
- Unreachable units do not protect reachable ones (when they are in the
same tile). ('unreachableprotects')
- Occupy chance set to 100%: Units automatically move to the target
tile if the attack is successful and ZoC rules allow the movement.
('occupychance')
- Halved chance of building loss (to 10%) when a city is conquered.
('razechance')
- If the pool of research points ends negative, one random technology
is lost, and half of its value is restored to the research pool.
('techlossforgiveness', 'techlossrestore')
- Revolutions become quicker the more times any player has changed to
the target government. ('revolentype')
FOODBOX:
--------
- Foodbox size uniformed to even the population wasted when you build
Settlers at larger cities (similar to civ3).
- Granary size is fixed to 10 Food for every city size.
- Cities with Pop <= 4 receive this granary effect for free, so they
can create Settlers at best rate even without Granary. (This free
granary effect helps the AI to build Settlers optimally).
CITY FOODBOX SETTLER FOODBOX SETTLER
SIZE NEW NEW OLD OLD
1 20 - 20 -
2 20(10)# - 30(15) 20(5-15)
3 20(10)# 20(20) 40(20) 30(10-20)
4 20(10)# 20(20) 50(25) 40(15-25)
5 20(10) 30(20) 60(30) 50(20-30)
6 30(10) 40(20) 70(35) 60(25-35)
7 30(10) 50(30) 80(40) 70(30-40)
8 40(10) 60(40) 90(45) 80(35-45)
9 40(10) 70(50) 100(50) 90(40-50)
10 40(10) 80(60) 110(55) 100(45-55)
11 40(10) 80(60) 120(60) 110(50-60)
12 40(10) 80(60) 130(65) 120(55-65)
13 40(10) 80(60) 140(70) 130(60-70)
14 40(10) 80(60) 150(75) 140(65-75)
15 ... ... ... ...
# Granary effect for free when city grows to this city level.
FOODBOX = Foodbox size at that city level. (In brackets = Granary size).
SETTLER = Food needed to recover the population if you create a Settler
at that city size. (In brackets = The same but with Granary).
NEW = This ruleset. OLD = civ2 ruleset
TIP: In order to keep max growth, you should build the Granary before
city grows larger than Pop 4 (same as Aqueduct at Pop 8, and Sewer
System at Pop 16).
TIP: Optimal production of Settlers occurs at any city with Pop <= 4,
or cities with Granary and Pop <= 6.
TERRAIN:
--------
- Jungles receive 1 extra Production (1/1/0).
- Tundras can be mined for +1 Production (instead of irrigated) and
receive +1 Trade when roaded (up to 1/1/1).
- Swamps can be irrigated for +1 Food (to 2/0/0). Reduced Food bonus by
1 to Spice resource (on Swamp).
- Deserts with a river receive 1 extra Food from irrigation (total 2),
unless they have an Oasis resource; this simulates a growth boost like
Nile floods.
- Hills receive 1 Production for free, and +2 from mines, same as civ3,
(was 0 and +3). Mountains receive +2 Production from mines too (was +1).
- Mountains give extra vision range. Cities can not be placed on
Mountains (nor Glaciers). Ground units starting the turn on unroaded
Mountains receive a -1 penalty to movement (this way it is not so good
for cavalry to end the turn on Mountains).
- The discovery of Refining allows to upgrade the mines placed on
Desert and Glacier to Oil Wells (+2 Production in total).
- Lake tiles receive for free +1 Food (2/0/2), but Harbors do not
affect them. Lakes do not enable wonders that needs a coastal city.
- Deep ocean tiles must be mined (resulting in an oil platform) in
order to take advantage of the production bonus from Offshore Platforms.
- Pollution may appear in Ocean tiles, and Transports can clean it
without the need of Workers/Engineers. Oceans, Jungles and Forests are
less affected by global warming.
- Cities on rivers always get roads, even before Bridge Building is
known.
- The only terrain transformations available before the end of the tech
tree are: Jungle -> Swamp; and Plains <-> Forest <-> Grassland.
- The following diagram shows all the transformations available with
the discovery of Fusion Power. Redesigned so all useful alterations can
be finished in 1 or 2 steps, and all effects of global warming can be
reverted:
Glacier --> Lake <--
/\ |
Ocean --\ \/ |
--> Grassland |
--> Swamp --/ /\ |
| \/ |
<-- Jungle --> Forest --> |
/\ | |
Tundra --\ \/ | |
--> Plains --|-->
Desert --/ /\ |
|| |
Mountains --> Hills <--
- No minimum city output (was 1/1/0). City central tile simply gets +1
Production.
This way, no matter the tile where you place your city, you never
waste any resource (for example, with classic/civ2 rules, a city placed
over bonused Grassland was wasting the Production bonus).
TILE F/P/T IRRIG(t) MINE(t) ROAD MAX1 MAX2 TRANSFORM
Deep 1/0/2 NO NO NO 2/0/2 2/1/2 No
Ocean 1/0/2 NO NO NO 2/0/2 2/1/2 *Grass(36)
Lake *2/0/2 NO NO NO 2/0/2 2/1/2 *Grass(36)
Swamp 1/0/0 *+1(5) *NO +0(4) 2/0/0 3/0/0 *Grass(24)
Glacier 0/0/0 NO +1(10) +0(4) 0/1/0 0/3/0 *Lake(24)
Tundra 1/0/0 *NO *+1(5) *+1(2) 1/1/1 1/1/1 *Plains(24)
Desert 0/1/0 +1(5) +1(5) +1(2) 0/2/1 0/4/1 Plains(24)
Plains 1/1/0 +1(5) Forest(10) +1(2) 2/1/1 3/1/1 *Lake(36)
Grassland 2/0/0 +1(5) Forest(15) +1(2) 3/0/1 4/0/1 *Lake(36)
Jungle *1/1/0 *Swamp(10) *NO +0(4) 1/1/0 1/1/0 *Forest(24)
Forest 1/2/0 Plain(10) *Grass(15) +0(4) 1/2/0 1/3/0 *Hills(24)
Hills *1/1/0 +1(10) *+2(10) +0(4) 1/3/0 1/4/0 Plains(24)
Mountains 0/1/0 NO *+2(10) +0(6) 0/3/0 0/4/0 Hills(36)
F/P/T = Food/Production/Trade output; (t) = turns
MAX1 = Irrigation/Mine/Road/Harbor; MAX2 = Farmland/Railroad/Oil Well.
* = Changes compared to civ2 ruleset. Most affected are Jungles, Swamps
and Tundras.
TIP: The optimal tiles to place your initial cities are those with MAX
output equal or similar to 2/1/2, mainly those with bonus
resources or rivers. Hills and Plains are always good places for
cities, as well as Flood Desert (desert with river), or bonused
Grassland. The best defense comes from cities placed on Hills with
river.
DEFENSE:
--------
- Halved the terrain defense bonuses, now more similar to civ3 values:
TERRAIN NEW OLD
Forest/Jungle/Swamp +25% +50%
Hills +50% +100%
Mountains +100% +200%
RIVER +25% +50%
VETERAN
Veteran +50% (=)
Hardened +75% (=)
Elite +100% (=)
FORTIFIED +50% (=)
(only Land and Big Land units can fortify; inside cities, they are
always considered fortified)
BASE VS LAND VS SEA VS AIR VS MISSILE
Fort +50% +50% - -
Fortress +100% +100% +50% +50%
Airstrip - - +50% +50%
Airbase +50% +50% +100% +100%
CITY VS LAND VS SEA VS AIR VS MISSILE
Town (Pop<=8) +50% - - -
City (Pop>8) +100% +50% - -
Buildings each add:
Great Wall(W) +50% - - -
Walls +100% - - -
Coastal Defense - +100% - -
SAM Battery - - +100% -
SDI Defense - - - +100%
- Every city of any size receives an inherent +50% defense bonus
against all kinds of ground units.
- Every city with Pop>8 receives an additional +50% defense bonus
against both ground and naval units.
- City Walls effect reduced from 200% to 100%, and cost reduced from 60
to 30.
- Great Wall wonder gives an additional +50% defense bonus against
ground units.
Total Defense = (UNIT DEFENSE) * (100+TERRAIN)/100 * (100+RIVER)/100
* (100+CITY+BASE)/100 * (100+FORTIFIED)/100 * (100+VETERAN)/100
(Same as classic/civ2 rules).
EXAMPLE: Riflemen fortified in a fortress, on mountains, with a river,
will get a total defense of 30 against land attacks:
Riflemen: defense 4
Fortified (+50%): 4 + 2 = 6
In Fortress (+100%): 6 + 6 = 12
On Mountains (+100%): 12 + 12 = 24
With River (+25%): 24 + 6 = 30.
EXAMPLE: Riflemen in a size 9 city, with walls, on hills,
will get a total defense of 27 against land attacks:
Fortified (+50%): 4 + 2 = 6
On Hills (+50%): 6 + 3 = 9
In City with Walls (+200%): 9 + 18 = 27.
GOVERNMENTS:
------------
Anarch Tribal Despot Monarc Fundam Republ Democr Federat Commun
Tax/Lux/Sci Rate 0 60 60 70 70 80 90 90 80
Output per tile # -1(if>2) -1(if>2) -1(if>2) 0 0 +1Trade +1Trade 0 0
Celebration Bonus (no -1) (no -1) (no -1) (+1Trade) 0 (+1Trade)(+1Trade)(+1Trade) 0
Unit Upkeep Shield Shield Coin Coin Coin(x2) Shield Coin(x2) Coin(x2) Shield
Free Units 2 2 2 3 2 1 1 2 3
War Unhappiness 0 0 0 -1 -1 -1 -2 -1 -1
Martial Law +1 0 +1 +1 0 0 0 0 +2
Civil war % 99% 90% 80% 70% 60% 40% 30% 20% 50%
Empire Size 0 /12 /10 /14 /20 /16 /32 /24 /28
Special +NoUpkeep +Veteran +75%Gold +50%Gold +Tithes -Revolt -Revolt +Luxury +NoUpkeep
-50%Lux (Land/Mil)(Palace) (Palace) -50%Sci -Senate -Senate (Cost=1)
-NoTaxes +Content +Fanatic +Partisan +Partisan
Base Corruption 0% 30% 20% 10% 15% 25% 5% 0% 30%
Base Waste 30% 0% 10% 20% 15% 5% 25% 30% 0
By Distance * +1% +1% +1% +1% +1% +1% +1% +0% +0%
* Corruption by distance is doubled (+2% per tile of distance to
capital, or +1% for Federation) until The Corporation is researched by
the player.
Waste by distance is doubled (+2% per tile of distance to capital)
until Trade is researched by the player.
# The output per tile penalty is negated by The Pyramids wonder, or
when Railroad is researched by the player.
+ Partisans appear around conquered cities (democratic or communist) if
Guerilla Warfare has been researched by any player.
- Added Fundamentalism (available with Theology), Tribal (available at
start) and Federation (available with Economics).
- "Base Corruption/Waste": Modern governments cause less Corruption in
Trade, but more Waste in Production. The total % lost (Waste +
Corruption) is equal for all governments.
- "Empire Size" (number of cities before they start causing extra
unhappiness): Modern governments have double size limit than their
ancient counterpart. Empire Base Size is always equal to Empire Step
Size.
- "Unit Upkeep": Tribal, Republic and Communism use the standard unit
upkeep in shields, while the other governments use upkeep in coins (x2
coins per unit for modern governments).
- "Free Units": Means units free of shield/coin upkeep and also free of
unhappiness due to military activity. By default 2 free units per city.
- "War Unhappiness": Most governments cause unhappiness when military
units end the turn outside national borders (same as Republic with civ2
rules).
- "Martial Law": Max 3 units can apply martial law (was max 20 for
Despotism and Anarchy).
- The bonus "+1 Trade" (for every worked tile that is already producing
trade) under Republic and Democracy does not affect oceanic tiles.
- Republic gets "Revolution when unhappy" effect. Federation gets
"Has senate" effect. Democracy gets both effects.
- Spies and Diplomats built under Communism or Federation will start at
the first veteran level. Federation gets +2 Luxury points in every city.
- Under Communism you do not pay upkeep for buildings that cost 1 coin.
Communism cancels the bonus from Mysticism and Theology (to Temples and
Cathedrals).
- Under Fundamentalism, your cities receive extra Gold from tithes
(from buildings that make citizens content), but -50% to Science (like
subtracting the effect of a library in each city).
- The output bonus of Palace (under Despotism and Monarchy) switched
from Production to Gold.
- Tribal government increases by half the chance of ground units
getting the next veteran level after a battle. Every city gets 1 extra
content citizen, but units can't apply martial law.
TIP: There is some hurry to get Monarchy or Republic (or to build
Pyramids), in order to avoid the initial penalty to output per tile.
However, the Corruption and Waste are evened for all governments, so
there are no big differences, and each government could be useful in
different situations.
TECHS:
------
- Added new wonders: Mausoleum of Mausolos (available with Ceremonial
Burial), and Statue of Zeus (available with Polytheism). Oracle of
Delphi renamed to Temple of Artemis (in order to allow all 7 wonders).
- Moved Great Wall to Construction (was Masonry). Moved King Richard's
Crusade to Chivalry, so it requires Monarchy and Knights. Women's
Suffrage moved to Conscription, so it requires Democracy. Switched
Darwin's Voyage and Eiffel Tower (Darwin was earlier than Eiffel).
Shakespeare's Theatre available with Sanitation (was Medicine).
- Diplomats available with Alphabet (was Writing), and Migrants with
Pottery, so every initial tech allows some unit or building.
- Coastal Defense moved to Navigation. The labels and icons for
"Magnetism" and "Navigation" were switched, because compass was already
used by historical Caravels, while sextants were not invented until the
age of Galleons/Frigates.
- Construction requires Iron Working instead of Currency. This way,
Iron Working is a prerequisite to build Frigates and Ironclads.
- Bridge Building merged to old Engineering in the tech tree. Added
modern "Engineering" in the Industrial Ages that allows Destroyers
(was Electricity) and Transports (was Industrialization), and it is
required for Steel (Cruiser), Amphibious Warfare (Ports), and
Combustion (Submarines).
- Battleship available with Mass Production instead of Automobile.
Mfg Plant available with Plastics instead of Robotics.
- Nuclear Fission requires Refrigeration, in order to delay the atomic
age, and to force the AI to research farms. Communism requires Theology
(Fundamentalism) instead of Philosophy, to encourage AI to research all
governments.
Special effects:
- Astronomy: Increases units vision when in Fortress.
- Invention: Halves upgrade cost of your units.
- Medicine: Reduces by 30% the chance of plague in your cities.
- Electricity: Allows irrigation without adjacent water, increases city
vision radius, and improves the effect of Amphitheatres.
- Trade: Decreases one-time the waste of Production caused by distance
to capital.
- The Corporation: Decreases one-time the corruption of Trade caused by
distance to capital.
- Fusion Power: Allows Engineers to perform terrain transformations.
Almost all techs, buildings, wonders and units are the same as
classic/civ2, but some requirements have been changed to improve a bit
the historical accuracy, to encourage the use of every military unit,
and to avoid units or wonders becoming obsolete too soon. The following
is a list of some inaccuracies from classic/civ2 tech tree that were
addressed in the new tree:
- It was possible to research Pikemen before Phalanxs; Musketeers before
Pikemen; Ironclads before Frigates; Destroyers before Ironclads;
Armors before Artillery; Mech Infantry without Barracks III.
- Cathedrals did not require Construction nor Masonry. Ironclads and
Eiffel Tower were available without Iron Working. Chivalry and Pikemen
did not need Iron nor Bronze.
- Pottery was not needed to research Trade, Economics, Explosives,
Invention, or Sanitation.
- Chemistry was not related to Atomic theory, Refrigeration, Gunpowder,
Steam Engine, or Steel.
- Theory of Gravity did not need Physics, Invention, or even The Wheel,
and it was not needed for Automobile, Robotics, or Miniaturization.
- Offshore Platforms did not require Refining, Combustion or Explosives.
Miniaturization was not needed for Rocketry or Laser.
In the new tree, you are forced to research most of the ancient techs
before you can research the modern ones, but overall, researching paths
are similar to classic/civ2 tree.
BUILDINGS:
----------
- Aqueduct is cheaper near rivers or lakes. Sewer System is needed to
grow larger than pop 16 (instead of 12). Each one reduces the chances
of plague by -30%.
- Added new building: Ecclesiastical Palace (available with Theology),
that acts as a second center of government that lowers corruption and
waste.
- Courthouse: Makes 1 citizen content, makes the city immune to incite
actions, and halves any kind of waste (Trade, Production or Food).
Added new effect: Food wasted by distance to Palace is -1% Food each
2 tiles. For example, cities at distance 10 of the Palace lose -5%
Food, so they lose -1 Food when their output reaches 20 Food per turn
(noticeable with 10 Food per turn due to rounding effects).
- Granary halves the waste of Food caused by distance to Palace.
Together with a Courthouse, it eliminates completely the waste of Food.
- Police Station: Makes 2 citizens content, and reduces unhappiness
caused by 1 military unit.
- Science bonus from Library, University, and Research Lab restored to
civ2 values (+50%). There are wonders that double the effect later.
- Production bonus by Factory and Mfg Plant reduced to +25% each
(was +50%), so the Power Plants are as important as the Factories.
Mfg Plants allows the construction of 2 units per turn.
- Super Highways double the effect of Stock Exchange (+50% to
Gold/Luxury), and they produce extra Trade at tiles with roads but
without farmlands (the city center tile can still have both farmland
and Super Highways bonuses).
- Doubled costs of all Spaceship parts. All them require Library,
University, Research Lab and Factory present in the city in order to
be built.
- Reduced by one the upkeep of Aqueduct, Colosseum (renamed to
Amphitheatre), University, Bank, Stock Exchange, Port Facility, SDI
Defense, and Factory; reduced by two for Mass Transit and Mfg. Plant.
- Pollution caused by population is increased by buildings instead of
by techs:
Industrialization -> Factory; Automobile -> Highways; Plastics -> Mfg
Plant; Mass Production -> Offshore platforms.
- Adjusted the pollution of all electrical plants, and increased the
building cost of Nuclear Plants:
Cost Upkeep Pollution (+Recycling)
Power plant 130 4 100%(50%)
Hydro plant 180 4 50% (25%)
(+Hoover Dam) (=) (=) 25% (0%)
Nuclear plant 240 2 50% (25%)
Solar plant 320 4 25% (0%)
Recycling Center 140 2 -50%/-25%
UNITS:
------
- Population cost of Settlers increased to 2, and removed the upkeep.
New unit Migrants available to work, or to migrate 1 population; they
can't create cities and can be captured. Costs more similar to civ3:
Settlers: pop 2, cost 30, upkeep 0, food 1
Migrants: pop 1, cost 10, upkeep 0, food 1
Workers: pop 0, cost 20, upkeep 1, food 0
- Non-military units now belongs to a new unit class ("Small Land")
that can not pillage, nor capture cities, and does not create Zones of
Control (ZOC) that would affect the movements of enemy units.
- Created a new unit class for Caravans and Freights ("Merchant") that
doesn't get the unlimited movement from maglev, and can be captured.
They can only establish trade routes to foreign cities.
- Military "Land" units can capture enemy Migrants (as slaves) and
Caravans/Freights (as loot).
- Wheeled units (new unit class "Big Land") can't move to Mountains,
Jungles and Swamps, unless they are travelling on a road. They do not
get defensive bonuses from the terrain, can not perform pillage, and
need Galleons or Transports to travel by sea.
- Only "Big Land" units can cause population loss when attacking a city.
- Diplomat units stay alive when they investigate cities, and they can
establish embassies or investigate cities directly from boats without
disembarking. Explorers can perform those two actions, same as
Diplomats. Increased vision range of Explorers and Partisans.
- Added Elephants from civ2, available with Polytheism:
(att/def/mov-hp,cost) = (3/2/2-10,30). Obsolete by Dragoons.
- Added Crusaders from civ2, available with Monotheism: (5/1/2-10,40).
Obsolete by Dragoons. They do not cause unhappiness due to military
activity.
- Added Fanatics from civ2, available with Guerrilla, under
Fundamentalism government: (5/5/1-20,20). They cost 1 population, but
do not cause unhappiness and do not need upkeep.
- Archers defense reduced to 1 (was 2), and cost to 20 (was 30). Legion
cost reduced to 30 (was 40). This way the ratio Attack/Cost of ancient
units is more even to Catapults.
- Pikemen changed to (2/3), cost to 30, and removed the doubled defense
vs horses. Attack of Chariots increased to 4 (was 3). Defense of
Knights increased to 3 (was 2). In order to encourage early use of
cavalry.
- Alpine Troops changed to (7/4), and Partisan to (4/5). This way,
Riflemen do not become obsolete as city defenders until Partisan or
Marine are researched, and every modern infantry is somehow useful.
- Given Marine ability to Legion, Musketeer, and Rifleman. This way,
one-tile islands can be assaulted early in game. Yet, the Marine unit
is still the best offensive/defensive infantry.
- Triremes can navigate rivers. Caravel changed from (2/1) to (1/2), in
order to encourage peaceful exploration of the seas in the age of
discovery.
- Removed transport capability from Frigates, to force the use of
Galleons. Reduced attack of Frigate and defense of Ironclad to 3
(was 4).
- Battleship hit points reduced to 30 (was 40), Ironclad and Submarine
to 20 (was 30). Doubled the defense of Destroyers against Submarines.
Now there is a Rock-paper-scissors relation between
Destroyer-Cruiser-Submarine.
- All units that had Firepower 2 now have Firepower 1, in order to even
the power of naval, air, and artillery units, and to simplify the
mental calculation to compare them.
- Artillery and Howitzer receive the ability CityBuster, so their
firepower is 1 in open field, and 2 against cities. Removed Ignore
Walls for Howitzer (that would bypass the new city defense bonuses),
and reduced movement to 1.
- Bombers and Helicopters receive the Bombarder ability: when they
attack ground units, they can only damage (not kill) them, but they
damage every unit in a stack or city; and are never damaged while
attacking. Note they have a normal attack against naval units (they
still can kill or die). Halved the attack so it is harder to bombard
ground enemies successfully. Increased hit points so it is still
possible to kill naval units.
- Air units can perform pillage (representing bombardment of
infrastructure), and can be airlifted from a city with an Airport to
another. Increased defense of all Air units, in order to discourage the
use of ground units to protect them.
- Increased fuel of all planes by one (giving them an extra turn in
the air), in order to allow battles for air control. All planes
lose 10% of HPs, like helicopters, when they end a turn outside a city,
airstrip, or airbase.
- Helicopters can carry 1 military Land unit, and can only be attacked
by Fighters (with no extra attack bonuses), and by Missiles. Carriers
can also transport military Land units.
- Cruise Missile no longer cause unhappiness, range increased to 16,
and allowed to attack Air units.
- Nuclear weapons can be built with Nuclear Fission, but you need
Advanced Flight to move them, and Rocketry to get max movement.
- Readjusted many costs so units with better stats are always more
expensive. At the same time, modern units always get better ratio
Att/Cost or Def/Cost.
UNIT Att Def Mov FP HP Cost
Warrior 1 1 1 1 10 10
Phalanx 1 2 1 1 10 20
Archers 3 *1 1 1 10 *20
Legion 4 2 1 1 10 *30 *Marines
Pikemen *2 *3 1 1 10 *30 *(No bonus anti-horse)
Musketeers 3 3 1 1 20 *40 *Marines
Riflemen 5 4 1 1 20 *50 *Marines
Alpine Troops *7 *4 1 1 20 *60 IgTer
Partisan 4 *5 1 1 20 *60 IgTer, IgZOC
Fanatics *5 *5 1 1 20 20 *1 Pop, No upkeep, No unhappy
Marines 8 5 1 1 20 60 Marines
Paratroopers 6 4 1 1 20 60 Paratroopers
Horsemen 2 1 2 1 10 20
Chariot *4 1 2 1 10 30 *Wheeled
Elephants *3 *2 2 1 10 *30
Crusaders 5 1 2 1 10 40 *No unhappy
Knights 4 *3 2 1 10 40
Dragoons 5 2 2 1 20 50
Cavalry 8 3 2 1 20 60
Mech. Inf. 6 6 3 1 30 *70 *Wheeled
Armor 10 5 3 1 30 *90 *Wheeled
Catapult 6 1 1 1 10 40 *Wheeled
Cannon 8 1 1 1 20 *50 *Wheeled
Artillery 10 *2 1 *1(2) 20 *60 *Wheeled,*CityBuster
Howitzer 12 2 *1 *1(2) 30 *80 *Wheeled,*CityBuster
Trireme 1 1 3 1 10 *20 Cargo 2, Coastal
Caravel *1 *2 3 1 10 *30 Cargo 3
Galleon 0 2 4 1 20 40 Cargo 4,*No unhappy
Transport 0 3 5 1 30 50 Cargo 8,*No unhappy
Carrier *0 9 5 *1 40 *150 Cargo 8,*No unhappy
Frigate *3 2 4 1 20 *40 *No Cargo
Ironclad 4 *3 4 1 *20 *50
Destroyer 4 4 6 1 30 60 *(x2 def anti-submarine)
Cruiser 6 6 5 *1 30 80
AEGIS Cruiser 8 8 5 *1 30 100 *(x5 def anti-air/missile)
Battleship 12 12 4 *1 *30 160
Submarine *12 *5 *5 *1 *20 *70 Cargo 8, Invis
Fighter 4 *4 10 *1 20 60 Fuel 2
Bomber *6 *2 8 *1 *30 *100 *Bombard 3, Fuel 3, FieldUnit
Helicopter *5 3 6 *1 *30 *70 *Bombard 2,*Cargo 1
Stealth Fighter 8 *8 14 *1 20 80 Fuel 2, Invis
Stealth Bomber *9 5 12 *1 *30 *120 *Bombard 4, Fuel 3, FieldUnit, Invis
Cruise Missile 18 0 *16 *1(2) 10 *50 *CityBuster,*No FieldUnit
Nuclear 99 0 16 1 10 160 Nuclear, FieldUnit
FP = Firepower, HP = Hit Points
* = Changes compared to civ2 ruleset. Most affected are modern
infantry, air units, and all units that had 2 firepower.
WONDERS:
--------
- Replaced all effects that worked as if you had certain building in
every city.
- Replaced every effect Make_Happy, Force_Content, and No_Unhappy, by
additional Luxury in the city tiles. Else they would avoid unhappiness
caused by military activity too easily.
- Replaced effects that give a percentage bonus to Science output, by
additional Science in the city tiles. This way, they do not multiply
the effect of other wonders like Colossus, and it is not mandatory to
build them all in the same city.
- These bonuses to Science, Gold or Luxury are produced by the citizens
(same as the bonuses to Trade or Production), so they can be increased
by other city improvements (same as the output of specialists).
- Your Caravans and Freight can help build allies' or team-mates'
wonders.
- Wonders become obsolete by techs researched by the owner (not affected
by the researches of other players).
- Some wonders require certain building in the city to be built.
- Readjusted effects of most wonders. Restored civ2 costs:
FULL LIST OF WONDERS
(#) It has some global effect that affects other nations.
"Name", Cost, Requirements, Obsolescence, Effect.
- "Pyramids" 200. Obsolete by Railroad (that increases even more the
production):
+1 Production per worked tile in the city (already producing shields).
Disables the output per tile penalty under Despotism/Tribal governments.
- "Colossus" 200. Obsolete by Automobile (Super Highways):
+1 Trade per worked tile in the city (already producing Trade).
- "Copernicus' Observatory" 300. Obsolete by Computers (Research Lab):
+1 Science per worked tile in the city.
- "Hanging Gardens" 200. Obsolete by Electricity (that increases
Amphitheatre effect):
+1 Content all your cities. +4 Luxury in the city where it is built.
- "Mausoleum of Mausolos" 200. Obsolete by Sanitation (that enables
wonder with similar effect):
+1 Content in your cities with Walls, and +1 extra content in your
cities with Courthouse. Your cities cannot be incited to revolt.
- "Temple of Artemis" 200. Requires Temple. Obsolete by Theology (that
increases Cathedral effect):
+2 Content in your cities with Temple.
- "Michelangelo's Chapel" 400. Requires Cathedral:
+3 Content in your cities with Cathedral.
- "J.S. Bach's Cathedral" 400:
+2 Luxury in all your cities.
- "Cure For Cancer" 600:
+2 Luxury in all your cities. -10% chance of plague.
- (#)"Shakespeare's Theatre" 300:
Entertainer specialists output increases to 3 for every nation.
+1 Luxury in all your cities, +6 Luxury where it is built.
- (#)"A.Smith's Trading Co" 400. Requires Stock Exchange:
Taxman specialists output increases to 3 for every nation. Free upkeep
for buildings that cost 1 coin, in all your cities with Stock Exchange.
- (#)"Darwin's Voyage" 400:
Scientist specialists output increases to 3 for every nation.
+1 Science in all your cities.
- (#)"Great Library" 300. Requires Library:
Doubles the effect of Library for every nation. Gives an immediate
technology advance. +4 Science in the city where it is built.
- (#)"Isaac Newton's College" 400. Requires University:
Doubles the effect of University for every nation. Gives an immediate
technology advance. +6 Science in the city where it is built.
- (#)"Internet" 600. Requires Research Lab:
Doubles the effect of Research Lab for every nation. Gives an immediate
technology advance. Reveals all cities in the map for the owner.
- "Lighthouse" 200. Requires adjacent sea. Obsolete by Engineering
(Destroyer):
+1 Move point for all your naval units, and they are built veteran in
all your cities.
- "Magellan's Expedition" 400, Obsolete by Nuclear Power (that
increases even more movement of naval units):
+1 Move point, and +50% chance to become veteran after a battle, for
Sea units (no Triremes).
- "Sun Tzu's War Academy" 300. Obsolete by Mobile Warfare (Barracks III):
+1 Veteran level for all military ground units built in your cities
(cumulative to Barracks).
- "Statue of Zeus" 200. Obsolete by Conscription (that enables wonder
with similar effect):
+1 Military Content, +1 free shield per city for upkeep of units.
- "King Richard's Crusade" 300. Obsolete by Communism (Police Station):
+1 Military Content, +2 free coins per city for upkeep of units.
- "Women's Suffrage" 600:
+1 Military Content (cumulative to Police Stations). Under Democracy it
halves the unhappiness caused by each military unit.
- "Marco Polo's Embassy" 200. Obsolete by Democracy:
Embassy with all players (tech costs are reduced depending on the
number of players which already know them).
- "Eiffel Tower" 300:
+10 to AI love for the owner. Reduces -25% the pollution caused by the
population in all your cities.
- "Statue of Liberty" 400:
Disables Has Senate effect. Any government available. No Anarchy
periods when government changes.
- (#)"United Nations" 600:
+10 to AI love for the owner. Revolution when unhappy effect for every
nation.
- "Great Wall" 300. Obsolete by Machine Tools (Artillery):
+50% Defense bonus against ground units in all your cities, and no loss
of population due to attacks.
- "Leonardo's Workshop" 400. Obsolete by Combustion:
Upgrades one obsolete unit per game turn.
- "Hoover Dam" 600. Requires Factory (and adjacent river):
Gives to to all your Hydro Plants the same effect as Solar Plants (-25%
pollution caused by production).
- (#)"Manhattan Project" 600:
Enables nuclear units for every nation.
- (#)"Apollo Program" 600:
Enables space race for every nation. Makes entire map permanently
visible for the owner.
Special "Cold War" effect: if Manhattan Project and United Nations were
built, every nation with nuclear power receives the Has Senate effect,
until the Apollo Program is finished.
THANKS:
-------
To every people who collaborated to create this wonderful Freeciv game.
Specially to those who programmed the Ruleset modding capabilities and
the AI capable to play with them.
Original developer David Fernandez (Bardo).
+1506
View File
File diff suppressed because it is too large Load Diff
+2262
View File
File diff suppressed because it is too large Load Diff
+141
View File
@@ -0,0 +1,141 @@
; 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 <mysubdir>" in the server to have freeciv
; use your new customized file.
[datafile]
description = "Civ2Civ3 cities data for Freeciv"
options = "+Freeciv-3.2-ruleset web-compatible"
format_version = 30
; /* <-- avoid gettext warnings
;
; A specialist is a city citizen who is not a tile worker. Usually the
; player can control what specialist each citizen is, so long as the
; requirements for that specialist are met.
;
; Below are the entries for the specialists, one per specialist type.
; The tag name (in [specialist_*]) doesn't matter so long as it's unique.
; For each specialist the following fields may be set:
;
;
; name = translatable (plural) name as seen by user
; rule_name = (optional) internal name for savegames, rulesets etc; if
; not present, "name" is used for this purpose too. Since
; the name used in savegames must not change, if you want
; to rename an item after a ruleset has been released, you
; should set "rule_name" to the original value of "name".
; short_name = one-character "short name" used (for instance) in cityrep;
; should be first character/abbreviation of "name"
; graphic = tag specifying preferred graphic
; Different images based on citizen number are supported.
; If no such images indexed with citizen number are found,
; plain tag is used instead.
; graphic_alt = fallback graphic tag in case the specialist graphic isn't
; found.
; reqs = requirements to have the specialist pick (see
; effects.ruleset and README.effects for help on requirements)
; helptext = optional help text string; should escape all raw newlines
; so that xgettext parsing works
;
; */ <-- avoid gettext warnings
[specialist_elvis]
name = _("Entertainers")
; (The original specialist names in the classic ruleset and derivatives were
; not designed to be user-visible.)
rule_name = "elvis"
short_name = _("?Elvis:E")
graphic = "specialist.entertainer"
reqs =
{ "type", "name", "range"
; Nothing
}
helptext = _("\
Each entertainer produces two luxury points for their city per turn, \
increasing to three once any player has built Shakespeare's Theater. \
See the section on Happiness for the effects of luxury points.\
")
[specialist_scientist]
name = _("Scientists")
rule_name = "scientist"
short_name = _("?Scientist:S")
graphic = "specialist.scientist"
reqs =
{ "type", "name", "range"
; Nothing
}
helptext = _("\
Each scientist adds two points to your empire's research output \
per turn, increasing to three once any player has built Darwin's \
Voyage.\
")
[specialist_taxman]
name = _("Taxmen")
rule_name = "taxman"
short_name = _("?Taxman:T")
graphic = "specialist.taxman"
reqs =
{ "type", "name", "range"
; Nothing
}
helptext = _("\
Each tax collector produces two extra gold for your treasury \
per turn, increasing to three once any player has built \
A.Smith's Trading Co.\
")
[parameters]
add_to_size_limit = 8 ; cities >= this cannot be added to.
angry_citizens = TRUE ; set to FALSE to disable angry citizens
celebrate_size_limit = 3 ; cities >= can celebrate
changable_tax = TRUE ; set to FALSE to disallow changing of tax rates
;forced_science = 0 ; set these fields when changeable_tax is turned off
;forced_luxury = 100
;forced_gold = 0
vision_reveal_tiles = TRUE ; civ1 & 2 default FALSE
pop_report_zeroes = 4 ; Population in reports in tens of thousands
[citizen]
nationality = TRUE ; account for the nationality of the citizens
ubuilder_nationality = FALSE ; does pop_cost unit get builder`s nationality,
; or that of the majority of the citizens in the city
convert_speed = 50 ; base probability 50/1000 -> once every 20 turns
partisans_pct = 75 ; percentage of own nationality to inspire partisans
; if 0, original city owner information is used instead
conquest_convert_pct = 0 ; percentage which converts to the new nation
; after a city was conquered. Applied separately for each
; nationality present in the city, and number of
; converted people rounded up
[missing_unit_upkeep]
; Get rid of a unit the city is unable to pay the X upkeep of.
; X_protected - never get rid of a unit with any of the listed unit type
; flags.
; X_unit_act - have the unit perform the listed actions until success,
; death or the list ends.
; X_wipe - wipe the unit if it survived performing the actions listed
; above.
food_protected = "EvacuateFirst"
; food_unit_act =
food_wipe = TRUE
; TODO: Should missing gold upkeep really be able to kill units with the
; EvacuateFirst unit type flag?
; gold_protected =
; gold_unit_act =
gold_wipe = TRUE
shield_protected = "EvacuateFirst"
shield_unit_act = "Help Wonder", "Disband Unit Recover", "Disband Unit"
shield_wipe = FALSE
+4618
View File
File diff suppressed because it is too large Load Diff
+822
View File
@@ -0,0 +1,822 @@
; 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 <mysubdir>" 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-3.2-ruleset web-compatible"
format_version = 30
; This section contains meta information for freeciv-ruledit to recreate the ruleset
; file in a form wanted. These have no in-game effect whatsoever
[ruledit]
; Which file to read description in from.
description_file = "civ2civ3/README.civ2civ3"
[about]
; Ruleset name
name = _("Civ2Civ3 ruleset")
; There`s no separate versioning in rulesets part of main freeciv distribution
;version = ""
; When about to migrate ruleset under a new name in the future version, set
; alt_dir to the name of that future directory. Then savegames saved with this
; version of freeciv can find the ruleset from the correct place when loading
; the savegame to the future version.
;alt_dir = ""
; Summary of the ruleset
; /* TRANS: In the client, this is displayed alongside the contents of
; README.civ2civ3, which are not localized. */
summary = _("\
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.\
\n\n\
The differences from the former default ruleset, 'classic', are listed in\
full in README.civ2civ3.\
")
; Detailed description
; When updating this, update also description_file in [ruledit] section to match
description = *civ2civ3/README.civ2civ3*
; What capabilities ruleset provides for the scenarios.
; See doc/README.rulesets for definitions of official capabilities
; std-terrains - At least standard set of terrains
capabilities = "std-terrains"
[options]
global_init_techs = ""
global_init_buildings = "Palace"
[tileset]
; If preferred tileset is set, clients that support the feature will suggest
; using that tileset with the ruleset.
; preferred = ""
[soundset]
; If preferred soundset is set, clients that support the feature will suggest
; using that soundset with the ruleset.
; preferred = ""
[musicset]
; If preferred musicset is set, clients that support the feature will suggest
; using that musicset with the ruleset.
; preferred = ""
[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 = 0
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
; A base bribe cost, modified heavily by other factors
base_bribe_cost = 750
; Barbarian leader ransom in gold. The ransom is taken from
; the victim (typically a barbarian player), and it`s possible
; they cannot pay this in full.
ransom_gold = 100
; Number of veteran levels lost when upgrading a unit
upgrade_veteran_loss = 1
; Number of veteran levels lost when auto-upgrading a unit
autoupgrade_veteran_loss = 1
; Whether player gets to select which terrain improvement to pillage.
pillage_select = TRUE
; Whether one can steal a tech for which prereqs are not known
tech_steal_allow_holes = FALSE
; Whether one can get a tech for which prereqs are not known via
; diplomatic trading
tech_trade_allow_holes = FALSE
; ...and whether one can lose a tech which is prereq for another known
; tech via trade, if techlost_donor is nonzero
tech_trade_loss_allow_holes = FALSE
; Whether one can get a tech for which prereqs are not known via
; parasite effect (Great Library)
tech_parasite_allow_holes = FALSE
; Whether one can lose a tech which is prereq for another known tech
; due to negative bulbs, if techlossforgiveness allows loss
tech_loss_allow_holes = FALSE
; Whether civil war is possible at all
civil_war_enabled = TRUE
; How many percents each celebrating city affects chance of civil war
civil_war_bonus_celebrating = -5
; How many percents each unhappy city affects chance of civil war
civil_war_bonus_unhappy = 5
; Comma separated list of things to happen, in addition to death
; of owner, when gameloss unit dies
; "CivilWar" - Part of the empire remains, controlled by a new player
; "Barbarians" - Depending on if there`s also "CivilWar", all or part
; or half of the dead players empire gets under barbarian
; control.
; "Loot" - Player who killed the gameloss unit gets loot:
; Partial map, gold, techs, cities
gameloss_style = ""
; Whether units may safely paradrop to transport on non-native terrain
paradrop_to_transport = FALSE
; Method of paying unit and improvement gold upkeep
; "City" - 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.
; "Mixed" - 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.
; "Nation" - 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, random buildings from random cities are sold.
; If still more gold is needed, then random units with gold
; upkeep are disbanded.
gold_upkeep_style = "Mixed"
; Whether also homeless units pay gold upkeep. Enabling requires that
; gold_upkeep_style is not "City"
homeless_gold_upkeep = FALSE
; How many points of output one basic unit consists of. Typically you
; want this to be some 10^n.
output_granularity = 1
; Is it possible to airlift even with zero airlift capacity when
; airliftingstyle server setting has been set to unlimited airlifts?
airlift_from_always_enabled = FALSE
airlift_to_always_enabled = TRUE
[wonder_visibility]
; When do opponents know which city, if any, has built the Small Wonder
; "Always" - Information is always sent
; "Never" - Information is never sent
; "Embassy" - Information is sent when team has an embassy with Wonder owner
small_wonders = "Always"
[illness]
; Whether plagues (illness) are possible
illness_on = TRUE
; 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
[combat_rules]
; If tired_attack is set to TRUE, units that attack with less than a single
; move point (per move_fragments in terrain.ruleset) will have their attack
; power reduced accordingly. For instance, if move_fragments = 3, a unit with
; 2/3 move points will have attack power 2/3 of normal.
; If this is set to FALSE units will attack with full strength even if they
; have only fractional moves left.
tired_attack = TRUE
; With some rules it`s possible that neither side of a combat dies.
; Set this to TRUE if unit should never gain veterancy from such a combat.
only_killing_makes_veteran = FALSE
; If either side of the fight is completely powerless, i.e., has
; zero attack/defense power after modifiers, fight is not considered
; a real fight. If this setting is enabled, nobody gets made veteran after
; such a fight.
only_real_fight_makes_veteran = TRUE
; When this setting is enabled, chance of getting veterancy from a combat
; gets modified by the strength of the opponent relative to the strength
; of unit that might gain the veterancy.
; When this setting is disabled, the modifier is always simply considered
; to be 100%, i.e, the base veterancy chance from units.ruleset is used as is.
; This affects both regular and diplomat combat.
combat_odds_scaled_veterancy = TRUE
; Does unit`s bombard rate get scaled down by how damaged it is.
; Even after this unit gets at least one bombard round.
damage_reduces_bombard_rate = TRUE
; When the attacker has BadWallAttacker flag, and there`s
; positive DefendBonus effect applied to the attack, attacker`s
; firepower gets reduced to this value.
; If firepower is already lower than this, it won`t be affected.
low_firepower_badwallattacker = 1
; When the defender has BadCityDefender flag, and it`s
; defending on a city tile, attacker`s firepower is doubled
; and defenders firepower is reduced to this value.
; If firepower is already lower than this, it won`t be affected.
low_firepower_pearl_harbour = 1
; When the opponent has LowFirepower combat bonus against
; a unit, it`s firepower is reduced to this value.
; If firepower is already lower than this, it won`t be affected.
low_firepower_combat_bonus = 1
; When a unit capable of attacking NonNative tiles does such an
; attack against NonNatBombardTgt unit, firepower of both sides
; is reduced to this value.
; If firepower is already lower than this, it won`t be affected.
low_firepower_nonnat_bombard = 1
; Percentage of population lost by a city after nuclear attak. If set to
; 100 city is destroyed along with all the units. If set to 0 city does not
; lose population. Any value below 50 means the city can never be
; destroyed completely using nuclear.
nuke_pop_loss_pct = 49
; Percentage chance of a city defender surviving nuclear attack. When set
; to 50 roughly half of defenders will survive nuclear attack. When set to
; 0 no defenders will survive. When set to 100 all defenders will survive.
nuke_defender_survival_chance_pct = 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
; Difference between city workable area and area permanently claimed by
; city (these tiles cannot be stolen by stronger border sources).
; 0 means exactly city workable area is immune to border stealing.
; Negative value means outer workable tiles can be stolen; highly negative
; value (more than max city radius_sq) means any workable tile can be stolen.
; If City_Radius_Sq is variable, so is the set of locked tiles; this is
; a squared value, so the radius of the ring of tiles which are workable
; but not locked (or vice versa) varies but the area is constant.
radius_sq_city_permanent = -3
[research]
; Method of calculating technology costs
; "Civ I|II" - Civ (I|II) style. Every new tech add base_tech_cost to
; cost of next tech.
; "Classic" - Cost of technology is:
; base_tech_cost * (1 + reqs) * sqrt(1 + reqs) / 2
; where reqs == number of requirement for tech, counted
; recursively.
; "Classic+" - Cost are read from tech.ruleset. Missing costs are
; generated by style "Classic".
; "Experimental" - Cost of technology is:
; base_tech_cost * (reqs^2 / (1 + sqrt(sqrt(reqs + 1)))
; - 0.5)
; where reqs == number of requirement for tech, counted
; recursively. Initial techs` cost will be base_tech_cost.
; "Experimental+" - Cost are read from tech.ruleset. Missing costs are
; generated by style "Experimental".
; "Linear" - Cost of technology is:
; base_tech_cost * reqs
; where reqs == number of requirement for tech, counted
; recursively.
tech_cost_style = "Linear"
; Base research cost. Used in tech cost styles where tech cost is generated.
; In other words: used everywhere unless the cost of *all* techs are
; specified and the tech cost style is "Experimental+" or "Classic+".
base_tech_cost = 10
; Minimum research cost. This is applied for techs that have their cost
; calculated by a formula. This is not applied for techs that have their
; cost explicitly stated in the tech.ruleset.
min_tech_cost = 10
; Technology leak from other civilizations
; "None" - No reduction of the technology cost.
; "Embassies" - Technology cost is reduced depending on the number of
; players which already know the tech and you have an
; embassy with.
; "All Players" - Technology cost is reduced depending on the number of
; all players (human, AI and barbarians) which already
; know the tech.
; "Normal Players" - Technology cost is reduced depending on the number of
; normal players (human and AI) which already know the
; tech.
tech_leakage = "Embassies"
; Method of paying tech upkeep
; "None" - no upkeep
; "Basic" - upkeep is calculated as:
; <Cost of technology> / tech_upkeep_divider - <Free tech upkeep>
; "Cities" - upkeep is calculated like "Basic", but multiplied by number of cities
tech_upkeep_style = "Cities"
; upkeep cost is divided by this value
tech_upkeep_divider = 6000
; Method of selecting techs given for free
; "Goal" - Towards player`s goal, random if no goal
; "Random" - Random researchable tech
; "Cheapest" - Cheapest researchable tech, random among equal cost ones
free_tech_method = "Cheapest"
[culture]
; Minimum culture points for cultural domination victory
victory_min_points = 20000
; How big lead relative to second best player is needed for victory
victory_lead_pct = 100
; How much existing history grows each turn. This makes older history
; of the same original value more valuable as newer history, as it has
; gained more interest.
history_interest_pml = 0
; How much each culture point affects the migration
; from/to the city. Each culture point count as this many permilles
; of a migration point.
migration_pml = 50
[calendar]
; Year in the beginning of the game
start_year = -4000
; Year 1 instead of 0.
skip_year_0 = TRUE
; How many fragments each year has. In addition to this, "Turn_Fragments" effects are
; needed to control fragment accumulation.
; Value 0 here disables year advancement by fragment accumulation.
fragments = 0
; Calendar fragment names. If name is missing, only a fragment number +1 (so human readable
; numbers begin from 1 and not 0) is shown.
;fragment_name0 = _("Jan")
;fragment_name1 = _("Feb")
; ...
; What labels are used for positive and negative years.
; /* TRANS: year label (Common Era) */
positive_label = _("CE")
; /* TRANS: year label (Before Common Era) */
negative_label = _("BCE")
; /* <-- avoid gettext warnings
;
; Disaster types:
;
; name = translatable name as seen by user
; reqs = requirements for disaster to happen (see effects.ruleset
; and README.effects for help on requirements)
; frequency = how likely disaster is to occur.
; Final probability for each city each turn is -
; (this frequency) * (game settings option disasters
; frequency) / 1000000.
; If omitted, default is 0 and this disaster will not occur.
; effects
; - "DestroyBuilding" = Random building is destroyed
; - "ReducePopulation" = Reduce city size by one unless it's already 1
; - "ReducePopDestroy" = Reduce city size by one, possibly destroying the city
; - "EmptyFoodStock" = Remove all food from food stock
; - "EmptyProdStock" = Destroy current production
; - "Pollution" = One tile surrounding city polluted
; - "Fallout" = One tile surrounding city polluted with fallout
;
; */ <-- avoid gettext warnings
[disaster_earthquake]
name = _("Earthquake")
reqs =
{ "type", "name", "range"
"Terrain", "Hills", "Tile"
}
frequency = 10
effects = "EmptyProdStock"
[disaster_flood]
name = _("Flood")
reqs =
{ "type", "name", "range"
"Extra", "River", "Adjacent"
}
frequency = 10
effects = "EmptyFoodStock"
[disaster_fire]
name = _("Fire")
reqs =
{ "type", "name", "range"
"MinSize", "9", "City"
}
frequency = 10
effects = "DestroyBuilding"
[disaster_industrial_accident]
name = _("Industrial Accident")
reqs =
{ "type", "name", "range"
"Building", "Mfg. Plant", "City"
}
frequency = 10
effects = "ReducePopulation", "Pollution"
[disaster_nuclear_accident]
name = _("Nuclear Accident")
reqs =
{ "type", "name", "range"
"Building", "Nuclear Plant", "City"
}
frequency = 10
effects = "ReducePopulation", "Fallout"
; /* <-- avoid gettext warnings
;
; Achievement types:
;
; name = translatable name as seen by user
; rule_name = (optional) internal name for savegames, rulesets
; etc; if not present, "name" is used for this
; purpose too. Since the name used in savegames must
; not change, if you want to rename an item after a
; ruleset has been released, you should set
; "rule_name" to the original value of "name".
; type = What event grants the achievement to player.
; See README.achievements for list of these types.
; unique = If TRUE, only first one reaching the achievement will
; get it. Defaults to TRUE.
; value = Value to reach. Exact meaning of this depends on
; achievement type.
; culture = Amount of culture granted to player who gets achievement
; granted.
; first_msg = Message shown to first player gaining the achievement
; cons_msg = Message shown to consecutive players gaining the achievement
;
; */ <-- avoid gettext warnings
[achievement_spaceship]
name = _("Spaceship Launch")
type = "Spaceship"
unique = FALSE
culture = 5000
first_msg = _("You're the first one to launch a spaceship towards Alpha Centauri!")
cons_msg = _("You have launched a spaceship towards Alpha Centauri!")
[achievement_map_known]
name = _("Entire Map Known")
type = "Map_Known"
unique = FALSE
value = 100
culture = 1000
first_msg = _("You're the first one to have mapped the entire world!")
cons_msg = _("You have mapped the entire world!")
[achievement_another_island]
name = _("Land Ahoy")
type = "Land_Ahoy"
unique = FALSE
value = 2
culture = 100
first_msg = _("Your people were the first in history to sight a foreign shore!")
cons_msg = _("You sighted your first foreign shore!")
[achievement_literate]
name = _("Literate")
type = "Literate"
unique = FALSE
value = 100
culture = 1000
; /* xgettext:no-c-format */
first_msg = _("Your nation is the first to reach 100% literacy!")
; /* xgettext:no-c-format */
cons_msg = _("Your nation has reached 100% literacy!")
[achievement_multicultural]
name = _("Multicultural")
type = "Multicultural"
unique = FALSE
value = 2
culture = 1000
first_msg = _("You're the first nation to have citizens of multiple nationalities!")
cons_msg = _("Your nation now has citizens of multiple nationalities!")
[achievement_metropolis]
name = _("Metropolis")
type = "Metropolis"
unique = FALSE
value = 20
culture = 1000
first_msg = _("Your nation is the first with a city of population 20!")
cons_msg = _("One of your cities has reached population 20!")
[achievement_cultured_city]
name = _("Cultured City")
type = "Cultured_City"
unique = FALSE
value = 1000
culture = 1000
first_msg = _("Your nation is the first with a city of 1000 culture points!")
cons_msg = _("One of your cities has 1000 culture points!")
[achievement_cultured_nation]
name = _("Cultured Nation")
type = "Cultured_Nation"
unique = FALSE
value = 10000
first_msg = _("Your nation is the first one to achieve 10000 culture points!")
cons_msg = _("Your nation has achieved 10000 culture points!")
;
; Trade settings
;
; IN = international, IC = intercontinental.
; For each of the trade route types:
; "pct" - Trade income %. If this is 0, trade route cannot be
; established at all
; "cancelling" - What to do to previously established trade routes when they
; turn illegal
; "Active" - Keep them active (although they will only
; provide nonzero income if illegal due to
; trademindist rather than pct==0)
; "Inactive" - Keep them inactive
; "Cancel" - Cancel them altogether
; "bonus" - One-time bonuses granted when trade route established
; "None" - No one-time bonus
; "Gold" - Bonus to gold
; "Science" - Bonus to research
; "Both" - Bonus to gold and research
;
[trade]
settings =
{ "type", "pct", "cancelling", "bonus"
"National", 0, "Cancel", "None"
"NationalIC", 0, "Cancel", "None"
"IN", 100, "Cancel", "Gold"
"INIC", 200, "Cancel", "Gold"
"Ally", 100, "Cancel", "Gold"
"AllyIC", 200, "Cancel", "Gold"
"Enemy", 0, "Cancel", "Gold"
"EnemyIC", 0, "Cancel", "Gold"
"Team", 100, "Cancel", "Gold"
"TeamIC", 200, "Cancel", "Gold"
}
; Minimum trade a trade route produces, as long as the good has nonzero income
; for the relevant direction (from_pct / to_pct)
min_trade_route_val = 0
; Reveal the trade partner city on map.
reveal_trade_partner = FALSE
; When are goods for the trade route chosen.
; "Leaving" - Goods to carry are assigned to unit when it`s built, or it changes homecity
; "Arrival" - Goods are chosen when trade route is established, when unit arrives to destination
goods_selection = "Leaving"
; /* <-- avoid gettext warnings
;
; Goods types:
;
; name = translatable name as seen by user
; rule_name = (optional) internal name for savegames, rulesets
; etc; if not present, "name" is used for this
; purpose too. Since the name used in savegames must
; not change, if you want to rename an item after a
; ruleset has been released, you should set
; "rule_name" to the original value of "name".
; reqs = requirements for a city to provide goods (see effects.ruleset
; and README.effects for help on requirements)
; from_pct = Income for the sending end of the trade route. Default is 100%
; This value is applied to both ends of bidirectional routes.
; to_pct = Income for the receiving end of the trade route. Default is 100%
; This value is not used at all in case of bidirectional routes.
; onetime_pct = Onetime bonuses when trade route gets established. Default is 100%
; flags
; - "Bidirectional" = Trade route carrying the goods does not have "from" and "to"
; ends, but both ends are considered the same.
; - "Depletes" = Trade route gets cancelled when the source city cannot provide
; goods any more. Bidirectional routes gets cancelled if either
; one of the involved cities cannot provide goods.
; - "Self-Provided" = Good requirement (in requirement lists of other rules)
; is fulfilled also for the city exporting, or capable of exporting,
; the good. Otherwise it would be true only for cities importing the
; good from elsewhere.
; helptext = Optional help text string; should escape all raw
; newlines so that xgettext parsing works
;
; */ <-- avoid gettext warnings
[goods_good]
name = _("Goods")
; /* <-- avoid gettext warnings
;
; Clause types
;
; Clause types that are not listed here, are not enabled at all.
;
; type = Type of the clause, one of "Advance", "Gold", "Map", "Seamap",
; "City", "Ceasefire", "Peace", "Alliance", "Vision", "Embassy",
; "SharedTiles"
; giver_reqs = requirements that the giving side of the clause needs to fulfill
; (see effects.ruleset and README.effects for help on requirements)
; receiver_reqs = requirements that the receiving side of the clause needs to fulfill
;
; */ <-- avoid gettext warnings
[clause_advance]
type = "Advance"
[clause_gold]
type = "Gold"
[clause_map]
type = "Map"
[clause_seamap]
type = "Seamap"
[clause_city]
type = "City"
[clause_ceasefire]
type = "Ceasefire"
[clause_peace]
type = "Peace"
[clause_alliance]
type = "Alliance"
[clause_vision]
type = "Vision"
[clause_embassy]
type = "Embassy"
; /* <-- avoid gettext warnings
;Counter types
;
;name = translatable name as seen by user
;rule_name = (optional) internal name for savegames, rulesets
; etc; if not present, "name" is used for this
; purpose too. Since the name used in savegames must
; not change, if you want to rename an item after a
; ruleset has been released, you should set
; "rule_name" to the original value of "name".
;checkpoint = Trigger value of the counter. When counter`s
; value is at least this much, the "Counter" requirement
; is fulfilled.
;def = Initial value of the counter.
;type = Behavior of the counter:
; "Owned" - Increased each turn, zeroed when city changes owner
; "Celebraring" - Increased each celebrates turn. In case city
; does not celebrates, counter is zeroed
; "Disorder" - Increased each turn city is in disorder state. In
; case riots are eliminated, value is zeroed.
;helptext = Description about relation with requirement
; vectors (effects, building, units, etc.)
; and when counter req of this counter
; will be fulfilled.
; */ <-- avoid gettext warnings
[playercolors]
background.r = 86
background.g = 86
background.b = 86
; Player colors for 32 players are defined below.
; Avoid greens, blues, and white / very pale colors (too easy to confuse
; with terrain).
; Avoid dark colors.
colorlist =
{ "r", "g", "b"
255, 0, 0
255, 255, 0
0, 255, 255
138, 43, 226
255, 165, 0
255, 0, 255
173, 216, 230
0, 255, 127
250, 128, 114
124, 252, 0
139, 0, 0
255, 192, 203
211, 211, 211
218, 112, 214
255, 20, 147
100, 149, 237
255, 215, 0
245, 222, 179
255, 255, 128
192, 255, 128
204, 255, 0
255, 211, 140
255, 79, 0
240, 145, 169
255, 219, 88
153, 17, 153
184, 134, 11
255, 102, 0
102, 205, 170
195, 33, 72
168, 153, 230
255, 250, 205
}
[teams]
; freeciv optional team names definition.
;
; names =
; _("Team 1"),
; _("Team 2"),
; _("Team 3"),
; _("Team 4"),
; etc...
[settings]
; freeciv game settings for civ2civ3 ruleset
;
set =
{ "name", "value"
"aifill", 6
"generator", "FRACTAL"
"topology", "ISO|HEX"
"wrap", "WRAPX|WRAPY"
"mapsize", "PLAYER"
"tilesperplayer", 100
"tinyisles", "ENABLED"
"temperature", 60
"flatpoles", 0
"startunits", "cwsx"
"citymindist", 3
"techlevel", 1
"borders", "ENABLED"
"foggedborders", "ENABLED"
"restrictinfra", "ENABLED"
"unreachableprotects", "DISABLED"
"onsetbarbs", 120
"occupychance", 100
"razechance", 10
"techlossforgiveness", 0
"techlossrestore", 50
"revolentype", "RANDQUICK"
"tradeworldrelpct", 100
"disasters", 100
"animals", 14
}
+465
View File
@@ -0,0 +1,465 @@
; 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 <mysubdir>" 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 governments data for Freeciv"
options = "+Freeciv-3.2-ruleset web-compatible"
format_version = 30
[governments]
during_revolution = "Anarchy"
; /* <-- avoid gettext warnings
;
; Below: The individual government types, one per section.
;
; The actual tag used (the * in [government_*]) does not matter, except
; it must be unique within this file, and it may be used in debug
; output when reading this file.
;
; For the "official" rulesets, the order of these sections should not
; be changed because that would break backward compatibility with
; savegames. (In particular, if Fundamentalism is added to default
; ruleset, should be added at end.)
;
; Notes on fields:
;
; name = translatable name as seen by user
; rule_name = (optional) internal name for savegames, rulesets etc; if
; not present, "name" is used for this purpose too. Since
; the name used in savegames must not change, if you want
; to rename an item after a ruleset has been released, you
; should set "rule_name" to the original value of "name".
; reqs = requirements for this government (see README.effects)
; graphic = tag specifying preferred graphic
; graphic_alt = alternate graphics tag if preferred is not found;
; should be a standard tag if preferred is not;
; otherwise may be "-"
; sound = Sound tag for the audio to play when player switch
; to government.
; sound_alt = Alternative sound tag, in case primary one is not found.
; sound_alt2 = Second alternative sound tag, in case neither primary tag
; nor the first alt tag is found.
; ai_better = AI will not consider this government for use if the
; government listed here is available
; ruler_male_title = The default male ruler title for the government type.
; It's a format string where name of the ruler is marked
; by '%s'.
; Individual nations may override this by their
; own title.
; ruler_female_title = The default female ruler title for the government type.
; See above ruler_male_title.
; helptext = optional help text string; should escape all raw newlines
; so that xgettext parsing works
;
; */ <-- avoid gettext warnings
;------------------------------------------------------------------------
[government_anarchy]
name = _("Anarchy")
; No reqs
graphic = "gov.anarchy"
graphic_alt = "-"
sound = "g_anarchy"
sound_alt = "-"
sound_alt2 = "-"
ruler_male_title = _("Warlord %s")
ruler_female_title = _("Warlady %s")
helptext = _("\
Anarchy is simply the absence of any recognizable government.\
Citizens are disorganized and unproductive, and will spend all\
income as quickly as possible, rather than paying taxes or\
conducting research.\
"),
; /* xgettext:no-c-format */
_("\
* Buildings and technologies do not require any upkeep.\n\
* Each worked tile that gives more than 2 Food, Shield, or Trade will\
suffer a -1 penalty, unless the city working it is celebrating.\
(Cities below size 3 will not celebrate.)\n\
* Each city can support up to 2 units for free; further units each cost\
1 shield per turn.\n\
* Military units do not cause unhappiness even when deployed aggressively.\n\
* Military units impose martial law. Up to 3 military units inside a city\
will each force 1 unhappy citizen to become content.\n\
* You have no control over tax rates. All trade income is\
converted to luxuries.\n\
* Half of the luxuries, including those converted from other\
trade income, are wasted.\n\
* Conventional corruption increases with distance from the capital\
(half as fast with knowledge of The Corporation).\n\
* Base production waste is 30%. This increases with distance from the\
capital (half as fast with knowledge of Trade).\
")
;------------------------------------------------------------------------
[government_tribal]
name = _("Tribal")
; No reqs
graphic = "gov.tribal"
graphic_alt = "s.tax_luxury"
sound = "g_tribal"
sound_alt = "g_generic"
sound_alt2 = "-"
ai_better = "Republic"
ruler_male_title = _("Warlord %s")
ruler_female_title = _("Warlady %s")
helptext = _("\
Under a Tribal government, you are part ruler of your people. Your\
control over your citizens is maintained largely by spiritual counsel.\
"), _("\
Compared to Despotism, a Tribal economy is more shield-oriented. Its\
bonuses to veterancy can be an advantage in wartime, but it lacks the\
martial law of other early governments.\
"),
; /* xgettext:no-c-format */
_("\
* Increases by half the chance of land units getting the next veteran level\
after a battle.\n\
* Each worked tile that gives more than 2 Food, Shield, or Trade will\
suffer a -1 penalty, unless the city working it is celebrating.\
(Cities below size 3 will not celebrate.)\n\
* Each city gets 1 extra content citizen.\n\
* Each city can support up to 2 units for free; further units each cost\
1 shield per turn.\n\
* Unlike later governments, military units do not cause unhappiness even\
when deployed aggressively.\n\
* Base corruption is 30% (the highest under any government). This\
increases with distance from the capital (half as fast with knowledge\
of The Corporation).\n\
* There is no base level of production waste, but an increasing amount\
with distance from the capital (half as fast with knowledge of Trade).\
")
;------------------------------------------------------------------------
[government_despotism]
name = _("Despotism")
; No reqs
graphic = "gov.despotism"
graphic_alt = "-"
sound = "g_despotism"
sound_alt = "g_generic"
sound_alt2 = "-"
ai_better = "Monarchy"
ruler_male_title = _("Chief %s")
ruler_female_title = _("?female:Chief %s")
helptext = _("\
Under Despotism, you are the absolute ruler of your people. Your\
control over your citizens is maintained largely by martial law.\
"), _("\
Compared to Tribalism, a Despotic economy is more trade-oriented.\
"),
; /* xgettext:no-c-format */
_("\
* Your centers of government (cities with Palace and Ecclesiastical\
Palace) get a +75% bonus to gold production.\n\
* Each worked tile that gives more than 2 Food, Shield, or Trade will\
suffer a -1 penalty, unless the city working it is celebrating.\
(Cities below size 3 will not celebrate.)\n\
* Each city can support up to 2 units for free; further units each cost\
1 gold per turn.\n\
* Unlike later governments, military units do not cause unhappiness even\
when deployed aggressively.\n\
* Military units impose martial law. Up to 3 military units inside a city\
will each force 1 unhappy citizen to become content.\n\
* Base corruption is 20%. This increases with distance from the capital\
(half as fast with knowledge of The Corporation).\n\
* Base production waste is 10%. This increases with distance from the\
capital (half as fast with knowledge of Trade).\
")
;------------------------------------------------------------------------
[government_monarchy]
name = _("Monarchy")
reqs = { "type", "name", "range"
"tech", "Monarchy", "Player"
}
graphic = "gov.monarchy"
graphic_alt = "-"
sound = "g_monarchy"
sound_alt = "g_generic"
sound_alt2 = "-"
ruler_male_title = _("King %s")
ruler_female_title = _("Queen %s")
helptext = _("\
Under Monarchy, a king or queen serves as a hereditary figurehead\
for your government.\
"), _("\
Monarchy gives low unit upkeep costs.\
"),
; /* xgettext:no-c-format */
_("\
* Your centers of government (cities with Palace and Ecclesiastical\
Palace) get a +50% bonus to gold production.\n\
* Celebrating cities produce one extra trade point for every tile which is\
already producing trade. (Cities below size 3 will not celebrate.)\n\
* Each city can support up to 3 units for free (the maximum possible);\
further units each cost 1 gold per turn.\n\
* Each city tolerates up to 3 aggressively deployed military units;\
each further unit causes 1 unhappy citizen.\n\
* Military units impose martial law. Up to 3 military units inside a city\
will each force 1 unhappy citizen to become content.\n\
* Base corruption is 10%. This increases with distance from the capital\
(half as fast with knowledge of The Corporation).\n\
* Base production waste is 20%. This increases with distance from the\
capital (half as fast with knowledge of Trade).\
")
;------------------------------------------------------------------------
[government_communism]
name = _("Communism")
reqs = { "type", "name", "range"
"tech", "Communism", "Player"
}
graphic = "gov.communism"
graphic_alt = "-"
sound = "g_communism"
sound_alt = "g_generic"
sound_alt2 = "-"
ruler_male_title = _("Comrade %s")
ruler_female_title = _("?female:Comrade %s")
helptext = _("\
A Communist government is based on the ideal that all people are\
equal. All goods are owned by the state, rather than by private\
citizens. Communism gives a balance between military and commercial\
styles of government.\
"), _("\
Communism is a good government for maximizing shield production, and\
for large empires.\
"),
; /* xgettext:no-c-format */
_("\
* City improvements which would normally have an upkeep of 1 gold are\
free of upkeep.\n\
* Cancels the bonus from Mysticism and Theology (to Temples and Cathedrals).\n\
* Each city can support up to 3 units for free (the maximum possible);\
further units each cost 1 shield per turn.\n\
* Each city tolerates up to 3 aggressively deployed military units;\
each further unit causes 1 unhappy citizen.\n\
* Military units impose martial law. Up to 3 military units inside a city\
will each force 2 unhappy citizens to become content (the maximum\
possible).\n\
* Base corruption is 30%, but is not affected by distance to the capital.\n\
* There is no production waste.\
")
;------------------------------------------------------------------------
[government_fundamentalism]
name = _("Fundamentalism")
reqs = { "type", "name", "range"
"tech", "Theology", "Player"
}
graphic = "gov.fundamentalism"
graphic_alt = "-"
sound = "g_fundamentalism"
sound_alt = "g_generic"
sound_alt2 = "-"
ruler_male_title = _("High Priest %s")
ruler_female_title = _("High Priestess %s")
helptext = _("\
Fundamentalism is a form of government organized around a central\
set of beliefs. The beliefs, usually religious in nature, form\
a rigid guideline for actions and reactions of both the rulers\
and the people.\
"), _("\
In a fundamentalist society, the people and the rulers are entirely\
devoted to their beliefs, and are usually willing to die to\
preserve them.\
"), _("\
Improvements that normally convert unhappy citizens to content\
citizens, produce `tithes' (gold) equivalent to the number\
of people they would convert, and require no maintenance.\
"), _("\
Fundamentalism is a good government for maximizing gold, and its Fanatics\
are useful in wartime, but it has a heavy penalty to technological\
progress.\
"),
; /* xgettext:no-c-format */
_("\
* Base science production is half that of other governments. (A\
Fundamentalist city with a Library produces as much science as a\
city under another government does alone.)\n\
* Each city can support up to 2 units for free; further units each cost\
2 gold per turn (except for Fanatics).\n\
* Each city tolerates up to 2 aggressively deployed military units;\
each further unit causes 1 unhappy citizen.\n\
* Base corruption is 15%. This increases with distance from the capital\
(half as fast with knowledge of The Corporation).\n\
* Base production waste is 15%. This increases with distance from the\
capital (half as fast with knowledge of Trade).\
")
;------------------------------------------------------------------------
[government_federation]
name = _("Federation")
reqs = { "type", "name", "range"
"tech", "Economics", "Player"
}
graphic = "gov.federation"
graphic_alt = "s.tax_gold"
sound = "g_federation"
sound_alt = "g_generic"
sound_alt2 = "-"
ruler_male_title = _("Consul %s")
ruler_female_title = _("?female:Consul %s")
helptext = _("\
Federalism is a system in which the power to govern is shared between\
national and provincial governments. \
This decentralization minimizes the corruption and waste caused by distance\
to capital, and avoids separatist movements.\
"),
; /* xgettext:no-c-format */
_("\
* Each city gets 2 extra luxury points.\n\
* Celebrating cities produce one extra trade point for every tile which is\
already producing trade. (Cities below size 3 will not celebrate.)\n\
* Each city can support up to 2 units for free; further units each cost\
2 gold per turn.\n\
* Each city tolerates up to 2 aggressively deployed military units;\
each further unit causes 1 unhappy citizen.\n\
* There is no base level of corruption, but an increasing amount\
with distance from the capital (half as much as with most other\
governments). Knowledge of The Corporation eliminates this corruption.\n\
* Base production waste is 30%, but is not affected by distance to the\
capital.\n\
* Has a senate that may prevent declaration of war.\
")
;------------------------------------------------------------------------
[government_republic]
name = _("Republic")
reqs = { "type", "name", "range"
"tech", "The Republic", "Player"
}
graphic = "gov.republic"
graphic_alt = "-"
sound = "g_republic"
sound_alt = "g_generic"
sound_alt2 = "-"
ruler_male_title = _("President %s")
ruler_female_title = _("?female:President %s")
helptext = _("\
Under a Republican government, citizens hold an election to select a\
representative who will govern them; since elected leaders must\
remain popular to remain in control, citizens are given a greater\
degree of freedom. Citizens under the Republic become unhappy\
easily, but the self-sufficiency of your citizens allows high levels\
of trade.\
"),
; /* xgettext:no-c-format */
_("\
* Cities produce an extra trade point for every worked land tile that is\
already producing trade.\n\
* Celebrating cities produce a further trade point for every worked tile\
(land or water) which is already producing trade. (Cities below size 3\
will not celebrate.)\n\
* Each city can support one unit for free; further units each cost\
1 shield per turn.\n\
* Each city tolerates a single aggressively deployed military unit;\
each further unit causes 1 unhappy citizen.\n\
* Base corruption is 25%. This increases with distance from the capital\
(half as fast with knowledge of The Corporation).\n\
* Base production waste is 5%. This increases with distance from the\
capital (half as fast with knowledge of Trade).\
")
;------------------------------------------------------------------------
[government_democracy]
name = _("Democracy")
reqs = { "type", "name", "range"
"tech", "Democracy", "Player"
}
graphic = "gov.democracy"
graphic_alt = "-"
sound = "g_democracy"
sound_alt = "g_generic"
sound_alt2 = "-"
ruler_male_title = _("Prime Minister %s")
ruler_female_title = _("?female:Prime Minister %s")
helptext = _("\
Under Democracy, citizens govern directly by voting on issues.\
Democracy offers the highest possible level of trade, but also\
offers the most potential for unhappiness; citizens become very\
upset during wars.\
"),
; /* xgettext:no-c-format */
_("\
* Cities produce an extra trade point for every worked land tile that is\
already producing trade.\n\
* Celebrating cities produce a further trade point for every worked tile\
(land or water) which is already producing trade. (Cities below size 3\
will not celebrate.)\n\
* Each city can support one unit for free; further units each cost\
2 gold per turn.\n\
* Each city tolerates a single aggressively deployed military unit;\
each further unit causes 2 unhappy citizens.\n\
* Base corruption is 5%. This increases with distance from the capital\
(half as fast with knowledge of The Corporation).\n\
* Base production waste is 25%. This increases with distance from the\
capital (half as fast with knowledge of Trade).\n\
* Has a senate that may prevent declaration of war.\
")
; /* <-- avoid gettext warnings
;
; Multipliers (aka policies)
;
; name = translatable name as seen by user
; rule_name = (optional) internal name for savegames, rulesets
; etc; if not present, "name" is used for this
; purpose too. Since the name used in savegames must
; not change, if you want to rename an item after a
; ruleset has been released, you should set
; "rule_name" to the original value of "name".
; default = default value (as presented in UI)
; start = minimum value (as presented in UI)
; stop = maximum value (as presented in UI)
; step = minimum increase/decrease (as presented in UI)
; offset = offset/factor control how UI values are turned
; factor = into effect values for use in effects.ruleset.
; effect_value = (ui_value + offset) * (factor/100)
; Optional; by default offset=0, factor=100, so
; that UI values are used as-is.
; minimum_turns = how often multiplier can be changed, or: how long one is stuck
; with the given value after changing to it
; reqs = requirements for adjusting this policy (see README.effects)
; helptext = optional help text string; should escape all raw
; newlines so that xgettext parsing works
;
; */ <-- avoid gettext warnings
+69
View File
@@ -0,0 +1,69 @@
; 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 <mysubdir>" in the server to have freeciv
; use your new customized file.
[datafile]
description = "Default nations data for Freeciv"
options = "+Freeciv-3.2-ruleset web-compatible"
format_version = 30
; This section contains meta information for freeciv-ruledit and freeciv-ruleup
; to recreate the ruleset file in a form wanted.
; These have no in-game effect whatsoever.
[ruledit]
; Nationlist to add include statement for. If this entry is omitted, all the nations
; will be saved to nations.ruleset itself.
nationlist = "default/nationlist.ruleset"
; List of nations to embed to main nations.ruleset despite separate nationlist
; being used for other nations.
embedded_nations = "Barbarian", "Pirate", "Animal Kingdom"
[compatibility]
; Initial government for all the nations that do not
; have it explicitly defined
default_government = "Despotism"
[default_traits]
; Default values for the AI traits. These are used if nation specific
; value for some trait has not been used. If these default too are
; not defined, the ultimate default is 50.
; <trait>_min and <trait>_max give the range from which the trait value
; is randomly chosen for a given AI player unless 'traitdistribution'
; server setting is 'FIXED'
; <trait>_default is the exaxt trait value used when 'traitdistribution'
; is 'FIXED'. If <trait>_default has not been given, it's set to the
; midpoint between <trait>_min and <trait>_max.
; Value of trait "expansionist" defines how much AI wants to settle new territory.
expansionist_min = 30
expansionist_max = 90
expansionist_default = 50
; Value of trait "trader" defines how much AI wants to establish trade routes.
trader_min = 30
trader_max = 90
trader_default = 50
; Value of trait "aggressive" defines how easily AI declares war.
aggressive_min = 30
aggressive_max = 90
aggressive_default = 50
; Value of trait "builder" defines how much AI wants to build buildings
builder_min = 30
builder_max = 90
builder_default = 50
; Please keep [ruledit] section in sync with these includes
*include "default/nationlist.ruleset"
; This ruleset uses model of two separate barbarian nations
*include "nation/barbarian.ruleset"
*include "nation/pirate.ruleset"
*include "nation/animals.ruleset"
+13
View File
@@ -0,0 +1,13 @@
-- Freeciv - Copyright (C) 2007 - The Freeciv Project
-- This program is free software; you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation; either version 2, or (at your option)
-- any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
-- This file is for lua-functionality for parsing luadata.txt
-- of this ruleset.
+363
View File
@@ -0,0 +1,363 @@
-- Freeciv - Copyright (C) 2007 - The Freeciv Project
-- This program is free software; you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation; either version 2, or (at your option)
-- any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
-- This file is for lua-functionality that is specific to a given
-- ruleset. When freeciv loads a ruleset, it also loads script
-- file called 'default.lua'. The one loaded if your ruleset
-- does not provide an override is default/default.lua.
-- Place Ruins at the location of the destroyed city.
function city_destroyed_callback(city, loser, destroyer)
city.tile:create_extra("Ruins", NIL)
-- continue processing
return false
end
signal.connect("city_destroyed", "city_destroyed_callback")
-- Check if there is certain terrain in ANY CAdjacent tile.
function adjacent_to(tile, terrain_name)
for adj_tile in tile:circle_iterate(1) do
if adj_tile.id ~= tile.id then
local adj_terr = adj_tile.terrain
local adj_name = adj_terr:rule_name()
if adj_name == terrain_name then
return true
end
end
end
return false
end
-- Check if there is certain terrain in ALL CAdjacent tiles.
function surrounded_by(tile, terrain_name)
for adj_tile in tile:circle_iterate(1) do
if adj_tile.id ~= tile.id then
local adj_terr = adj_tile.terrain
local adj_name = adj_terr:rule_name()
if adj_name ~= terrain_name then
return false
end
end
end
return true
end
-- Add random labels to the map.
function place_map_labels()
local rivers = 0
local deeps = 0
local oceans = 0
local lakes = 0
local swamps = 0
local glaciers = 0
local tundras = 0
local deserts = 0
local plains = 0
local grasslands = 0
local jungles = 0
local forests = 0
local hills = 0
local mountains = 0
local selected_river = 0
local selected_deep = 0
local selected_ocean = 0
local selected_lake = 0
local selected_swamp = 0
local selected_glacier = 0
local selected_tundra = 0
local selected_desert = 0
local selected_plain = 0
local selected_grassland = 0
local selected_jungle = 0
local selected_forest = 0
local selected_hill = 0
local selected_mountain = 0
-- Count the tiles that has a terrain type that may get a label.
for place in whole_map_iterate() do
local terr = place.terrain
local tname = terr:rule_name()
if place:has_extra("River") then
rivers = rivers + 1
elseif tname == "Deep Ocean" then
deeps = deeps + 1
elseif tname == "Ocean" then
oceans = oceans + 1
elseif tname == "Lake" then
lakes = lakes + 1
elseif tname == "Swamp" then
swamps = swamps + 1
elseif tname == "Glacier" then
glaciers = glaciers + 1
elseif tname == "Tundra" then
tundras = tundras + 1
elseif tname == "Desert" then
deserts = deserts + 1
elseif tname == "Plains" then
plains = plains + 1
elseif tname == "Grassland" then
grasslands = grasslands + 1
elseif tname == "Jungle" then
jungles = jungles + 1
elseif tname == "Forest" then
forests = forests + 1
elseif tname == "Hills" then
hills = hills + 1
elseif tname == "Mountains" then
mountains = mountains + 1
end
end
-- Decide if a label should be included and, in case it should, where.
if random(1, 100) <= rivers then
selected_river = random(1, rivers)
end
if random(1, 100) <= deeps then
selected_deep = random(1, deeps)
end
if random(1, 100) <= oceans then
selected_ocean = random(1, oceans)
end
if random(1, 100) <= lakes then
selected_lake = random(1, lakes)
end
if random(1, 100) <= swamps then
selected_swamp = random(1, swamps)
end
if random(1, 100) <= glaciers then
selected_glacier = random(1, glaciers)
end
if random(1, 100) <= tundras then
selected_tundra = random(1, tundras)
end
if random(1, 100) <= deserts then
selected_desert = random(1, deserts)
end
if random(1, 100) <= plains then
selected_plain = random(1, plains)
end
if random(1, 100) <= grasslands then
selected_grassland = random(1, grasslands)
end
if random(1, 100) <= jungles then
selected_jungle = random(1, jungles)
end
if random(1, 100) <= forests then
selected_forest = random(1, forests)
end
if random(1, 100) <= hills then
selected_hill = random(1, hills)
end
if random(1, 100) <= mountains then
selected_mountain = random(1, mountains)
end
-- Place the included labels at the location determined above.
for place in whole_map_iterate() do
local terr = place.terrain
local tname = terr:rule_name()
if place:has_extra("River") then
selected_river = selected_river - 1
if selected_river == 0 then
if tname == "Hills" then
place:set_label(_("Grand Canyon"))
elseif tname == "Mountains" then
place:set_label(_("Deep Gorge"))
elseif tname == "Tundra" then
place:set_label(_("Fjords"))
elseif random(1, 100) <= 50 then
place:set_label(_("Waterfalls"))
else
place:set_label(_("Travertine Terraces"))
end
end
elseif tname == "Deep Ocean" then
selected_deep = selected_deep - 1
if selected_deep == 0 then
if surrounded_by(place, "Deep Ocean") then
-- Fully surrounded
place:set_label(_("Deep Trench"))
else
place:set_label(_("Thermal Vent"))
end
end
elseif tname == "Ocean" then
selected_ocean = selected_ocean - 1
if selected_ocean == 0 then
if surrounded_by(place, "Ocean") then
-- Fully surrounded
place:set_label(_("Atoll Chain"))
elseif adjacent_to(place, "Glacier") then
place:set_label(_("Glacier Bay"))
elseif adjacent_to(place, "Deep Ocean") then
place:set_label(_("Great Barrier Reef"))
else
-- Coast (not adjacent to glacier nor deep ocean)
place:set_label(_("Great Blue Hole"))
end
end
elseif tname == "Lake" then
selected_lake = selected_lake - 1
if selected_lake == 0 then
if surrounded_by(place, "Lake") then
-- Fully surrounded
place:set_label(_("Great Lakes"))
elseif not adjacent_to(place, "Lake") then
-- Isolated
place:set_label(_("Dead Sea"))
else
place:set_label(_("Rift Lake"))
end
end
elseif tname == "Swamp" then
selected_swamp = selected_swamp - 1
if selected_swamp == 0 then
if not adjacent_to(place, "Swamp") then
-- Isolated
place:set_label(_("Grand Prismatic Spring"))
elseif adjacent_to(place, "Ocean") then
-- Coast
place:set_label(_("Mangrove Forest"))
else
place:set_label(_("Cenotes"))
end
end
elseif tname == "Glacier" then
selected_glacier = selected_glacier - 1
if selected_glacier == 0 then
if surrounded_by(place, "Glacier") then
-- Fully surrounded
place:set_label(_("Ice Sheet"))
elseif not adjacent_to(place, "Glacier") then
-- Isolated
place:set_label(_("Frozen Lake"))
elseif adjacent_to(place, "Ocean") then
-- Coast
place:set_label(_("Ice Shelf"))
else
place:set_label(_("Advancing Glacier"))
end
end
elseif tname == "Tundra" then
selected_tundra = selected_tundra - 1
if selected_tundra == 0 then
place:set_label(_("Geothermal Area"))
end
elseif tname == "Desert" then
selected_desert = selected_desert - 1
if selected_desert == 0 then
if surrounded_by(place, "Desert") then
-- Fully surrounded
place:set_label(_("Sand Sea"))
elseif not adjacent_to(place, "Desert") then
-- Isolated
place:set_label(_("Salt Flat"))
elseif random(1, 100) <= 50 then
place:set_label(_("Singing Dunes"))
else
place:set_label(_("White Desert"))
end
end
elseif tname == "Plains" then
selected_plain = selected_plain - 1
if selected_plain == 0 then
if adjacent_to(place, "Ocean") then
-- Coast
place:set_label(_("Long Beach"))
elseif random(1, 100) <= 50 then
place:set_label(_("Valley of Geysers"))
else
place:set_label(_("Rock Pillars"))
end
end
elseif tname == "Grassland" then
selected_grassland = selected_grassland - 1
if selected_grassland == 0 then
if adjacent_to(place, "Ocean") then
-- Coast
place:set_label(_("White Cliffs"))
elseif random(1, 100) <= 50 then
place:set_label(_("Giant Cave"))
else
place:set_label(_("Rock Formation"))
end
end
elseif tname == "Jungle" then
selected_jungle = selected_jungle - 1
if selected_jungle == 0 then
if surrounded_by(place, "Jungle") then
-- Fully surrounded
place:set_label(_("Rainforest"))
elseif adjacent_to(place, "Ocean") then
-- Coast
place:set_label(_("Subterranean River"))
else
place:set_label(_("Sinkholes"))
end
end
elseif tname == "Forest" then
selected_forest = selected_forest - 1
if selected_forest == 0 then
if adjacent_to(place, "Mountains") then
place:set_label(_("Stone Forest"))
elseif surrounded_by(place, "Forest") then
-- Fully surrounded
place:set_label(_("Sequoia Forest"))
else
place:set_label(_("Millenary Trees"))
end
end
elseif tname == "Hills" then
selected_hill = selected_hill - 1
if selected_hill == 0 then
if not adjacent_to(place, "Hills") then
if adjacent_to(place, "Mountains") then
-- Isolated (but adjacent to mountains)
place:set_label(_("Table Mountain"))
else
-- Isolated (not adjacent to hills nor mountains)
place:set_label(_("Inselberg"))
end
elseif random(1, 100) <= 50 then
place:set_label(_("Karst Landscape"))
else
place:set_label(_("Mud Volcanoes"))
end
end
elseif tname == "Mountains" then
selected_mountain = selected_mountain - 1
if selected_mountain == 0 then
if surrounded_by(place, "Mountains") then
-- Fully surrounded
place:set_label(_("Highest Peak"))
elseif not adjacent_to(place, "Mountains") then
-- Isolated
place:set_label(_("Sacred Mount"))
elseif adjacent_to(place, "Ocean") then
-- Coast
place:set_label(_("Cliff Coast"))
elseif random(1, 100) <= 50 then
place:set_label(_("Active Volcano"))
else
place:set_label(_("High Summit"))
end
end
end
end
return false
end
signal.connect("map_generated", "place_map_labels")
+254
View File
@@ -0,0 +1,254 @@
; 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 <mysubdir>" in the server to have freeciv
; use your new customized file.
[datafile]
description = "Nation theme data for Freeciv"
options = "+Freeciv-3.2-ruleset web-compatible"
format_version = 30
; /* <-- avoid gettext warnings
;
; Nation styles
;
; name = translatable name as seen by user
; rule_name = (optional) internal name for savegames, rulesets etc; if
; not present, "name" is used for this purpose too. Since
; the name used in savegames must not change, if you want
; to rename an item after a ruleset has been released, you
; should set "rule_name" to the original value of "name".
;
; */ <-- avoid gettext warnings
[style_european]
name = _("?style:European")
[style_classical]
name = _("?style:Classical")
[style_tropical]
name = _("?style:Tropical")
[style_asian]
name = _("?style:Asian")
[style_babylonian]
name = _("?style:Babylonian")
[style_celtic]
name = _("?style:Celtic")
; /* <-- avoid gettext warnings
;
; City styles define the way cities are drawn
;
; name = translatable name as seen by user
; rule_name = (optional) internal name for savegames, rulesets etc; if
; not present, "name" is used for this purpose too. Since
; the name used in savegames must not change, if you want
; to rename an item after a ruleset has been released, you
; should set "rule_name" to the original value of "name".
; graphic = group of tiles to use, see cities spec for
; more info on city tiles
; citizens_graphic = group of citizens tiles to use, see citizens/small
; spec for more info on citizens tiles
; reqs = requirements for this city style (see README.effects)
;
; */ <-- avoid gettext warnings
[citystyle_european]
name = _("?citystyle:European")
graphic = "city.european"
graphic_alt = "-"
citizens_graphic = "ancient"
reqs = { "type", "name", "range"
"Style", "European", "Player"
}
[citystyle_classical]
name = _("?citystyle:Classical")
graphic = "city.classical"
graphic_alt = "-"
citizens_graphic = "ancient"
reqs = { "type", "name", "range"
"Style", "Classical", "Player"
}
[citystyle_tropical]
name = _("?citystyle:Tropical")
graphic = "city.tropical"
graphic_alt = "city.european"
citizens_graphic = "ancient"
reqs = { "type", "name", "range"
"Style", "Tropical", "Player"
}
[citystyle_asian]
name = _("?citystyle:Asian")
graphic = "city.asian"
graphic_alt = "city.classical"
citizens_graphic = "ancient"
reqs = { "type", "name", "range"
"Style", "Asian", "Player"
}
[citystyle_babylonian]
name = _("?citystyle:Babylonian")
graphic = "city.babylonian"
graphic_alt = "city.classical"
citizens_graphic = "ancient"
reqs = { "type", "name", "range"
"Style", "Babylonian", "Player"
}
[citystyle_celtic]
name = _("?citystyle:Celtic")
graphic = "city.celtic"
graphic_alt = "city.european"
citizens_graphic = "ancient"
reqs = { "type", "name", "range"
"Style", "Celtic", "Player"
}
[citystyle_industrial]
name = _("?citystyle:Industrial")
graphic = "city.industrial"
graphic_alt = "-"
citizens_graphic = "industrial"
reqs = { "type", "name", "range"
"tech", "Railroad", "Player"
}
[citystyle_electric]
name = _("?citystyle:ElectricAge")
graphic = "city.electricage"
graphic_alt = "city.modern"
citizens_graphic = "electricage"
reqs = { "type", "name", "range"
"tech", "Automobile", "Player"
}
[citystyle_modern]
name = _("?citystyle:Modern")
graphic = "city.modern"
graphic_alt = "-"
citizens_graphic = "modern"
reqs = { "type", "name", "range"
"tech", "Rocketry", "Player"
}
[citystyle_postmodern]
name = _("?citystyle:PostModern")
graphic = "city.postmodern"
graphic_alt = "-"
citizens_graphic = "postmodern"
reqs = { "type", "name", "range"
"tech", "Superconductors", "Player"
}
; /* <-- avoid gettext warnings
;
; Music styles
;
; Order is important. The last one for which activation requirements
; are fulfilled is the one that plays.
;
; music_peaceful = Music to play when nation in peaceful mood
; music_combat = Music to play when nation in combat mood
; reqs = requirements to activate the style (see effects.ruleset
; and README.effects for help on requirements)
;
; */ <-- avoid gettext warnings
[musicstyle_european]
music_peaceful = "music_european_peace"
music_combat = "music_european_combat"
reqs =
{ "type", "name", "range"
"Style", "European", "Player"
}
[musicstyle_classical]
music_peaceful = "music_classical_peace"
music_combat = "music_classical_combat"
reqs =
{ "type", "name", "range"
"Style", "Classical", "Player"
}
[musicstyle_tropical]
music_peaceful = "music_tropical_peace"
music_combat = "music_tropical_combat"
reqs =
{ "type", "name", "range"
"Style", "Tropical", "Player"
}
[musicstyle_asian]
music_peaceful = "music_asian_peace"
music_combat = "music_asian_combat"
reqs =
{ "type", "name", "range"
"Style", "Asian", "Player"
}
[musicstyle_babylonian]
music_peaceful = "music_babylonian_peace"
music_combat = "music_babylonian_combat"
reqs =
{ "type", "name", "range"
"Style", "Babylonian", "Player"
}
[musicstyle_celtic]
music_peaceful = "music_celtic_peace"
music_combat = "music_celtic_combat"
reqs =
{ "type", "name", "range"
"Style", "Celtic", "Player"
}
[musicstyle_renaissance]
music_peaceful = "music_renaissance_peace"
music_combat = "music_renaissance_combat"
reqs =
{ "type", "name", "range"
"Tech", "University", "Player"
}
[musicstyle_industrial]
music_peaceful = "music_industrial_peace"
music_combat = "music_industrial_combat"
reqs =
{ "type", "name", "range"
"Tech", "Railroad", "Player"
}
[musicstyle_electricage]
music_peaceful = "music_electricage_peace"
music_combat = "music_electricage_combat"
reqs =
{ "type", "name", "range"
"Tech", "Automobile", "Player"
}
[musicstyle_modern]
music_peaceful = "music_modern_peace"
music_combat = "music_modern_combat"
reqs =
{ "type", "name", "range"
"Tech", "Rocketry", "Player"
}
[musicstyle_postmodern]
music_peaceful = "music_postmodern_peace"
music_combat = "music_postmodern_combat"
reqs =
{ "type", "name", "range"
"Tech", "Superconductors", "Player"
}
+870
View File
@@ -0,0 +1,870 @@
; 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 <mysubdir>" in the server to have freeciv
; use your new customized file.
[datafile]
description = "Civ2Civ3 technology data for Freeciv"
options = "+Freeciv-3.2-ruleset web-compatible"
format_version = 30
[control]
; Names for custom tech flags. There can be up to 8 of these.
; name = rule name; In some circumstances user may see this
; as part of some sentences, so try to make it descriptive
; and sensible.
; helptxt = displayed in the help for advances with this flag (optional)
;flags =
; { "name", "helptxt"
; }
; /* <-- avoid gettext warnings
;
; Tech classes:
;
; First one is the default one.
; If there is none, tech classes feature is disabled
;
; name = translatable name as seen by user
; rule_name = (optional) internal name for savegames, rulesets
; etc; if not present, "name" is used for this
; purpose too. Since the name used in savegames must
; not change, if you want to rename an item after a
; ruleset has been released, you should set
; "rule_name" to the original value of "name".
; cost_pct = how much techs of the class cost compared
; to normal. Default is 100%.
;
; */ <-- avoid gettext warnings
;[techclass_default]
;name =
; /* <-- avoid gettext warnings
;
; Below: The individual advances, one per section.
; The number can be variable, up to 400.
;
; The actual tag used (the * in [advance_*]) does not matter, except
; it must be unique within this file, and it may be used in debug
; output when reading this file.
;
; Notes:
;
; name = translatable name as seen by user
; rule_name = (optional) internal name for savegames, rulesets etc; if
; not present, "name" is used for this purpose too. Since
; the name used in savegames must not change, if you want
; to rename an item after a ruleset has been released, you
; should set "rule_name" to the original value of "name".
; class = tech class this tech belongs to, if they have been defined.
; Default is first one defined above.
; req1, req2 = advances required before researching this one
; root_req = tech required before acquiring this tech, by any means.
; All techs with any direct or indirect dependency on this
; one will *also* have this root_req, as well as their own
; and any others they inherit.
; Giving "None" explicitly here prevents a tech from
; inheriting root_reqs in this way, and stops root_req
; inheritance through that tech.
; Specifying a tech's root_req as itself means that the tech
; can only be acquired by special means (nation's init_techs,
; scripting, etc).
; research_reqs = requirements before researching this one. Can have non
; tech requirements because it is a requirement vector.
; See doc/README.effects to learn more about requirement
; vectors.
; Requiring a tech here instead of in req1, req2 or
; root_req is not supported yet.
; Requirements that may become fulfilled during the game
; when they weren't at the start of the game is not
; supported yet.
; flags = special flag strings
; graphic = icon for technology
; graphic_alt = alternate icon
; helptext = optional help text string (set units ruleset for examples)
; bonus_message = text seen when a player is the first to discover
; an bonus tech. Must contain '%s' to mark place of the tech
; gained.
; cost = if tech_cost_style is set to "Classic+" or "Experimental+",
; this field is read for information on how much a tech
; costs.
;
; Special values for req1 and req2 are "None" (first section below)
; and "Never" (never available). If only one tech is required,
; it should be listed as req1.
;
; As well as custom flags defined above, the following flag strings are
; possible:
;
; "Bonus_Tech" = player gets extra tech if reached first
; "Bridge" = "Settler" unit types can build extras that
; require bridge when occurring with some other
; extra. See "bridged_over" extra property in
; terrain.ruleset.
; "Build_Airborne" = from now on can build air units (for use by AI)
; "Claim_Ocean" = Player claims ocean tiles even if they are not
; adjacent to border source
; "Claim_Ocean_Limited" = Oceanic border sources claim ocean tiles even if
; they are not adjacent to border source
;
; */ <-- avoid gettext warnings
[advance_advanced_flight]
name = _("Advanced Flight")
req1 = "Radio"
req2 = "Machine Tools"
flags = ""
graphic = "a.advanced_flight"
graphic_alt = "-"
helptext = _("Enables movement of nuclear units.")
[advance_alphabet]
name = _("Alphabet")
req1 = "None"
req2 = "None"
flags = ""
graphic = "a.alphabet"
graphic_alt = "-"
[advance_amphibious_warfare]
name = _("Amphibious Warfare")
req1 = "Engineering"
req2 = "Tactics"
flags = ""
graphic = "a.amphibious_warfare"
graphic_alt = "-"
[advance_astronomy]
name = _("Astronomy")
req1 = "Mysticism"
req2 = "Mathematics"
flags = ""
graphic = "a.astronomy"
graphic_alt = "-"
helptext = _("Increases units' vision when in fortresses.")
[advance_atomic_theory]
name = _("Atomic Theory")
req1 = "Chemistry"
req2 = "Refrigeration"
flags = ""
graphic = "a.atomic_theory"
graphic_alt = "-"
[advance_automobile]
name = _("Automobile")
req1 = "Combustion"
req2 = "Steel"
flags = ""
graphic = "a.automobile"
graphic_alt = "-"
[advance_banking]
name = _("Banking")
req1 = "Trade"
req2 = "The Republic"
flags = ""
graphic = "a.banking"
graphic_alt = "-"
[advance_bridge_building]
name = _("Bridge Building")
req1 = "The Wheel"
req2 = "Construction"
flags = "Bridge"
graphic = "a.bridge_building"
graphic_alt = "-"
helptext = _("Allows roads to be built on river tiles.")
[advance_bronze_working]
name = _("Bronze Working")
req1 = "None"
req2 = "None"
flags = ""
graphic = "a.bronze_working"
graphic_alt = "-"
[advance_ceremonial_burial]
name = _("Ceremonial Burial")
req1 = "None"
req2 = "None"
flags = ""
graphic = "a.ceremonial_burial"
graphic_alt = "-"
[advance_chemistry]
name = _("Chemistry")
req1 = "University"
req2 = "Medicine"
flags = ""
graphic = "a.chemistry"
graphic_alt = "-"
[advance_chivalry]
name = _("Chivalry")
req1 = "Feudalism"
req2 = "Horseback Riding"
flags = ""
graphic = "a.chivalry"
graphic_alt = "-"
[advance_code_of_laws]
name = _("Code of Laws")
req1 = "Alphabet"
req2 = "None"
flags = ""
graphic = "a.code_of_laws"
graphic_alt = "-"
[advance_combined_arms]
name = _("Combined Arms")
req1 = "Mobile Warfare"
req2 = "Advanced Flight"
flags = ""
graphic = "a.combined_arms"
graphic_alt = "-"
[advance_combustion]
name = _("Combustion")
req1 = "Refining"
req2 = "Engineering"
flags = ""
graphic = "a.combustion"
graphic_alt = "-"
[advance_communism]
name = _("Communism")
req1 = "Theology"
req2 = "Industrialization"
flags = ""
graphic = "a.communism"
graphic_alt = "-"
[advance_computers]
name = _("Computers")
req1 = "Miniaturization"
req2 = "Radio"
flags = ""
graphic = "a.computers"
graphic_alt = "-"
[advance_conscription]
name = _("Conscription")
req1 = "Democracy"
req2 = "Metallurgy"
flags = ""
graphic = "a.conscription"
graphic_alt = "-"
[advance_construction]
name = _("Construction")
req1 = "Masonry"
req2 = "Iron Working"
flags = ""
graphic = "a.construction"
graphic_alt = "-"
helptext = _("\
Allows Settlers, Migrants, Workers, Engineers, and military infantry \
units to build forts and fortresses.\
")
[advance_currency]
name = _("Currency")
req1 = "Bronze Working"
req2 = "None"
flags = ""
graphic = "a.currency"
graphic_alt = "-"
[advance_democracy]
name = _("Democracy")
req1 = "Banking"
req2 = "Invention"
flags = ""
graphic = "a.democracy"
graphic_alt = "-"
[advance_economics]
name = _("Economics")
req1 = "Banking"
req2 = "University"
flags = ""
graphic = "a.economics"
graphic_alt = "-"
[advance_electricity]
name = _("Electricity")
req1 = "Metallurgy"
req2 = "Theory of Gravity"
flags = ""
graphic = "a.electricity"
graphic_alt = "-"
helptext = _("\
Allows irrigation without an adjacent water source, improves the \
effect of Amphitheaters, and increases city vision radius.\
")
[advance_electronics]
name = _("Electronics")
req1 = "The Corporation"
req2 = "Electricity"
flags = ""
graphic = "a.electronics"
graphic_alt = "-"
[advance_engineering]
name = _("Engineering")
req1 = "Electricity"
req2 = "Steam Engine"
flags = ""
graphic = "a.engineering"
graphic_alt = "-"
[advance_environmentalism]
name = _("Environmentalism")
req1 = "Recycling"
req2 = "Space Flight"
flags = ""
graphic = "a.environmentalism"
graphic_alt = "-"
[advance_espionage]
name = _("Espionage")
req1 = "Communism"
req2 = "Democracy"
flags = ""
graphic = "a.espionage"
graphic_alt = "-"
[advance_explosives]
name = _("Explosives")
req1 = "Gunpowder"
req2 = "Chemistry"
flags = ""
graphic = "a.explosives"
graphic_alt = "-"
[advance_feudalism]
name = _("Feudalism")
req1 = "Iron Working"
req2 = "Monarchy"
flags = ""
graphic = "a.feudalism"
graphic_alt = "-"
[advance_flight]
name = _("Flight")
req1 = "Combustion"
req2 = "Tactics"
flags = "Build_Airborne"
graphic = "a.flight"
graphic_alt = "-"
[advance_fusion_power]
name = _("Fusion Power")
req1 = "Superconductors"
req2 = "Labor Union"
flags = ""
graphic = "a.fusion_power"
graphic_alt = "-"
helptext = _("Makes it possible for Engineers to transform terrains.")
[advance_genetic_engineering]
name = _("Genetic Engineering")
req1 = "Refrigeration"
req2 = "The Corporation"
flags = ""
graphic = "a.genetic_engineering"
graphic_alt = "-"
[advance_guerilla_warfare]
name = _("Guerilla Warfare")
req1 = "Communism"
req2 = "Tactics"
flags = ""
graphic = "a.guerilla_warfare"
graphic_alt = "-"
[advance_gunpowder]
name = _("Gunpowder")
req1 = "Invention"
req2 = "Feudalism"
graphic = "a.gunpowder"
graphic_alt = "-"
[advance_horseback_riding]
name = _("Horseback Riding")
req1 = "None"
req2 = "None"
flags = ""
graphic = "a.horseback_riding"
graphic_alt = "-"
[advance_industrialization]
name = _("Industrialization")
req1 = "Railroad"
req2 = "Banking"
graphic = "a.industrialization"
graphic_alt = "-"
[advance_invention]
name = _("Invention")
req1 = "Bridge Building"
req2 = "Literacy"
flags = ""
graphic = "a.invention"
graphic_alt = "-"
helptext = _("Halves the upgrade cost of your units.")
[advance_iron_working]
name = _("Iron Working")
req1 = "Bronze Working"
req2 = "Warrior Code"
flags = ""
graphic = "a.iron_working"
graphic_alt = "-"
[advance_labor_union]
name = _("Labor Union")
req1 = "Communism"
req2 = "Mobile Warfare"
flags = ""
graphic = "a.labor_union"
graphic_alt = "-"
[advance_laser]
name = _("Laser")
req1 = "Computers"
req2 = "Nuclear Power"
flags = ""
graphic = "a.laser"
graphic_alt = "-"
[advance_leadership]
name = _("Leadership")
req1 = "Chivalry"
req2 = "Gunpowder"
flags = ""
graphic = "a.leadership"
graphic_alt = "-"
[advance_literacy]
name = _("Literacy")
req1 = "Writing"
req2 = "Code of Laws"
flags = ""
graphic = "a.literacy"
graphic_alt = "-"
[advance_machine_tools]
name = _("Machine Tools")
req1 = "Steel"
req2 = "Tactics"
flags = ""
graphic = "a.machine_tools"
graphic_alt = "-"
[advance_magnetism]
name = _("Magnetism")
req1 = "Seafaring"
req2 = "Astronomy"
flags = ""
graphic = "a.magnetism"
graphic_alt = "-"
[advance_map_making]
name = _("Map Making")
req1 = "Alphabet"
req2 = "None"
flags = ""
graphic = "a.map_making"
graphic_alt = "-"
[advance_masonry]
name = _("Masonry")
req1 = "None"
req2 = "None"
flags = ""
graphic = "a.masonry"
graphic_alt = "-"
[advance_mass_production]
name = _("Mass Production")
req1 = "Automobile"
req2 = "The Corporation"
flags = ""
graphic = "a.mass_production"
graphic_alt = "-"
[advance_mathematics]
name = _("Mathematics")
req1 = "Alphabet"
req2 = "Masonry"
flags = ""
graphic = "a.mathematics"
graphic_alt = "-"
[advance_medicine]
name = _("Medicine")
req1 = "Philosophy"
req2 = "Trade"
flags = ""
graphic = "a.medicine"
graphic_alt = "-"
; /* xgettext:no-c-format */
helptext = _("\
Reduces the risk of plague in your cities by 30% of the base chance \
(this is additive with the benefits of any buildings).\
")
[advance_metallurgy]
name = _("Metallurgy")
req1 = "Gunpowder"
req2 = "Mathematics"
flags = ""
graphic = "a.metallurgy"
graphic_alt = "-"
[advance_miniaturization]
name = _("Miniaturization")
req1 = "Combustion"
req2 = "Electronics"
flags = ""
graphic = "a.miniaturization"
graphic_alt = "-"
helptext = _("\
Allows Settlers, Migrants, Workers, Engineers, and Transports to build \
oil platforms on Deep Ocean, required to get the bonus from \
Offshore Platforms.\
")
[advance_mobile_warfare]
name = _("Mobile Warfare")
req1 = "Automobile"
req2 = "Machine Tools"
flags = ""
graphic = "a.mobile_warfare"
graphic_alt = "-"
[advance_monarchy]
name = _("Monarchy")
req1 = "Ceremonial Burial"
req2 = "Code of Laws"
flags = ""
graphic = "a.monarchy"
graphic_alt = "-"
[advance_monotheism]
name = _("Monotheism")
req1 = "Astronomy"
req2 = "Polytheism"
flags = ""
graphic = "a.monotheism"
graphic_alt = "-"
[advance_mysticism]
name = _("Mysticism")
req1 = "Ceremonial Burial"
req2 = "None"
flags = ""
graphic = "a.mysticism"
graphic_alt = "-"
helptext = _("Improves the effect of Temples.")
[advance_navigation]
name = _("Navigation")
req1 = "Invention"
req2 = "Physics"
flags = ""
graphic = "a.navigation"
graphic_alt = "-"
[advance_nuclear_fission]
name = _("Nuclear Fission")
req1 = "Mass Production"
req2 = "Atomic Theory"
flags = ""
graphic = "a.nuclear_fission"
graphic_alt = "-"
[advance_nuclear_power]
name = _("Nuclear Power")
req1 = "Nuclear Fission"
req2 = "Miniaturization"
flags = ""
graphic = "a.nuclear_power"
graphic_alt = "-"
helptext = _("Gives sea units one extra move.")
[advance_philosophy]
name = _("Philosophy")
req1 = "Mysticism"
req2 = "Literacy"
flags = "Bonus_Tech"
bonus_message = _("Great philosophers from all the world join \
your civilization: you learn %s immediately.")
graphic = "a.philosophy"
graphic_alt = "-"
[advance_physics]
name = _("Physics")
req1 = "The Wheel"
req2 = "Magnetism"
flags = ""
graphic = "a.physics"
graphic_alt = "-"
[advance_plastics]
name = _("Plastics")
req1 = "Mass Production"
req2 = "Robotics"
flags = ""
graphic = "a.plastics"
graphic_alt = "-"
[advance_polytheism]
name = _("Polytheism")
req1 = "Horseback Riding"
req2 = "Ceremonial Burial"
flags = ""
graphic = "a.polytheism"
graphic_alt = "-"
[advance_pottery]
name = _("Pottery")
req1 = "None"
req2 = "None"
flags = ""
graphic = "a.pottery"
graphic_alt = "-"
[advance_radio]
name = _("Radio")
req1 = "Flight"
req2 = "Electronics"
flags = ""
graphic = "a.radio"
graphic_alt = "-"
helptext = _("\
Allows Settlers, Migrants, Workers and Engineers to build airstrips, \
airbases and buoys. Allows Transports to build buoys.\
")
[advance_railroad]
name = _("?tech:Railroad")
req1 = "Steam Engine"
req2 = "Metallurgy"
flags = ""
graphic = "a.railroad"
graphic_alt = "-"
helptext = _("\
Allows Settlers, Migrants, Workers and Engineers to upgrade roads to \
railroads.\
"), _("\
For Despotism or Tribal governments, cancels the penalty to worked \
tiles with output greater than 2 (as if all your cities were always \
celebrating).\
")
[advance_recycling]
name = _("Recycling")
req1 = "Mass Production"
req2 = "Sanitation"
flags = ""
graphic = "a.recycling"
graphic_alt = "-"
[advance_refining]
name = _("Refining")
req1 = "Explosives"
req2 = "Industrialization"
flags = ""
graphic = "a.refining"
graphic_alt = "-"
helptext = _("\
Allows Settlers, Migrants, Workers and Engineers to upgrade \
mines to oil wells on Desert and Glacier tiles, for an extra production \
point.\
")
[advance_refrigeration]
name = _("Refrigeration")
req1 = "Sanitation"
req2 = "Electricity"
flags = ""
graphic = "a.refrigeration"
graphic_alt = "-"
helptext = _("\
Allows Settlers, Migrants, Workers and Engineers to upgrade \
irrigation systems to farmland.\
")
[advance_robotics]
name = _("Robotics")
req1 = "Mobile Warfare"
req2 = "Computers"
flags = ""
graphic = "a.robotics"
graphic_alt = "-"
[advance_rocketry]
name = _("Rocketry")
req1 = "Advanced Flight"
req2 = "Miniaturization"
flags = ""
graphic = "a.rocketry"
graphic_alt = "-"
helptext = _("Doubles movement of nuclear units.")
[advance_sanitation]
name = _("Sanitation")
req1 = "Bridge Building"
req2 = "Medicine"
flags = ""
graphic = "a.sanitation"
graphic_alt = "-"
[advance_seafaring]
name = _("Seafaring")
req1 = "Pottery"
req2 = "Map Making"
flags = ""
graphic = "a.seafaring"
graphic_alt = "-"
[advance_space_flight]
name = _("Space Flight")
req1 = "Computers"
req2 = "Rocketry"
flags = ""
graphic = "a.space_flight"
graphic_alt = "-"
[advance_stealth]
name = _("Stealth")
req1 = "Plastics"
req2 = "Space Flight"
flags = ""
graphic = "a.stealth"
graphic_alt = "-"
[advance_steam_engine]
name = _("Steam Engine")
req1 = "Chemistry"
req2 = "Navigation"
flags = ""
graphic = "a.steam_engine"
graphic_alt = "-"
[advance_steel]
name = _("Steel")
req1 = "Engineering"
req2 = "Industrialization"
flags = ""
graphic = "a.steel"
graphic_alt = "-"
[advance_superconductors]
name = _("Superconductors")
req1 = "Space Flight"
req2 = "Laser"
flags = ""
graphic = "a.superconductors"
graphic_alt = "-"
helptext = _("\
Allows Settlers, Migrants, Workers and Engineers to upgrade railroads \
with maglev.\
")
[advance_tactics]
name = _("Tactics")
req1 = "Conscription"
req2 = "Leadership"
flags = ""
graphic = "a.tactics"
graphic_alt = "-"
[advance_the_corporation]
name = _("The Corporation")
req1 = "Economics"
req2 = "Industrialization"
flags = ""
graphic = "a.the_corporation"
graphic_alt = "-"
helptext = _("\
Halves the corruption of trade related to distance from the capital \
(or eliminates it for Federation governments).\
")
[advance_the_republic]
name = _("The Republic")
req1 = "Code of Laws"
req2 = "Literacy"
flags = ""
graphic = "a.the_republic"
graphic_alt = "-"
[advance_the_wheel]
name = _("The Wheel")
req1 = "Horseback Riding"
req2 = "None"
flags = ""
graphic = "a.the_wheel"
graphic_alt = "-"
[advance_theology]
name = _("Theology")
req1 = "Philosophy"
req2 = "Monotheism"
flags = ""
graphic = "a.theology"
graphic_alt = "-"
helptext = _("Improves the effect of Cathedrals.")
[advance_theory_of_gravity]
name = _("Theory of Gravity")
req1 = "Physics"
req2 = "University"
flags = ""
graphic = "a.theory_of_gravity"
graphic_alt = "-"
[advance_trade]
name = _("Trade")
req1 = "Currency"
req2 = "Pottery"
flags = ""
graphic = "a.trade"
graphic_alt = "-"
helptext = _("\
Halves the waste of production related to distance from the capital.\
")
[advance_university]
name = _("University")
req1 = "Mathematics"
req2 = "Philosophy"
flags = ""
graphic = "a.university"
graphic_alt = "-"
[advance_warrior_code]
name = _("Warrior Code")
req1 = "None"
req2 = "None"
flags = ""
graphic = "a.warrior_code"
graphic_alt = "-"
[advance_writing]
name = _("Writing")
req1 = "Alphabet"
req2 = "None"
flags = ""
graphic = "a.writing"
graphic_alt = "-"
+2347
View File
File diff suppressed because it is too large Load Diff
+2893
View File
File diff suppressed because it is too large Load Diff