Identity

WML ID15_A_New_Land
Next scenario16_The_Kalian
Map15_A_New_Land.map, 41 × 42 hexes
TurnsUnlimited until the first death
Automatic enemy victoryDisabled
Carryover20%, with a custom survival-duration bonus
ArchetypeNonlethal survival / diplomatic misunderstanding
Story importanceCritical
WML complexityVery high
AI complexityVery high; custom Lua candidate action
End triggerAny non-protected unit dies

Story and dialogue

After the fleet finally reaches the Great Continent, the refugees land in the middle of an elven–dwarven territorial dispute. The elves accuse dwarven colonists of violating an ancient treaty; Dursil argues that the dwarves have outgrown their northern mines and rejects elven control over southern forest resources.

The arrival of many human ships temporarily unites the continental factions against the refugees. Haldric repeatedly attempts his practiced peace speech, but the situation becomes violent before diplomacy can begin. The first death brings Lady Dionli, who stops the battle, recognizes the newcomers as kin to the earlier Prince of Southbay, orders the dwarves north, and summons Haldric to the Ka’lian.

Dialogue beatFunction
Elven–dwarven treaty disputeIntroduces the continent’s existing political and resource tensions.
Fleet mistaken for invasionPlaces the refugees into conflict without making either local people inherently villainous.
Burin’s realizationReveals that he traveled all the way around the world.
Dionli’s interventionEnds the battle at the first death and redirects the story toward diplomacy.
Typhon’s departureCloses the merfolk escort relationship and changes roster access by difficulty.
Fleet sent back westShows Haldric continuing to search for Green Isle survivors.

Map description

The 41 × 42 coastal map places the refugee landing among ocean, beaches, grassland, forest, villages, roads, hills, mountains, water channels, and three continental keeps. Glimir and Eowarar command elven forces while Dursil commands dwarves. Their shared team makes them temporary allies against Haldric despite their opening argument.

Map systemDesign role
Large coast and visible fleetMakes the locals’ invasion interpretation understandable.
Three continental recruitment centersCreates pressure from distinct elven and dwarven rosters.
Elven villages and forestSupports healers, archers, and woodland fighters.
Dwarven hill and mountain accessSupports guardsmen, fighters, thunderers, and pathfinders.

Objectives and unusual reward model

Success conditionAvoid deaths for as long as possible; the scenario ends when any ordinary unit dies.
DefeatDeath of Haldric, Lady Jessene, or Lord Typhon.
Turn limitUnlimited while no death occurs.
Carryover20% of finishing gold.
BonusCalculated to equal an early-finish bonus for the number of turns survived.

When the terminating death occurs, the scenario sets the turn limit to the current turn and then adds the current turn again. The resulting total is twice the survived turn count, leaving an equal number of “remaining” turns for Wesnoth’s early-finish calculation.

Design inversion. Ordinary campaigns reward finishing faster. This scenario uses the same engine bonus system to reward surviving longer without a death.

Sides and recruitment

SideLeader / rosterGoldStarting villages
1 — RefugeesHaldric and full party100Campaign state
2 — ElvesGlimir, Elvish Marshal; fighters, archers, shamans and selected level-2 units150 / 220 / 3008
3 — DwarvesDursil, Dwarvish Lord; fighters, thunderers, guardsmen and selected level-2 units150 / 220 / 30014
4 — ElvesEowarar, Elvish Champion; fighters, archers and selected level-2 units150 / 220 / 3008

Recruitment instructions require at least one prioritized advanced unit before continuing with cheaper base troops. This ensures the three local forces visibly include their distinctive higher-level roles.

Custom Lua AI: aggressive attack without suicide

Each continental side replaces the normal combat, high-XP attack, and poison-spreading candidate actions with ca_aggressive_attack_no_suicide.lua. The scenario’s objective note explicitly tells the player that enemies will not initiate an attack if they risk dying.

The candidate action:

  1. Gets every unit able to attack.
  2. Enumerates possible attacks, including occupied destinations.
  3. Simulates each combat.
  4. Rejects any attack where the attacker has a nonzero chance of death.
  5. Rates the survivors by defender kill chance, expected defender damage, low expected attacker damage, and stronger attacker HP.
  6. Moves and attacks with the highest-rated option.
Rating componentEffect
Defender death chance × 100Strongly favors possible kills.
Expected defender damageRewards useful nonlethal attacks.
Expected attacker damage ÷ 10Penalizes self-harm.
Attacker HP ÷ 10Breaks ties toward stronger attackers.

Escalating income

At every new turn, sides 2–4 receive base income equal to $turn_number - 1. The scenario therefore becomes progressively harder even though it has no fixed deadline.

TurnContinental base income
10
54
109
2019

This prevents an indefinitely passive strategy and makes every additional deathless turn increasingly valuable.

Landing and first-death event

PhaseBehavior
prestartStores and removes Haldric so the landing can be animated.
startRuns the local-faction dispute, animates the fleet, unstores Haldric, recalls the party, and starts the failed peace attempt.
Turn 3Jessene comments on the hostile welcome.
Every new turnRaises all three continental sides’ base income.
First non-protected deathLady Dionli arrives, stops the battle, redirects Haldric to the Ka’lian, resolves Typhon’s departure, initializes hub variables, converts survival time into a finish bonus, and ends with 20% carryover.

Difficulty-dependent merfolk transition

DifficultyAfter Lord Typhon leaves
EasyMerman Fighter and Merman Hunter remain recruitable.
Normal / HardFurther merfolk recruitment is disabled; existing merfolk units remain available through the recall roster.

The dialogue reflects this distinction: on harder settings, Typhon says the warriors who already fought beside Haldric wish to remain.

Quest-hub initialization

Before leaving for the Ka’lian, Scenario 15 initializes the complete hub state:

VariableInitial valueMeaning
num_done0Number of Ka’lian quests completed
a_beach0Lizard Beach incomplete
cursed_isle0Cursed Isle incomplete
the_dragon0Dragon quest incomplete
troll_hole0Troll Hole incomplete
last_done"none"No returning quest to greet yet

Assets and custom content

ResourceOriginUse
story/trow_story_15-A_New_Land.webpCampaignFirst sight of the Great Continent
Lady Dionli portrait and Autumn Shyde spriteCampaignDiplomatic intervention
Familiar portrait and unitCampaignJevyan surveillance
Elvish and dwarvish factions, fleet ships, terrain and musicCore/sharedMost tactical and visual content
ca_aggressive_attack_no_suicide.luaCampaign AIScenario-specific no-suicide combat behavior

Scenario WML · Map source · Lua candidate action · AI index

Lessons for campaign authors

PatternReuse lesson
End on the first deathBuild a battle around restraint rather than conquest.
Custom AI matching the objectiveWhen ordinary combat logic would undermine the premise, replace only the necessary candidate action.
Unlimited time plus escalating incomeCreate pressure without a hard deadline.
Repurpose early-finish bonusManipulate the final turn limit to reward survival duration.
Initialize an entire branch state in one transitionKeep the following hub file focused on presentation and routing.