Refine Maicheng isolation battle flow
This commit is contained in:
@@ -6344,6 +6344,76 @@ export const fortyFourthBattleScenario: 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: 'wang-ping', role: 'flank', reason: '북문과 산길의 좁은 통로를 읽습니다.' },
|
||||||
|
{ unitId: 'zhao-yun', role: 'flank', reason: '갈대 물목과 숲길 추격대를 끊습니다.' },
|
||||||
|
{ unitId: 'huang-zhong', role: 'front', reason: '성벽 너머 궁병을 견제합니다.' },
|
||||||
|
{ unitId: 'ma-dai', role: 'flank', reason: '위군 기병의 측면 차단에 대응합니다.' },
|
||||||
|
{ unitId: 'ma-liang', role: 'support', reason: '형주 민심과 병사 사기를 붙듭니다.' }
|
||||||
|
],
|
||||||
|
recommendedClasses: [
|
||||||
|
{ label: '퇴로 명분', classKeys: ['lord'], reason: '유비가 있어야 관우군을 버리지 않는 선택이 설득됩니다.' },
|
||||||
|
{ label: '북문 전열', classKeys: ['spearman', 'infantry'], reason: '관우와 황충이 북문 앞 좁은 전열을 지탱합니다.' },
|
||||||
|
{ label: '지형 판정', classKeys: ['infantry', 'strategist'], reason: '왕평과 마량이 산길, 숲길, 갈대 물목의 위험을 읽습니다.' },
|
||||||
|
{ label: '기동 차단', classKeys: ['cavalry'], reason: '조운과 마대가 양쪽 추격대를 빠르게 끊습니다.' },
|
||||||
|
{ label: '원거리 견제', classKeys: ['archer'], reason: '황충이 물목 너머 궁병과 봉쇄선을 눌러 줍니다.' }
|
||||||
|
],
|
||||||
|
deploymentSlots: [
|
||||||
|
{ x: 24, y: 45, role: 'reserve', unitId: 'liu-bei', label: '퇴로 명분' },
|
||||||
|
{ x: 30, y: 38, role: 'front', unitId: 'guan-yu', label: '북문 전열' },
|
||||||
|
{ x: 37, y: 34, role: 'flank', unitId: 'wang-ping', label: '산길 판단' },
|
||||||
|
{ x: 33, y: 42, role: 'flank', unitId: 'zhao-yun', label: '물목 기동' },
|
||||||
|
{ x: 35, y: 36, role: 'front', unitId: 'huang-zhong', label: '궁병 견제' },
|
||||||
|
{ x: 43, y: 39, role: 'flank', unitId: 'ma-dai', label: '기병 차단' },
|
||||||
|
{ x: 31, y: 45, role: 'support', unitId: 'ma-liang', label: '사기 수습' }
|
||||||
|
],
|
||||||
|
note:
|
||||||
|
'맥성 고립전은 성 안에서 오래 버티는 전투가 아니라 북문 밖 퇴로를 열어 관우군을 빼내는 전투입니다. 왕평으로 산길을 읽고, 조운·마대로 추격대를 끊으며, 황충으로 갈대 물목의 궁병을 눌러 주십시오.'
|
||||||
|
},
|
||||||
map: fortyFourthBattleMap,
|
map: fortyFourthBattleMap,
|
||||||
units: fortyFourthBattleUnits,
|
units: fortyFourthBattleUnits,
|
||||||
bonds: fortyFourthBattleBonds,
|
bonds: fortyFourthBattleBonds,
|
||||||
@@ -6376,9 +6446,11 @@ export const fortyFourthBattleScenario: BattleScenarioDefinition = {
|
|||||||
{
|
{
|
||||||
id: 'maicheng-gate',
|
id: 'maicheng-gate',
|
||||||
kind: 'secure-terrain',
|
kind: 'secure-terrain',
|
||||||
label: '맥성 북문 확보',
|
label: '맥성 북문 퇴로 확보',
|
||||||
rewardGold: 2960,
|
rewardGold: 2960,
|
||||||
terrain: 'fort'
|
terrain: 'fort',
|
||||||
|
targetTile: { x: 26, y: 48, radius: 3 },
|
||||||
|
threatRadius: 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 'quick',
|
id: 'quick',
|
||||||
@@ -6393,6 +6465,13 @@ export const fortyFourthBattleScenario: BattleScenarioDefinition = {
|
|||||||
{ kind: 'unit-defeated', unitId: 'guan-yu' }
|
{ kind: 'unit-defeated', unitId: 'guan-yu' }
|
||||||
],
|
],
|
||||||
itemRewards: ['콩 44', '상처약 34', '탁주 14', '맥성 북문 지도 1', '갈대 물목 표식 1'],
|
itemRewards: ['콩 44', '상처약 34', '탁주 14', '맥성 북문 지도 1', '갈대 물목 표식 1'],
|
||||||
|
campaignReward: {
|
||||||
|
supplies: ['콩 44', '상처약 34', '탁주 14'],
|
||||||
|
equipment: ['맥성 북문 지도 1'],
|
||||||
|
reputation: ['갈대 물목 표식 1'],
|
||||||
|
unlockLabel: '이릉 진격로',
|
||||||
|
note: '맥성의 좁은 퇴로는 열었지만 형주의 큰 성들은 이미 강동 깃발 아래로 넘어갔습니다. 다음 군영에서는 형주 상실과 유비의 동진을 준비해야 합니다.'
|
||||||
|
},
|
||||||
victoryPages: fortyFourthBattleVictoryPages,
|
victoryPages: fortyFourthBattleVictoryPages,
|
||||||
nextCampScene: 'CampScene'
|
nextCampScene: 'CampScene'
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -3162,7 +3162,7 @@ export const fortyFourthBattleIntroPages: StoryPage[] = [
|
|||||||
chapter: '끊어진 후방',
|
chapter: '끊어진 후방',
|
||||||
background: 'story-maicheng-isolation',
|
background: 'story-maicheng-isolation',
|
||||||
speaker: '마량',
|
speaker: '마량',
|
||||||
text: '공안 성문을 다시 잠갔으나 강릉과 나루의 소식이 끊겼습니다. 관우 장군의 번성 전선은 앞의 조조군과 뒤의 강동군 사이에서 길을 잃고 있습니다.'
|
text: '공안 성문을 다시 잠갔으나 강릉과 나루의 소식은 끝내 끊겼습니다. 관우 장군의 번성 전선은 앞의 조조군과 뒤의 강동군 사이에서 맥성 쪽으로 밀리고 있습니다.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 'forty-fourth-lu-meng-seals-roads',
|
id: 'forty-fourth-lu-meng-seals-roads',
|
||||||
@@ -3170,7 +3170,7 @@ export const fortyFourthBattleIntroPages: StoryPage[] = [
|
|||||||
chapter: '봉쇄되는 길',
|
chapter: '봉쇄되는 길',
|
||||||
background: 'story-maicheng-isolation',
|
background: 'story-maicheng-isolation',
|
||||||
speaker: '왕평',
|
speaker: '왕평',
|
||||||
text: '맥성으로 빠지는 길목마다 흰 옷을 벗은 강동 병사가 서 있습니다. 큰길은 막혔고, 숲과 물목의 작은 길도 오래 버티지 못할 것입니다.'
|
text: '맥성 북문 밖 길목마다 흰 옷을 벗은 강동 병사가 서 있습니다. 큰길은 막혔고, 갈대 물목과 산길의 작은 틈도 오래 버티지 못할 것입니다.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 'forty-fourth-guan-yu-resolve',
|
id: 'forty-fourth-guan-yu-resolve',
|
||||||
@@ -3179,7 +3179,7 @@ export const fortyFourthBattleIntroPages: StoryPage[] = [
|
|||||||
background: 'story-maicheng-isolation',
|
background: 'story-maicheng-isolation',
|
||||||
speaker: '관우',
|
speaker: '관우',
|
||||||
portrait: 'guanYu',
|
portrait: 'guanYu',
|
||||||
text: '성 하나가 아니라 의리를 지키는 싸움이 되었소. 맥성으로 길을 내고 남은 병사들을 수습하겠소. 길이 좁을수록 마음이 먼저 무너지지 않게 하시오.'
|
text: '성 하나를 지키는 싸움이 아니라 남은 병사를 살리는 싸움이 되었소. 북문 밖 퇴로를 열고 흩어진 병사를 수습하겠소. 길이 좁을수록 마음이 먼저 무너지지 않게 하시오.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 'forty-fourth-sortie',
|
id: 'forty-fourth-sortie',
|
||||||
@@ -3188,7 +3188,7 @@ export const fortyFourthBattleIntroPages: StoryPage[] = [
|
|||||||
background: 'story-maicheng-isolation',
|
background: 'story-maicheng-isolation',
|
||||||
speaker: '유비',
|
speaker: '유비',
|
||||||
portrait: 'liuBei',
|
portrait: 'liuBei',
|
||||||
text: '운장의 깃발이 고립되었다면, 늦더라도 길을 열어야 하오. 북문과 갈대 물목을 동시에 살펴 포위망을 찢고 맥성의 퇴로를 확보하시오.'
|
text: '운장의 깃발이 고립되었다면, 늦더라도 길을 열어야 하오. 북문 퇴로와 갈대 물목을 동시에 살펴 포위망을 찢고 남은 병사를 빼내시오.'
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -3198,7 +3198,7 @@ export const fortyFourthBattleVictoryPages: StoryPage[] = [
|
|||||||
bgm: 'militia-theme',
|
bgm: 'militia-theme',
|
||||||
chapter: '뚫린 좁은 길',
|
chapter: '뚫린 좁은 길',
|
||||||
background: 'story-maicheng-isolation',
|
background: 'story-maicheng-isolation',
|
||||||
text: '맥성 북문의 좁은 길은 간신히 열렸고, 흩어진 병사들이 다시 깃발 아래로 모였습니다. 그러나 길 밖의 횃불은 여전히 더 많았습니다.'
|
text: '맥성 북문 밖 좁은 퇴로는 간신히 열렸고, 흩어진 병사들이 다시 깃발 아래로 모였습니다. 그러나 길 밖의 횃불은 여전히 더 많았습니다.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 'forty-fourth-lu-meng-tightens',
|
id: 'forty-fourth-lu-meng-tightens',
|
||||||
@@ -3206,7 +3206,7 @@ export const fortyFourthBattleVictoryPages: StoryPage[] = [
|
|||||||
chapter: '좁아지는 포위',
|
chapter: '좁아지는 포위',
|
||||||
background: 'story-maicheng-isolation',
|
background: 'story-maicheng-isolation',
|
||||||
speaker: '제갈량',
|
speaker: '제갈량',
|
||||||
text: '여몽은 물러난 것이 아니라 더 넓게 둘러섰습니다. 맥성의 작은 승리는 시간을 벌었을 뿐, 형주를 되찾는 길은 아직 멀고 험합니다.'
|
text: '여몽은 물러난 것이 아니라 더 넓게 둘러섰습니다. 맥성의 작은 승리는 병사를 살릴 시간을 벌었을 뿐, 형주를 되찾는 길은 이미 멀고 험합니다.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 'forty-fourth-next-jing-loss',
|
id: 'forty-fourth-next-jing-loss',
|
||||||
@@ -3214,7 +3214,7 @@ export const fortyFourthBattleVictoryPages: StoryPage[] = [
|
|||||||
chapter: '형주의 상실',
|
chapter: '형주의 상실',
|
||||||
background: 'story-maicheng-isolation',
|
background: 'story-maicheng-isolation',
|
||||||
speaker: '마량',
|
speaker: '마량',
|
||||||
text: '맥성의 포위는 풀렸으나 강릉과 공안의 마음은 이미 갈라졌습니다. 다음 장에서는 형주 상실의 대가와 유비의 분노가 더 큰 전쟁으로 번지는 흐름을 준비해야 합니다.'
|
text: '맥성의 퇴로는 열렸으나 강릉과 공안의 마음은 이미 갈라졌습니다. 다음 장에서는 형주 상실의 대가와 유비의 분노가 이릉으로 번지는 흐름을 준비해야 합니다.'
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -1484,15 +1484,31 @@ const sortieRulesByBattleId: Partial<Record<BattleScenarioId, SortieRuleDefiniti
|
|||||||
maxUnits: 7,
|
maxUnits: 7,
|
||||||
requiredUnitIds: ['liu-bei', 'guan-yu'],
|
requiredUnitIds: ['liu-bei', 'guan-yu'],
|
||||||
recommended: [
|
recommended: [
|
||||||
{ unitId: 'liu-bei', reason: '맥성으로 몰린 관우군의 명분과 패배 조건의 중심입니다.' },
|
{ unitId: 'liu-bei', reason: '관우군을 버리지 않는 명분의 중심입니다.' },
|
||||||
{ unitId: 'guan-yu', reason: '맥성 고립전의 핵심 장수이며 반드시 생존해야 합니다.' },
|
{ unitId: 'guan-yu', reason: '맥성 돌파 전열의 핵심 장수입니다.' },
|
||||||
{ unitId: 'wang-ping', reason: '북문과 산길 사이의 좁은 통로를 읽어 포위망 돌파에 강합니다.' },
|
{ unitId: 'wang-ping', reason: '북문과 산길의 좁은 통로를 읽습니다.' },
|
||||||
{ unitId: 'zhao-yun', reason: '갈대 물목과 동쪽 숲길을 빠르게 오가며 추격대를 끊습니다.' },
|
{ unitId: 'zhao-yun', reason: '갈대 물목과 숲길 추격대를 끊습니다.' },
|
||||||
{ unitId: 'huang-zhong', reason: '성벽과 갈대밭 너머 궁병을 견제해 관우의 전열을 보호합니다.' },
|
{ unitId: 'huang-zhong', reason: '성벽 너머 궁병을 견제합니다.' },
|
||||||
{ unitId: 'ma-dai', reason: '위군 기병의 측면 차단에 대응하는 빠른 기동 카드입니다.' },
|
{ unitId: 'ma-dai', reason: '위군 기병의 측면 차단에 대응합니다.' },
|
||||||
{ unitId: 'ma-liang', reason: '형주 민심과 맥성 북문 병사들의 흔들림을 다독이는 참모입니다.' }
|
{ unitId: 'ma-liang', reason: '형주 민심과 병사 사기를 붙듭니다.' }
|
||||||
],
|
],
|
||||||
note: '맥성 고립전은 스물두 명 중 일곱 명만 출전합니다. 유비와 관우는 필수이며, 북문 돌파, 갈대 물목 차단, 위군 기병 대응 중 어디에 힘을 실을지 선택하십시오.'
|
recommendedClasses: [
|
||||||
|
{ label: '퇴로 명분', classKeys: ['lord'], reason: '유비가 있어야 관우군을 버리지 않는 선택이 설득됩니다.' },
|
||||||
|
{ label: '북문 전열', classKeys: ['spearman', 'infantry'], reason: '관우와 황충이 북문 앞 좁은 전열을 지탱합니다.' },
|
||||||
|
{ label: '지형 판정', classKeys: ['infantry', 'strategist'], reason: '왕평과 마량이 산길, 숲길, 갈대 물목의 위험을 읽습니다.' },
|
||||||
|
{ label: '기동 차단', classKeys: ['cavalry'], reason: '조운과 마대가 양쪽 추격대를 빠르게 끊습니다.' },
|
||||||
|
{ label: '원거리 견제', classKeys: ['archer'], reason: '황충이 물목 너머 궁병과 봉쇄선을 눌러 줍니다.' }
|
||||||
|
],
|
||||||
|
deploymentSlots: [
|
||||||
|
{ x: 24, y: 45, role: 'reserve', unitId: 'liu-bei', label: '퇴로 명분' },
|
||||||
|
{ x: 30, y: 38, role: 'front', unitId: 'guan-yu', label: '북문 전열' },
|
||||||
|
{ x: 37, y: 34, role: 'flank', unitId: 'wang-ping', label: '산길 판단' },
|
||||||
|
{ x: 33, y: 42, role: 'flank', unitId: 'zhao-yun', label: '물목 기동' },
|
||||||
|
{ x: 35, y: 36, role: 'front', unitId: 'huang-zhong', label: '궁병 견제' },
|
||||||
|
{ x: 43, y: 39, role: 'flank', unitId: 'ma-dai', label: '기병 차단' },
|
||||||
|
{ x: 31, y: 45, role: 'support', unitId: 'ma-liang', label: '사기 수습' }
|
||||||
|
],
|
||||||
|
note: '맥성 고립전은 성 안에서 오래 버티는 전투가 아니라 북문 밖 퇴로를 열어 관우군을 빼내는 전투입니다. 왕평으로 산길을 읽고, 조운·마대로 추격대를 끊으며, 황충으로 갈대 물목의 궁병을 눌러 주십시오.'
|
||||||
},
|
},
|
||||||
'forty-fifth-battle-yiling-vanguard': {
|
'forty-fifth-battle-yiling-vanguard': {
|
||||||
maxUnits: 7,
|
maxUnits: 7,
|
||||||
|
|||||||
Reference in New Issue
Block a user