TSF Map V1

# -- GENERAL GAME SETUP PARAMETERS ---
setup:

# Set the size of the map (this has to match with the map grid below!)
size = 24x24

# The name of the scenario
name = Midway Islands (M010)
info = Mission 10: With Hawaii secured from further threats, USA moves to reclaim Midway Islands from China.

# The goal of the game. Available goals:
# - SUPREMACY(70): conquer a percentage of all the structures to claim victory.
#    1. option (e.g. "70"): the percentage to claim victory => 70%
# - ANNIHILATION(2000): kill everyone on the map to claim victory (makes most sense with generals?).
#    1. option (e.g. "2000"): the maximum unit values of the other players to be considered the victor.
# - CAPTURE_FLAG(60, 1:0): capture the flag (do not set a time limit below). 
#    1. option (e.g. "60"): duration in seconds to hold the flag to win
#    2. option (e.g. "1:0"): x:y coordinate on map of the flag position (needs to be a structure)
# - SURVIVAL(0+2, 1): survive the game to win (set a time_limit below for this to make sense).
#    1. option (e.g. "0"): the player id(s) from below that have to survive. If there are multiple
#                          players (maybe a team), concatenate with "+". For example "0+2" means
#						   player id 0 and player id 2 have to survive to win.
#    2. option (e.g. "1"): number of BASE_STATIONs to safeguard for victory. If "0" is
#                          entered, at least 1 unit/structure left at the end of the game is required for
#                          victory. The attackers loose if the survivors win and vice versa.
goal = ANNIHILATION(2000)

# Set a time limit for the game (seconds). E.g. 240 for 4 minutes time limit. 
time_limit =


# -- UNITS TO BE PLACED ON THE MAP GRID BELOW ---
units:

# Below are the units that can be used on the map below. Each entry uses the following format and
# can be edited as needed:  
# - <key> = <unit_type>
# - <key> = <unit_type>(<unit_type>, ...)
# - <key> = <unit_type>(<unit_type>, ...)-<angle>
# - <key> = <unit_type>-<angle>
#
# Tag values:
# - <key>: the UNIT_KEY referenced on the map. Can be freely chosen but must be 2 characters.
# - <unit_type>: BASE_STATION | SHIPYARD | AIRFIELD | GENERAL | BATTLE_TANK | ARTILLERY | MISSILE_TANK
#                FIGHTER_PLANE | HELICOPTER | DESTROYER | SUBMARINE | CRUISER | AIRSHIP | CARRIER
#                TRANSPORT_SHIP
# - (...): list of units that are hosted within that unit/structure
# - <angle>: the unit starting angle in degrees: 0, 45, 90, 135, 180, 225, 270, 315				 
#            the structure starting angles in degrees: 0, 90, 180, 270	

A0 = BASE_STATION(MISSILE_TANK, MISSILE_TANK, MISSILE_TANK, BATTLE_TANK)-000
A1 = BASE_STATION(MISSILE_TANK, MISSILE_TANK, MISSILE_TANK, BATTLE_TANK)-090
A2 = BASE_STATION(MISSILE_TANK, MISSILE_TANK, MISSILE_TANK, BATTLE_TANK)-180
A3 = BASE_STATION(MISSILE_TANK, MISSILE_TANK, MISSILE_TANK, BATTLE_TANK)-270
A4 = BASE_STATION(BATTLE_TANK, BATTLE_TANK)-000
A5 = BASE_STATION(BATTLE_TANK, BATTLE_TANK)-090
A6 = BASE_STATION(BATTLE_TANK, BATTLE_TANK)-180
A7 = BASE_STATION(BATTLE_TANK, BATTLE_TANK)-270
B0 = SHIPYARD(DESTROYER, SUBMARINE)-000
B1 = SHIPYARD(DESTROYER, SUBMARINE)-090
B2 = SHIPYARD(DESTROYER, SUBMARINE)-180
B3 = SHIPYARD(DESTROYER, SUBMARINE)-270
B4 = SHIPYARD(DESTROYER, TRANSPORT_SHIP)-000
B5 = SHIPYARD(DESTROYER, TRANSPORT_SHIP)-090
B6 = SHIPYARD(DESTROYER, TRANSPORT_SHIP)-180
B7 = SHIPYARD(DESTROYER, TRANSPORT_SHIP)-270
C0 = AIRFIELD-000
C1 = AIRFIELD-090
C2 = AIRFIELD-180
C3 = AIRFIELD-270
C4 = AIRFIELD(FIGHTER_PLANE)-000
C5 = AIRFIELD(FIGHTER_PLANE)-090
C6 = AIRFIELD(FIGHTER_PLANE)-180
C7 = AIRFIELD(FIGHTER_PLANE)-270
H0 = GENERAL-000
H1 = GENERAL-045
H2 = GENERAL-090
H3 = GENERAL-135
H4 = GENERAL-180
H5 = GENERAL-225
H6 = GENERAL-270
H7 = GENERAL-315
I0 = BATTLE_TANK-000
I1 = BATTLE_TANK-045
I2 = BATTLE_TANK-090
I3 = BATTLE_TANK-135
I4 = BATTLE_TANK-180
I5 = BATTLE_TANK-225
I6 = BATTLE_TANK-270
I7 = BATTLE_TANK-315
K0 = ARTILLERY-000
K1 = ARTILLERY-045
K2 = ARTILLERY-090
K3 = ARTILLERY-135
K4 = ARTILLERY-180
K5 = ARTILLERY-225
K6 = ARTILLERY-270
K7 = ARTILLERY-315
L0 = MISSILE_TANK-000
L1 = MISSILE_TANK-045
L2 = MISSILE_TANK-090
L3 = MISSILE_TANK-135
L4 = MISSILE_TANK-180
L5 = MISSILE_TANK-225
L6 = MISSILE_TANK-270
L7 = MISSILE_TANK-315
M0 = FIGHTER_PLANE
N0 = HELICOPTER
P0 = DESTROYER-000
P1 = DESTROYER-045
P2 = DESTROYER-090
P3 = DESTROYER-135
P4 = DESTROYER-180
P5 = DESTROYER-225
P6 = DESTROYER-270
P7 = DESTROYER-315
Q0 = SUBMARINE-000
Q1 = SUBMARINE-045
Q2 = SUBMARINE-090
Q3 = SUBMARINE-135
Q4 = SUBMARINE-180
Q5 = SUBMARINE-225
Q6 = SUBMARINE-270
Q7 = SUBMARINE-315
R0 = CRUISER-000
R1 = CRUISER-045
R2 = CRUISER-090
R3 = CRUISER-135
R4 = CRUISER-180
R5 = CRUISER-225
R6 = CRUISER-270
R7 = CRUISER-315
S0 = AIRSHIP-000
S1 = AIRSHIP-045
S2 = AIRSHIP-090
S3 = AIRSHIP-135
S4 = AIRSHIP-180
S5 = AIRSHIP-225
S6 = AIRSHIP-270
S7 = AIRSHIP-315
T0 = CARRIER(HELICOPTER, HELICOPTER, HELICOPTER, FIGHTER_PLANE, FIGHTER_PLANE, FIGHTER_PLANE)-000
T1 = CARRIER(HELICOPTER, HELICOPTER, HELICOPTER, FIGHTER_PLANE, FIGHTER_PLANE, FIGHTER_PLANE)-045
T2 = CARRIER(HELICOPTER, HELICOPTER, HELICOPTER, FIGHTER_PLANE, FIGHTER_PLANE, FIGHTER_PLANE)-090
T3 = CARRIER(HELICOPTER, HELICOPTER, HELICOPTER, FIGHTER_PLANE, FIGHTER_PLANE, FIGHTER_PLANE)-135
T4 = CARRIER(HELICOPTER, HELICOPTER, HELICOPTER, FIGHTER_PLANE, FIGHTER_PLANE, FIGHTER_PLANE)-180
T5 = CARRIER(HELICOPTER, HELICOPTER, HELICOPTER, FIGHTER_PLANE, FIGHTER_PLANE, FIGHTER_PLANE)-225
T6 = CARRIER(HELICOPTER, HELICOPTER, HELICOPTER, FIGHTER_PLANE, FIGHTER_PLANE, FIGHTER_PLANE)-270
T7 = CARRIER(HELICOPTER, HELICOPTER, HELICOPTER, FIGHTER_PLANE, FIGHTER_PLANE, FIGHTER_PLANE)-315
U0 = TRANSPORT_SHIP(BATTLE_TANK, BATTLE_TANK)-000
U1 = TRANSPORT_SHIP(BATTLE_TANK, BATTLE_TANK)-045
U2 = TRANSPORT_SHIP(BATTLE_TANK, BATTLE_TANK)-090
U3 = TRANSPORT_SHIP(BATTLE_TANK, BATTLE_TANK)-135
U4 = TRANSPORT_SHIP(BATTLE_TANK, BATTLE_TANK)-180
U5 = TRANSPORT_SHIP(BATTLE_TANK, BATTLE_TANK)-225
U6 = TRANSPORT_SHIP(BATTLE_TANK, BATTLE_TANK)-270
U7 = TRANSPORT_SHIP(BATTLE_TANK, BATTLE_TANK)-315


# -- NATIONS AVAILABLE ON THE MAP ---
nations:

# Players in the format: <id> = <nation> <team> <money> <income> <fogofwar> <explore> <delay> EXCLUDE(<unit_type>, ...)
#
# Please note if all generals for a player are killed, a player looses the game (using just 1 general is fine).
#
# Tag values:
# - <id>: 0, 1, 2, ... (this is the NATION_ID referenced on the map below)
# - <nation>: USA | CHINA | RUSSIA | ENGLAND | GERMANY | INDIA | JAPAN | BRAZIL
# - <team>: N/A | ALLIANCE_UDA | ALLIANCE_ODO | TEAM_A | TEAM_B | TEAM_C | TEAM_D
# - <money>: e.g. 5000
# - <income>: the income per structure per time, e.g. 100. Set to 0 to disable income for player
# - <fogofwar>: YES | NO  (fog or war enabled/disabled for player)
# - <explore>:  YES | NO  (exploration fog enabled/disabled for player)
# - <delay>: e.g. 30 (delay in seconds when the AI becomes active)
# - <unit_type>: BASE_STATION | SHIPYARD | AIRFIELD | GENERAL | BATTLE_TANK | ARTILLERY | MISSILE_TANK
#                FIGHTER_PLANE | HELICOPTER | DESTROYER | SUBMARINE | CRUISER | AIRSHIP | CARRIER
#                TRANSPORT_SHIP
# - EXCLUDE(...): list of units that can NOT be built by player (leave blank if all units can be built)

0 = USA TEAM_A 3000 100 YES YES 0
1 = CHINA TEAM_B 3500 50 YES NO 0

# -- SCENARIO MAP TO BE USED FOR THE GAME ---
map:

# NOTES:
# - The map is best viewed with font "Courier New", font size 10 
# - The number of grid cells has to match the "size =" parameter from above.
# - Do not make the map size greater than 48x48 (does not work well on Mobile devices)
#
# The following symbols are used on the cell corners:
# ' ' = water 
# 'x' = dirt/grass
#
# The following symbols are used in the cell centers:
# 'X' = palm trees
# 'M' = mountain
# 'K' = volcano
# 'I' = island 
# 'C' = cliff (water tile)
# 'V' = water vortex (there need to be 4 'V's arranged as a square!)
# 
# To place structures and units use the following format: <UNIT_KEY><NATION_ID>
# Leave NATION_ID blank (aka use space ' ') for neutral structures (units cannot be neutral)
# Example:
# - "B0 ": neutral shipyard
# - "B00": shipyard belonging to nation id 0
# - "I21": BATTLE_TANK setup at 90 degree starting angle belonging to nation id 1

 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦T50¦P50¦T50¦   ¦   ¦   ¦
 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦R50¦U50¦P50¦U50¦R50¦   ¦   ¦
 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- --- --- --- --- ---x--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦   ¦ X ¦   ¦   ¦B01¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- --- ---x---x---x---x---x---x---x--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦ X ¦ X ¦   ¦   ¦K01¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦B01¦   ¦   ¦   ¦   ¦
 --- --- --- ---x---x---x---x---x--- --- --- --- --- --- --- --- --- --- --- ---x--- --- --- --- 
¦   ¦   ¦   ¦   ¦   ¦A11¦   ¦K01¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- --- --- ---x---x---x---x---x--- --- --- --- --- --- --- --- --- --- ---x---x---x--- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦K01¦ X ¦   ¦   ¦   ¦
 --- --- --- ---x---x---x---x--- --- --- --- --- --- --- --- --- --- --- ---x---x---x--- --- --- 
¦   ¦   ¦   ¦   ¦ X ¦ X ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦K01¦C61¦   ¦   ¦   ¦
 --- --- ---x---x---x---x---x--- --- --- --- --- --- --- --- --- --- --- ---x---x---x---x--- --- 
¦   ¦   ¦   ¦   ¦ X ¦K01¦   ¦B11¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- ---x---x---x---x---x---x--- --- --- --- --- --- --- --- --- --- ---x---x---x---x---x--- --- 
¦   ¦   ¦C41¦   ¦   ¦   ¦K01¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦B31¦   ¦   ¦   ¦   ¦   ¦   ¦
 ---x---x---x---x---x---x---x--- --- ---x--- --- --- --- --- --- --- ---x---x---x---x---x--- --- 
¦   ¦   ¦ X ¦ X ¦A11¦   ¦   ¦   ¦   ¦   ¦ X ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦K01¦A41¦ X ¦ X ¦   ¦
 ---x---x---x---x---x---x---x--- --- ---x--- --- --- --- --- --- ---x---x---x---x---x---x---x--- 
¦   ¦ X ¦C61¦   ¦   ¦   ¦B21¦   ¦   ¦   ¦ X ¦   ¦ I ¦   ¦   ¦   ¦   ¦ X ¦A11¦   ¦ X ¦ X ¦   ¦   ¦
 --- ---x---x---x---x--- --- --- --- --- --- --- --- --- --- ---x---x---x---x---x---x---x---x--- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦ X ¦ X ¦   ¦   ¦
 --- ---x--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---x---x--- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦   ¦
 --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
