Sophie

Sophie

distrib > Fedora > 18 > x86_64 > media > updates > by-pkgid > ff3d1e8aa70062caf828e1ecb206ee8a > files > 20

freeciv-2.3.3-1.fc18.x86_64.rpm

The effects.ruleset file contains all effects in play in a Freeciv scenario. 
They have the following form (this is perhaps the most complicated example I 
could find):

[effect_hydro_plant]
name  = "Output_Bonus"
value = 25
reqs  =
    { "type", "name", "range"
      "Building", "Factory", "City"
      "Building", "Hydro Plant", "City"
      "OutputType", "Shield", "Local"
    }
nreqs =
    { "type", "name", "range"
      "Building", "Hoover Dam", "Player"
      "Building", "Nuclear Plant", "City"
    }

The text in the brackets is the entry name, which just has to be unique, but 
is otherwise not used. The name field tells Freeciv which effect you are 
defining.  The value is the effect's value, which depends on which effect it 
is. The reqs table contain a list of requirements for this effect being in 
effect. You need to satisfy all requirements listed here for this effect to 
take effect in the game.  Lastly there is the nreqs table which is the 
opposite of the reqs field, these are conditions which prevent the effect from 
taking place. Any one of the nreq conditions will prevent the effect from 
taking effect.

Value is integral amount parameter for many effects (must be in the range 
-32767 to 32767).

Requirement range may be one of: "None", "Local", "Adjacent", "City", 
"Continent", "Player", "World". Some requirement types may only work at 
certain ranges; this is not yet documented. In particular, at present, 
"Continent" effects can affect only cities and units in cities.

A requirement may have a survives field, and if this is '1', the effect 
survives destruction (wonders only).

A requirement may have a negated field, and if this is '1', the requirement
is negated.

A requirement type is the type of the requirement and can be one of "None" 
(default), "Tech", "Gov", "Building", "Special", "Base", "Terrain", "UnitType", 
"UnitFlag", "UnitClass", "UnitClassFlag", "Nation", "OutputType", "MinYear",
"MinSize", "AI", "TerrainClass", "TerrainAlter", or "CityTile". MinSize is the
minimum size of a city required. AI is ai player difficulty level. TerrainClass
is either "Land" or "Oceanic". Only "Center" is supported as CityTile type.

Effect types 
============

Tech_Parasite
    Gain any advance known already by amount number of other players. Note 
that if you have two such effects, they combine into one much worse effect 
(the number of players required to gain an advance is increased).

Airlift
    Allow airlift to/from a city.

Any_Government
    Allow instant government changes.

Capital_City
    The city with this effect is the capital city.

Enable_Nuke
    Allows the production of nuclear weapons.

Enable_Space
    Allows the production of space components.

Specialist_Output
    Specify what outputs a specialist is producing. Should be used with an 
OutputType requirement.

Output_Bonus
    City production is increased by amount percent.

Output_Bonus_2
    City production is increased by amount percent after Output_Bonus, so is 
multiplicative with it.

Output_Add_Tile
    Add amount to each worked tile.

Output_Inc_Tile
    Add amount to each worked tile that already has at least 1 output.

Output_Per_Tile
    Increase tile output by amount percent.

Output_Waste_Pct
    Reduce waste by amount percent.

Force_Content
    Make amount' unhappy citizens content. Applied after martial law and unit 
penalties.

Give_Imm_Tech
    Give amount techs immediately.

Growth_Food
    Food left after cities grow or shrink is amount percent of the capacity of 
the city's foodbox.

Have_Embassies
    Like having embassies with all other players.

Make_Content
    Make amount unhappy citizens content. Applied before martial law and unit 
penalties.

Make_Content_Mil
    Make amount unhappy citizens caused by units outside of a city content.

Make_Content_Mil_Per
    Make amount per unit of unhappy citizens caused by units outside of a city 
content.

Make_Happy
    Make amount citizens happy.

No_Anarchy
    No period of anarchy between government changes.

Nuke_Proof
    City is nuke proof.

Pollu_Pop_Pct
    Increases pollution caused by population by amount percent.

Pollu_Prod_Pct
    Increases pollution caused by shields by amount percent.

Health_Pct
    Reduces possibility of illness (plague) in a city by amount percent.

Reveal_Cities
    Immediately make all cities known.

Reveal_Map
    Immediately make entire map known.

Incite_Cost_Pct
    Increases revolt cost by amount percent.

Size_Adj
    Increase maximum size of a city by amount.

Size_Unlimit
    Make the size of a city unlimited.

SS_Structural, SS_Component and SS_Module
    A part of a spaceship; this is a "Local" ranged effect. It (for now) 
applies to improvements which cannot be built unless "Enable_Space" is felt. 
Buildings which have this effect should probably not be given any other 
effects.

Spy_Resistant
    If a spy specifies a target for sabotage, then she has an AMOUNT percent 
chance to fail. Also in diplomatic combat defending diplomatic units in cities 
will get an AMOUNT percent bonus. All Spy_Resistant's are summed before being 
applied.

Move_Bonus
    Add amount movement to units. Use UnitClass' requirement with range of 
'Local' to give it a specific class of units only.

Unit_No_Lose_Pop
    No population lost when a city's defender is lost.

Unit_Recover
    Units recover amount extra hitpoints per turn.

Upgrade_Unit
    Upgrade amount obsolete units per turn.

Upkeep_Free
    Improvements with amount or less upkeep cost become free to upkeep (others 
are unaffected).

Tech_Upkeep_Free
    If this value is greater than 0, the tech upkeep is reduced by this value.

No_Unhappy
    No citizens in the city are ever unhappy.

Veteran_Build
    New land units of this type have veteran class 1. The amount value is 
ignored, so that you can have multiple Veteran_Build effects, and units will 
only get 1 free veterancy level. This is considered a feature at the moment.

Veteran_Combat
    Increases the chance of units of this type becoming veteran after combat 
by amount percent.

HP_Regen
    Units that do not move recover amount percentage of their full hitpoints 
per turn.

City_Vision_Radius_Sq
    Increase city vision radius in squared distance by amount tiles.

Unit_Vision_Radius_Sq
    Increase unit vision radius in squared distance by amount tiles.

Defend_Bonus
    Increases defensive bonuses of units. Any unit requirements on this effect
will be applied to the _attacking_ unit. The defensive bonus is ignored by
attackers with F_IGWALL set. Attackers with F_BADWALLATTACKER will have their
firepower set to 1.

No_Incite
    City cannot be incited.

Gain_AI_Love
    Gain amount points of "AI love" with AI(s).

Turn_Years
    Year advances by AMOUNT each turn unless Slow_Down_Timeline causes it
    to be less.

Slow_Down_Timeline
    Slow down the timeline based on the AMOUNT. If AMOUNT >= 3 the timeline 
will be max 1 year/turn; with AMOUNT == 2 it is max 2 years/turn;
with AMOUNT == 1 it is max 5 years/turn; with AMOUNT <= 0 the timeline is
unaffected. The effect will be ignored if game.spacerace isn't set.

Civil_War_Chance
    Chance of player splitting due to civil war when capital captured is 
increased by amount.

Empire_Size_Base
    Once your civilization has more cities than the value of this effect,
each city gets one more unhappy citizen. If the sum of this effect and
Empire_Size_Step is zero, there is no such penalty.

Empire_Size_Step
    After your civilization reaches Empire_Size_Base size, it gets one more 
unhappy citizen for each amount of cities it gets above that. Set to zero to 
disable. You can use Empire_Size_Step even if Empire_Size_Base is zero.

Max_Rates
    The maximum setting for each tax rate is amount.

Martial_Law_Each
    The amount of citizens pacified by each military unit giving martial law.

Martial_Law_Max
    The maximum amount of units that will give martial law in city.

Rapture_Grow
    Can rapture grow cities.

Unbribable_Units
    Units cannot be bribed.

Revolution_When_Unhappy
    If a city owned by this player is in revolt for more than two turns, 
government falls.

Has_Senate
    Has a senate that prevents declarations of war in most cases.

Inspire_Partisans
    Partisan units (defined in units.ruleset) may spring up when this player's 
cities are taken.

Happiness_To_Gold
    Make all Make_Content and Force_Content effects instead generate gold.

Fanatics
    Special case for Fanatics unit only.

No_Diplomacy
    Cannot use any diplomacy.

Trade_Revenue_Bonus
    Trade revenue is multiplied by pow(2, amount/1000). The amount value is 
taken from the caravan's home city.

Unhappy_Factor
    Multiply unhappy unit upkeep by amount.

Upkeep_Factor
    Multiply unit upkeep by amount.

Unit_Upkeep_Free_Per_City
    In each city unit upkeep is deducted by this amount. As usual, you can use 
with OutputType requirement to specify which kind of upkeep this should be.

Output_Waste
    Base amount in percentage that each city has in waste. Waste can be used 
with any output type, use an OutputType requirement to specify which.

Output_Waste_By_Distance
    For each tile in real distance that a city is from your capital, it gets 
amount of extra waste.

Output_Penalty_Tile
    When a tile yields more output than amount, it gets a penalty of -1.

Output_Inc_Tile_Celebrate
    Tiles get amount extra output when city working them is celebrating.

Upgrade_Price_Pct
    Increases unit upgrade cost by amount percent. This effect works at
    player level. You cannot adjust upgrade costs for certain unit type or
    for units upgraded in certain city.

Visible_Wall
    Positive amount only instructs clients to use wall graphics for city.

Tech_Cost_Factor
    Factor for research costs.

Shield2Gold_Factor
    Factor in percent for the conversion of unit shield upkeep to gold upkeep.
    A value of 200 would transfer 1 shield upkeep to 2 gold upkeep. The range
    of this effect must be player or world. Note that only units with the
    "Shield2Gold" flag will be affected by this.

Tile_Workable
    If value != 0, city can work target tile.

Migration_Pct
    Increase the calculated migration score for the a city by amount in
    percent.

City_Radius_Sq
    Increase the squared city radius by amount. Currently, this can only
    usefully have "MinSize", "Building", or "Tech" requirements.

City_Build_Slots
    Increase the number of units with no population cost a city can build in
    a turn if there are enough shields.