Refine Jing rear crisis battle flow

This commit is contained in:
2026-07-04 21:57:39 +09:00
parent 69b9624e38
commit 932821de95
3 changed files with 111 additions and 16 deletions

View File

@@ -6060,6 +6060,76 @@ export const fortySecondBattleScenario: BattleScenarioDefinition = {
'관우가 번성 전선과 형주 후방을 함께 붙잡아야 합니다. 관우가 쓰러지면 전선의 승세와 후방의 민심이 동시에 흔들립니다.',
'여몽은 정찰대를 깊숙이 보내고, 육손은 부드러운 말로 빈틈을 살핍니다. 마량과 미축 같은 후방 담당을 데려가면 균열을 읽고 창고를 지키기 쉽습니다.'
],
tacticalGuide: {
summary:
'강릉 나루 경계전은 번성 앞의 승세가 형주 후방의 불안으로 바뀌기 시작하는 전투입니다. 여몽의 정찰대는 정면 병력보다 흰 옷 척후와 상선, 창고 장부를 통해 침투하므로 미축과 마량으로 창고를 붙잡고, 조운과 왕평으로 나루와 숲길을 빠르게 차단해야 합니다.',
route: '서남 후방 창고 → 강동 나루 척후 차단 → 상선 궁병 정리 → 미방 장부 확인 → 여몽 정찰대 격퇴',
focus:
'이 전투의 핵심은 적을 모두 쓸어내는 것이 아니라 후방 창고와 군량선이 흔들리지 않게 만드는 것입니다. 여몽을 빨리 격퇴하더라도 창고 방어 목표가 남아야 다음 공안 성문 변고가 자연스럽게 이어집니다.',
roles: [
'유비: 형주 후방을 다독이는 명분과 패배 조건의 중심',
'관우: 번성 전선과 후방 경계를 함께 묶는 핵심 장수',
'마량: 강동 말투와 형주 민심을 읽는 현지 참모',
'미축: 창고 장부와 군량선을 지키는 보급 축',
'조운: 나루와 창고 사이를 빠르게 보강하는 기동 축',
'황권: 미방과 포로, 장부의 흔들림을 신중히 판정하는 참모',
'왕평: 숲길과 강변 초소의 지형을 읽어 기습을 막는 수비 카드'
],
events: {
'village-approach': {
title: '강릉 창고',
lines: [
'미축: 창고 문이 열려 있으면 병사의 마음도 함께 흔들립니다. 장부와 군량선을 먼저 확인하겠습니다.',
'마량: 상선으로 보이는 배도 길을 재는 눈일 수 있습니다. 나루와 창고를 함께 보아야 합니다.'
]
},
'enemy-posture': {
title: '흰 옷 척후',
lines: [
'왕평: 숲길 발자국이 얕습니다. 싸우러 온 병사보다 길을 재러 온 척후가 많습니다.',
'조운: 나루를 비워 두지 않겠습니다. 적이 강을 타고 돌아오면 창고가 먼저 흔들립니다.'
]
},
'leader-wavering': {
title: '여몽의 물러섬',
lines: [
'여몽: 창고와 나루를 한 번에 들여다보려 했으나, 관우군의 경계가 생각보다 촘촘하군.',
'마량: 물러나는 말이 너무 곱습니다. 다음에는 성문 안쪽의 사람을 흔들 것입니다.'
]
}
}
},
sortie: {
sortieLimit: 7,
requiredUnits: ['liu-bei', 'guan-yu'],
recommendedUnits: [
{ unitId: 'liu-bei', role: 'reserve', reason: '형주 후방 명분과 패배 조건의 중심입니다.' },
{ unitId: 'guan-yu', role: 'front', reason: '번성 전선과 후방 경계를 함께 묶습니다.' },
{ unitId: 'ma-liang', role: 'support', reason: '강릉 민심과 강동 말투를 읽는 참모입니다.' },
{ unitId: 'mi-zhu', role: 'support', reason: '창고 장부와 군량선을 확인합니다.' },
{ unitId: 'zhao-yun', role: 'flank', reason: '나루와 창고 사이 빈틈을 빠르게 막습니다.' },
{ unitId: 'huang-quan', role: 'support', reason: '포로와 장부의 흔들림을 신중히 판정합니다.' },
{ unitId: 'wang-ping', role: 'flank', reason: '숲길과 강변 기습을 읽어 차단합니다.' }
],
recommendedClasses: [
{ label: '후방 명분', classKeys: ['lord'], reason: '유비가 있어야 후방 병사와 민심을 다독일 명분이 살아납니다.' },
{ label: '나루 전열', classKeys: ['spearman', 'infantry'], reason: '관우가 창고와 나루 사이의 전열을 붙잡습니다.' },
{ label: '창고 장부', classKeys: ['strategist'], reason: '마량과 황권이 강동 말투, 포로, 장부의 흔들림을 읽습니다.' },
{ label: '보급 관리', classKeys: ['lord', 'strategist'], reason: '미축이 군량선과 창고를 확인해 목표 피드백을 살립니다.' },
{ label: '기습 차단', classKeys: ['cavalry', 'infantry'], reason: '조운과 왕평이 숲길과 강변 기습을 빠르게 막습니다.' }
],
deploymentSlots: [
{ x: 6, y: 59, role: 'reserve', unitId: 'liu-bei', label: '후방 명분' },
{ x: 13, y: 54, role: 'front', unitId: 'guan-yu', label: '나루 전열' },
{ x: 15, y: 59, role: 'support', unitId: 'ma-liang', label: '민심 판정' },
{ x: 9, y: 60, role: 'support', unitId: 'mi-zhu', label: '창고 장부' },
{ x: 16, y: 57, role: 'flank', unitId: 'zhao-yun', label: '나루 보강' },
{ x: 23, y: 60, role: 'support', unitId: 'huang-quan', label: '장부 판정' },
{ x: 23, y: 52, role: 'flank', unitId: 'wang-ping', label: '숲길 경계' }
],
note:
'강릉 나루 경계전은 적을 모두 격파하기보다 창고와 나루가 흔들리지 않게 지키는 전투입니다. 미축·마량·황권으로 후방 장부를 읽고, 조운·왕평으로 강동 척후와 숲길 기습을 끊으십시오.'
},
map: fortySecondBattleMap,
units: fortySecondBattleUnits,
bonds: fortySecondBattleBonds,
@@ -6092,9 +6162,11 @@ export const fortySecondBattleScenario: BattleScenarioDefinition = {
{
id: 'warehouse',
kind: 'secure-terrain',
label: '강릉 창고 확보',
label: '강릉 후방 창고 확보',
rewardGold: 2680,
terrain: 'village'
terrain: 'camp',
targetTile: { x: 39, y: 65, radius: 7 },
threatRadius: 0
},
{
id: 'quick',
@@ -6109,6 +6181,13 @@ export const fortySecondBattleScenario: BattleScenarioDefinition = {
{ kind: 'unit-defeated', unitId: 'guan-yu' }
],
itemRewards: ['콩 40', '상처약 30', '탁주 12', '강동 정찰 기록 1', '강릉 창고 장부 1'],
campaignReward: {
supplies: ['콩 40', '상처약 30', '탁주 12'],
equipment: ['강동 정찰 기록 1'],
reputation: ['강릉 창고 장부 1'],
unlockLabel: '공안 성문 변고',
note: '강릉 후방 창고와 나루를 지켰지만, 강동의 말과 미방의 장부가 이미 공안 성문 쪽으로 번지고 있습니다. 다음 군영에서는 공안 성문과 흔들리는 후방장을 수습해야 합니다.'
},
victoryPages: fortySecondBattleVictoryPages,
nextCampScene: 'CampScene'
};