summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--events.txt136
-rw-r--r--play.js4
-rw-r--r--rules.js134
3 files changed, 139 insertions, 135 deletions
diff --git a/events.txt b/events.txt
index 392ca53..93f51ff 100644
--- a/events.txt
+++ b/events.txt
@@ -14,9 +14,9 @@ EVENT 1
SHADED 1
stay_eligible
current DS
- prompt "Select a Space to move in Units and Attack for free."
+ prompt "Select a space to move Units into and Attack for free."
space 1 s
- prompt `Move up to ${8-game.vm.pl.length} units in the selected space.`
+ prompt `Move up to ${8-game.vm.pl.length} units into the selected space.`
mark_space
move_to (game.vm.s) (is_ds_unit(p) && is_piece_on_map(p) && !is_piece_in_event_space(p) && game.vm.pl.length < 8)
if (has_piece_faction(game.vm.s, BK) || has_piece_faction(game.vm.s, VE))
@@ -26,7 +26,7 @@ SHADED 1
log `Opposing Units to Rebelling in ${SPACE_NAME[game.vm.s]}`
endif
endspace
- prompt "Free Attack in selected Space."
+ prompt "Free Attack in selected space."
space 1 (s === game.vm.m[0] && can_attack_in_space(s))
free_attack
endspace
@@ -46,17 +46,17 @@ EVENT 2
SHADED 2
stay_eligible
current DS
- prompt "Attack for free in Mountain Passes or Punjab"
+ prompt "Attack in Mountain Passes or Punjab for free."
space 1 ((s === S_MOUNTAIN_PASSES || s === S_PUNJAB) && has_ds_unit(s) && has_piece(s, MI, TROOPS))
free_attack
endspace
- prompt "Choose a Space with which to rearrange Units with Mountain Passes and Punjab"
+ prompt "Rearrange up to 6 Units among Mountain Passes and Punjab and one other space."
space 1 (s !== S_MOUNTAIN_PASSES && s !== S_PUNJAB)
mark_space
endspace
- prompt `Move up to ${6-game.vm.pp.length} Units between the selected Spaces.`
+ prompt `Move up to ${6-game.vm.pp.length} Units.`
piece_opt 6 ([S_MOUNTAIN_PASSES, S_PUNJAB, game.vm.m[0]].includes(piece_space(p)) && is_ds_unit(p))
- prompt `Move up to ${6-game.vm.pp.length+1} Units between the selected Spaces.`
+ prompt `Move up to ${6-game.vm.pp.length+1} Units.`
space 1 ((s === S_MOUNTAIN_PASSES || s === S_PUNJAB || s === game.vm.m[0]) && s !== piece_space(game.vm.p))
move
endspace
@@ -64,7 +64,7 @@ SHADED 2
EVENT 3
current REBEL_FACTIONS
- prompt "Free Rally and gain 2 Resources in each Province adjacent to Warangal with your presence."
+ prompt "Free Rally and gain 2 Resources in each Province adjacent to Warangal where you have a piece."
space_opt all (is_adjacent_to_city(C_WARANGAL, s) && has_piece_faction(s, game.current))
free_rally
resources (game.current) 2
@@ -72,13 +72,13 @@ EVENT 3
SHADED 3
current DS
- prompt "In each Province adjacent to Warangal with you presence, steal 2 Resources from each other Faction present."
+ prompt "In each Province adjacent to Warangal where you have a piece, steal 2 Resources from each other Faction present."
space_opt all (is_adjacent_to_city(C_WARANGAL, s) && has_piece_faction(s, DS) && has_piece_enemy_faction(s, DS))
if has_piece_faction(game.vm.s, BK)
- steal DS BK 2
+ steal DS BK 2
endif
if has_piece_faction(game.vm.s, VE)
- steal DS VE 2
+ steal DS VE 2
endif
endspace
@@ -93,7 +93,7 @@ EVENT 4
SHADED 4
stay_eligible
current DS
- prompt "Govern, without location requirements."
+ prompt "Govern ignoring location requirements."
govern
EVENT 5
@@ -111,7 +111,7 @@ EVENT 5
SHADED 5
stay_eligible
current DS
- prompt "Replace up to 3 opposing Units adjacent to Chittor."
+ prompt "Replace up to 3 opposing Units adjacent to Chittor with Troops."
piece_undo_opt 3 (is_adjacent_to_city(C_CHITTOR, piece_space(p)) && is_enemy_unit(p))
replace DS TROOPS
endpiece
@@ -123,7 +123,7 @@ SHADED 5
EVENT 6
stay_eligible
current REBEL_FACTIONS
- prompt "Select a Province adjacent to Warangal to remove a Tributary marker."
+ prompt `Remove a Tributary marker in one Province adjacent to Warangal.`
space_opt 1 (is_adjacent_to_city(C_WARANGAL, s))
remove_tributary
prompt `Place up to 2 ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]}.`
@@ -133,7 +133,7 @@ EVENT 6
SHADED 6
stay_eligible
current DS
- prompt "Select four contiguous spaces, finishing adjacent to Warangal"
+ prompt "Execute a Campaign ending in a Province adjacent to Warangal."
shaded_6
shaded_6_2
@@ -158,9 +158,9 @@ SHADED 7
EVENT 8
current REBEL_FACTIONS
- prompt `In each Province, replace a Delhi Sultanate Unit with a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]}.`
+ prompt `In each Province adjacent to Devagiri and/or Gulbarga, replace a Delhi Sultanate Unit with a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]}.`
space_opt all (is_adjacent_to_city(C_DEVAGIRI, s) || is_adjacent_to_city(C_GULBARGA, s)) && has_ds_unit(s)
- prompt `In each Province, replace a Delhi Sultanate Unit with a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]}.`
+ prompt `Peplace a Delhi Sultanate Unit with a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]}.`
piece 1 is_ds_unit(p) && is_piece_in_event_space(p)
replace (game.current) ELITE
endpiece
@@ -168,7 +168,7 @@ EVENT 8
SHADED 8
current DS
- prompt `In each Province, free Govern and then add a Troop.`
+ prompt `In each Province adjacent to Devagiri and/or Gulbarga, Govern for free ignoring location requirements and place a Troop.`
space_opt all (is_adjacent_to_city(C_DEVAGIRI, s) || is_adjacent_to_city(C_GULBARGA, s)) && can_govern_in_space(s)
free_govern_in_space
place_opt 1 DS TROOPS
@@ -176,13 +176,13 @@ SHADED 8
EVENT 9
current VE
- prompt "Compel in a Province adjacent to Warangal that you do not control and then Build there."
+ prompt "Compel in a Province adjacent to Warangal that you do not control, then Build there."
add_influence VE
space 1 (is_adjacent_to_city(C_WARANGAL, s) && !is_faction_control(s, game.current) && can_compel_in_space(s))
free_compel
mark_space
endspace
- prompt `Build in the same Province.`
+ prompt `Build in ${SPACE_NAME[game.vm.m[0]]}.`
space_opt 1 (s === game.vm.m[0] && can_place_piece(s, game.current, DISC))
free_build
endspace
@@ -199,9 +199,9 @@ SHADED 9
EVENT 10
stay_eligible
- prompt "Move up to 4 Delhi Sultanate Units into adjacent Provinces."
+ prompt "Move up to 4 Delhi Sultanate Units to adjacent Provinces."
piece_undo_opt 4 is_ds_unit(p)
- prompt "Move Delhi Sultanate Unit into an adjacent space."
+ prompt "Move Delhi Sultanate Unit to an adjacent Province."
space_no_undo 1 is_adjacent(s, piece_space(game.vm.p))
move
endspace
@@ -211,14 +211,14 @@ EVENT 10
SHADED 10
stay_eligible
current DS
- prompt "Move any Qasbah to Spaces containing Governors."
+ prompt "Move any Qasbahs to spaces containing Governors."
piece_undo_opt all is_qasbah(p)
- prompt "Move any Qasbah to Spaces containing Governors."
+ prompt "Move Qasbah to any space containing a Governor."
space 1 has_governor(s) && !has_qasbah(s)
move
endspace
endpiece
- prompt "Add up to 2 Troops in each Space with a Qasbah."
+ prompt "Add up to 2 Troops in each space with a Qasbah."
space_opt all has_qasbah(s)
place_undo_opt 2 DS TROOPS
endspace
@@ -233,7 +233,7 @@ EVENT 11
SHADED 11
stay_eligible
current DS
- prompt "Remove 4 Mongol Invaders."
+ prompt "Remove up to 4 Mongol Invaders."
piece_undo_opt 4 is_mongol_invader(p)
summary_remove
endpiece
@@ -242,7 +242,7 @@ SHADED 11
EVENT 12
current REBEL_FACTIONS
gain_cavalry 2
- prompt "Remove 4 Delhi Sultantes pieces from Provinces adjacent to Warangal."
+ prompt "Remove up to 4 Delhi Sultanate pieces from Provinces adjacent to Warangal."
piece_undo_opt 4 (is_adjacent_to_city(C_WARANGAL, piece_space(p)) && piece_faction(p) === DS)
summary_remove
endpiece
@@ -263,7 +263,7 @@ SHADED 12
asm (game.vm.count += 1)
endspace
endrepeat
- prompt "Make a free Attack in a Province adjacent to Warangal."
+ prompt "Execute a free Limited Attack adjacent to Warangal."
space 1 (is_adjacent_to_city(C_WARANGAL, s) && can_attack_in_space(s))
free_attack
endspace
@@ -289,14 +289,14 @@ SHADED 13
endspace
prompt "Select a destination Province for the Rajas."
space 1 (is_adjacent(s, game.vm.m) && has_piece_faction(s, BK))
- prompt "Move any number of Rajas to the adjacent Province."
+ prompt `Move any number of Rajas into `${SPACE_NAME[game.vm.m[0]]}.`
piece_opt all (is_raja(p) && (piece_space(p) === game.vm.m[0]))
move
endpiece
mark_space
endspace
current BK
- prompt "Make a free Attack against the Vijayanagara Empire there."
+ prompt `Attack Vijayanagara Empire in ${SPACE_NAME[game.vm.m[0]]} for free.`
space_opt 1 (game.vm.m[1] === s)
free_attack VE
endspace
@@ -329,14 +329,14 @@ SHADED 14
EVENT 15
stay_eligible
- prompt "Replace Governors with Rebelling Amirs in Provinces adjacent to Devagiri."
+ prompt "Replace any Governors adjacent to Devagiri with Rebelling Amirs."
piece_undo_opt all is_adjacent_to_city(C_DEVAGIRI, piece_space(p)) && is_governor(p)
set_piece_space
mark_space
replace_rebel BK ELITE
set_space -1
endpiece
- prompt "Remove a Tributary marker in a Province."
+ prompt "Remove a Tributary marker in one affected Province."
space_opt 1 is_tributary(s) && set_has(game.vm.m, s)
remove_tributary
endspace
@@ -389,7 +389,7 @@ SHADED 16
EVENT 17
current BK
add_influence BK
- prompt "Remove up to 5 Delhi Sultanate Units from Provinces with you presence."
+ prompt "Remove up to 5 Delhi Sultanate Units from Provinces where you have a piece."
piece_undo_opt 5 is_ds_unit(p) && has_piece_faction(piece_space(p), BK)
summary_remove
endpiece
@@ -398,11 +398,11 @@ EVENT 17
SHADED 17
prompt "Remove a Fort and up to 2 Amirs from one Province."
space_opt 1 has_piece_faction(s, BK)
- prompt "Remove a Fort from selected Province."
+ prompt `Remove a Fort from ${SPACE_NAME[game.vm.s]}.`
piece_undo_opt 1 is_piece_in_event_space(p) && is_fort(p)
remove
endpiece
- prompt "Remove up to 2 Amirs from selected Province."
+ prompt `Remove up to 2 Amirs from ${SPACE_NAME[game.vm.s]}.`
piece_undo_opt 2 is_piece_in_event_space(p) && is_amir(p)
summary_remove
endpiece
@@ -417,7 +417,7 @@ EVENT 18
add_influence BK
endrepeat
else
- log "No Province shared."
+ log "No Province containing both Bahmani and Vijayanagara pieces."
endif
SHADED 18
@@ -454,26 +454,26 @@ SHADED 19
EVENT 20
current REBEL_FACTIONS
add_influence (game.current)
- prompt "In Orissa or an adjacent Province, you may Migrate, Rally and then Build."
+ prompt "In Orissa or an adjacent Province, you may free Migrate, then free Rally, then Build."
space 1 (is_adjacent_to_city(C_WARANGAL, s) || s === S_BENGAL)
mark_space
- prompt "Migrate in selected Province."
+ prompt `Migrate in ${SPACE_NAME[game.vm.s]} for free.`
if (can_migrate_in_space(game.vm.s))
free_migrate
endif
endspace
- prompt "Rally in selected Province."
+ prompt `Rally in ${SPACE_NAME[game.vm.s]} for free.`
space_opt 1 (game.vm.m[0] === s && can_rally_in_space(s))
free_rally
endspace
- prompt "Build in selected Province."
+ prompt `Build in ${SPACE_NAME[game.vm.s]}.`
space_opt 1 (game.vm.m[0] === s && can_build_in_space(s))
free_build
endspace
SHADED 20
current DS
- prompt "In Orissa, remove an enemy Structure, add a Governor, a Qasbah, 2 Troops and a Tributary marker."
+ prompt "In Orissa, remove a Temple/Fort, place a Governor, a Qasbah, up to 2 Troops and a Tributary marker."
space 1 (s === S_ORISSA)
piece_opt 1 ((is_temple(p) || is_fort(p)) && is_piece_in_event_space(p))
remove
@@ -496,15 +496,15 @@ SHADED 21
if (can_campaign())
campaign
endif
- prompt "Govern, Attack or Demand Obedience in selected Province."
- space 1 ([S_MALWA, S_MADHYADESH, S_JAUNPUR, S_GONDWANA].includes(s) && can_govern_attack_demande_in_space(s))
+ prompt `Govern, Attack, or Demand Obedience in a Province adjacent to the Vindhya Range.`
+ space 1 ([S_MALWA, S_MADHYADESH, S_JAUNPUR, S_GONDWANA].includes(s) && can_govern_attack_demand_in_space(s))
govern_attack_demand
endspace
EVENT 22
stay_eligible
current REBEL_FACTIONS
- prompt `Build in any province with a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]}.`
+ prompt `Build in any Province with a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]}.`
space 1 can_build_in_space(s)
free_build
endspace
@@ -516,11 +516,11 @@ SHADED 22
space_opt 1 can_place_piece(s, DS, TROOPS)
place_opt 1 DS TROOPS
endspace
- prompt "Place 2 Troops in one space."
+ prompt "Place up to 2 Troops in a second space."
space_opt 1 can_place_piece(s, DS, TROOPS)
place_opt 2 DS TROOPS
endspace
- prompt "Place 4 Troops in one space."
+ prompt "Place up to 4 Troops in a third space."
space_opt 1 can_place_piece(s, DS, TROOPS)
place_opt 4 DS TROOPS
endspace
@@ -533,7 +533,7 @@ EVENT 23
free_build
log_br
endspace
- prompt "In each Province with a Temple, replace a Unit with a Raja."
+ prompt "Replace a Unit with a Raja in each Province with a Temple."
space_opt all has_temple(s) && has_units_enemy_faction(s)
piece_opt 1 is_enemy_unit(p) && is_piece_in_event_space(p)
replace VE ELITE
@@ -554,13 +554,13 @@ SHADED 23
EVENT 24
stay_eligible
current VE
- prompt "Free Migrate in up to 2 Provinces."
+ prompt "Free Migrate in up to 2 locations."
space_opt 2 can_migrate_in_space(s)
free_migrate
mark_space
endspace
log_br
- prompt "Replace a Unit with a Raja."
+ prompt "Replace a Unit with a Raja in one of the spaces."
clean_p
piece_opt 1 (set_has(game.vm.m, piece_space(p)) && is_enemy_unit(p))
replace (game.current) ELITE
@@ -582,12 +582,12 @@ EVENT 25
SHADED 25
stay_eligible
current DS
- prompt "Place up to 2 Troops in 3 Provinces adjance to Goa or Warangal."
+ prompt "Place up to 2 Troops in 3 Provinces adjacent to Goa or Warangal."
space_opt 3 (is_adjacent_to_city(C_GOA, s) || is_adjacent_to_city(C_WARANGAL, s))
mark_space
place_opt 2 DS TROOPS
endspace
- prompt "Govern in one of the selected Province."
+ prompt "Govern in one of the selected Provinces for free."
space 1 (can_govern_in_space(s) && set_has(game.vm.m, s))
free_govern_in_space
endspace
@@ -599,7 +599,7 @@ EVENT 26
EVENT 27
current BK
add_influence BK
- prompt "Place up to 2 Amirs in Sindh and Gujarat."
+ prompt "Place up to 2 Amirs in each of Sindh and Gujarat."
space_opt all (s === S_GUJARAT || s === S_SINDH) && can_place_piece(s, game.current, ELITE)
place_opt 2 BK ELITE
endspace
@@ -611,7 +611,7 @@ EVENT 27
SHADED 27
current DS
- prompt "Place up to 2 Troops and a Governor in Sindh and Gujarat."
+ prompt "Place up to 2 Troops and a Governor in each of Sindh and Gujarat."
space_opt all (s === S_GUJARAT || s === S_SINDH) && (can_place_piece(s, game.current, ELITE) || can_place_piece(s, game.current, TROOPS))
place_opt 2 DS TROOPS
place_opt 1 DS ELITE
@@ -642,9 +642,9 @@ SHADED 28
stay_eligible
current [DS VE]
if (game.current === DS)
- prompt "In a space with Bahmani presence, you may add 2 Troops and free Attack without defenders."
+ prompt "In a space with a Bahmani piece, place up to 2 Troops and free Attack (defender rolls no dice)."
else
- prompt "In a space with Bahmani presence, you may add 2 Rajas and free Attack without defenders."
+ prompt "In a space with a Bahmani piece, place up to 2 Rajas and free Attack (defender rolls no dice)."
endif
space 1 (has_piece_faction(s, BK))
if (game.current === DS)
@@ -675,31 +675,31 @@ SHADED 29
EVENT 30
stay_eligible
current BK
- prompt "Free Attack in each Province with a fort, without defenders."
+ prompt "Free Attack in each Province with a Fort (defender rolls no dice)."
space_opt 5 (has_fort(s) && can_attack_in_space(s))
free_attack
endspace
SHADED 30
stay_eligible
- prompt "Free limited Attak, without defenders."
+ prompt "Free limited Attack (attacker rolls 4 dice; defender rolls no dice)."
space 1 (can_attack_in_space(s))
free_attack
endspace
EVENT 31
current REBEL_FACTIONS
- prompt "Free Migrate in a Province adjacent to Vijayanagara."
+ prompt "Free Migrate into a Province adjacent to Vijayanagara."
space_opt 1 (is_adjacent_to_city(C_VIJAYANAGARA, s) && can_migrate_in_space(s))
mark_space
free_migrate
clean_p
- prompt "Remove an opposing Unit from the selected Province."
+ prompt `Remove an opposing Unit from ${SPACE_NAME[game.vm.s]}.`
piece 1 (is_piece_in_event_space(p) && is_enemy_unit(p))
remove
endpiece
endspace
- prompt "Free Attack in selected Province."
+ prompt `Free Attack in ${SPACE_NAME[game.vm.s]}.`
space_opt 1 (s === game.vm.m[0] && can_attack_in_space(s))
free_attack
endspace
@@ -735,7 +735,7 @@ SHADED 32
EVENT 33
stay_eligible
current (has_majority_goa())
- prompt "Remove up to 3 Opposing Units adjacent to Goa."
+ prompt "Remove up to 3 opposing Units adjacent to Goa."
piece_opt 3 (is_adjacent_to_city(C_GOA, piece_space(p)) && is_enemy_piece(p))
summary_remove
endpiece
@@ -764,7 +764,7 @@ EVENT 35
stay_eligible
current REBEL_FACTIONS
add_influence (game.current)
- prompt `Place a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]} in up to 3 Provinces with ${PIECE_FACTION_TYPE_NAME[other_rebel_faction(game.current)][ELITE]}.`
+ prompt `Place a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]} in up to 3 Provinces with a ${PIECE_FACTION_TYPE_NAME[other_rebel_faction(game.current)][ELITE]}.`
space_opt 3 has_piece(s, other_rebel_faction(game.current), ELITE) && can_place_piece(s, game.current, ELITE)
auto_place (game.current) ELITE
endspace
@@ -802,7 +802,7 @@ SUCC 0
log_h2 DS "The Sultanate reimposes its dominance."
campaign
force_current BK
- prompt "Gain Cavalry token equal to Influence and Forts."
+ prompt "Gain Cavalry tokens equal to Influence and Forts."
log_h2 BK "Military labor market thrives"
gain_cavalry (game.inf[BK] + count_pieces_on_map(BK, DISC))
force_current VE
@@ -851,23 +851,23 @@ SUCC 4
SUCC 5
force_current DS
- prompt "Invaders are attacking in the Mountain Passes!"
+ prompt "Mongols attack the Mountain Passes!"
space 1 (s === S_MOUNTAIN_PASSES && has_ds_unit(s) && has_mi_unit(s))
free_attack DS
endspace
- prompt "Invaders are moving towards Punjab."
+ prompt "Mongols move to Punjab."
space 1 (s === S_PUNJAB)
timurid_advance S_MOUNTAIN_PASSES S_PUNJAB
endspace
- prompt "Invaders are Attacking in Punjab!"
+ prompt "Mongols attack Punjab!"
space 1 (s === S_PUNJAB && has_ds_unit(s) && has_mi_unit(s))
free_attack DS
endspace
- prompt "Invaders are moving towards Delhi."
+ prompt "Mongols move to Delhi."
space 1 (s === S_DELHI)
timurid_advance S_PUNJAB S_DELHI
endspace
- prompt "Invaders are laying a siege to Delhi!"
+ prompt "Mongols lay siege to Delhi!"
space 1 (s === S_DELHI && has_ds_unit(s) && has_mi_unit(s))
while (has_ds_unit(game.vm.s) && has_mi_unit(game.vm.s))
free_attack DS
diff --git a/play.js b/play.js
index 8de43c3..57b204d 100644
--- a/play.js
+++ b/play.js
@@ -1395,6 +1395,10 @@ const F_MI = '<img class="f" src="images/Flags_MI.png">'
const I_BK = '<img class="i" src="images/Influence_BK.png">'
const I_VE = '<img class="i" src="images/Influence_VE.png">'
+function on_prompt(text) {
+ return text.replaceAll("a Amir", "an Amir")
+}
+
function on_log(text) {
let p = document.createElement("div")
let sub_text = ""
diff --git a/rules.js b/rules.js
index e1dbe25..2a6e2f7 100644
--- a/rules.js
+++ b/rules.js
@@ -5667,7 +5667,7 @@ states.vm_conspire_trade = {
}
}
-function can_govern_attack_demande_in_space(s) {
+function can_govern_attack_demand_in_space(s) {
if (
(can_govern() && can_govern_in_space(s)) ||
(can_attack() && can_attack_in_space(s)) ||
@@ -5935,9 +5935,9 @@ CODE[1 * 2 + 0] = [
CODE[1 * 2 + 1] = [
[ vm_stay_eligible ],
[ vm_current, DS ],
- [ vm_prompt, "Select a Space to move in Units and Attack for free." ],
+ [ vm_prompt, "Select a space to move Units into and Attack for free." ],
[ vm_space, true, 1, 1, (s)=>s ],
- [ vm_prompt, ()=>`Move up to ${8-game.vm.pl.length} units in the selected space.` ],
+ [ vm_prompt, ()=>`Move up to ${8-game.vm.pl.length} units into the selected space.` ],
[ vm_mark_space ],
[ vm_move_to, ()=>(game.vm.s), (p,s)=>(is_ds_unit(p) && is_piece_on_map(p) && !is_piece_in_event_space(p) && game.vm.pl.length < 8) ],
[ vm_if, ()=>(has_piece_faction(game.vm.s, BK) || has_piece_faction(game.vm.s, VE)) ],
@@ -5947,7 +5947,7 @@ CODE[1 * 2 + 1] = [
[ vm_log, ()=>`Opposing Units to Rebelling in ${SPACE_NAME[game.vm.s]}` ],
[ vm_endif ],
[ vm_endspace ],
- [ vm_prompt, "Free Attack in selected Space." ],
+ [ vm_prompt, "Free Attack in selected space." ],
[ vm_space, true, 1, 1, (s)=>(s === game.vm.m[0] && can_attack_in_space(s)) ],
[ vm_free_attack ],
[ vm_endspace ],
@@ -5972,17 +5972,17 @@ CODE[2 * 2 + 0] = [
CODE[2 * 2 + 1] = [
[ vm_stay_eligible ],
[ vm_current, DS ],
- [ vm_prompt, "Attack for free in Mountain Passes or Punjab" ],
+ [ vm_prompt, "Attack in Mountain Passes or Punjab for free." ],
[ vm_space, true, 1, 1, (s)=>((s === S_MOUNTAIN_PASSES || s === S_PUNJAB) && has_ds_unit(s) && has_piece(s, MI, TROOPS)) ],
[ vm_free_attack ],
[ vm_endspace ],
- [ vm_prompt, "Choose a Space with which to rearrange Units with Mountain Passes and Punjab" ],
+ [ vm_prompt, "Rearrange up to 6 Units among Mountain Passes and Punjab and one other space." ],
[ vm_space, true, 1, 1, (s)=>(s !== S_MOUNTAIN_PASSES && s !== S_PUNJAB) ],
[ vm_mark_space ],
[ vm_endspace ],
- [ vm_prompt, ()=>`Move up to ${6-game.vm.pp.length} Units between the selected Spaces.` ],
+ [ vm_prompt, ()=>`Move up to ${6-game.vm.pp.length} Units.` ],
[ vm_piece, false, 0, 6, (p,s)=>([S_MOUNTAIN_PASSES, S_PUNJAB, game.vm.m[0]].includes(piece_space(p)) && is_ds_unit(p)) ],
- [ vm_prompt, ()=>`Move up to ${6-game.vm.pp.length+1} Units between the selected Spaces.` ],
+ [ vm_prompt, ()=>`Move up to ${6-game.vm.pp.length+1} Units.` ],
[ vm_space, true, 1, 1, (s)=>((s === S_MOUNTAIN_PASSES || s === S_PUNJAB || s === game.vm.m[0]) && s !== piece_space(game.vm.p)) ],
[ vm_move ],
[ vm_endspace ],
@@ -5993,7 +5993,7 @@ CODE[2 * 2 + 1] = [
// EVENT 3
CODE[3 * 2 + 0] = [
[ vm_current, REBEL_FACTIONS ],
- [ vm_prompt, "Free Rally and gain 2 Resources in each Province adjacent to Warangal with your presence." ],
+ [ vm_prompt, "Free Rally and gain 2 Resources in each Province adjacent to Warangal where you have a piece." ],
[ vm_space, true, 0, 999, (s)=>(is_adjacent_to_city(C_WARANGAL, s) && has_piece_faction(s, game.current)) ],
[ vm_free_rally ],
[ vm_resources, false, ()=>(game.current), 2 ],
@@ -6004,7 +6004,7 @@ CODE[3 * 2 + 0] = [
// SHADED 3
CODE[3 * 2 + 1] = [
[ vm_current, DS ],
- [ vm_prompt, "In each Province adjacent to Warangal with you presence, steal 2 Resources from each other Faction present." ],
+ [ vm_prompt, "In each Province adjacent to Warangal where you have a piece, steal 2 Resources from each other Faction present." ],
[ vm_space, true, 0, 999, (s)=>(is_adjacent_to_city(C_WARANGAL, s) && has_piece_faction(s, DS) && has_piece_enemy_faction(s, DS)) ],
[ vm_if, ()=>has_piece_faction(game.vm.s, BK) ],
[ vm_steal, DS, BK, 2 ],
@@ -6031,7 +6031,7 @@ CODE[4 * 2 + 0] = [
CODE[4 * 2 + 1] = [
[ vm_stay_eligible ],
[ vm_current, DS ],
- [ vm_prompt, "Govern, without location requirements." ],
+ [ vm_prompt, "Govern ignoring location requirements." ],
[ vm_govern ],
[ vm_return ],
]
@@ -6055,7 +6055,7 @@ CODE[5 * 2 + 0] = [
CODE[5 * 2 + 1] = [
[ vm_stay_eligible ],
[ vm_current, DS ],
- [ vm_prompt, "Replace up to 3 opposing Units adjacent to Chittor." ],
+ [ vm_prompt, "Replace up to 3 opposing Units adjacent to Chittor with Troops." ],
[ vm_piece, true, 0, 3, (p,s)=>(is_adjacent_to_city(C_CHITTOR, piece_space(p)) && is_enemy_unit(p)) ],
[ vm_replace, DS, TROOPS, false, false ],
[ vm_endpiece ],
@@ -6070,7 +6070,7 @@ CODE[5 * 2 + 1] = [
CODE[6 * 2 + 0] = [
[ vm_stay_eligible ],
[ vm_current, REBEL_FACTIONS ],
- [ vm_prompt, "Select a Province adjacent to Warangal to remove a Tributary marker." ],
+ [ vm_prompt, ()=>`Remove a Tributary marker in one Province adjacent to Warangal.` ],
[ vm_space, true, 0, 1, (s)=>(is_adjacent_to_city(C_WARANGAL, s)) ],
[ vm_remove_tributary ],
[ vm_prompt, ()=>`Place up to 2 ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]}.` ],
@@ -6083,7 +6083,7 @@ CODE[6 * 2 + 0] = [
CODE[6 * 2 + 1] = [
[ vm_stay_eligible ],
[ vm_current, DS ],
- [ vm_prompt, "Select four contiguous spaces, finishing adjacent to Warangal" ],
+ [ vm_prompt, "Execute a Campaign ending in a Province adjacent to Warangal." ],
[ vm_shaded_6 ],
[ vm_shaded_6_2 ],
[ vm_return ],
@@ -6117,9 +6117,9 @@ CODE[7 * 2 + 1] = [
// EVENT 8
CODE[8 * 2 + 0] = [
[ vm_current, REBEL_FACTIONS ],
- [ vm_prompt, ()=>`In each Province, replace a Delhi Sultanate Unit with a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]}.` ],
+ [ vm_prompt, ()=>`In each Province adjacent to Devagiri and/or Gulbarga, replace a Delhi Sultanate Unit with a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]}.` ],
[ vm_space, true, 0, 999, (s)=>(is_adjacent_to_city(C_DEVAGIRI, s) || is_adjacent_to_city(C_GULBARGA, s)) && has_ds_unit(s) ],
- [ vm_prompt, ()=>`In each Province, replace a Delhi Sultanate Unit with a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]}.` ],
+ [ vm_prompt, ()=>`Peplace a Delhi Sultanate Unit with a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]}.` ],
[ vm_piece, false, 1, 1, (p,s)=>is_ds_unit(p) && is_piece_in_event_space(p) ],
[ vm_replace, ()=>(game.current), ELITE, false, false ],
[ vm_endpiece ],
@@ -6130,7 +6130,7 @@ CODE[8 * 2 + 0] = [
// SHADED 8
CODE[8 * 2 + 1] = [
[ vm_current, DS ],
- [ vm_prompt, ()=>`In each Province, free Govern and then add a Troop.` ],
+ [ vm_prompt, ()=>`In each Province adjacent to Devagiri and/or Gulbarga, Govern for free ignoring location requirements and place a Troop.` ],
[ vm_space, true, 0, 999, (s)=>(is_adjacent_to_city(C_DEVAGIRI, s) || is_adjacent_to_city(C_GULBARGA, s)) && can_govern_in_space(s) ],
[ vm_free_govern_in_space ],
[ vm_place, false, 1, 1, DS, TROOPS ],
@@ -6141,13 +6141,13 @@ CODE[8 * 2 + 1] = [
// EVENT 9
CODE[9 * 2 + 0] = [
[ vm_current, VE ],
- [ vm_prompt, "Compel in a Province adjacent to Warangal that you do not control and then Build there." ],
+ [ vm_prompt, "Compel in a Province adjacent to Warangal that you do not control, then Build there." ],
[ vm_add_influence, VE ],
[ vm_space, true, 1, 1, (s)=>(is_adjacent_to_city(C_WARANGAL, s) && !is_faction_control(s, game.current) && can_compel_in_space(s)) ],
[ vm_free_compel ],
[ vm_mark_space ],
[ vm_endspace ],
- [ vm_prompt, ()=>`Build in the same Province.` ],
+ [ vm_prompt, ()=>`Build in ${SPACE_NAME[game.vm.m[0]]}.` ],
[ vm_space, true, 0, 1, (s)=>(s === game.vm.m[0] && can_place_piece(s, game.current, DISC)) ],
[ vm_free_build ],
[ vm_endspace ],
@@ -6170,9 +6170,9 @@ CODE[9 * 2 + 1] = [
// EVENT 10
CODE[10 * 2 + 0] = [
[ vm_stay_eligible ],
- [ vm_prompt, "Move up to 4 Delhi Sultanate Units into adjacent Provinces." ],
+ [ vm_prompt, "Move up to 4 Delhi Sultanate Units to adjacent Provinces." ],
[ vm_piece, true, 0, 4, (p,s)=>is_ds_unit(p) ],
- [ vm_prompt, "Move Delhi Sultanate Unit into an adjacent space." ],
+ [ vm_prompt, "Move Delhi Sultanate Unit to an adjacent Province." ],
[ vm_space, false, 1, 1, (s)=>is_adjacent(s, piece_space(game.vm.p)) ],
[ vm_move ],
[ vm_endspace ],
@@ -6185,14 +6185,14 @@ CODE[10 * 2 + 0] = [
CODE[10 * 2 + 1] = [
[ vm_stay_eligible ],
[ vm_current, DS ],
- [ vm_prompt, "Move any Qasbah to Spaces containing Governors." ],
+ [ vm_prompt, "Move any Qasbahs to spaces containing Governors." ],
[ vm_piece, true, 0, 999, (p,s)=>is_qasbah(p) ],
- [ vm_prompt, "Move any Qasbah to Spaces containing Governors." ],
+ [ vm_prompt, "Move Qasbah to any space containing a Governor." ],
[ vm_space, true, 1, 1, (s)=>has_governor(s) && !has_qasbah(s) ],
[ vm_move ],
[ vm_endspace ],
[ vm_endpiece ],
- [ vm_prompt, "Add up to 2 Troops in each Space with a Qasbah." ],
+ [ vm_prompt, "Add up to 2 Troops in each space with a Qasbah." ],
[ vm_space, true, 0, 999, (s)=>has_qasbah(s) ],
[ vm_place, true, 1, 2, DS, TROOPS ],
[ vm_endspace ],
@@ -6213,7 +6213,7 @@ CODE[11 * 2 + 0] = [
CODE[11 * 2 + 1] = [
[ vm_stay_eligible ],
[ vm_current, DS ],
- [ vm_prompt, "Remove 4 Mongol Invaders." ],
+ [ vm_prompt, "Remove up to 4 Mongol Invaders." ],
[ vm_piece, true, 0, 4, (p,s)=>is_mongol_invader(p) ],
[ vm_summary_remove ],
[ vm_endpiece ],
@@ -6225,7 +6225,7 @@ CODE[11 * 2 + 1] = [
CODE[12 * 2 + 0] = [
[ vm_current, REBEL_FACTIONS ],
[ vm_gain_cavalry, ()=>2 ],
- [ vm_prompt, "Remove 4 Delhi Sultantes pieces from Provinces adjacent to Warangal." ],
+ [ vm_prompt, "Remove up to 4 Delhi Sultanate pieces from Provinces adjacent to Warangal." ],
[ vm_piece, true, 0, 4, (p,s)=>(is_adjacent_to_city(C_WARANGAL, piece_space(p)) && piece_faction(p) === DS) ],
[ vm_summary_remove ],
[ vm_endpiece ],
@@ -6249,7 +6249,7 @@ CODE[12 * 2 + 1] = [
[ vm_asm, ()=>(game.vm.count += 1) ],
[ vm_endspace ],
[ vm_endrepeat ],
- [ vm_prompt, "Make a free Attack in a Province adjacent to Warangal." ],
+ [ vm_prompt, "Execute a free Limited Attack adjacent to Warangal." ],
[ vm_space, true, 1, 1, (s)=>(is_adjacent_to_city(C_WARANGAL, s) && can_attack_in_space(s)) ],
[ vm_free_attack ],
[ vm_endspace ],
@@ -6281,14 +6281,14 @@ CODE[13 * 2 + 1] = [
[ vm_endspace ],
[ vm_prompt, "Select a destination Province for the Rajas." ],
[ vm_space, true, 1, 1, (s)=>(is_adjacent(s, game.vm.m) && has_piece_faction(s, BK)) ],
- [ vm_prompt, "Move any number of Rajas to the adjacent Province." ],
+ [ vm_prompt, ()=>`Move any number of Rajas into `${SPACE_NAME[game.vm.m[0]]}.` ],
[ vm_piece, false, 0, 999, (p,s)=>(is_raja(p) && (piece_space(p) === game.vm.m[0])) ],
[ vm_move ],
[ vm_endpiece ],
[ vm_mark_space ],
[ vm_endspace ],
[ vm_current, BK ],
- [ vm_prompt, "Make a free Attack against the Vijayanagara Empire there." ],
+ [ vm_prompt, ()=>`Attack Vijayanagara Empire in ${SPACE_NAME[game.vm.m[0]]} for free.` ],
[ vm_space, true, 0, 1, (s)=>(game.vm.m[1] === s) ],
[ vm_free_attack, VE ],
[ vm_endspace ],
@@ -6330,14 +6330,14 @@ CODE[14 * 2 + 1] = [
// EVENT 15
CODE[15 * 2 + 0] = [
[ vm_stay_eligible ],
- [ vm_prompt, "Replace Governors with Rebelling Amirs in Provinces adjacent to Devagiri." ],
+ [ vm_prompt, "Replace any Governors adjacent to Devagiri with Rebelling Amirs." ],
[ vm_piece, true, 0, 999, (p,s)=>is_adjacent_to_city(C_DEVAGIRI, piece_space(p)) && is_governor(p) ],
[ vm_set_piece_space ],
[ vm_mark_space ],
[ vm_replace, BK, ELITE, true, false ],
[ vm_set_space, -1 ],
[ vm_endpiece ],
- [ vm_prompt, "Remove a Tributary marker in a Province." ],
+ [ vm_prompt, "Remove a Tributary marker in one affected Province." ],
[ vm_space, true, 0, 1, (s)=>is_tributary(s) && set_has(game.vm.m, s) ],
[ vm_remove_tributary ],
[ vm_endspace ],
@@ -6402,7 +6402,7 @@ CODE[16 * 2 + 1] = [
CODE[17 * 2 + 0] = [
[ vm_current, BK ],
[ vm_add_influence, BK ],
- [ vm_prompt, "Remove up to 5 Delhi Sultanate Units from Provinces with you presence." ],
+ [ vm_prompt, "Remove up to 5 Delhi Sultanate Units from Provinces where you have a piece." ],
[ vm_piece, true, 0, 5, (p,s)=>is_ds_unit(p) && has_piece_faction(piece_space(p), BK) ],
[ vm_summary_remove ],
[ vm_endpiece ],
@@ -6414,11 +6414,11 @@ CODE[17 * 2 + 0] = [
CODE[17 * 2 + 1] = [
[ vm_prompt, "Remove a Fort and up to 2 Amirs from one Province." ],
[ vm_space, true, 0, 1, (s)=>has_piece_faction(s, BK) ],
- [ vm_prompt, "Remove a Fort from selected Province." ],
+ [ vm_prompt, ()=>`Remove a Fort from ${SPACE_NAME[game.vm.s]}.` ],
[ vm_piece, true, 0, 1, (p,s)=>is_piece_in_event_space(p) && is_fort(p) ],
[ vm_remove ],
[ vm_endpiece ],
- [ vm_prompt, "Remove up to 2 Amirs from selected Province." ],
+ [ vm_prompt, ()=>`Remove up to 2 Amirs from ${SPACE_NAME[game.vm.s]}.` ],
[ vm_piece, true, 0, 2, (p,s)=>is_piece_in_event_space(p) && is_amir(p) ],
[ vm_summary_remove ],
[ vm_endpiece ],
@@ -6436,7 +6436,7 @@ CODE[18 * 2 + 0] = [
[ vm_add_influence, BK ],
[ vm_endrepeat ],
[ vm_else ],
- [ vm_log, "No Province shared." ],
+ [ vm_log, "No Province containing both Bahmani and Vijayanagara pieces." ],
[ vm_endif ],
[ vm_return ],
]
@@ -6485,19 +6485,19 @@ CODE[19 * 2 + 1] = [
CODE[20 * 2 + 0] = [
[ vm_current, REBEL_FACTIONS ],
[ vm_add_influence, ()=>(game.current) ],
- [ vm_prompt, "In Orissa or an adjacent Province, you may Migrate, Rally and then Build." ],
+ [ vm_prompt, "In Orissa or an adjacent Province, you may free Migrate, then free Rally, then Build." ],
[ vm_space, true, 1, 1, (s)=>(is_adjacent_to_city(C_WARANGAL, s) || s === S_BENGAL) ],
[ vm_mark_space ],
- [ vm_prompt, "Migrate in selected Province." ],
+ [ vm_prompt, ()=>`Migrate in ${SPACE_NAME[game.vm.s]} for free.` ],
[ vm_if, ()=>(can_migrate_in_space(game.vm.s)) ],
[ vm_free_migrate ],
[ vm_endif ],
[ vm_endspace ],
- [ vm_prompt, "Rally in selected Province." ],
+ [ vm_prompt, ()=>`Rally in ${SPACE_NAME[game.vm.s]} for free.` ],
[ vm_space, true, 0, 1, (s)=>(game.vm.m[0] === s && can_rally_in_space(s)) ],
[ vm_free_rally ],
[ vm_endspace ],
- [ vm_prompt, "Build in selected Province." ],
+ [ vm_prompt, ()=>`Build in ${SPACE_NAME[game.vm.s]}.` ],
[ vm_space, true, 0, 1, (s)=>(game.vm.m[0] === s && can_build_in_space(s)) ],
[ vm_free_build ],
[ vm_endspace ],
@@ -6507,7 +6507,7 @@ CODE[20 * 2 + 0] = [
// SHADED 20
CODE[20 * 2 + 1] = [
[ vm_current, DS ],
- [ vm_prompt, "In Orissa, remove an enemy Structure, add a Governor, a Qasbah, 2 Troops and a Tributary marker." ],
+ [ vm_prompt, "In Orissa, remove a Temple/Fort, place a Governor, a Qasbah, up to 2 Troops and a Tributary marker." ],
[ vm_space, true, 1, 1, (s)=>(s === S_ORISSA) ],
[ vm_piece, false, 0, 1, (p,s)=>((is_temple(p) || is_fort(p)) && is_piece_in_event_space(p)) ],
[ vm_remove ],
@@ -6536,8 +6536,8 @@ CODE[21 * 2 + 1] = [
[ vm_if, ()=>(can_campaign()) ],
[ vm_campaign ],
[ vm_endif ],
- [ vm_prompt, "Govern, Attack or Demand Obedience in selected Province." ],
- [ vm_space, true, 1, 1, (s)=>([S_MALWA, S_MADHYADESH, S_JAUNPUR, S_GONDWANA].includes(s) && can_govern_attack_demande_in_space(s)) ],
+ [ vm_prompt, ()=>`Govern, Attack, or Demand Obedience in a Province adjacent to the Vindhya Range.` ],
+ [ vm_space, true, 1, 1, (s)=>([S_MALWA, S_MADHYADESH, S_JAUNPUR, S_GONDWANA].includes(s) && can_govern_attack_demand_in_space(s)) ],
[ vm_govern_attack_demand ],
[ vm_endspace ],
[ vm_return ],
@@ -6547,7 +6547,7 @@ CODE[21 * 2 + 1] = [
CODE[22 * 2 + 0] = [
[ vm_stay_eligible ],
[ vm_current, REBEL_FACTIONS ],
- [ vm_prompt, ()=>`Build in any province with a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]}.` ],
+ [ vm_prompt, ()=>`Build in any Province with a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]}.` ],
[ vm_space, true, 1, 1, (s)=>can_build_in_space(s) ],
[ vm_free_build ],
[ vm_endspace ],
@@ -6562,11 +6562,11 @@ CODE[22 * 2 + 1] = [
[ vm_space, true, 0, 1, (s)=>can_place_piece(s, DS, TROOPS) ],
[ vm_place, false, 1, 1, DS, TROOPS ],
[ vm_endspace ],
- [ vm_prompt, "Place 2 Troops in one space." ],
+ [ vm_prompt, "Place up to 2 Troops in a second space." ],
[ vm_space, true, 0, 1, (s)=>can_place_piece(s, DS, TROOPS) ],
[ vm_place, false, 1, 2, DS, TROOPS ],
[ vm_endspace ],
- [ vm_prompt, "Place 4 Troops in one space." ],
+ [ vm_prompt, "Place up to 4 Troops in a third space." ],
[ vm_space, true, 0, 1, (s)=>can_place_piece(s, DS, TROOPS) ],
[ vm_place, false, 1, 4, DS, TROOPS ],
[ vm_endspace ],
@@ -6582,7 +6582,7 @@ CODE[23 * 2 + 0] = [
[ vm_free_build ],
[ vm_log_br ],
[ vm_endspace ],
- [ vm_prompt, "In each Province with a Temple, replace a Unit with a Raja." ],
+ [ vm_prompt, "Replace a Unit with a Raja in each Province with a Temple." ],
[ vm_space, true, 0, 999, (s)=>has_temple(s) && has_units_enemy_faction(s) ],
[ vm_piece, false, 0, 1, (p,s)=>is_enemy_unit(p) && is_piece_in_event_space(p) ],
[ vm_replace, VE, ELITE, false, false ],
@@ -6609,13 +6609,13 @@ CODE[23 * 2 + 1] = [
CODE[24 * 2 + 0] = [
[ vm_stay_eligible ],
[ vm_current, VE ],
- [ vm_prompt, "Free Migrate in up to 2 Provinces." ],
+ [ vm_prompt, "Free Migrate in up to 2 locations." ],
[ vm_space, true, 0, 2, (s)=>can_migrate_in_space(s) ],
[ vm_free_migrate ],
[ vm_mark_space ],
[ vm_endspace ],
[ vm_log_br ],
- [ vm_prompt, "Replace a Unit with a Raja." ],
+ [ vm_prompt, "Replace a Unit with a Raja in one of the spaces." ],
[ vm_clean_p ],
[ vm_piece, false, 0, 1, (p,s)=>(set_has(game.vm.m, piece_space(p)) && is_enemy_unit(p)) ],
[ vm_replace, ()=>(game.current), ELITE, false, false ],
@@ -6646,12 +6646,12 @@ CODE[25 * 2 + 0] = [
CODE[25 * 2 + 1] = [
[ vm_stay_eligible ],
[ vm_current, DS ],
- [ vm_prompt, "Place up to 2 Troops in 3 Provinces adjance to Goa or Warangal." ],
+ [ vm_prompt, "Place up to 2 Troops in 3 Provinces adjacent to Goa or Warangal." ],
[ vm_space, true, 0, 3, (s)=>(is_adjacent_to_city(C_GOA, s) || is_adjacent_to_city(C_WARANGAL, s)) ],
[ vm_mark_space ],
[ vm_place, false, 1, 2, DS, TROOPS ],
[ vm_endspace ],
- [ vm_prompt, "Govern in one of the selected Province." ],
+ [ vm_prompt, "Govern in one of the selected Provinces for free." ],
[ vm_space, true, 1, 1, (s)=>(can_govern_in_space(s) && set_has(game.vm.m, s)) ],
[ vm_free_govern_in_space ],
[ vm_endspace ],
@@ -6669,7 +6669,7 @@ CODE[26 * 2 + 0] = [
CODE[27 * 2 + 0] = [
[ vm_current, BK ],
[ vm_add_influence, BK ],
- [ vm_prompt, "Place up to 2 Amirs in Sindh and Gujarat." ],
+ [ vm_prompt, "Place up to 2 Amirs in each of Sindh and Gujarat." ],
[ vm_space, true, 0, 999, (s)=>(s === S_GUJARAT || s === S_SINDH) && can_place_piece(s, game.current, ELITE) ],
[ vm_place, false, 1, 2, BK, ELITE ],
[ vm_endspace ],
@@ -6684,7 +6684,7 @@ CODE[27 * 2 + 0] = [
// SHADED 27
CODE[27 * 2 + 1] = [
[ vm_current, DS ],
- [ vm_prompt, "Place up to 2 Troops and a Governor in Sindh and Gujarat." ],
+ [ vm_prompt, "Place up to 2 Troops and a Governor in each of Sindh and Gujarat." ],
[ vm_space, true, 0, 999, (s)=>(s === S_GUJARAT || s === S_SINDH) && (can_place_piece(s, game.current, ELITE) || can_place_piece(s, game.current, TROOPS)) ],
[ vm_place, false, 1, 2, DS, TROOPS ],
[ vm_place, false, 1, 1, DS, ELITE ],
@@ -6721,9 +6721,9 @@ CODE[28 * 2 + 1] = [
[ vm_stay_eligible ],
[ vm_current, [DS, VE] ],
[ vm_if, ()=>(game.current === DS) ],
- [ vm_prompt, "In a space with Bahmani presence, you may add 2 Troops and free Attack without defenders." ],
+ [ vm_prompt, "In a space with a Bahmani piece, place up to 2 Troops and free Attack (defender rolls no dice)." ],
[ vm_else ],
- [ vm_prompt, "In a space with Bahmani presence, you may add 2 Rajas and free Attack without defenders." ],
+ [ vm_prompt, "In a space with a Bahmani piece, place up to 2 Rajas and free Attack (defender rolls no dice)." ],
[ vm_endif ],
[ vm_space, true, 1, 1, (s)=>(has_piece_faction(s, BK)) ],
[ vm_if, ()=>(game.current === DS) ],
@@ -6763,7 +6763,7 @@ CODE[29 * 2 + 1] = [
CODE[30 * 2 + 0] = [
[ vm_stay_eligible ],
[ vm_current, BK ],
- [ vm_prompt, "Free Attack in each Province with a fort, without defenders." ],
+ [ vm_prompt, "Free Attack in each Province with a Fort (defender rolls no dice)." ],
[ vm_space, true, 0, 5, (s)=>(has_fort(s) && can_attack_in_space(s)) ],
[ vm_free_attack ],
[ vm_endspace ],
@@ -6773,7 +6773,7 @@ CODE[30 * 2 + 0] = [
// SHADED 30
CODE[30 * 2 + 1] = [
[ vm_stay_eligible ],
- [ vm_prompt, "Free limited Attak, without defenders." ],
+ [ vm_prompt, "Free limited Attack (attacker rolls 4 dice; defender rolls no dice)." ],
[ vm_space, true, 1, 1, (s)=>(can_attack_in_space(s)) ],
[ vm_free_attack ],
[ vm_endspace ],
@@ -6783,17 +6783,17 @@ CODE[30 * 2 + 1] = [
// EVENT 31
CODE[31 * 2 + 0] = [
[ vm_current, REBEL_FACTIONS ],
- [ vm_prompt, "Free Migrate in a Province adjacent to Vijayanagara." ],
+ [ vm_prompt, "Free Migrate into a Province adjacent to Vijayanagara." ],
[ vm_space, true, 0, 1, (s)=>(is_adjacent_to_city(C_VIJAYANAGARA, s) && can_migrate_in_space(s)) ],
[ vm_mark_space ],
[ vm_free_migrate ],
[ vm_clean_p ],
- [ vm_prompt, "Remove an opposing Unit from the selected Province." ],
+ [ vm_prompt, ()=>`Remove an opposing Unit from ${SPACE_NAME[game.vm.s]}.` ],
[ vm_piece, false, 1, 1, (p,s)=>(is_piece_in_event_space(p) && is_enemy_unit(p)) ],
[ vm_remove ],
[ vm_endpiece ],
[ vm_endspace ],
- [ vm_prompt, "Free Attack in selected Province." ],
+ [ vm_prompt, ()=>`Free Attack in ${SPACE_NAME[game.vm.s]}.` ],
[ vm_space, true, 0, 1, (s)=>(s === game.vm.m[0] && can_attack_in_space(s)) ],
[ vm_free_attack ],
[ vm_endspace ],
@@ -6841,7 +6841,7 @@ CODE[32 * 2 + 1] = [
CODE[33 * 2 + 0] = [
[ vm_stay_eligible ],
[ vm_current, ()=>(has_majority_goa()) ],
- [ vm_prompt, "Remove up to 3 Opposing Units adjacent to Goa." ],
+ [ vm_prompt, "Remove up to 3 opposing Units adjacent to Goa." ],
[ vm_piece, false, 0, 3, (p,s)=>(is_adjacent_to_city(C_GOA, piece_space(p)) && is_enemy_piece(p)) ],
[ vm_summary_remove ],
[ vm_endpiece ],
@@ -6882,7 +6882,7 @@ CODE[35 * 2 + 0] = [
[ vm_stay_eligible ],
[ vm_current, REBEL_FACTIONS ],
[ vm_add_influence, ()=>(game.current) ],
- [ vm_prompt, ()=>`Place a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]} in up to 3 Provinces with ${PIECE_FACTION_TYPE_NAME[other_rebel_faction(game.current)][ELITE]}.` ],
+ [ vm_prompt, ()=>`Place a ${PIECE_FACTION_TYPE_NAME[game.current][ELITE]} in up to 3 Provinces with a ${PIECE_FACTION_TYPE_NAME[other_rebel_faction(game.current)][ELITE]}.` ],
[ vm_space, true, 0, 3, (s)=>has_piece(s, other_rebel_faction(game.current), ELITE) && can_place_piece(s, game.current, ELITE) ],
[ vm_auto_place, false, 0, false, ()=>(game.current), ELITE ],
[ vm_endspace ],
@@ -6932,7 +6932,7 @@ CODE[0 * 2 + 74] = [
[ vm_log_h2, DS, "The Sultanate reimposes its dominance." ],
[ vm_campaign ],
[ vm_force_current, BK ],
- [ vm_prompt, "Gain Cavalry token equal to Influence and Forts." ],
+ [ vm_prompt, "Gain Cavalry tokens equal to Influence and Forts." ],
[ vm_log_h2, BK, "Military labor market thrives" ],
[ vm_gain_cavalry, ()=>(game.inf[BK] + count_pieces_on_map(BK, DISC)) ],
[ vm_force_current, VE ],
@@ -6993,23 +6993,23 @@ CODE[4 * 2 + 74] = [
// SUCC 5
CODE[5 * 2 + 74] = [
[ vm_force_current, DS ],
- [ vm_prompt, "Invaders are attacking in the Mountain Passes!" ],
+ [ vm_prompt, "Mongols attack the Mountain Passes!" ],
[ vm_space, true, 1, 1, (s)=>(s === S_MOUNTAIN_PASSES && has_ds_unit(s) && has_mi_unit(s)) ],
[ vm_free_attack, DS ],
[ vm_endspace ],
- [ vm_prompt, "Invaders are moving towards Punjab." ],
+ [ vm_prompt, "Mongols move to Punjab." ],
[ vm_space, true, 1, 1, (s)=>(s === S_PUNJAB) ],
[ vm_timurid_advance, S_MOUNTAIN_PASSES, S_PUNJAB ],
[ vm_endspace ],
- [ vm_prompt, "Invaders are Attacking in Punjab!" ],
+ [ vm_prompt, "Mongols attack Punjab!" ],
[ vm_space, true, 1, 1, (s)=>(s === S_PUNJAB && has_ds_unit(s) && has_mi_unit(s)) ],
[ vm_free_attack, DS ],
[ vm_endspace ],
- [ vm_prompt, "Invaders are moving towards Delhi." ],
+ [ vm_prompt, "Mongols move to Delhi." ],
[ vm_space, true, 1, 1, (s)=>(s === S_DELHI) ],
[ vm_timurid_advance, S_PUNJAB, S_DELHI ],
[ vm_endspace ],
- [ vm_prompt, "Invaders are laying a siege to Delhi!" ],
+ [ vm_prompt, "Mongols lay siege to Delhi!" ],
[ vm_space, true, 1, 1, (s)=>(s === S_DELHI && has_ds_unit(s) && has_mi_unit(s)) ],
[ vm_while, ()=>(has_ds_unit(game.vm.s) && has_mi_unit(game.vm.s)) ],
[ vm_free_attack, DS ],