QA and tune southern campaign battles

This commit is contained in:
2026-06-27 15:06:08 +09:00
parent 7dd437c45d
commit f32e0fc61d
5 changed files with 383 additions and 296 deletions

View File

@@ -13,6 +13,16 @@ const sunQianSortie = ['liu-bei', 'guan-yu', 'zhang-fei', 'jian-yong', 'mi-zhu',
const liuBiaoSortie = ['liu-bei', 'guan-yu', 'zhang-fei', 'zhao-yun', 'sun-qian', 'mi-zhu'];
const zhugeFirstSortie = ['liu-bei', 'zhuge-liang', 'zhao-yun', 'guan-yu', 'zhang-fei', 'sun-qian'];
const envoySortie = ['liu-bei', 'zhuge-liang', 'sun-qian', 'zhao-yun', 'guan-yu', 'zhang-fei'];
const redCliffVanguardSortie = ['liu-bei', 'zhuge-liang', 'zhao-yun', 'guan-yu', 'zhang-fei', 'sun-qian'];
const redCliffFireSortie = ['liu-bei', 'zhuge-liang', 'guan-yu', 'zhao-yun', 'zhang-fei', 'mi-zhu'];
const jingSouthSortie = ['liu-bei', 'zhuge-liang', 'guan-yu', 'zhao-yun', 'sun-qian', 'mi-zhu'];
const guiyangSortie = ['liu-bei', 'ma-liang', 'zhuge-liang', 'zhao-yun', 'guan-yu', 'sun-qian'];
const wulingSortie = ['liu-bei', 'ma-liang', 'zhuge-liang', 'zhao-yun', 'zhang-fei', 'mi-zhu'];
const changshaSortie = ['liu-bei', 'gong-zhi', 'yi-ji', 'zhuge-liang', 'guan-yu', 'zhao-yun'];
const yizhouReliefSortie = ['liu-bei', 'zhuge-liang', 'huang-zhong', 'wei-yan', 'zhao-yun', 'mi-zhu'];
const fuPassSortie = ['liu-bei', 'pang-tong', 'zhuge-liang', 'wei-yan', 'huang-zhong', 'zhao-yun'];
const luoOuterSortie = ['liu-bei', 'fa-zheng', 'zhuge-liang', 'huang-zhong', 'zhao-yun', 'mi-zhu'];
const luofengSortie = ['liu-bei', 'pang-tong', 'wu-yi', 'fa-zheng', 'zhao-yun', 'huang-zhong'];
const earlyCampaignBattles = [
{ no: 1, id: 'first-battle-zhuo-commandery', selected: [], targets: ['rebel-leader'], protected: ['liu-bei'] },
@@ -154,6 +164,79 @@ const refugeCampaignBattles = [
}
];
const southernCampaignBattles = [
{
no: 21,
id: 'twenty-first-battle-red-cliffs-vanguard',
selected: redCliffVanguardSortie,
targets: ['redcliff-vanguard-leader-cai-mao'],
protected: ['liu-bei', 'zhuge-liang']
},
{
no: 22,
id: 'twenty-second-battle-red-cliffs-fire',
selected: redCliffFireSortie,
targets: ['redcliff-fire-leader-cao-cao'],
protected: ['liu-bei', 'zhuge-liang']
},
{
no: 23,
id: 'twenty-third-battle-jingzhou-south-entry',
selected: jingSouthSortie,
targets: ['jing-south-leader-xing-daorong'],
protected: ['liu-bei', 'zhuge-liang']
},
{
no: 24,
id: 'twenty-fourth-battle-guiyang-persuasion',
selected: guiyangSortie,
targets: ['guiyang-leader-zhao-fan'],
protected: ['liu-bei', 'zhuge-liang']
},
{
no: 25,
id: 'twenty-fifth-battle-wuling-mountain-road',
selected: wulingSortie,
targets: ['wuling-leader-jin-xuan'],
protected: ['liu-bei', 'zhuge-liang']
},
{
no: 26,
id: 'twenty-sixth-battle-changsha-veteran',
selected: changshaSortie,
targets: ['changsha-leader-han-xuan'],
protected: ['liu-bei', 'zhuge-liang']
},
{
no: 27,
id: 'twenty-seventh-battle-yizhou-relief-road',
selected: yizhouReliefSortie,
targets: ['yizhou-leader-yang-huai'],
protected: ['liu-bei', 'zhuge-liang']
},
{
no: 28,
id: 'twenty-eighth-battle-fu-pass-entry',
selected: fuPassSortie,
targets: ['fupass-leader-gao-pei'],
protected: ['liu-bei', 'zhuge-liang']
},
{
no: 29,
id: 'twenty-ninth-battle-luo-outer-wall',
selected: luoOuterSortie,
targets: ['luo-leader-zhang-ren'],
protected: ['liu-bei', 'zhuge-liang']
},
{
no: 30,
id: 'thirtieth-battle-luofeng-ambush',
selected: luofengSortie,
targets: ['luofeng-leader-zhang-ren'],
protected: ['liu-bei', 'pang-tong']
}
];
const allRepresentativeBattles = [
{ no: 1, id: 'first-battle-zhuo-commandery', selected: [], targets: ['rebel-leader'], protected: ['liu-bei'] },
{
@@ -217,7 +300,8 @@ const allRepresentativeBattles = [
const qaBattleSets = {
representative: allRepresentativeBattles,
early: earlyCampaignBattles,
refuge: refugeCampaignBattles
refuge: refugeCampaignBattles,
southern: southernCampaignBattles
};
const qaSetName = process.env.QA_SET ?? 'representative';
const qaBattleSet = qaBattleSets[qaSetName];