From 53d5216e880d041d4287ab90161c8509965edea2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B0=A6=E5=90=9B?= <73606411+setube@users.noreply.github.com> Date: Thu, 18 Dec 2025 04:41:52 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BC=98=E5=8C=96NPC=E5=86=B7=E5=8D=B4?= =?UTF-8?q?=E4=B8=8E=E6=88=90=E9=95=BF=E5=B9=B3=E8=A1=A1=E5=8F=8A=E5=A4=9A?= =?UTF-8?q?=E8=AF=AD=E8=A8=80=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 为NPC初始化和数据迁移时增加侦查/攻击冷却的随机延迟,避免所有NPC同时行动。调整NPC成长难度参数,降低前期NPC威胁,提升平滑度。修正多语言包中侦查被发现提示内容。优化舰队警报弹窗滚动体验。 --- src/App.vue | 12 +++-- src/components/IncomingFleetAlerts.vue | 2 +- src/locales/de.ts | 2 +- src/locales/en.ts | 2 +- src/locales/ja.ts | 2 +- src/locales/ko.ts | 2 +- src/locales/ru.ts | 2 +- src/locales/zh-CN.ts | 2 +- src/locales/zh-TW.ts | 2 +- src/logic/npcGrowthLogic.ts | 74 +++++++++++++------------- src/utils/migration.ts | 15 ++++-- 11 files changed, 64 insertions(+), 53 deletions(-) diff --git a/src/App.vue b/src/App.vue index 238823f..d1ea4e2 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1136,6 +1136,11 @@ // 这是NPC的星球 if (!npcMap.has(planet.ownerId)) { + // 为每个NPC设置随机的初始冷却时间,避免所有NPC同时行动 + const now = Date.now() + const randomSpyOffset = Math.random() * 240 * 1000 // 0-4分钟的随机延迟 + const randomAttackOffset = Math.random() * 480 * 1000 // 0-8分钟的随机延迟 + npcMap.set(planet.ownerId, { id: planet.ownerId, name: `NPC-${planet.ownerId.substring(0, 8)}`, @@ -1145,8 +1150,8 @@ relations: {}, // 外交关系 allies: [], // 盟友列表 enemies: [], // 敌人列表 - lastSpyTime: 0, // 上次侦查时间 - lastAttackTime: 0, // 上次攻击时间 + lastSpyTime: now - randomSpyOffset, // 设置随机的上次侦查时间 + lastAttackTime: now - randomAttackOffset, // 设置随机的上次攻击时间 fleetMissions: [], // 舰队任务 playerSpyReports: {} // 对玩家的侦查报告 }) @@ -1224,7 +1229,8 @@ } const now = Date.now() - const allPlanets = Object.values(universeStore.planets) + // 合并玩家星球和NPC星球到allPlanets(NPC需要能够侦查和攻击玩家星球) + const allPlanets = [...gameStore.player.planets, ...Object.values(universeStore.planets)] // 更新每个NPC的行为 npcStore.npcs.forEach(npc => { diff --git a/src/components/IncomingFleetAlerts.vue b/src/components/IncomingFleetAlerts.vue index 6037781..1d6d514 100644 --- a/src/components/IncomingFleetAlerts.vue +++ b/src/components/IncomingFleetAlerts.vue @@ -1,6 +1,6 @@