Changelog
版本:1.0.4 采购意向、价格信号和经营日志修正
经济系统
-
新增城镇级采购意向
- 新增
TownblockEntity.PurchaseIntent,用于记录镇内实体对某商品的持续采购需求。 - 工匠会根据工坊配方材料缺口登记或续期采购意向。
- 材料库存恢复后会撤销对应采购意向,避免幽灵需求。
- 商人日结时读取镇内采购意向,并把它折算进目标库存和收购意愿。
- 采购意向不直接给实体发货,也不直接推动出售价上涨。
- 新增
-
修正缺货涨价螺旋
- 出售价涨价现在只由真实成交
todaySold > 0触发。 unmetBuyDemand仍然影响目标库存和收购意愿,但不会单独让出售价上涨。purchaseIntentDemand也只影响补货,不参与出售价涨价。- 如果库存为 0 且一直没人成功买到,出售价会走无成交回落逻辑,避免越缺货越涨、越涨越买不到。
- 出售价涨价现在只由真实成交
-
继续保持收购价和出售价独立
- 没有恢复固定价差保护。
- 出售价不会因为收购价高而被硬性抬高。
- 收购价和出售价仍按各自基础价、成交历史、库存和需求信号独立调整。
-
经济 GUI 同步修正
- 交易成功、缺货失败、买不起、商人收不起货都会触发方块实体同步。
- 修复日志已经记录“购买没有库存”,但经济数据页压力仍显示 0 的问题。
- 经济数据页压力行新增“采购意向”。
- 价格变化显示改为“较昨日”,不再用“当前价 - 基础价”当涨跌。
-
玩家 GUI 失败信号限流
- 玩家在商人 GUI 中反复点击导致的失败信号会被限流。
- 防止通过狂点刷
unmetBuyDemand/unaffordableDemand。
日志
-
商人每日经营总结改为当天收工时写入
- 新增
MerchantBusinessSummaryTask。 - 商人在
MerchantCloseGoal收工流程中写入当天经营总结。 - 不再由跨天经济结算写入经营总结,避免看起来像昨天的账。
- 总结内容包括买货花费、卖货收入、净收入、热销商品、主要收购物品。
MerchantblockEntity保存LastBusinessSummaryDay,避免同一天重复写。
- 新增
-
价格日志仍保留在日结
- 价格变化发生在跨天结算时,所以收购价/出售价调整日志仍由
settleEconomyDay写入。
- 价格变化发生在跨天结算时,所以收购价/出售价调整日志仍由
职业行为
-
农民交易条件修正
- 只有身上有小麦时,农民才会执行卖小麦交易。
- 买种子和买食物要求身上有 money。
- 减少“家里有小麦但身上没小麦,于是空跑卖货”的情况。
-
工坊买材料提前触发
- 工坊买材料不再等到低于 1 批配方材料才触发。
- 当前低于目标材料库存的一半就会提前补货。
- 目标材料库存仍按
WORKSHOP_TARGET_CRAFT_BATCHES计算。 - 实际购买量仍受预算、价格弹性、商人库存和失败冷却限制。
-
资源工出售增加节流
- 资源工成功出售一轮后会进入
resource.sellSuccessCooldownTicks冷却,默认 1200 tick。 - 资源工平时至少攒到
resource.sellMinBatch个资源产物才会出门卖,默认 8。 - 临近收工时
time >= 10000会允许小批量出售,避免把零散资源带到晚上。 - 失败出售仍使用原有失败冷却,减少找不到买家或商人收不起货时的反复尝试。
- 资源工成功出售一轮后会进入
Files
betterworld-1.0.4-forge1.20.1.jar(686.55 KiB) Primary Download
External resources
Project members

xxxx_62669
Member
Technical information
License
MIT
Client side
required
Server side
required
Project ID
