Refine Mianzhu gate battle flow

This commit is contained in:
2026-07-04 20:05:47 +09:00
parent 65afcd068b
commit 0a5c3d2237
4 changed files with 141 additions and 21 deletions

View File

@@ -4605,12 +4605,79 @@ export const thirtySecondBattleScenario: BattleScenarioDefinition = {
'엄안은 익주 장수들의 마음을 흔드는 첫 증거입니다. 엄안을 지키며 이엄에게 유비군의 군율과 예우를 보여 주십시오.',
'이엄을 격파하되 마을과 창고를 안정시키면 성도 항복 권고의 명분이 강해집니다.'
],
tacticalGuide: {
summary:
'면죽관 압박전은 낙성에서 얻은 항복 명분을 성도 앞까지 이어 가는 전장입니다. 엄안을 전열에 세워 익주 장수 예우를 보이고, 외곽 마을과 보급 창고를 안정시켜 이엄이 끝까지 버틸 이유를 줄여야 합니다.',
route: '서남 유비군 진영 → 외곽 마을 안정 → 관문 궁병 억제 → 면죽관 관문 압박 → 보급 창고 확보 → 이엄 수비선 격파',
focus:
'엄안은 이엄 설득의 살아 있는 증거입니다. 법정과 오의는 관문과 창고의 약점을 짚고, 방통은 무리한 정면 돌파 대신 관문 압박 순서를 잡아 줍니다.',
roles: [
'유비: 성도 항복 권고와 패배 조건의 중심',
'엄안: 익주 장수 예우의 증거이자 생존 조건',
'법정: 이엄의 심리와 성도 수비장들의 속내 판단',
'오의: 면죽관 관문과 보급 창고 위치 안내',
'방통: 관문 압박 순서와 퇴로 계산',
'황충: 관문 궁병과 고지 사격선 견제'
],
events: {
'village-approach': {
title: '면죽 외곽 마을',
lines: [
'엄안: 이 마을을 함부로 밟지 마시오. 이엄은 성벽보다 백성의 눈을 더 두려워할 줄 아는 장수요.',
'유비: 낙성에서 보인 군율을 여기서도 지켜야 하오. 마을을 안정시킨 뒤 관문을 압박합시다.'
]
},
'cavalry-approach': {
title: '창고 기병 견제',
lines: [
'오의: 적 기병이 창고 쪽 길을 끊으려 합니다. 보급 창고를 잃으면 이엄은 끝까지 버틸 명분을 얻습니다.',
'황충: 고지 사격선과 기병 돌격이 맞물리기 전에 활로 길을 열겠습니다.'
]
},
'leader-wavering': {
title: '이엄의 저울이 기울다',
lines: [
'외곽 마을과 보급 창고가 안정되자 이엄의 병사들은 더는 성도까지 불길이 번질 것이라 믿지 않습니다.',
'이엄: 엄안 장군까지 저 군영에 섰다면, 내 칼끝도 고집만으로 버틸 수는 없겠군.'
]
}
}
},
sortie: {
sortieLimit: 6,
requiredUnits: ['liu-bei', 'yan-yan'],
recommendedUnits: [
{ unitId: 'liu-bei', role: 'reserve', reason: '성도 항복 권고와 패배 조건의 중심입니다.' },
{ unitId: 'yan-yan', role: 'support', reason: '엄안의 첫 출전입니다. 이엄에게 익주 장수 예우를 증명합니다.' },
{ unitId: 'fa-zheng', role: 'support', reason: '성도 수비장들의 심리와 이엄의 판단을 읽는 책사입니다.' },
{ unitId: 'wu-yi', role: 'flank', reason: '면죽관 관문과 보급 창고 위치를 아는 현지 장수입니다.' },
{ unitId: 'pang-tong', role: 'support', reason: '무리한 돌파 대신 관문 압박과 퇴로 확보를 동시에 계산합니다.' },
{ unitId: 'huang-zhong', role: 'support', reason: '관문 궁병과 고지 수비를 안정적으로 견제합니다.' }
],
recommendedClasses: [
{ label: '항복 명분', classKeys: ['lord'], reason: '유비가 살아 있어야 성도 항복 권고의 명분이 유지됩니다.' },
{ label: '익주 증언', classKeys: ['archer'], reason: '엄안과 황충이 관문 궁병을 견제하며 예우의 증거를 보여 줍니다.' },
{ label: '관문 설계', classKeys: ['strategist'], reason: '법정과 방통이 이엄의 심리와 관문 압박 순서를 잡습니다.' },
{ label: '현지 안내', classKeys: ['infantry', 'spearman'], reason: '오의 같은 익주 장수가 마을과 창고 위치를 짚어 줍니다.' },
{ label: '측면 기동', classKeys: ['cavalry'], reason: '관문 앞 기병과 창고 차단 병력을 빠르게 묶을 수 있습니다.' }
],
deploymentSlots: [
{ x: 4, y: 40, role: 'reserve', unitId: 'liu-bei', label: '항복 명분' },
{ x: 11, y: 37, role: 'support', unitId: 'yan-yan', label: '익주 증언' },
{ x: 11, y: 41, role: 'support', unitId: 'fa-zheng', label: '이엄 판단' },
{ x: 12, y: 39, role: 'flank', unitId: 'wu-yi', label: '창고 길' },
{ x: 9, y: 39, role: 'support', unitId: 'pang-tong', label: '관문 설계' },
{ x: 7, y: 40, role: 'support', unitId: 'huang-zhong', label: '궁병 견제' }
],
note:
'면죽관 압박전은 엄안의 첫 출전을 설득의 증거로 쓰는 전투입니다. 관문을 무너뜨리는 힘보다 외곽 마을과 보급 창고를 안정시키는 명분이 중요합니다.'
},
map: thirtySecondBattleMap,
units: thirtySecondBattleUnits,
bonds: thirtySecondBattleBonds,
mapTextureKey: 'battle-map-thirty-second',
leaderUnitId: 'chengdu-leader-li-yan',
quickVictoryTurnLimit: 50,
quickVictoryTurnLimit: 70,
baseVictoryGold: 5040,
objectives: [
{
@@ -4634,19 +4701,48 @@ export const thirtySecondBattleScenario: BattleScenarioDefinition = {
rewardGold: 1260,
unitId: 'yan-yan'
},
{
id: 'outer-village',
kind: 'secure-terrain',
label: '외곽 마을 안정',
rewardGold: 1380,
terrain: 'village',
targetTile: { x: 46, y: 27, radius: 18 },
threatRadius: 0
},
{
id: 'pass-archers',
kind: 'secure-terrain',
label: '관문 궁병 억제',
rewardGold: 1440,
terrain: 'fort',
targetTile: { x: 50, y: 18, radius: 16 },
threatRadius: 0
},
{
id: 'mianzhu-gate',
kind: 'secure-terrain',
label: '면죽관 관문 압박',
rewardGold: 1560,
terrain: 'fort',
targetTile: { x: 52, y: 22, radius: 16 },
threatRadius: 0
},
{
id: 'mianzhu-storehouse',
kind: 'secure-terrain',
label: '면죽관 창고 확보',
rewardGold: 1540,
terrain: 'village'
label: '성도 보급 창고 확보',
rewardGold: 1600,
terrain: 'village',
targetTile: { x: 56, y: 30, radius: 18 },
threatRadius: 0
},
{
id: 'quick',
kind: 'quick-victory',
label: '50턴 이내 승리',
label: '70턴 이내 승리',
rewardGold: 1180,
maxTurn: 50
maxTurn: 70
}
],
defeatConditions: [
@@ -4654,6 +4750,14 @@ export const thirtySecondBattleScenario: BattleScenarioDefinition = {
{ kind: 'unit-defeated', unitId: 'yan-yan' }
],
itemRewards: ['콩 18', '상처약 13', '탁주 7', '성도 항복 권고문 +1', '이엄 합류'],
campaignReward: {
supplies: ['콩 18', '상처약 13', '탁주 7'],
reputation: ['성도 항복 권고문 +1', '면죽관 군율 증명 +1'],
recruits: ['li-yan'],
unlockBattleId: 'thirty-third-battle-chengdu-surrender',
unlockLabel: '성도 항복 권고전 개방',
note: '면죽관과 보급 창고를 안정시키고 이엄이 합류했습니다. 성도 항복 권고의 마지막 길이 열립니다.'
},
victoryPages: thirtySecondBattleVictoryPages,
nextCampScene: 'CampScene'
};