wesnoth/data/core/terrain-graphics.cfg
Lari Nieminen e40877ac5f Made the forests on hills be a bit more sparse,
...to make the underlying terrain more visible.
2008-10-11 21:06:31 +00:00

470 lines
27 KiB
INI

#textdomain wesnoth
# This file needs to be processed *after* all others in this directory
#
# The following flags are defined to have a meaning
#
# * base : the corresponding tile has already graphics for the terrain
# base. No other one should be added.
# * transition-$direction : the corresponding tile already has the transition
# in the given direction (or should not have one). No other one should be
# added.
#
# when adding new probabilities update the commented line
# the proper way to calculate the propabilities is described here
# http://www.wesnoth.org/wiki/TerrainGraphicsTutorial#Cumulative_Probabilities
# NOTE the terrain _off^_usr gets its definition from the code since it's
# themable
# Wooden bridges (put those on top of everything)
{BRIDGE *^Bw\ *^Bw| *^Bw/ (W*^,Ss^,Ai^) (C*,K*,*^F*) bridge}
# Forests
{SIMPLE_OVERLAY_TERRAIN *^Fp (C*,K*,X*,Ql*,Qx*,Gv*) forest/pine-castle}
{SIMPLE_OVERLAY_TERRAIN Hh*^Fp (W*,M*,Hd,*^V*) forest/pine-sparse}
{SIMPLE_OVERLAY_TERRAIN *^Fp (W*,M*,Hd,*^V*) forest/pine}
{SIMPLE_OVERLAY_TERRAIN *^Ft (C*,K*,X*,Ql*,Qx*,Gv*) forest/tropical-castle}
{SIMPLE_OVERLAY_TERRAIN *^Ft (W*,M*,Hd,*^V*) forest/tropical}
{SIMPLE_OVERLAY_TERRAIN *^Fpa (C*,K*,X*,Ql*,Qx*,Gv*) forest/snow-forest-castle}
{SIMPLE_OVERLAY_TERRAIN Ha*^Fpa (W*,M*,Hd,*^V*) forest/snow-forest-sparse}
{SIMPLE_OVERLAY_TERRAIN *^Fpa (W*,M*,Hd,*^V*) forest/snow-forest}
{SIMPLE_OVERLAY_TERRAIN *^Uf* (C*,K*,X*,Ql*,Qx*,Gv*,W*,M*,Hd,*^V*) forest/mushrooms}
# Great-tree
#33% 17% 50%
{OVERLAY_P *^Fet 33 forest/great-tree3}
{OVERLAY_P *^Fet 25 forest/great-tree2}
{OVERLAY_P *^Fet 100 forest/great-tree1}
# Swamp
{SIMPLE_OVERLAY_TERRAIN Ss (C*,K*,H*,M*,X*,Q*,A*) swamp/reed}
{SIMPLE_OVERLAY_TERRAIN Chs (!,Chs,Chw,Chr) swamp/reed}
# Mountains
{OVERLAY_RESTRICTED3 Mm (C*,K*,X*,Ql,Qx*) mountains-castle-n}
{TRANSITION_RESTRICTED2 Mm (C*,K*,X*,Ql,Qx*) mountains-castle}
{OVERLAY_RESTRICTED2 Mm (C*,K*,X*,Ql,Qx*) mountains-castle-n}
{TRANSITION_RESTRICTED Mm (C*,K*,X*,Ql,Qx*) mountains-castle}
{MOUNTAINS_2x4_NW_SE Mm 18 overlay mountain_range3}
{MOUNTAINS_2x4_SW_NE Mm 26 overlay mountain_range4}
{MOUNTAINS_1x3_NW_SE Mm 20 overlay mountain_range1}
{MOUNTAINS_1x3_SW_NE Mm 20 overlay mountain_range2}
{MOUNTAINS_2x2 Mm 40 overlay mountain5}
{MOUNTAINS_2x2 Mm 30 overlay mountain6}
{OVERLAY_RANDOM Mm mountains}
# Snow mountains (uncomment rules as the corresponding tiles are added)
#{OVERLAY_RESTRICTED3 Ms (C*,K*,X*,Ql,Qx*) snow-mountains-castle-n}
#{TRANSITION_RESTRICTED2 Ms (C*,K*,X*,Ql,Qx*) snow-mountains-castle}
#{OVERLAY_RESTRICTED2 Ms (C*,K*,X*,Ql,Qx*) snow-mountains-castle-n}
#{TRANSITION_RESTRICTED Ms (C*,K*,X*,Ql,Qx*) snow-mountains-castle}
#{MOUNTAINS_2x4_NW_SE Ms 18 overlay snow-mountain_range3}
#{MOUNTAINS_2x4_SW_NE Ms 26 overlay snow-mountain_range4}
#{MOUNTAINS_1x3_NW_SE Ms 20 overlay snow-mountain_range1}
#{MOUNTAINS_1x3_SW_NE Ms 20 overlay snow-mountain_range2}
#{MOUNTAINS_2x2 Ms 40 overlay snow-mountain5}
#{MOUNTAINS_2x2 Ms 30 overlay snow-mountain6}
{OVERLAY_RANDOM Ms snow-mountains}
#This one is to fill any "gaps" there might be when next to castles or walls
{TERRAIN_BASE Mm hills-variation}
{TERRAIN_BASE Ms snow-hills}
{OVERLAY_LF *^Xm 1 clouds1 cloud1_1}
{OVERLAY_LF *^Xm 1 clouds2 cloud1_3}
#33% 33% 33%
{OVERLAY_PLF *^Xm 33 1 clouds3 cloud1_2}
{OVERLAY_PLF *^Xm 50 1 clouds3 cloud2_2}
{OVERLAY_LF *^Xm 1 clouds3 cloud3_2}
{PEAKS_1x2_SW_NE *^Xm 15 peaks mountain_peak_range1}
{PEAKS_LARGE *^Xm 25 peaks mountain_peak_large1}
{PEAKS_LARGE *^Xm 33 peaks mountain_peak_large2}
{OVERLAY_RANDOM_LF *^Xm 2 peaks mountain_peak}
#
# > V I L L A G E B U I L D I N G S <
# Flagged as 'village' so they can be placed on
# top of both 'base' and 'overlay'
#Human villages
{VILLAGE_RANDOM *^Vh village/human}
{VILLAGE_RANDOM *^Vha village/human-snow}
{VILLAGE *^Vhh village/human-hills}
{VILLAGE *^Vhha village/human-snow-hills}
{VILLAGE_RANDOM *^Vhc village/human-city}
#tropical village
{VILLAGE_P *^Vht 100 village/tropical-forest}
#Crude villages (grassland)
{VILLAGE_P *^Vc 50 village/hut}
{VILLAGE_P *^Vc 100 village/hut2}
{VILLAGE_P *^Vca 50 village/hut-snow}
{VILLAGE_P *^Vca 100 village/hut-snow2}
{VILLAGE_P *^Vct 50 tent}
{VILLAGE_P *^Vct 100 tent2}
#Elven villages
#10% 25% 25% 40%
{VILLAGE_P *^Ve 10 village/elven}
{VILLAGE_P *^Ve 28 village/elven3}
{VILLAGE_P *^Ve 38 village/elven4}
{VILLAGE_P *^Ve 100 village/elven2}
#10% 25% 25% 40%
{VILLAGE_P *^Vea 10 village/elven-snow}
{VILLAGE_P *^Vea 28 village/elven-snow3}
{VILLAGE_P *^Vea 38 village/elven-snow4}
{VILLAGE_P *^Vea 100 village/elven-snow2}
#Desert villages
{VILLAGE_RANDOM *^Vda village/desert}
{VILLAGE *^Vdt village/desert-camp}
#Cave villages
{VILLAGE_RANDOM *^Vu village/cave}
{VILLAGE_RANDOM *^Vud village/dwarven}
#Swamp village
{VILLAGE_RANDOM *^Vhs village/swampwater}
#Merfolk village
{VILLAGE_RANDOM *^Vm village/coast}
#
# > O V E R L A Y S <
#
#Farmland
{OVERLAY_RANDOM_L *^Gvs -10 flat/farm-veg-spring}
# Windmill decoration
{OVERLAY *^Wm ("windmill-01:70,windmill-02:70,windmill-03:70,windmill-04:70,windmill-05:70,windmill-06:70,windmill-07:70,windmill-08:70,windmill-09:70,windmill-10:70,windmill-11:70,windmill-12:70,windmill-13:70,windmill-14:70,windmill-15:70,windmill-16:70,windmill-17:70,windmill-18:70")}
#Rubble
{OVERLAY_RANDOM *^Dr sand_rubble}
# Illuminated caves
{OVERLAY_RANDOM_LF (*^Ufi,*^Ii) 1 light cave/beam}
# Chasm bridges - for now they don't tile
{OVERLAY_F Qxu^Bs\ bridge cave/chasm-stone-bridge-se-nw}
{OVERLAY_F Qxu^Bs| bridge cave/chasm-stone-bridge-s-n}
{OVERLAY_F Qxu^Bs/ bridge cave/chasm-stone-bridge-sw-ne}
{OVERLAY_F Ql^Bs\ bridge cave/chasm-lava-stone-bridge-se-nw}
{OVERLAY_F Ql^Bs| bridge cave/chasm-lava-stone-bridge-s-n}
{OVERLAY_F Ql^Bs/ bridge cave/chasm-lava-stone-bridge-sw-ne}
#
# > B A S E T E R R A I N S <
#
# Flat base terrains
#2% 2%
{TERRAIN_BASE_P Gg^ 2 flat/grass-rocks1}
{TERRAIN_BASE_P Gg^ 2 flat/grass-rocks2}
#10% 10% 10% 10% 10% 10% 10% 30%
{TERRAIN_BASE_P Gg 10 flat/grass-r1}
{TERRAIN_BASE_P Gg 11 flat/grass-r2}
{TERRAIN_BASE_P Gg 13 flat/grass-r3}
{TERRAIN_BASE_P Gg 14 flat/grass-r4}
{TERRAIN_BASE_P Gg 17 flat/grass-r5}
{TERRAIN_BASE_P Gg 20 flat/grass-r6}
{TERRAIN_BASE_P Gg 25 flat/grass-r7}
{TERRAIN_BASE Gg flat/grass-r8}
{TERRAIN_BASE_RANDOM Ggf flat/grass-flowers}
{TERRAIN_BASE_RANDOM Gs flat/savanna}
{TERRAIN_BASE Re flat/dirt}
{TERRAIN_BASE_RANDOM Rr flat/road}
{TERRAIN_BASE_RANDOM Rp flat/stone-path}
# Hills base terrain
{TERRAIN_BASE_RANDOM Hh hills-variation}
# Cave base terrains
{TERRAIN_BASE_RANDOM Uu cave/floor}
{TERRAIN_BASE_RANDOM Ur cave/path}
{TERRAIN_BASE_RANDOM Uh cave/hills-variation}
{TERRAIN_BASE_RANDOM Xu cave/wall-rough}
{TERRAIN_BASE Qxu chasm}
{TERRAIN_BASE_RANDOM Ql,Qlf lava}
# Desert base terrains
{TERRAIN_BASE_RANDOM Dd desert}
{TERRAIN_BASE_PF Dd^ 5 overlay desert-plant}
{TERRAIN_BASE_PF Dd^ 5 overlay desert-plant2}
{TERRAIN_BASE_PF Dd^ 5 overlay desert-plant3}
#10% 10% 10% 70%
{TERRAIN_BASE_P Ds 10 sand-rock1}
{TERRAIN_BASE_P Ds 11 sand-rock2}
{TERRAIN_BASE_P Ds 13 sand-rock3}
{TERRAIN_BASE_RANDOM Ds sand}
{TERRAIN_BASE Rd desert-road}
{TERRAIN_BASE_F *^Dc overlay desert_crater}
{TERRAIN_BASE_F (*^Do,Do) overlay desert-oasis}
{TERRAIN_BASE_RANDOM Hd desert-hills}
{TERRAIN_BASE_RANDOM Md desert-mountains}
# Frozen base terrain
#30% 30% 40%
{TERRAIN_BASE_P Aa 30 snow2}
{TERRAIN_BASE_P Aa 43 snow3}
{TERRAIN_BASE Aa snow}
#10% 10% 10% 10% 25% 35%
{TERRAIN_BASE_P Ai 10 ice2}
{TERRAIN_BASE_P Ai 11 ice3}
{TERRAIN_BASE_P Ai 13 ice5}
{TERRAIN_BASE_P Ai 14 ice6}
{TERRAIN_BASE_P Ai 42 ice4}
{TERRAIN_BASE Ai ice}
#30% 30% 40%
{TERRAIN_BASE_P Ha 30 snow-hills3}
{TERRAIN_BASE_P Ha 43 snow-hills2}
{TERRAIN_BASE Ha snow-hills}
# Water base terrains
#30% 30% 40%
{TERRAIN_BASE_P Wo 30 water/ocean3}
{TERRAIN_BASE_P Wo 43 water/ocean2}
{TERRAIN_BASE Wo water/ocean}
#30% 30% 40%
{TERRAIN_BASE_P Ww 30 water/coast3}
{TERRAIN_BASE_P Ww 43 water/coast2}
{TERRAIN_BASE Ww water/coast}
{TERRAIN_BASE_RANDOM Wwf water/ford}
{TERRAIN_BASE_RANDOM Wwr water/reef}
#8% 8% 8% 8% 23% 23% 23%
{TERRAIN_BASE_P Ss 8 swamp/water-flowers1}
{TERRAIN_BASE_P Ss 9 swamp/water-flowers2}
{TERRAIN_BASE_P Ss 10 swamp/water-plant1}
{TERRAIN_BASE_P Ss 11 swamp/water-plant2}
{TERRAIN_BASE_RANDOM Ss swamp/water}
# Castle base terrains
{TERRAIN_BASE (Ch,Chr,Kh*) castle/cobbles}
{TERRAIN_BASE Chw castle/sunken-ruin}
{TERRAIN_BASE_RANDOM Chs swamp/water}
{TERRAIN_BASE Cv castle/elven/grounds}
{TERRAIN_BASE Kv castle/elven/keep}
{TERRAIN_BASE (Ce,Ke) flat/dirt}
{OVERLAY_RANDOM Ke tent}
{TERRAIN_BASE_RANDOM Cud castle/dwarven-castle-floor}
{TERRAIN_BASE Kud castle/dwarven-keep-floor}
{OVERLAY Kud castle/dwarven-keep}
#{TERRAIN_BASE ~ fog}
#
# > T R A N S I T I O N S B E T W E E N T E R R A I N S <
#
#
# Human castle
#
{DISABLE_BASE_TRANSITIONS (Ch,Kh*)}
{WALL_TRANSITION Ch (!,Ch*,Kh*) castle/castle}
{WALL_TRANSITION2 Kh Ch* (!,Ch*,Kh*) castle/keep-castle}
{WALL_TRANSITION Kh (!,Kh*) castle/keep}
# sunken/swamp ruins (submerged part)
# Show sunken graphics for sunken castle only when next to water terrain
# Show sunken graphics for sunken/swamp keep also when next to swamp
# (!,Chr,Chs,!,Ch*) is used to catch convex transitions between Chw and Ch* without lots of additional rules
# don't do this at home
#17% 17% 17% 17% 17% 17%
{WALL_TRANSITION_P (!,Chr,Chs,!,Ch*) (W*) 17 castle/sunken-ruin5}
{WALL_TRANSITION_P (!,Chr,Chs,!,Ch*) (W*) 20 castle/sunken-ruin4}
{WALL_TRANSITION_P (!,Chr,Chs,!,Ch*) (W*) 25 castle/sunken-ruin3}
{WALL_TRANSITION_P (!,Chr,Chs,!,Ch*) (W*) 33 castle/sunken-ruin2}
{WALL_TRANSITION_P (!,Chr,Chs,!,Ch*) (W*) 50 castle/sunken-ruin1}
{WALL_TRANSITION (!,Chr,Chs,!,Ch*) (W*) castle/sunken-ruin}
{WALL_TRANSITION2_P (Khw,Khs) (Ch*) (W*,Ss) 75 castle/sunken-ruinkeep1-castle}
{WALL_TRANSITION2_P (Khw,Khs) (Ch*) (W*,Ss) 100 castle/sunkenkeep-castle}
{WALL_TRANSITION_P (!,Khr,!,Kh*) (W*,Ss,Chw,Chs) 75 castle/sunken-ruinkeep1}
{WALL_TRANSITION_P (!,Khr,!,Kh*) (W*,Ss,Chw,Chs) 100 castle/sunkenkeep}
# ruined castle and non-sumberged parts of sunken/swamp ruins
# There are no more human castles left, so we can just use Ch* here, which makes sure
# that all ruin<->non-ruin transitions are drawn
#17% 17% 17% 17% 17% 17%
{WALL_TRANSITION_P Ch* (!,Ch*,Kh*) 17 castle/ruin5}
{WALL_TRANSITION_P Ch* (!,Ch*,Kh*) 20 castle/ruin4}
{WALL_TRANSITION_P Ch* (!,Ch*,Kh*) 25 castle/ruin3}
{WALL_TRANSITION_P Ch* (!,Ch*,Kh*) 33 castle/ruin2}
{WALL_TRANSITION_P Ch* (!,Ch*,Kh*) 50 castle/ruin1}
{WALL_TRANSITION Ch* (!,Ch*,Kh*) castle/castle}
{WALL_TRANSITION2_P (Khr,Khw,Khs) (Ch*) (!,Ch*,Kh*) 75 castle/ruinkeep1-castle}
{WALL_TRANSITION2 (Khr,Khw,Khs) (Ch*) (!,Ch*,Kh*) castle/keep-castle}
{WALL_TRANSITION_P Kh* (!,Kh*) 75 castle/ruinkeep1}
{WALL_TRANSITION Kh* (!,Kh*) castle/keep}
# Elven castle
{DISABLE_BASE_TRANSITIONS (Cv,Kv)}
{WALL_TRANSITION Cv (!,Cv,Kv) castle/elven/castle}
{WALL_TRANSITION2 Kv Cv (!,Cv,Kv*) castle/elven/keep-castle}
{WALL_TRANSITION Kv (!,Kv) castle/elven/keep}
# Encampment
{DISABLE_BASE_TRANSITIONS (Ce,Ke)}
{WALL_TRANSITION (Ce,Ke) (!,Ce,Ke) castle/encampment}
#
# Cave
# (including dwarven castle, chasm, lava)
#
{DISABLE_BASE_TRANSITIONS Qxu}
{DISABLE_BASE_TRANSITIONS Ql}
{DISABLE_BASE_TRANSITIONS Xu}
{DISABLE_BASE_TRANSITIONS (Cud,Kud)}
#dwarven castle transitions
{WALL_TRANSITION3 (Cud,Kud) Ql Qxu dcastle-lava-chasm}
{WALL_TRANSITION2 (Cud,Kud) X* (!,Cud,Kud,X*) castle/dwarven-castle-wall}
{WALL_TRANSITION2 (Cud,Kud) Ql (!,Cud,Kud,Ql) dcastle-lava}
{WALL_TRANSITION2 (Cud,Kud) Qxu (!,Cud,Kud,Qxu) dcastle-chasm}
{WALL_TRANSITION (Cud,Kud) (!,Cud,Kud) castle/dwarven-castle}
{WALL_TRANSITION Xu (Qx*,Ql) cave/wall-rough-chasm}
{WALL_TRANSITION Xu (!,Xu) cave/wall-rough}
#chasm/lava transitions always below castles/walls
{WALL_TRANSITION2_LF Ql Qxu (!,Ql,Qxu) -90 ground lava-chasm}
{WALL_TRANSITION_LF Ql (!,Ql) -90 ground lava}
{WALL_TRANSITION_LF Qxu (!,Qxu) -90 ground chasm}
#
# > B A S E T R A N S I T I O N S. <
#
# The order mostly controls which overlap which, some
# TRANSITION_BASE_Ls and varying layer numbers are used to make some
# special transitions to layer in more complex ways.
# Default layer ist -500, so anything layering above should be higer.
{TRANSITION_BASE (!,Chr,Chw) Chr flat/grass}
#{TRANSITION_BASE_LF Mm (Ha,Aa,Hd,W*,Ss) -480 transition2 mountains}
#{TRANSITION_BASE_LF Mm (!,Mm,Qxu,Hh,C*,K*,Xu) -480 transition2 mountains}
{TRANSITION_BASE Md (!,Md,Qxu) desert-mountains}
{TRANSITION_BASE (Ms,Ha) Hh snow-hills-to-hills}
{TRANSITION_BASE_L (Ms,Ha) (W*,Ss) -480 snow-hills-to-water}
{TRANSITION_BASE (Ms,Ha) (!,Ha,Qxu,Mm,Ms,Md) snow-hills}
{TRANSITION_BASE (Mm,Hh) (!,Hh,W*,Ss) hills}
{TRANSITION_BASE_LF (Mm,Hh) (W*,Ss) -490 transition2 hills}
{TRANSITION_BASE Hd (!,Hd,Qxu) desert-hills}
{TRANSITION_BASE Uh (!,Uh) cave/hills}
{TRANSITION_BASE Qlf (!,Ql,Qlf,Qxu,X*) lava}
{TRANSITION_BASE (Uu,Uh) (!,Uu,Uh) cave/floor}
{TRANSITION_BASE Ur (!,Ur) cave/floor}
{TRANSITION_BASE_F (!,Ur) Ur transition2 cave/floor}
{TRANSITION_BASE_L Aa (W*,Ss) -480 snow-to-water}
{TRANSITION_BASE_L Aa (!,Aa,Qxu) -490 snow}
{TRANSITION_BASE_L (Ss,Chs) (!,Ss,Chs,H*,M*,A*) -490 swamp/water}
# These two work in conjunction with the mountain and hill transitions to create
# a smooth coastline between grassland, hills and mountains.
{TRANSITION_BASE (Gg*,Qxu,Mm,Ms,Hh) W* flat/grass-to-water}
{TRANSITION_BASE (Gg*,Qxu) (!,Gg*,Qxu,Mm,Ms,Hh) flat/grass}
{TRANSITION_BASE_LF (!,Ggf) Ggf -600 flower-transition flat/grass}
{TRANSITION_BASE Gs (W*,Ss) flat/savanna-to-water}
{TRANSITION_BASE Gs (!,Gs,Qxu) flat/savanna}
{TRANSITION_BASE Rr (!,Rr) flat/road}
{TRANSITION_BASE Rp (!,Rp) flat/stone-path}
{TRANSITION_BASE_LF *^Gvs (!,*^Gvs,C*,K*,*^F*,M*,H*,W*) -490 transition2 flat/farm-veg-spring}
{TRANSITION_BASE Re (!,Re) flat/dirt}
#{TRANSITION_BASE (Dd,Do) (!,Dd,Do) desert-oasis}
{TRANSITION_BASE Ds (!,Ds) sand}
# Desert and desert road transitions, with desert road transitioning extra
# nicely with desert and desert villages.
{TRANSITION_BASE Dd^,Dd^D* (Dd^V*) desert}
{TRANSITION_BASE Rd (Dd^V*) desert-road}
{TRANSITION_BASE Rd (!,Rd,Dd) desert-road}
{TRANSITION_BASE Dd (!,R*,Dd) desert}
{TRANSITION_BASE Dd^,Dd^D* R* desert}
{TRANSITION_BASE_LF (!,Chw,Khw,Khs,!,C*,K*) (Ai,W*) -480 non_submerged_part castle/castle-to-ice}
{TRANSITION_BASE_LF Aa,Ha,Ms,Ai (W*,Ss) -490 non_submerged_part ice}
{TRANSITION_BASE_LF Aa,Ha,Ms,Ai (W*,Ss) -505 submerged_part ice-to-water}
# we just draw this again (invisible below the base layer) to set the transition flags
{TRANSITION_BASE_L Aa,Ha,Ms,Ai (W*,Ss) -1001 ice-to-water}
{TRANSITION_BASE_LF (!,Chw,Khw,Khs,!,C*,K*) W* -510 submerged_part castle/castle-to-water}
# Water Transitions below everything else
{TRANSITION_BASE_L (Ww,Wwr) (!,Ww,Wwr,Mm,Ms,Wwf) -900 water/coast}
{TRANSITION_BASE_L Wwf (Ww,Wo,Wwr) -490 water/ford}
{TRANSITION_BASE_L Wo (!,Wo) -900 water/ocean}
{TRANSITION_BASE_LF Chw (Ch,Chr) -490 transition2 castle/sunken-ruin}
{TRANSITION_BASE_LF Chs (Ch,Chr) -490 transition2 swamp/water}
{TRANSITION_BASE_L Chw (!,Chw,Chr) -900 water/coast}
# Default terrain
{TERRAIN_BASE _s void}
{TERRAIN_BASE * void}