Refine Luofeng ambush battle flow

This commit is contained in:
2026-07-04 19:47:31 +09:00
parent e18acab680
commit dd1e5cf651
4 changed files with 139 additions and 20 deletions

View File

@@ -4269,15 +4269,82 @@ export const thirtiethBattleScenario: BattleScenarioDefinition = {
defeatConditionLabel: '유비 또는 방통 퇴각',
openingObjectiveLines: [
'낙성 본성으로 가는 빠른 길인 낙봉파에 장임의 매복이 숨어 있습니다. 좁은 길과 고지 궁병을 동시에 살피며 진군해야 합니다.',
'오의가 새로 출전 후보에 들어왔습니다. 낙성의 길을 아는 오의를 데려가면 매복 위치를 읽기 쉽지만, 여섯 명 제한은 더 빡빡해집니다.',
'유비와 방통을 지키며 장임의 매복을 격파하십시오. 낙봉파를 넘으면 낙성 본성 공략이 열립니다.'
'오의가 새로 출전 후보에 들어왔습니다. 오의는 샛길과 고지 매복을 짚어 주지만, 방통과 함께 세우면 책사와 안내역이 늘어 전열 선택이 더 빡빡해집니다.',
'유비와 방통을 지키며 퇴로, 고지 궁병, 후미 기병을 차례로 정리하고 장임의 매복을 격파하십시오. 낙봉파를 넘으면 낙성 본성 공략이 열립니다.'
],
tacticalGuide: {
summary:
'낙봉파 매복전은 빠른 길의 위험을 관리하는 전장입니다. 방통을 앞세워 매복을 읽되, 오의의 길 안내로 퇴로를 열고 조운과 황충으로 후미 기병과 고지 궁병을 끊어야 합니다.',
route: '서남 유비군 진영 → 퇴로 길목 확보 → 매복 비탈 탐색 → 고지 궁병 억제 → 후미 기병 차단 → 장임 매복 격파',
focus:
'방통은 매복을 읽는 핵심 생존 조건이고, 오의는 낙봉파의 샛길을 알려 줍니다. 둘을 함께 세우면 위험을 빨리 발견하지만 전열이 얇아지므로 조운이나 황충으로 실제 압박을 받아내야 합니다.',
roles: [
'유비: 낙봉파 돌파 명분과 패배 조건의 중심',
'방통: 매복 판독과 생존 조건의 중심',
'오의: 샛길, 고지, 퇴로를 알려 주는 현지 안내역',
'법정: 장임의 매복 습관과 익주 장수 심리 판단',
'조운: 후미 기병과 복병을 끊는 기동 차단',
'황충: 고지 궁병과 성루 궁병 견제'
],
events: {
'village-approach': {
title: '낙봉파 퇴로',
lines: [
'오의: 이 길은 빠르지만 뒤가 좁습니다. 먼저 퇴로를 잡아야 방통 선생이 마음 놓고 매복을 읽을 수 있습니다.',
'방통: 좋은 길은 돌아갈 길까지 보여야 합니다. 이 비탈을 우리 길로 만들어 두십시오.'
]
},
'cavalry-approach': {
title: '후미 기병 차단',
lines: [
'조운: 적 기병이 뒤를 끊으려 합니다. 방통 선생이 고지 쪽을 보는 동안 후미는 제가 맡겠습니다.',
'법정: 후미가 막히면 매복을 알아도 빠져나올 수 없습니다. 기병부터 묶으십시오.'
]
},
'leader-wavering': {
title: '장임 매복 붕괴',
lines: [
'퇴로와 고지 사격선이 동시에 무너지자 장임의 매복 병력이 더는 숨을 곳을 믿지 못합니다.',
'방통: 이제야 길이 길답게 보이는군요. 장임을 몰아 낙성 본성 앞으로 밀어붙입시다.'
]
}
}
},
sortie: {
sortieLimit: 6,
requiredUnits: ['liu-bei', 'pang-tong'],
recommendedUnits: [
{ unitId: 'liu-bei', role: 'reserve', reason: '낙봉파 돌파 명분이자 패배 조건의 중심입니다.' },
{ unitId: 'pang-tong', role: 'support', reason: '매복을 읽는 핵심 책사이며 반드시 살려야 하는 생존 조건입니다.' },
{ unitId: 'wu-yi', role: 'flank', reason: '낙봉파 샛길과 고지 매복 위치를 아는 새 합류 안내역입니다.' },
{ unitId: 'fa-zheng', role: 'support', reason: '장임의 방어 습관과 익주 장수들의 심리를 읽어 매복 대응을 돕습니다.' },
{ unitId: 'zhao-yun', role: 'flank', reason: '후미 기병과 복병을 빠르게 차단해 방통의 퇴로를 지킵니다.' },
{ unitId: 'huang-zhong', role: 'support', reason: '고지 궁병과 성루 궁병을 안정적으로 견제합니다.' }
],
recommendedClasses: [
{ label: '돌파 명분', classKeys: ['lord'], reason: '유비가 살아 남아야 낙봉파 돌파의 명분이 유지됩니다.' },
{ label: '매복 판독', classKeys: ['strategist'], reason: '방통과 법정이 있으면 매복 경고와 적 심리 판단이 안정됩니다.' },
{ label: '현지 안내', classKeys: ['infantry', 'spearman'], reason: '오의 같은 현지 장수가 샛길과 퇴로 확보를 돕습니다.' },
{ label: '후미 차단', classKeys: ['cavalry'], reason: '기동 장수가 후미 기병과 복병을 끊어 방통을 지킵니다.' },
{ label: '고지 견제', classKeys: ['archer'], reason: '황충의 원거리 견제가 고지 궁병의 압박을 줄입니다.' }
],
deploymentSlots: [
{ x: 4, y: 36, role: 'reserve', unitId: 'liu-bei', label: '돌파 명분' },
{ x: 9, y: 36, role: 'support', unitId: 'pang-tong', label: '매복 판독' },
{ x: 12, y: 36, role: 'flank', unitId: 'wu-yi', label: '길 안내' },
{ x: 11, y: 38, role: 'support', unitId: 'fa-zheng', label: '속내 읽기' },
{ x: 8, y: 36, role: 'flank', unitId: 'zhao-yun', label: '후미 차단' },
{ x: 7, y: 37, role: 'support', unitId: 'huang-zhong', label: '고지 견제' }
],
note:
'낙봉파 매복전은 방통 생환이 핵심입니다. 오의를 데려가면 길 안내가 강해지지만 전열 무장이 줄어드므로, 후미 차단과 고지 견제를 누가 맡을지 먼저 정해야 합니다.'
},
map: thirtiethBattleMap,
units: thirtiethBattleUnits,
bonds: thirtiethBattleBonds,
mapTextureKey: 'battle-map-thirtieth',
leaderUnitId: 'luofeng-leader-zhang-ren',
quickVictoryTurnLimit: 39,
quickVictoryTurnLimit: 62,
baseVictoryGold: 4440,
objectives: [
{
@@ -4306,14 +4373,43 @@ export const thirtiethBattleScenario: BattleScenarioDefinition = {
kind: 'secure-terrain',
label: '낙봉파 길목 확보',
rewardGold: 1320,
terrain: 'village'
terrain: 'village',
targetTile: { x: 44, y: 21, radius: 14 },
threatRadius: 0
},
{
id: 'luofeng-ambush-slope',
kind: 'secure-terrain',
label: '매복 비탈 탐색',
rewardGold: 1280,
terrain: 'road',
targetTile: { x: 48, y: 23, radius: 13 },
threatRadius: 0
},
{
id: 'luofeng-high-archers',
kind: 'secure-terrain',
label: '고지 궁병 억제',
rewardGold: 1340,
terrain: 'fort',
targetTile: { x: 47, y: 17, radius: 14 },
threatRadius: 0
},
{
id: 'luofeng-rear-cavalry',
kind: 'secure-terrain',
label: '후미 기병 차단',
rewardGold: 1300,
terrain: 'road',
targetTile: { x: 51, y: 29, radius: 14 },
threatRadius: 0
},
{
id: 'quick',
kind: 'quick-victory',
label: '39턴 이내 승리',
label: '62턴 이내 승리',
rewardGold: 1040,
maxTurn: 39
maxTurn: 62
}
],
defeatConditions: [
@@ -4321,6 +4417,13 @@ export const thirtiethBattleScenario: BattleScenarioDefinition = {
{ kind: 'unit-defeated', unitId: 'pang-tong' }
],
itemRewards: ['콩 15', '상처약 11', '탁주 6', '낙봉파 정찰표 +1', '봉추 생환 +1'],
campaignReward: {
supplies: ['콩 15', '상처약 11', '탁주 6'],
reputation: ['낙봉파 정찰표 +1', '봉추 생환 +1'],
unlockBattleId: 'thirty-first-battle-luo-main-gate',
unlockLabel: '낙성 본성 공략 개방',
note: '낙봉파의 퇴로와 고지를 정리하고 방통을 살려 냈습니다. 장임은 낙성 본성으로 물러납니다.'
},
victoryPages: thirtiethBattleVictoryPages,
nextCampScene: 'CampScene'
};