Files
heros/data/scenarios/014_cangting_pursuit.json

482 lines
15 KiB
JSON

{
"id": "014_cangting_pursuit",
"name": "창정 추격전",
"objectives": {
"victory": "원소군 퇴각선이 창정에서 다시 모인 뒤 그 후위대를 격파하라.",
"defeat": "조조가 퇴각하거나 제13군령에 이른다."
},
"conditions": {
"victory": { "type": "all_units_defeated", "team": "enemy", "after_event": "turn_3_yuan_rally" },
"defeat": [
{ "type": "any_officer_defeated", "team": "player", "officer_ids": ["cao_cao"] },
{ "type": "turn_reached", "turn": 13, "team": "player" }
]
},
"briefing": {
"title": "창정 추격전",
"location": "창정, 건안 6년",
"lines": [
"오소의 군량이 재가 되자 원소의 대군은 상처 입은 위세와 굶주린 병사들의 행렬로 흩어졌다.",
"조조는 북쪽 나루를 막을 기강이 다시 서기 전에 창정의 후위대를 추격한다."
],
"conditional_lines": [
{
"campaign_flags": { "pressed_yuan_rout": true },
"lines": [
"오소 뒤에도 원소에게 숨 돌릴 틈을 주지 않았으니, 후위의 줄도 이미 풀리고 있다."
]
},
{
"campaign_flags": { "secured_wuchao_stores": true },
"lines": [
"오소에서 거둔 군량이 추격군을 먹인다. 보급 행렬을 늘리지 않고도 조조는 북상할 수 있다."
]
}
],
"camp_conversations": [
{
"id": "cangting_pursuit_council",
"group": "topic",
"label": "추격 군의",
"speaker": "Cao Cao",
"summary": "원소의 퇴각 후위를 칠 추격 속도를 정한다.",
"lines": [
{
"speaker": "Cao Cao",
"side": "left",
"text": "오소는 저들의 군량을 태웠다. 창정에서는 퇴각이 다시 진세가 될 수 있다는 믿음을 태워야 한다."
},
{
"speaker": "Xiahou Dun",
"side": "right",
"text": "그렇다면 소란을 쫓지 말고, 아직 명을 듣는 병졸부터 쳐야 합니다."
},
{
"speaker": "Guo Jia",
"side": "right",
"text": "패군에도 장합이 후위를 잡으면 등골이 남습니다. 그 등골을 꺾으면 나머지는 길먼지가 됩니다."
}
]
},
{
"id": "cangting_guo_jia_rearguard",
"group": "officer",
"officer_id": "guo_jia",
"label": "곽가 - 후위의 기강",
"speaker": "Guo Jia",
"summary": "추격이 닿기 전에 장합의 기강을 읽는다.",
"lines": [
{
"speaker": "Guo Jia",
"side": "right",
"text": "원소의 병사들은 굶주림을 피해 달아납니다. 장합만은 직분을 향해 달리고 있습니다."
},
{
"speaker": "Cao Cao",
"side": "left",
"text": "패주 속에서도 직분을 택하는 자라면 눈여겨볼 만하다."
}
]
},
{
"id": "cangting_fast_pursuit_beans",
"campaign_flags": { "pressed_yuan_rout": true },
"group": "topic",
"label": "속추 군량",
"summary": "강행 추격을 위해 꾸린 가벼운 군량을 거둔다.",
"lines": [
{
"speaker": "Xiahou Yuan",
"side": "right",
"text": "기병들이 짐 대신 콩을 챙겼습니다. 말 위에서 씹으며 원소가 계속 뒤돌아보게 만들 수 있습니다."
},
{
"speaker": "Cao Cao",
"side": "left",
"text": "좋다. 솥을 걸려고 멈춘 추격은 이미 행렬이 된 것이다."
}
],
"effects": [
{
"type": "grant_item",
"item_id": "bean",
"count": 1,
"text": "속추 군량에서 콩 1점을 전장 물자에 더했다."
}
]
},
{
"id": "cangting_wuchao_store_medicine",
"campaign_flags": { "secured_wuchao_stores": true },
"group": "topic",
"label": "오소 창고 약재",
"summary": "오소 창고에서 가려낸 약재를 거둔다.",
"lines": [
{
"speaker": "Cao Ren",
"side": "right",
"text": "빼앗은 오소 창고에는 군량만 있지 않았습니다. 의관들이 행군 재개 전에 깨끗한 약재를 골라 두었습니다."
},
{
"speaker": "Guo Jia",
"side": "left",
"text": "그렇다면 그 창고는 두 번 속도를 사 주었군. 한 번은 원소를 굶겨서, 한 번은 우리 부상병을 걷게 해서."
}
],
"effects": [
{
"type": "grant_item",
"item_id": "panacea",
"count": 1,
"text": "오소 창고 약재에서 만능약 1점을 전장 물자에 더했다."
}
]
}
]
},
"shop": {
"merchant": {
"name": "창정 길목 야상",
"lines": [
"북쪽 길에는 원소군이 버린 짐이 널렸습니다. 추격길을 버틸 물건만 팔지요.",
"후위가 다시 뭉치기 전에 사 두십시오. 장합이 줄을 세우면 술동이에도 갑옷이 필요할 겁니다."
]
},
"items": [
"bean",
"wine",
"iron_sword",
"training_spear",
"short_bow",
"hand_axe",
"war_axe",
"leather_armor",
"iron_armor"
],
"conditional_items": [
{
"campaign_flags": { "pressed_yuan_rout": true },
"items": ["war_drum"]
},
{
"campaign_flags": { "secured_wuchao_stores": true },
"items": ["imperial_seal"]
}
]
},
"roster": {
"max_units": 6,
"required_officers": ["cao_cao", "guo_jia"]
},
"formation": {
"cells": [[1, 3], [1, 4], [1, 5], [2, 2], [2, 3], [2, 4], [2, 5], [2, 6], [3, 2], [3, 3], [3, 4], [3, 5]]
},
"map": {
"background": "res://art/backgrounds/cangting_pursuit.png",
"width": 17,
"height": 11,
"terrain": [
"DDGGGHHGGGGGGDDDD",
"GGFFGHHGGGFFGDDDG",
"DDRRRRRRRRRRRDFFG",
"DGGGGRGDGGRRGDDGG",
"RRRRRRRRRRRRRRRRG",
"DGGGGRGDGGRRGGDGG",
"DDHHGFFFGGFFFGDGG",
"DDHHGFFFGGFFFGDDG",
"DDDGGGFFGGHHHDDGG",
"GGFFGGDGGGHHHFFDD",
"GGGGGGGGGGGGGGGGG"
]
},
"deployments": [
{
"unit_id": "cao_cao_ch14",
"officer_id": "cao_cao",
"team": "player",
"pos": [1, 4]
},
{
"unit_id": "guo_jia_ch14",
"officer_id": "guo_jia",
"team": "player",
"requires_joined": true,
"pos": [2, 4]
},
{
"unit_id": "xiahou_dun_ch14",
"officer_id": "xiahou_dun",
"team": "player",
"pos": [1, 5]
},
{
"unit_id": "dian_wei_ch14",
"officer_id": "dian_wei",
"team": "player",
"requires_joined": true,
"pos": [2, 5]
},
{
"unit_id": "xiahou_yuan_ch14",
"officer_id": "xiahou_yuan",
"team": "player",
"requires_joined": true,
"pos": [2, 3]
},
{
"unit_id": "cao_ren_ch14",
"officer_id": "cao_ren",
"team": "player",
"requires_joined": true,
"pos": [3, 3]
},
{
"unit_id": "yuan_shao_rearguard",
"name": "원소 후위대",
"class_id": "commander",
"team": "enemy",
"level": 13,
"pos": [14, 4],
"base": { "hp": 72, "mp": 16, "atk": 20, "def": 14, "int": 13, "agi": 10 }
},
{
"unit_id": "zhang_he_rearguard",
"name": "장합 후위대",
"class_id": "elite_cavalry",
"team": "enemy",
"level": 13,
"pos": [11, 4],
"base": { "hp": 62, "atk": 21, "def": 12, "agi": 16 }
},
{
"unit_id": "yuan_rally_advisor",
"name": "원소 수습군사",
"class_id": "military_advisor",
"team": "enemy",
"level": 13,
"pos": [13, 5],
"skills": ["blaze", "great_mend"],
"base": { "hp": 46, "mp": 30, "atk": 7, "def": 8, "int": 17, "agi": 10 }
},
{
"unit_id": "cangting_center_guard",
"name": "창정 수비병",
"class_id": "guard_captain",
"team": "enemy",
"level": 12,
"pos": [10, 4],
"base": { "hp": 56, "atk": 18, "def": 14 }
},
{
"unit_id": "cangting_north_guard",
"name": "창정 수비병",
"class_id": "infantry",
"team": "enemy",
"level": 12,
"pos": [11, 3],
"base": { "hp": 50, "atk": 17, "def": 11 }
},
{
"unit_id": "cangting_south_guard",
"name": "창정 수비병",
"class_id": "infantry",
"team": "enemy",
"level": 12,
"pos": [11, 5],
"base": { "hp": 50, "atk": 17, "def": 11 }
},
{
"unit_id": "cangting_archer_north",
"name": "창정 궁병",
"class_id": "marksman",
"team": "enemy",
"level": 12,
"pos": [12, 2],
"base": { "hp": 40, "atk": 16, "def": 7, "agi": 14 }
},
{
"unit_id": "cangting_archer_south",
"name": "창정 궁병",
"class_id": "marksman",
"team": "enemy",
"level": 12,
"pos": [13, 6],
"base": { "hp": 40, "atk": 16, "def": 7, "agi": 14 }
}
],
"events": [
{
"id": "opening",
"once": true,
"when": { "type": "battle_start" },
"actions": [
{ "type": "log", "text": "원소의 패군이 창정 부근에서 다시 진세를 세우려 한다." }
]
},
{
"id": "opening_dialogue",
"once": true,
"when": { "type": "battle_begin" },
"actions": [
{
"type": "dialogue",
"lines": [
{ "speaker": "Cao Cao", "text": "오소가 저들의 배를 꺾었다. 창정에서는 저들의 마음을 꺾어야 한다." },
{ "speaker": "Guo Jia", "text": "장합은 다른 자들보다 기강 있게 후위를 붙잡고 있습니다. 그가 흔들리면 패주는 그대로 길이 됩니다." },
{ "speaker": "Xiahou Yuan", "text": "그렇다면 기강 있는 자부터 먼저 친다." }
]
}
]
},
{
"id": "fast_pursuit_pressure",
"once": true,
"when": { "type": "turn_start", "team": "player", "turn": 2, "campaign_flags": { "pressed_yuan_rout": true } },
"actions": [
{
"type": "dialogue",
"lines": [
{ "speaker": "Xiahou Dun", "text": "우리 추격이 저들의 수레가 장벽을 이루기 전에 닿았습니다." },
{ "speaker": "Cao Cao", "text": "기세도 병장이다. 무디게 두지 마라." }
]
}
]
},
{
"id": "stored_supply_arrives",
"once": true,
"when": { "type": "turn_start", "team": "player", "turn": 2, "campaign_flags": { "secured_wuchao_stores": true } },
"actions": [
{
"type": "dialogue",
"lines": [
{ "speaker": "Guo Jia", "text": "오소 창고가 이제 우리 추격군을 먹이고 있습니다. 원소가 양군의 군량값을 내는 셈입니다." },
{ "speaker": "Cao Cao", "text": "흐뭇한 셈법이군." }
]
}
]
},
{
"id": "turn_3_yuan_rally",
"once": true,
"when": { "type": "turn_start", "team": "enemy", "turn": 3 },
"actions": [
{
"type": "set_objective",
"victory": "다시 모인 원소 후위와 엄호 부대를 모두 격파하라.",
"defeat": "조조가 퇴각하거나 제13군령에 이른다."
},
{
"type": "dialogue",
"lines": [
{ "speaker": "Zhang He", "text": "길을 지켜라. 후위가 무너지면 전군이 도망자일 뿐이다." },
{ "speaker": "Guo Jia", "text": "진실을 보는군. 그래서 위험하고, 또한 쓸 만하다." }
]
},
{
"type": "spawn_deployments",
"deployments": [
{
"unit_id": "yuan_rout_rider_north",
"name": "패주 기병",
"class_id": "cavalry",
"team": "enemy",
"level": 12,
"pos": [15, 3],
"base": { "hp": 46, "atk": 17, "def": 9, "agi": 12 }
},
{
"unit_id": "yuan_rout_rider_south",
"name": "패주 기병",
"class_id": "cavalry",
"team": "enemy",
"level": 12,
"pos": [15, 5],
"base": { "hp": 46, "atk": 17, "def": 9, "agi": 12 }
}
]
}
]
},
{
"id": "center_pursuit_trap",
"once": true,
"when": { "type": "unit_reaches_tile", "team": "player", "officer_ids": ["cao_cao"], "pos": [9, 4] },
"actions": [
{
"type": "dialogue",
"lines": [
{ "speaker": "Yuan Guard", "text": "조조가 중앙 길로 들었다. 뒤의 퇴각선을 닫아라!" },
{ "speaker": "Dian Wei", "text": "땅바닥에 누워서 닫아 보거라." }
]
},
{
"type": "spawn_deployments",
"deployments": [
{
"unit_id": "cangting_road_guard",
"name": "길목 수비병",
"class_id": "infantry",
"team": "enemy",
"level": 12,
"pos": [8, 3],
"base": { "hp": 48, "atk": 17, "def": 11 }
},
{
"unit_id": "cangting_road_archer",
"name": "길목 궁병",
"class_id": "archer",
"team": "enemy",
"level": 12,
"pos": [8, 5],
"base": { "hp": 36, "atk": 15, "def": 6, "agi": 12 }
}
]
}
]
},
{
"id": "turn_6_zhang_he_wavers",
"once": true,
"when": { "type": "turn_start", "team": "player", "turn": 6 },
"actions": [
{
"type": "dialogue",
"lines": [
{ "speaker": "Guo Jia", "text": "장합은 이제 호위의 말을 듣지 않는 주군을 지키고 있습니다." },
{ "speaker": "Cao Cao", "text": "그렇다면 판단을 알아주는 진영이 어디인지 보게 해라." }
]
}
]
}
],
"rewards": {
"gold": 2300,
"items": ["bean", "wine", "iron_armor", "dragon_spear"],
"join_officers": ["zhang_he"]
},
"post_battle_dialogue": [
{ "speaker": "Zhang He", "text": "원소는 군대를 잃더라도 그것을 구하려 한 자의 말을 듣지 않으려 합니다." },
{ "speaker": "Cao Cao", "text": "그렇다면 맑은 눈이 쓰이는 곳에서 섬겨라." },
{ "speaker": "Guo Jia", "text": "창정에서 추격의 길이 열렸습니다. 이제 원씨 형제들은 남은 것을 두고 다툴 것입니다." }
],
"post_battle_choices": [
{
"id": "advance_to_ye",
"label": "업성으로 진군",
"description": "원씨 형제들이 숨을 고르기 전에 조조가 원씨 본거지로 압박해 들어간다.",
"set_flags": { "advanced_to_ye": true, "secured_hebei_crossings": false },
"gold": 100,
"items": ["war_drum"]
},
{
"id": "secure_hebei_crossings",
"label": "하북 나루 확보",
"description": "군세가 더 깊이 북상하기 전에 나루와 보급로를 다진다.",
"set_flags": { "advanced_to_ye": false, "secured_hebei_crossings": true },
"gold": 300,
"items": ["imperial_seal"]
}
]
}