Skip to content

Releases

1.0.3-2

Choose a tag to compare

@Yamada0001 Yamada0001 released this 15 Aug 05:44

修复Maven Shade 将org.sqlite重定位 导致 Java 类名与SQLite JNI符号不匹配
优化建造系统
新增大基建事件
修复部分活动不显示问题
修复潜在空指针及未注册幼年村民问题
删除恒真判断 冗余类型检测 重复 switch 分支和无效异常捕获

1.0.3

Choose a tag to compare

@Yamada0001 Yamada0001 released this 14 Aug 05:56

以下Bug均为Claude Fable5(Ultracode模式)提出 修复由GPT5.6-Sol(Xhigh模式)修复(多轮修复)

P0 B1 行动点数永不恢复,村民终身罢工
P0 B2 战术 AI 下发 TRADE 后村民永久卡死
P0 B3 农民播种把耕地方块替换成作物
P0 B4 破坏方块无掉落、不发事件:产出恒为零 + 绕过保护插件
P0 B5 医疗系统阈值 0.02:治疗机制形同虚设
P1 B6 玩家误伤一次即被永久标记为敌人,且集合无限增长
P1 B7 AI 配额饥饿:永远同一批村民获得 AI,其余终身无 AI
P1 B8 国王调兵:跨区域实体访问 + 不分村庄 + O(全体) 每 0.5s
P1 B9 补装备顺带满血复活:战斗中无限回血
P1 B10 FLEE 动作语义反转
P1 B11 非战斗职业可被 AI 命令 ATTACK,COMBAT 状态无人复位
P1 B12 悬崖检测导致桥上/高台村民永久恐慌,且可能把人推下崖
P1 B13 已存在村民的创建时间被每次保存覆写为当前时间
P1 B21 巡逻航点 Y 恒为村庄中心高度 + 3D 到达判定:坡地巡逻整体卡死
P2 B14 每 0.5s 对每个村民做 2~3 次全量实体扫描
P2 B15 AsyncPathfinder 是死代码,且算法本身不可用
P2 B16 AI 动作解析用 contains,容易误判
P2 B17 屠夫/渔夫/厨师任务无闭环
P2 B18 附魔师每 5s 重置交易列表,清空 uses/demand
P2 B19 弓箭手伤害不吃职业攻击属性
P2 B20 milkCooldown 按动物 UUID 缓存且永不清理
P2 B22 生活行为维度缺失:不睡觉、不进食、不避雨
P0 V1 村庄创建无锁「检查后创建」,并发注册必产重复村庄
P1 V2 idSeq 与 dbId 同步是非原子的 check-then-set
P1 V3 population 双数据源 + 读改写竞态
P1 V4 村庄查询方法跨区域读实体位置,读路径隐藏写副作用
P1 V5 deduplicate 基于异步合并的过期快照,二阶段结果不可信
P1 V6 setKing 冲突时静默整村合并,副作用过重
P2 V7 建筑选址 Y 恒为村庄中心 Y
P2 V8 StrategicAI 静态缓存生命周期与插件不一致
P0 S1 村民间交易物品不守恒:买方得货后卖方环节可静默失败
P1 S2 四层嵌套 runForEntity 回调,retired 回调只释放锁不回滚状态
P1 S3 护甲数值语义错位:0.6「减伤比例」被换算成 12 点甲
P1 S4 国王既要坐镇中心又是战斗职业:两套系统抢移动控制权
P1 S6 SocialEngine 关键配置读取无默认值:配置缺项时社交系统静默瘫痪
P1 S7 TradeService 把「价格」当「需求」传参:高价商品价格自我放大
P2 S5 职业经济链依赖的产出全为零(同 B3/B4/B17)环。

静态可变全局状态泛滥:ThreatDetector.ILLEGAL_PLAYERS、StrategicAI.planningVillages/lastCommandTime、MovementHelper 两个 Map 均为 static,插件 reload 后残留脏数据,测试隔离困难。建议统一收敛到 BV 容器管理的实例字段并纳入 shutdown 清理。
Folia 跨区域读实体的模式性风险:dispatchGuards(B8)、countVillagersInVillage / resolveKingName / hasBuilder(V4)都在非实体所属线程读位置。建议统一「位置快照上报」机制:各村民在自己的区域 tick 里更新 BVillager 缓存坐标,全部聚合查询只读缓存。
墙上时钟与游戏时钟混用:冷却、社交、战术间隔全用 System.currentTimeMillis(),服务器卡顿/暂停时行为与游戏内时间脱节;夜间判定又用 worldTime。建议行为类冷却统一改按 tick 计数。
调度风暴:tickCombat(10t)、tickSocial(40t)对全体村民无条件 runForEntity,村民数量大时每秒产生数千个区域任务,其中绝大多数是空转。建议在全局线程先做廉价预筛(状态、上次活跃时间、是否有玩家在附近区块),再调度区域任务。
异常吞噬:大量 catch (Throwable ignored)(biome 获取、pathfinder、gamemode 等),建议至少 debug 级记录,避免掩盖 API 变更引入的系统性失败。

第二轮修复
P0 C1 区块卸载会把 AI 记忆保存为空
P0 C2 村民死亡被当成普通卸载,死亡记录、人口和国王绑定永久残留
P0 C3 插件启用前已经加载的村民不会被注册
P0 C4 建造启动与工人选择跨越 Folia 线程边界
P0 C5 自主交易的补偿只在内存中,卸载/停服仍会丢物品
P0 C6 施工取消没有世界回滚,半栋建筑和地形破坏永久保留
P1 C7 村庄合并事务没有迁移从表,重启后产生孤儿数据
P1 C8 注册与保存缺少“进行中”状态,快速加载/卸载会重复计数或回写旧快照
P1 C9 启动加载没有统一屏障,失败也不会让插件停止
P1 C10 战略通知在 Folia 全局线程直接读取玩家实体
P1 C11 地形分析只在中心区域线程读取整个矩形
P1 C12 管理命令直接访问已选择的远端村民实体
P1 C13 四个功能开关无效,reload 也只应用部分配置
P1 C14 屠夫会无差别杀死幼崽和最后的繁殖种群
P1 C15 多处“先改内存、后异步落库”失败时不回滚
P2 C16 农民播种和开垦仍然凭空生成资源
P2 C17 数据库迁移把所有 ALTER 错误都当作“列已存在”
P2 C18 配置中的 async-threads 没有生效

1.0.2

Choose a tag to compare

@Yamada0001 Yamada0001 released this 31 Jul 04:06

修复了如下内容
1.修复了村民头顶没正确显示的问题
2.修改生电区选择逻辑 使其对标主流领地插件选择逻辑
3.优化prompt提示词
4.修复代码冗余部分提升稳定与性能
5.新增AiChat时 村民能识别你手中物品 身上穿戴的盔甲
6.新增GUI页面方便OP进行村民操作
7.新增生电区改名(支持任意字符“甚至是emoji”)
8.修复AI Reload部分情况下会导致错误
9.修复村民交易部分失效问题
10.新增NBT模板建造及其建筑群合成功能(玩家可自定义导入NBT)
11.Qonana测试通过无错误 IDE警告大量修复

1.0.1

Choose a tag to compare

@Yamada0001 Yamada0001 released this 24 Jul 06:42

新增职业 村民互动性行为(交易 钓鱼 收集牛奶 剪羊毛)

1.0.0

Choose a tag to compare

@Yamada0001 Yamada0001 released this 24 Jul 04:18
7c33ca6

VibeCoding产物 图一乐就好