Merge 743a71cb17
into 2bbcd5f814
This commit is contained in:
commit
9cf07ea82c
18 changed files with 400 additions and 139 deletions
1
.github/workflows/map-diff.yml
vendored
1
.github/workflows/map-diff.yml
vendored
|
@ -51,6 +51,7 @@ jobs:
|
|||
pngquant --force --output diff_image.png diff_image.png
|
||||
identify diff_image.png
|
||||
|
||||
## Write comment body
|
||||
log 'Uploading diff_image.png...'
|
||||
json=$(curl -s -F image=@diff_image.png https://api.imgur.com/3/upload | tee /dev/stderr) || continue
|
||||
|
||||
|
|
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -209,6 +209,8 @@ fonts/.uuid
|
|||
.dirstamp
|
||||
*.cfg-bak
|
||||
*.orig
|
||||
*.rej
|
||||
*.png_original
|
||||
|
||||
# might be good to have, but not in data
|
||||
data/**/*.xcf
|
||||
|
|
|
@ -26,11 +26,11 @@ Xu, Xu, Xu, Re^Es, Re, Xu, Xu, Xu, Xu, Xos, Xos, Urb, Rr, Urb, Xos, Xos, Xu, Xu,
|
|||
Xu, Xu, Xu, Xu, Uu, Xu, Xu, Xu, Xu, Xos, Xos, Urb, Rr, Urb, Xos^Efs, Xos, Xu, Xu, Xu, Urb, Cud, Urb, Xu, Xu, Xu, Xos, Urb, Rr, Urb, Xos, Xu, Wwf^Vm, Xu, Wwg, Xu, Wwf^Es, Wwf, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Uu, Xu, Xu, Xu, Xu, Xos, Xos, Urb, Rr, Urb, Urb, Xos, Xu, Xu, Xu, Cud, Rr, Cud, Xu, Xu, Xos, Xos^Efs, Urb, Rr, Urb, Xos, Xu, Xu, Rr, Xu, Rr, Xu, Xu, Uu, Uu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Uu, Xu, Xu, Xu, Xu, Xos, Xos, Urb, Urb, Rr, Rr, Urb, Cud, Xu, Rr, Rr^Eb, Rr, Rr^Eb, Rr, Xu, Cud, Urb, Rr, Rr, Urb, Xos, Xu, Xu, Rr, Rr, Rr, Rr, Xu, Xu, Uu, Uu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xos, Xos, Xos, Xu, Xu, Xu, Xu, Xos, Xos, Urb, Cud, Cud, Rr, Rr, Rr, Rr, Rr, Rr, Rr, Rr, Rr, Cud, Cud, Urb, Xos, Xos, Xu, Xu, Xu, Rr, Xu, Xu, Uh^Vu, Xu, Uu, Re, Uu^Es, Xu
|
||||
Xu, Xu, Xu, Xu, Xos, Uu, Uu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Rr, Rr, Rr, Rr, Rr, Ce, Rr, Rr, Rr, Rr, Rr, Xu, Xos, Xu, Xu, Xu, Xu, Xu, Xu, 3 Kud, Cud, Uh, Uh, Uu, Re, Uu, Xu
|
||||
Xu, Xu, Xu, Xu, Xos, Xos^Efs, Uu, Uh, Xos, Qxu, Qxu, Xu, Xu, Xu, Xu, Rr, Rr, Rr, Rr, Ce, Ke, Ce, Rr, Rr, Rr, Rr, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Cud, Cud, Uu^Es, Uu, Uu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xos, Uu, Uu, Uu, Uh, Xos, Qxu, Qxu, Xu, Xu, Xu, Xu, Rr, Rr, Rr, Xu, Ce, Ce, Ce, Rr, Rr, Rr, Rr, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Cud, Uu, Uu, Re, Re, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Cud, Urb, Urb, Xos, Xos, Uu, Uh, Xu, Xu, Xos, Xos^Efs, Cud, Rr, Rr, Xu, Rr, Rr, Rr, Rr, Rr, Rr, Rr, Rr, Cud, Xos^Efs, Xos, Xu, Xu, Xu, Xu, Uh, Uu, Rd^Es, Uu, Uh, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xu, Xos, Xos, Xos, Xu, Xu, Xu, Xu, Xos, Xos, Urb, Cud, Cud, Rr, Rr, Rr, Rr, Rr^Vu, Rr, Rr, Rr, Rr, Cud, Cud, Urb, Xos, Xos, Xu, Xu, Xu, Rr, Xu, Xu, Uh^Vu, Xu, Uu, Re, Uu^Es, Xu
|
||||
Xu, Xu, Xu, Xu, Xos, Uu, Uu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Rr, Rr, Rr, Rr^Vu, Rr^Vu, Ce, Rr^Vu, Rr^Vu, Rr, Rr, Rr, Xu, Xos, Xu, Xu, Xu, Xu, Xu, Xu, 3 Kud, Cud, Uh, Uh, Uu, Re, Uu, Xu
|
||||
Xu, Xu, Xu, Xu, Xos, Xos^Efs, Uu, Uh, Xos, Qxu, Qxu, Xu, Xu, Xu, Xu, Rr, Rr, Rr, Rr^Vu, Ce, Ke, Ce, Rr^Vu, Rr, Rr, Rr, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Cud, Cud, Uu^Es, Uu, Uu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Xos, Uu, Uu, Uu, Uh, Xos, Qxu, Qxu, Xu, Xu, Xu, Xu, Rr, Rr^Vu, Rr^Vu, Xu, Ce, Ce, Ce, Rr^Vu, Rr, Rr, Rr, Xu, Xu, Xu, Xu, Xu, Xu, Xu, Cud, Uu, Uu, Re, Re, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Cud, Urb, Urb, Xos, Xos, Uu, Uh, Xu, Xu, Xos, Xos^Efs, Cud, Rr, Rr, Xu, Rr^Vu, Rr^Vu, Rr^Vu, Rr^Vu, Rr, Rr, Rr, Rr, Cud, Xos^Efs, Xos, Xu, Xu, Xu, Xu, Uh, Uu, Rd^Es, Uu, Uh, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xu, Urb, Urb, Urb, Urb, Urb, Urb, Uu, Xos^Efs, Xos, Urb, Urb, Rr, Cud, Cud, Rr, Rr, Rr, Rr, Rr, Rr, Rr, Cud, Cud, Rr, Urb, Urb, Xos, Xu, Xu, Xu, Uh^Vu, Uu, Rd, Uh, Uu^Vud, Xu, Xu, Xu, Xu
|
||||
Xu, Xu, Xos, Xu, Urb, Urb, Urb, Urb, Xuc, Xos, Urb, Urb, Rr, Rr, Urb, Urb, Xos, Xu, Xuc, Rr, Rr, Rr, Xuc, Xu, Xos, Urb, Urb, Rr, Urb, Xos, Xu, Xu, Xu, Xu, Uu, Rd, Xu, Xu, Xu, Xu, Xu, Xu
|
||||
Xu, Xos, Urb, Urb, Cud, Urb, Urb, Urb, Xuc, Xuc, Urb, Rr, Urb, Urb, Xos, Xos, Xu, Xu, Xuc, Cud, Cud, Cud, Xuc, Xu, Xu, Xos, Urb, Rr, Xuc, Xu, Uh, Rd^Es, Re, Uu, Uu, Re, Xu, Xu, Xu, Xu, Xu, Xu
|
||||
|
|
9
data/campaigns/Northern_Rebirth/scenarios/01_Breaking_the_Chains.cfg
Normal file → Executable file
9
data/campaigns/Northern_Rebirth/scenarios/01_Breaking_the_Chains.cfg
Normal file → Executable file
|
@ -21,7 +21,6 @@
|
|||
[/part]
|
||||
[part]
|
||||
story= _ "The dwarves of Knalga, cannily reckoning the gains from trade, built strong fortifications around Dwarven Doors. The dwarves and humans who called it home knew that the wealth of the city might arouse envy from afar — hence they kept their weapons sharp, and regarded themselves able to fight off any bandit gang or petty warlord."
|
||||
|
||||
{NR_BIGMAP}
|
||||
{PROLOGUE_STAGE1_END}
|
||||
[/part]
|
||||
|
@ -98,7 +97,7 @@
|
|||
side=1
|
||||
controller=human
|
||||
recruit=Peasant,Woodsman
|
||||
{GOLD 100 75 60}
|
||||
{GOLD 100 80 60}
|
||||
team_name=rebels
|
||||
user_team_name= _ "Rebels"
|
||||
{FLAG_VARIANT6 ragged}
|
||||
|
@ -143,7 +142,7 @@
|
|||
[criteria]
|
||||
side=3
|
||||
[/criteria]
|
||||
value=3
|
||||
value={ON_DIFFICULTY 5 4 3}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
|
@ -171,7 +170,7 @@
|
|||
canrecruit=yes
|
||||
|
||||
[ai]
|
||||
leader_value=5 # Strong desire to kill Al'Tar
|
||||
leader_value={ON_DIFFICULTY 7 6 5} # Strong desire to kill Al'Tar
|
||||
village_value=0.75 # Weakened desire to capture villages
|
||||
caution=0.50 # Wants to survive the duel
|
||||
[goal]
|
||||
|
@ -179,7 +178,7 @@
|
|||
[criteria]
|
||||
side=2
|
||||
[/criteria]
|
||||
value=3
|
||||
value={ON_DIFFICULTY 5 4 3}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
|
|
|
@ -4,7 +4,8 @@
|
|||
id=02_01_Infested_Caves
|
||||
name= _ "Infested Caves"
|
||||
map_file=02_01_Infested_Caves.map
|
||||
{TURNS 55 50 45}
|
||||
# It can take a long time to break through:
|
||||
{TURNS 65 55 45}
|
||||
next_scenario=02_02_Meeting_With_Dwarves
|
||||
|
||||
{UNDERGROUND}
|
||||
|
@ -47,8 +48,9 @@
|
|||
[side]
|
||||
side=1
|
||||
controller=human
|
||||
{GOLD 450 400 350}
|
||||
recruit=Peasant,Woodsman,Thug,Poacher,Footpad
|
||||
{GOLD 500 425 350}
|
||||
{INCOME 6 4 2}
|
||||
recruit=Peasant,Woodsman,Thug,Poacher,Footpad,Ruffian
|
||||
team_name=rebels
|
||||
user_team_name= _ "Rebels"
|
||||
{FLAG_VARIANT6 ragged}
|
||||
|
@ -65,7 +67,7 @@
|
|||
side=2
|
||||
controller=ai
|
||||
recruit=Troll Whelp
|
||||
{GOLD 100 150 200}
|
||||
{GOLD 80 140 200}
|
||||
team_name=trolls
|
||||
user_team_name= _ "Trolls"
|
||||
|
||||
|
@ -73,13 +75,19 @@
|
|||
id=Knash
|
||||
name= _ "Knash"
|
||||
canrecruit=yes
|
||||
#ifdef EASY
|
||||
[ai]
|
||||
# Making Knash passive gives the player a better chance of reaching Camerin's hut:
|
||||
passive_leader=yes
|
||||
[/ai]
|
||||
#endif
|
||||
[/side]
|
||||
|
||||
[side]
|
||||
side=3
|
||||
controller=ai
|
||||
recruit=Troll Whelp
|
||||
{GOLD 100 150 200}
|
||||
{GOLD 80 140 200}
|
||||
team_name=trolls
|
||||
user_team_name= _ "Trolls"
|
||||
|
||||
|
@ -87,6 +95,12 @@
|
|||
id=Krog
|
||||
name= _ "Krog"
|
||||
canrecruit=yes
|
||||
#ifdef EASY
|
||||
[ai]
|
||||
# For symmetry with Knash:
|
||||
passive_leader=yes
|
||||
[/ai]
|
||||
#endif
|
||||
[/side]
|
||||
|
||||
# Dwarven side
|
||||
|
@ -94,8 +108,8 @@
|
|||
side=4
|
||||
controller=ai
|
||||
recruit=Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Guardsman,Dwarvish Scout
|
||||
{GOLD 130 120 100}
|
||||
income=9 # covering the upkeep costs
|
||||
{GOLD 190 145 100}
|
||||
{INCOME 11 10 9} # covering the upkeep costs, and possibly a bit more on easier difficulties
|
||||
team_name=rebels
|
||||
user_team_name= _ "Rebels"
|
||||
{FLAG_VARIANT knalgan}
|
||||
|
@ -164,8 +178,8 @@
|
|||
side=6
|
||||
controller=ai
|
||||
recruit=Troll Whelp,Troll,Troll Rocklobber
|
||||
{GOLD 300 400 500}
|
||||
{INCOME 14 18 22}
|
||||
{GOLD 250 375 500}
|
||||
{INCOME 8 15 22}
|
||||
team_name=trolls
|
||||
user_team_name= _ "Trolls"
|
||||
|
||||
|
@ -192,8 +206,8 @@
|
|||
side=7
|
||||
controller=ai
|
||||
recruit=Skeleton,Skeleton Archer
|
||||
{GOLD 250 350 450}
|
||||
{INCOME 4 6 8}
|
||||
{GOLD 210 330 450}
|
||||
{INCOME 2 5 8}
|
||||
team_name=undead
|
||||
user_team_name= _ "Undead"
|
||||
{FLAG_VARIANT undead}
|
||||
|
@ -210,7 +224,7 @@
|
|||
recruit=Skeleton,Skeleton Archer
|
||||
{GOLD 250 350 450}
|
||||
# One more compared to side 7, for upkeep cost of the Micro AI guardian.
|
||||
{INCOME 5 7 9}
|
||||
{INCOME 3 6 9}
|
||||
|
||||
team_name=undead
|
||||
user_team_name= _ "Undead"
|
||||
|
|
|
@ -26,8 +26,9 @@
|
|||
[side]
|
||||
side=1
|
||||
controller=human
|
||||
recruit=Peasant,Woodsman,Thug,Poacher,Footpad
|
||||
{GOLD 600 400 300}
|
||||
recruit=Peasant,Woodsman,Thug,Poacher,Footpad,Ruffian
|
||||
{GOLD 650 475 300}
|
||||
{INCOME 3 2 1}
|
||||
team_name=rebels
|
||||
user_team_name= _ "Alliance"
|
||||
|
||||
|
@ -104,7 +105,7 @@
|
|||
|
||||
gold=0
|
||||
# {GOLD 100 150 250}
|
||||
{INCOME 10 16 22}
|
||||
{INCOME 6 14 22}
|
||||
team_name=undead
|
||||
user_team_name= _ "Undead"
|
||||
{FLAG_VARIANT undead}
|
||||
|
@ -507,7 +508,7 @@
|
|||
|
||||
[gold]
|
||||
side=4
|
||||
amount={ON_DIFFICULTY 200 350 500}
|
||||
amount={ON_DIFFICULTY 120 310 500}
|
||||
[/gold]
|
||||
[/event]
|
||||
|
||||
|
@ -1235,10 +1236,10 @@
|
|||
message= _ "Bring it on!"
|
||||
[/message]
|
||||
|
||||
# Add 200, 350 or 500 gold to treasury guards.
|
||||
# Add 120, 310 or 500 gold to treasury guards.
|
||||
[gold]
|
||||
side=5
|
||||
amount={ON_DIFFICULTY 200 350 500}
|
||||
amount={ON_DIFFICULTY 120 310 500}
|
||||
[/gold]
|
||||
[/event]
|
||||
|
||||
|
@ -1570,7 +1571,7 @@
|
|||
|
||||
[gold]
|
||||
side=7
|
||||
amount={ON_DIFFICULTY 200 350 500}
|
||||
amount={ON_DIFFICULTY 120 310 500}
|
||||
[/gold]
|
||||
[/event]
|
||||
|
||||
|
@ -1922,7 +1923,7 @@
|
|||
|
||||
[gold]
|
||||
side=6
|
||||
amount={ON_DIFFICULTY 200 350 500}
|
||||
amount={ON_DIFFICULTY 120 310 500}
|
||||
[/gold]
|
||||
[/event]
|
||||
|
||||
|
@ -1973,7 +1974,7 @@
|
|||
|
||||
[gold]
|
||||
side=3
|
||||
amount={ON_DIFFICULTY 200 250 300}
|
||||
amount={ON_DIFFICULTY 120 210 300}
|
||||
[/gold]
|
||||
[/event]
|
||||
|
||||
|
|
|
@ -124,7 +124,7 @@
|
|||
# From now on level 0 units can not be recruited anymore.
|
||||
# However, all of their level 1 advancements are now availaible.
|
||||
[disallow_recruit]
|
||||
type=Peasant,Woodsman
|
||||
type=Peasant,Woodsman,Ruffian
|
||||
[/disallow_recruit]
|
||||
|
||||
[lock_view][/lock_view]
|
||||
|
|
|
@ -37,7 +37,8 @@
|
|||
[side]
|
||||
side=1
|
||||
controller=human
|
||||
recruit=Thug,Poacher,Spearman,Bowman,Footpad
|
||||
# Fencers can be replaced if/when the Dwarvish Grenadier proposal gets accepted:
|
||||
recruit=Thug,Poacher,Spearman,Bowman,Footpad,Fencer
|
||||
{GOLD 350 300 250}
|
||||
team_name=knalgans
|
||||
user_team_name= _ "Knalgans"
|
||||
|
|
|
@ -125,7 +125,9 @@
|
|||
side=1
|
||||
controller=human
|
||||
recruit=Thug,Poacher,Spearman,Bowman,Footpad
|
||||
gold=0 #player has large carryover here, is handled in prestart event
|
||||
# player is supposed to have a large carryover here (handled in prestart event), so leave this zero on all difficulties here:
|
||||
{GOLD 0 0 0}
|
||||
{INCOME 4 3 2}
|
||||
team_name=knalgans
|
||||
user_team_name= _ "Knalgans"
|
||||
|
||||
|
@ -143,7 +145,7 @@
|
|||
side=2
|
||||
controller=ai
|
||||
recruit=Dwarvish Ulfserker
|
||||
{GOLD 100 90 60}
|
||||
{GOLD 120 90 60}
|
||||
team_name=knalgans
|
||||
user_team_name= _ "Knalgans"
|
||||
{FLAG_VARIANT knalgan}
|
||||
|
@ -158,7 +160,7 @@
|
|||
{TRAIT_HEALTHY}
|
||||
[/modifications]
|
||||
|
||||
hitpoints=1
|
||||
{QUANTITY hitpoints 11 6 1} # (based on number of hits a Young Ogre would take to kill him)
|
||||
fog=yes
|
||||
share_vision=all
|
||||
facing=se
|
||||
|
@ -166,43 +168,47 @@
|
|||
# Place some combatants at various states of hp/xp
|
||||
{NOTRAIT_UNIT 2 "Dwarvish Ulfserker" 28 8}
|
||||
[+unit]
|
||||
hitpoints=12
|
||||
{QUANTITY hitpoints 18 15 12}
|
||||
#ifdef EASY
|
||||
experience=41
|
||||
#else
|
||||
experience=40
|
||||
#endif
|
||||
facing=se
|
||||
[/unit]
|
||||
|
||||
{NOTRAIT_UNIT 2 "Dwarvish Ulfserker" 24 7}
|
||||
[+unit]
|
||||
hitpoints=34
|
||||
experience=8
|
||||
hitpoints=34 # max
|
||||
{QUANTITY experience 10 9 8}
|
||||
facing=ne
|
||||
[/unit]
|
||||
|
||||
{NOTRAIT_UNIT 2 "Dwarvish Ulfserker" 24 4}
|
||||
[+unit]
|
||||
hitpoints=28
|
||||
experience=18
|
||||
{QUANTITY hitpoints 32 30 28}
|
||||
{QUANTITY experience 22 20 18}
|
||||
facing=sw
|
||||
[/unit]
|
||||
|
||||
{NOTRAIT_UNIT 2 "Dwarvish Ulfserker" 23 2}
|
||||
[+unit]
|
||||
hitpoints=30
|
||||
experience=16
|
||||
{QUANTITY hitpoints 34 32 30}
|
||||
{QUANTITY experience 20 18 16}
|
||||
facing=s
|
||||
[/unit]
|
||||
|
||||
{NOTRAIT_UNIT 2 "Dwarvish Ulfserker" 30 7}
|
||||
[+unit]
|
||||
hitpoints=12
|
||||
experience=16
|
||||
{QUANTITY hitpoints 16 14 12}
|
||||
{QUANTITY experience 20 18 16}
|
||||
facing=nw
|
||||
[/unit]
|
||||
|
||||
{NOTRAIT_UNIT 2 "Dwarvish Ulfserker" 22 6}
|
||||
[+unit]
|
||||
hitpoints=9
|
||||
experience=41
|
||||
{QUANTITY hitpoints 15 12 9}
|
||||
experience=41 # 42 is max
|
||||
facing=sw
|
||||
[/unit]
|
||||
[/side]
|
||||
|
@ -212,7 +218,7 @@
|
|||
side=3
|
||||
controller=ai
|
||||
recruit=Gryphon,Young Ogre,Ogre,Troll Whelp,Troll,Troll Rocklobber,Red Mage,Mage
|
||||
{GOLD 950 1100 1600}
|
||||
{GOLD 900 1100 1600}
|
||||
team_name=liches
|
||||
user_team_name= _ "Liches"
|
||||
{FLAG_VARIANT undead}
|
||||
|
@ -227,29 +233,29 @@
|
|||
|
||||
{NOTRAIT_UNIT 3 Troll 30 9}
|
||||
[+unit]
|
||||
hitpoints=36
|
||||
experience=14
|
||||
{QUANTITY hitpoints 32 34 36}
|
||||
{QUANTITY experience 10 12 14}
|
||||
facing=nw
|
||||
[/unit]
|
||||
|
||||
{NOTRAIT_UNIT 3 "Young Ogre" 28 6}
|
||||
[+unit]
|
||||
hitpoints=6
|
||||
experience=31
|
||||
{QUANTITY hitpoints 4 5 6}
|
||||
{QUANTITY experience 29 30 31}
|
||||
facing=se
|
||||
[/unit]
|
||||
|
||||
{NOTRAIT_UNIT 3 "Young Ogre" 20 7}
|
||||
[+unit]
|
||||
hitpoints=12
|
||||
experience=12
|
||||
{QUANTITY hitpoints 10 11 12}
|
||||
{QUANTITY experience 10 11 12}
|
||||
facing=ne
|
||||
[/unit]
|
||||
|
||||
{NOTRAIT_UNIT 3 "Ogre" 23 3}
|
||||
[+unit]
|
||||
hitpoints=27
|
||||
experience=8
|
||||
{QUANTITY hitpoints 21 24 27}
|
||||
{QUANTITY experience 6 7 8}
|
||||
facing=n
|
||||
[/unit]
|
||||
|
||||
|
@ -287,7 +293,7 @@
|
|||
[/store_gold]
|
||||
[modify_side]
|
||||
side=1
|
||||
{GOLD 200 100 80}
|
||||
{GOLD 280 180 80}
|
||||
[/modify_side]
|
||||
|
||||
# Recall heroes
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
id=08a_Elvish_Princess
|
||||
name= _ "Elvish Princess"
|
||||
map_file=08a_Elvish_Princess.map
|
||||
{TURNS 21 18 15}
|
||||
{TURNS 23 19 15}
|
||||
next_scenario=09a_Introductions
|
||||
victory_when_enemies_defeated=no
|
||||
|
||||
|
@ -94,9 +94,13 @@
|
|||
[side]
|
||||
side=1
|
||||
controller=human
|
||||
recruit=Thug,Poacher,Spearman,Bowman,Gryphon,Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Ulfserker,Dwarvish Scout,Footpad
|
||||
# Tallin only asked the mages for their gryphons at the end of the previous scenario, so don't add any more of their units here:
|
||||
recruit=Thug,Poacher,Spearman,Bowman,Gryphon,Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Ulfserker,Dwarvish Scout,Footpad,Fencer
|
||||
team_name=knalgans
|
||||
user_team_name= _ "Knalgans"
|
||||
# default gold when left unspecified is 100, so keep first 2 difficulties higher than that:
|
||||
{GOLD 122 111 100}
|
||||
{INCOME 9 6 3}
|
||||
|
||||
# wmllint: recognize Tallin
|
||||
{CHARACTER_STATS_TALLIN}
|
||||
|
@ -107,8 +111,8 @@
|
|||
side=2
|
||||
controller=ai
|
||||
recruit=Orcish Grunt,Orcish Archer,Wolf Rider,Orcish Assassin,Troll Whelp
|
||||
{GOLD 300 400 500}
|
||||
{INCOME 15 20 25}
|
||||
{GOLD 250 375 500}
|
||||
{INCOME 10 20 25}
|
||||
team_name=Orcs
|
||||
user_team_name= _ "Orcs"
|
||||
{FLAG_VARIANT6 ragged}
|
||||
|
@ -166,8 +170,10 @@
|
|||
{GENERIC_UNIT 3 "Orcish Crossbowman" 17 14} {GUARDIAN}
|
||||
[/side]
|
||||
|
||||
{STARTING_VILLAGES 1 5}
|
||||
{STARTING_VILLAGES_AREA 2 15 17 12}
|
||||
# 1 = Tallin, so get smaller by difficulty:
|
||||
{STARTING_VILLAGES 1 {ON_DIFFICULTY 7 6 5}}
|
||||
# 2 = Orcs, so get bigger by difficulty:
|
||||
{STARTING_VILLAGES_AREA 2 15 17 {ON_DIFFICULTY 10 11 12}}
|
||||
|
||||
{PLACE_PRISONER_IMAGE units/elves-wood/sorceress.png 9 14}
|
||||
|
||||
|
@ -361,6 +367,26 @@
|
|||
[/message]
|
||||
[/event]
|
||||
|
||||
#ifdef EASY
|
||||
[event]
|
||||
name=last breath
|
||||
[filter]
|
||||
id=Atul
|
||||
[/filter]
|
||||
[message]
|
||||
race=human
|
||||
message= _ "This orc was carrying some gold!"
|
||||
[/message]
|
||||
[sound]
|
||||
name=gold.ogg
|
||||
[/sound]
|
||||
[gold]
|
||||
side=1
|
||||
{QUANTITY amount 120 80 40}
|
||||
[/gold]
|
||||
[/event]
|
||||
#endif
|
||||
|
||||
# Freeing Eryssa event - victory proceed to introductions
|
||||
[event]
|
||||
name=moveto
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
[side]
|
||||
side=1
|
||||
controller=human
|
||||
recruit=Thug,Poacher,Spearman,Bowman,Gryphon,Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Ulfserker,Dwarvish Scout,Footpad
|
||||
recruit=Thug,Poacher,Spearman,Bowman,Gryphon,Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Ulfserker,Dwarvish Scout,Footpad,Fencer
|
||||
team_name=knalgans
|
||||
user_team_name=_ "Knalgans"
|
||||
|
||||
|
@ -49,7 +49,7 @@
|
|||
{GENERIC_UNIT 2 "Troll" 10 6}
|
||||
{GENERIC_UNIT 2 "Troll" 11 4}
|
||||
{GENERIC_UNIT 2 "Troll" 16 6}
|
||||
{GENERIC_UNIT 2 "Troll" 18 11}
|
||||
{GENERIC_UNIT 2 {ON_DIFFICULTY "Troll Whelp" "Troll" "Troll Warrior"} 18 11}
|
||||
|
||||
{GENERIC_UNIT 2 "Troll Whelp" 3 9}
|
||||
{GENERIC_UNIT 2 "Troll Whelp" 6 3}
|
||||
|
@ -63,7 +63,7 @@
|
|||
{GENERIC_UNIT 2 "Troll Rocklobber" 4 3}
|
||||
{GENERIC_UNIT 2 "Troll Rocklobber" 9 3}
|
||||
{GENERIC_UNIT 2 "Troll Rocklobber" 10 5}
|
||||
{GENERIC_UNIT 2 "Troll Rocklobber" 14 3}
|
||||
{GENERIC_UNIT 2 {ON_DIFFICULTY "Troll Whelp" "Troll Rocklobber" "Troll Rocklobber"} 14 3}
|
||||
[/side]
|
||||
|
||||
{PLACE_IMAGE scenery/signpost.png 1 1}
|
||||
|
@ -134,6 +134,8 @@
|
|||
id=Stalrag
|
||||
[/recall]
|
||||
|
||||
{RECALL_LOYAL_DWARF}
|
||||
|
||||
[recall]
|
||||
id="Ro'Arthian"
|
||||
[/recall]
|
||||
|
|
|
@ -156,8 +156,9 @@
|
|||
[side]
|
||||
side=1
|
||||
controller=human
|
||||
recruit=Thug,Poacher,Spearman,Bowman,Gryphon,Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Ulfserker,Dwarvish Scout,Footpad
|
||||
gold=200
|
||||
recruit=Thug,Poacher,Spearman,Bowman,Gryphon,Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Ulfserker,Dwarvish Scout,Footpad,Fencer
|
||||
{GOLD 300 250 200}
|
||||
{INCOME 3 2 1}
|
||||
team_name=alliance
|
||||
user_team_name= _ "Alliance"
|
||||
|
||||
|
@ -338,6 +339,12 @@
|
|||
id="Ro'Sothian"
|
||||
[/recall]
|
||||
|
||||
{RECALL_LOYAL_DWARF}
|
||||
|
||||
[recall]
|
||||
type=Gryphon
|
||||
[/recall]
|
||||
|
||||
# give player extra gold if they do not have krash
|
||||
[if]
|
||||
[not]
|
||||
|
@ -942,7 +949,7 @@
|
|||
[/message]
|
||||
|
||||
[gold]
|
||||
amount=1500
|
||||
{QUANTITY amount 1700 1600 1500}
|
||||
side=1
|
||||
[/gold]
|
||||
|
||||
|
|
|
@ -32,8 +32,9 @@
|
|||
[side]
|
||||
side=1
|
||||
controller=human
|
||||
recruit=Thug,Poacher,Spearman,Bowman,Gryphon,Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Ulfserker,Dwarvish Scout,Footpad
|
||||
recruit=Thug,Poacher,Spearman,Bowman,Gryphon,Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Ulfserker,Dwarvish Scout,Footpad,Fencer,Heavy Infantryman
|
||||
{GOLD 250 200 150}
|
||||
{INCOME 3 2 1}
|
||||
team_name=knalgans
|
||||
user_team_name= _ "Alliance"
|
||||
|
||||
|
@ -48,7 +49,7 @@
|
|||
controller=ai
|
||||
recruit=Troll Whelp,Troll,Troll Rocklobber
|
||||
{GOLD 500 600 700}
|
||||
{INCOME 25 35 45}
|
||||
{INCOME 21 33 45}
|
||||
team_name=orcs
|
||||
user_team_name= _ "Orcs"
|
||||
|
||||
|
@ -72,7 +73,7 @@
|
|||
controller=ai
|
||||
recruit=Orcish Grunt,Orcish Warrior,Orcish Archer,Orcish Crossbowman,Wolf Rider,Orcish Assassin
|
||||
{GOLD 400 500 600}
|
||||
{INCOME 25 35 45}
|
||||
{INCOME 21 33 45}
|
||||
team_name=orcs
|
||||
user_team_name= _ "Orcs"
|
||||
{FLAG_VARIANT6 ragged}
|
||||
|
@ -88,7 +89,7 @@
|
|||
controller=ai
|
||||
recruit=Orcish Grunt,Orcish Warrior,Orcish Archer,Orcish Crossbowman,Wolf Rider,Orcish Assassin
|
||||
{GOLD 400 500 600}
|
||||
{INCOME 25 35 45}
|
||||
{INCOME 21 33 45}
|
||||
team_name=orcs
|
||||
user_team_name= _ "Orcs"
|
||||
{FLAG_VARIANT6 ragged}
|
||||
|
@ -104,7 +105,7 @@
|
|||
controller=ai
|
||||
recruit=Orcish Grunt,Orcish Warrior,Orcish Archer,Orcish Crossbowman,Wolf Rider,Orcish Assassin
|
||||
{GOLD 400 500 600}
|
||||
{INCOME 25 35 45}
|
||||
{INCOME 21 33 45}
|
||||
team_name=orcs
|
||||
user_team_name= _ "Orcs"
|
||||
{FLAG_VARIANT6 ragged}
|
||||
|
@ -120,7 +121,7 @@
|
|||
controller=ai
|
||||
recruit=Orcish Grunt,Orcish Warrior,Orcish Archer,Orcish Crossbowman,Wolf Rider,Orcish Assassin
|
||||
{GOLD 400 500 600}
|
||||
{INCOME 25 35 45}
|
||||
{INCOME 21 33 45}
|
||||
team_name=orcs
|
||||
user_team_name= _ "Orcs"
|
||||
{FLAG_VARIANT6 ragged}
|
||||
|
@ -149,7 +150,8 @@
|
|||
{FLAG_VARIANT long}
|
||||
[/side]
|
||||
|
||||
{STARTING_VILLAGES 1 6}
|
||||
# 1 = Tallin, so reduce radius with difficulty:
|
||||
{STARTING_VILLAGES 1 {ON_DIFFICULTY 8 7 6}}
|
||||
|
||||
# Here’s where we edit out Krash's side if he's dead.
|
||||
[event]
|
||||
|
@ -188,10 +190,11 @@
|
|||
side=2,3,4,5,6
|
||||
amount={ON_DIFFICULTY -125 -100 -75}
|
||||
[/gold]
|
||||
{CAPTURE_VILLAGES 1 30 3 5}
|
||||
{CAPTURE_VILLAGES 1 30 3 {ON_DIFFICULTY 7 6 5}}
|
||||
[/then]
|
||||
[else]
|
||||
{CAPTURE_VILLAGES 7 30 3 5}
|
||||
# give them to Krash instead if he is in fact still alive:
|
||||
{CAPTURE_VILLAGES 7 30 3 {ON_DIFFICULTY 7 6 5}}
|
||||
[/else]
|
||||
[/if]
|
||||
|
||||
|
@ -267,6 +270,8 @@
|
|||
id="Ro'Sothian"
|
||||
[/recall]
|
||||
|
||||
{RECALL_LOYAL_DWARF}
|
||||
|
||||
[message]
|
||||
speaker=Tallin
|
||||
message= _ "Gods of Light, look at that fortress! The castle Angthurim is even grimmer than its reputation!"
|
||||
|
|
|
@ -47,11 +47,15 @@
|
|||
canrecruit=yes
|
||||
side=1
|
||||
controller=human
|
||||
recruit=Thug,Poacher,Spearman,Bowman,Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Ulfserker,Dwarvish Scout,Gryphon,Footpad
|
||||
recruit=Thug,Poacher,Spearman,Bowman,Dwarvish Fighter,Dwarvish Thunderer,Dwarvish Ulfserker,Dwarvish Scout,Gryphon,Footpad,Fencer
|
||||
team_name=knalgans
|
||||
user_team_name=_"Alliance"
|
||||
gold=100
|
||||
# The first value here ought to be enough for the player to get through their entire recall list,
|
||||
# and then the middle one is an interpolation of the halfway point between that and the existing third amount:
|
||||
{GOLD 900 500 100}
|
||||
{INCOME 18 12 9}
|
||||
[/side]
|
||||
# This gets all the ones nearby; keep constant:
|
||||
{STARTING_VILLAGES 1 5}
|
||||
# Main enemy
|
||||
[side]
|
||||
|
@ -69,39 +73,55 @@
|
|||
x=30
|
||||
y=30
|
||||
[/criteria]
|
||||
value=400
|
||||
value={ON_DIFFICULTY 200 300 400}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=protect_unit
|
||||
[criteria]
|
||||
id=Rakshas
|
||||
[/criteria]
|
||||
protect_radius={ON_DIFFICULTY 12 11 10}
|
||||
value={ON_DIFFICULTY 250 350 450}
|
||||
[/goal] #
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=1 # Tallin
|
||||
[/criteria]
|
||||
value={ON_DIFFICULTY 60 180 300}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=1
|
||||
side=7 # Krash, or Ro'Arthian
|
||||
[/criteria]
|
||||
value=300
|
||||
value={ON_DIFFICULTY 50 100 150}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=7
|
||||
side=8 # Hamel
|
||||
[/criteria]
|
||||
value=150
|
||||
value={ON_DIFFICULTY 40 50 60}
|
||||
[/goal]
|
||||
[goal] # separate target for Hamel himself:
|
||||
name=target
|
||||
[criteria]
|
||||
id=Hamel
|
||||
[/criteria]
|
||||
value={ON_DIFFICULTY 30 40 50}
|
||||
[/goal] #
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=8
|
||||
side=9 # Eryssa, or Ro'Sothian
|
||||
[/criteria]
|
||||
value=50
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=9
|
||||
[/criteria]
|
||||
value=250
|
||||
value={ON_DIFFICULTY 100 175 250}
|
||||
[/goal]
|
||||
[/ai]
|
||||
{FLAG_VARIANT6 ragged}
|
||||
[/side]
|
||||
# Gets all ones nearby; keep constant:
|
||||
{STARTING_VILLAGES 2 3}
|
||||
# Sidekicks
|
||||
[side]
|
||||
|
@ -117,36 +137,52 @@
|
|||
user_team_name=_"Orcs"
|
||||
[ai]
|
||||
[goal]
|
||||
name=target
|
||||
name=protect_unit
|
||||
[criteria]
|
||||
side=1
|
||||
id="Ha'Tuil"
|
||||
[/criteria]
|
||||
value=400
|
||||
protect_radius={ON_DIFFICULTY 9 8 7}
|
||||
value={ON_DIFFICULTY 250 350 450}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=7
|
||||
side=1 # Tallin
|
||||
[/criteria]
|
||||
value=300
|
||||
value={ON_DIFFICULTY 160 280 400}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=8
|
||||
side=7 # Krash, or Ro'Arthian
|
||||
[/criteria]
|
||||
value=200
|
||||
value={ON_DIFFICULTY 100 200 300}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=9
|
||||
side=8 # Hamel
|
||||
[/criteria]
|
||||
value=350
|
||||
value={ON_DIFFICULTY 80 160 240}
|
||||
[/goal]
|
||||
[goal] # separate target for Hamel himself:
|
||||
name=target
|
||||
[criteria]
|
||||
id=Hamel
|
||||
[/criteria]
|
||||
value={ON_DIFFICULTY 90 180 270}
|
||||
[/goal] #
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=9 # Eryssa, or Ro'Sothian
|
||||
[/criteria]
|
||||
value={ON_DIFFICULTY 150 250 350}
|
||||
[/goal]
|
||||
[/ai]
|
||||
{FLAG_VARIANT6 ragged}
|
||||
[/side]
|
||||
# Gets all ones nearby; keep constant:
|
||||
{STARTING_VILLAGES 3 4}
|
||||
|
||||
[side]
|
||||
|
@ -162,36 +198,52 @@
|
|||
user_team_name=_"Orcs"
|
||||
[ai]
|
||||
[goal]
|
||||
name=target
|
||||
name=protect_unit
|
||||
[criteria]
|
||||
side=1
|
||||
id="Ar'Muff"
|
||||
[/criteria]
|
||||
value=400
|
||||
protect_radius={ON_DIFFICULTY 9 8 7}
|
||||
value={ON_DIFFICULTY 250 350 450}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=7
|
||||
side=1 # Tallin
|
||||
[/criteria]
|
||||
value=300
|
||||
value={ON_DIFFICULTY 160 280 400}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=8
|
||||
side=7 # Krash, or Ro'Arthian
|
||||
[/criteria]
|
||||
value=200
|
||||
value={ON_DIFFICULTY 100 200 300}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=9
|
||||
side=8 # Hamel
|
||||
[/criteria]
|
||||
value=350
|
||||
value={ON_DIFFICULTY 80 160 240}
|
||||
[/goal]
|
||||
[goal] # separate target for Hamel himself:
|
||||
name=target
|
||||
[criteria]
|
||||
id=Hamel
|
||||
[/criteria]
|
||||
value={ON_DIFFICULTY 90 180 270}
|
||||
[/goal] #
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=9 # Eryssa, or Ro'Sothian
|
||||
[/criteria]
|
||||
value={ON_DIFFICULTY 150 250 350}
|
||||
[/goal]
|
||||
[/ai]
|
||||
{FLAG_VARIANT6 ragged}
|
||||
[/side]
|
||||
# Gets all ones nearby; keep constant:
|
||||
{STARTING_VILLAGES 4 4}
|
||||
|
||||
[side]
|
||||
|
@ -207,36 +259,52 @@
|
|||
user_team_name=_"Orcs"
|
||||
[ai]
|
||||
[goal]
|
||||
name=target
|
||||
name=protect_unit
|
||||
[criteria]
|
||||
side=1
|
||||
id="Calter"
|
||||
[/criteria]
|
||||
value=400
|
||||
protect_radius={ON_DIFFICULTY 9 8 7}
|
||||
value={ON_DIFFICULTY 250 350 450}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=7
|
||||
side=1 # Tallin
|
||||
[/criteria]
|
||||
value=300
|
||||
value={ON_DIFFICULTY 160 280 400}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=8
|
||||
side=7 # Krash, or Ro'Arthian
|
||||
[/criteria]
|
||||
value=200
|
||||
value={ON_DIFFICULTY 100 200 300}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=9
|
||||
side=8 # Hamel
|
||||
[/criteria]
|
||||
value=350
|
||||
value={ON_DIFFICULTY 80 160 240}
|
||||
[/goal]
|
||||
[goal] # separate target for Hamel himself:
|
||||
name=target
|
||||
[criteria]
|
||||
id=Hamel
|
||||
[/criteria]
|
||||
value={ON_DIFFICULTY 90 180 270}
|
||||
[/goal] #
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=9 # Eryssa, or Ro'Sothian
|
||||
[/criteria]
|
||||
value={ON_DIFFICULTY 150 250 350}
|
||||
[/goal]
|
||||
[/ai]
|
||||
{FLAG_VARIANT6 ragged}
|
||||
[/side]
|
||||
# Gets all ones nearby; keep constant:
|
||||
{STARTING_VILLAGES 5 4}
|
||||
|
||||
[side]
|
||||
|
@ -252,36 +320,52 @@
|
|||
user_team_name=_"Orcs"
|
||||
[ai]
|
||||
[goal]
|
||||
name=target
|
||||
name=protect_unit
|
||||
[criteria]
|
||||
side=1
|
||||
id="Halter"
|
||||
[/criteria]
|
||||
value=400
|
||||
protect_radius={ON_DIFFICULTY 9 8 7}
|
||||
value={ON_DIFFICULTY 250 350 450}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=7
|
||||
side=1 # Tallin
|
||||
[/criteria]
|
||||
value=300
|
||||
value={ON_DIFFICULTY 160 280 400}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=8
|
||||
side=7 # Krash, or Ro'Arthian
|
||||
[/criteria]
|
||||
value=200
|
||||
value={ON_DIFFICULTY 100 200 300}
|
||||
[/goal]
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=9
|
||||
side=8 # Hamel
|
||||
[/criteria]
|
||||
value=350
|
||||
value={ON_DIFFICULTY 80 160 240}
|
||||
[/goal]
|
||||
[goal] # separate target for Hamel himself:
|
||||
name=target
|
||||
[criteria]
|
||||
id=Hamel
|
||||
[/criteria]
|
||||
value={ON_DIFFICULTY 90 180 270}
|
||||
[/goal] #
|
||||
[goal]
|
||||
name=target
|
||||
[criteria]
|
||||
side=9 # Eryssa, or Ro'Sothian
|
||||
[/criteria]
|
||||
value={ON_DIFFICULTY 150 250 350}
|
||||
[/goal]
|
||||
[/ai]
|
||||
{FLAG_VARIANT6 ragged}
|
||||
[/side]
|
||||
# Gets all ones nearby; keep constant:
|
||||
{STARTING_VILLAGES 6 4}
|
||||
|
||||
# Krash may not actually still be alive at this point, but setting up
|
||||
|
@ -291,7 +375,8 @@
|
|||
side=7
|
||||
save_id=Krash
|
||||
side_name= _ "Krash"
|
||||
gold=200
|
||||
{GOLD 600 400 200}
|
||||
{INCOME 9 6 3}
|
||||
recruit=Drake Fighter,Drake Glider,Drake Burner,Drake Clasher
|
||||
team_name=knalgans
|
||||
user_team_name=_"Alliance"
|
||||
|
@ -333,12 +418,14 @@
|
|||
[/object]
|
||||
[/modifications]
|
||||
[/side]
|
||||
# Gets all ones nearby; keep constant:
|
||||
{STARTING_VILLAGES 8 10}
|
||||
|
||||
# Side for Eryssa if alive
|
||||
[side]
|
||||
side=9
|
||||
gold=200
|
||||
{GOLD 600 400 200}
|
||||
{INCOME 9 6 3}
|
||||
recruit=Elvish Fighter,Elvish Archer,Elvish Shaman,Elvish Scout,Elvish Captain,Elvish Hero,Elvish Ranger,Elvish Marksman,Elvish Rider,Elvish Druid,Elvish Sorceress
|
||||
team_name=knalgans
|
||||
user_team_name=_"Alliance"
|
||||
|
@ -353,9 +440,70 @@
|
|||
# STARTING_VILLAGES works due to defeat_condition & having a starting location
|
||||
{STARTING_VILLAGES 9 10}
|
||||
|
||||
# This should help prevent Hamel from suiciding himself by discouraging him
|
||||
# from leaving his castle and surrounding villages
|
||||
# (copied from SotBE, with modifications)
|
||||
[event]
|
||||
name=side 8 turn refresh
|
||||
first_time_only=no
|
||||
|
||||
[modify_unit]
|
||||
[filter]
|
||||
side=$side_number
|
||||
canrecruit=yes
|
||||
# Only do this if his side is AI-controlled:
|
||||
[filter_side]
|
||||
controller=ai
|
||||
[/filter_side]
|
||||
[/filter]
|
||||
|
||||
[movement_costs]
|
||||
flat={ON_DIFFICULTY 99 66 33}
|
||||
[/movement_costs]
|
||||
[/modify_unit]
|
||||
|
||||
[event]
|
||||
name=side turn end
|
||||
|
||||
[modify_unit]
|
||||
[filter]
|
||||
side=$side_number
|
||||
canrecruit=yes
|
||||
# Only do this if his side is AI-controlled:
|
||||
[filter_side]
|
||||
controller=ai
|
||||
[/filter_side]
|
||||
[/filter]
|
||||
|
||||
[movement_costs]
|
||||
flat=1
|
||||
[/movement_costs]
|
||||
[/modify_unit]
|
||||
[/event]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=prestart
|
||||
|
||||
#ifdef EASY
|
||||
[terrain]
|
||||
x,y=54,30
|
||||
terrain=Gg^Vh
|
||||
[/terrain]
|
||||
[terrain]
|
||||
x,y=54,31
|
||||
terrain=Gg^Vh
|
||||
[/terrain]
|
||||
[capture_village]
|
||||
side=1
|
||||
x,y=54,30
|
||||
[/capture_village]
|
||||
[capture_village]
|
||||
side=1
|
||||
x,y=54,31
|
||||
[/capture_village]
|
||||
#endif
|
||||
|
||||
# Check if Krash is alive, if yes place him at helm of side 7,
|
||||
# otherwise it's taken over by older lich.
|
||||
{RECALL_KRASH 7}
|
||||
|
@ -386,11 +534,16 @@
|
|||
side=7
|
||||
type=Troll,Troll Whelp,Ogre,Young Ogre,Mage,Red Mage,Gryphon
|
||||
[/allow_recruit]
|
||||
# dwarves also get gold if no krash, since it's much harder to defend them
|
||||
# for Ro'Arthian:
|
||||
[gold]
|
||||
side=7,8
|
||||
amount=400
|
||||
side=7
|
||||
amount={ON_DIFFICULTY 650 525 400}
|
||||
[/gold]
|
||||
# dwarves also get gold if no Krash (but less of it, though), since it's harder to defend them
|
||||
[gold]
|
||||
side=8
|
||||
amount={ON_DIFFICULTY 420 410 400}
|
||||
[/gold] #
|
||||
[modify_side]
|
||||
side=7
|
||||
side_name= _ "Ro’Arthian"
|
||||
|
@ -470,10 +623,16 @@
|
|||
side=9
|
||||
type=Troll,Troll Whelp,Ogre,Young Ogre,Mage,Red Mage,Gryphon
|
||||
[/allow_recruit]
|
||||
# for Ro'Sothian:
|
||||
[gold]
|
||||
side=8,9
|
||||
amount=400
|
||||
side=9
|
||||
amount={ON_DIFFICULTY 650 525 400}
|
||||
[/gold]
|
||||
# dwarves also get gold if no Eryssa (but less of it, though), since it's harder to defend them
|
||||
[gold]
|
||||
side=8
|
||||
amount={ON_DIFFICULTY 420 410 400}
|
||||
[/gold] #
|
||||
[modify_side]
|
||||
side=9
|
||||
side_name= _ "Ro’Sothian"
|
||||
|
@ -957,6 +1116,7 @@
|
|||
message= _ "FOR HIDEL!!"
|
||||
[/message]
|
||||
[message]
|
||||
# TODO: Make sure Supporter isn't one of the characters who already said something:
|
||||
role=Supporter
|
||||
message= _ "FOR DWARVEN DOORS!!"
|
||||
[/message]
|
||||
|
@ -982,7 +1142,7 @@
|
|||
message= _ "Yeah. Obviously this is going to take some time. If necessary we can sit tight in our fortifications and besiege them until they starve!"
|
||||
[/message]
|
||||
[/event]
|
||||
# Rakashas death
|
||||
# Rakshas death
|
||||
[event]
|
||||
name=last breath
|
||||
[filter]
|
||||
|
|
|
@ -45,6 +45,28 @@
|
|||
[/if]
|
||||
#enddef
|
||||
|
||||
#define RECALL_LOYAL_DWARF
|
||||
[recall]
|
||||
race=dwarf
|
||||
[filter_wml]
|
||||
upkeep="loyal"
|
||||
[or]
|
||||
[modifications]
|
||||
[trait]
|
||||
id=loyal
|
||||
[or]
|
||||
[effect]
|
||||
apply_to=overlay
|
||||
add="misc/loyal-icon.png"
|
||||
[/effect]
|
||||
[/or]
|
||||
[/trait]
|
||||
[/modifications]
|
||||
[/or]
|
||||
[/filter_wml]
|
||||
[/recall]
|
||||
#enddef
|
||||
|
||||
#define RECALL_KRASH SIDE
|
||||
# In S11a-13a Krash starts as the leader of a side if he is alive. He is not
|
||||
# defined in the corresponding side tags for these scenarios, since if he is,
|
||||
|
|
1
utils/wesnoth-map-diff/images/.gitignore
vendored
Normal file
1
utils/wesnoth-map-diff/images/.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
!.
|
BIN
utils/wesnoth-map-diff/images/Xo.png
Normal file
BIN
utils/wesnoth-map-diff/images/Xo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.4 KiB |
|
@ -37,7 +37,21 @@ const readTerrainImages = async () => {
|
|||
const promises = Object
|
||||
.entries(dictTerrainType2ImagesPath)
|
||||
.map(async ([terrainType, imageName]) => {
|
||||
const image = await Jimp.read(`${imageBasepath}/${imageName}.png`)
|
||||
let image = await Jimp.read(`${imageBasepath}/${imageName}.png`)
|
||||
// Try a number of other places, as well:
|
||||
if (!image) {
|
||||
image = await Jimp.read(`../../../images/${imageName}.png`)
|
||||
}
|
||||
if (!image) {
|
||||
image = await Jimp.read(`./images/${imageName}.png`)
|
||||
}
|
||||
if (!image) {
|
||||
image = await Jimp.read(`../../../attic/${imageName}.png`)
|
||||
}
|
||||
if (!image) {
|
||||
// If nothing worked, provide a sensible default as a fallback:
|
||||
image = await Jimp.read(`../../../data/core/images/misc/blank-hex.png`)
|
||||
}
|
||||
return [terrainType, image]
|
||||
})
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue