Screeps 一个房间报错导致其他房间停摆怎么办:异常隔离、限频日志与自动恢复
当某个Screeps房间或模块抛出JavaScript异常时,用房间级错误边界、限频日志、连续错误暂停和冷却重试,让其他房间继续执行,并区分异常、API返回码与CPU截止。
TAG
当前共有 9 篇文章使用这个长期主题标签。
当某个Screeps房间或模块抛出JavaScript异常时,用房间级错误边界、限频日志、连续错误暂停和冷却重试,让其他房间继续执行,并区分异常、API返回码与CPU截止。
系统解释 Screeps Store 的已用容量、剩余容量和总容量:区分通用 Store 与受限 Store,正确处理 resource 参数、0 与 null、Lab 双容量、Tombstone/Ruin 只读资源,以及安全的 withdraw/transfer 数量计算。
当 Game.cpu.bucket 持续下降时,用带迟滞的 NORMAL、CONSERVE、EMERGENCY 与 RECOVERY 状态机保护 Spawn、采集、Controller 和防御,逐级暂停高成本任务,并在恢复后分阶段重新启用。
解释Game对象、模块全局变量和Memory的生命周期差异,演示Creep角色状态、版本迁移、对象ID保存和Memory体积控制。
把角色行为、Memory维护和房间逻辑拆成Node.js风格模块,统一导出契约、错误隔离、角色分派和global reset后的可重建状态。
写给 Screeps 新手的 Creep 身体部件入门:认识 WORK、CARRY、MOVE、getActiveBodyparts() 与 Store 容量,并正确区分 harvest() 和 ERR_FULL。
用固定名称整理 Harvester1、Upgrader1 和 Builder1,把安全检查、创建、运输、升级、建造、维修和返回值处理放进一份新手可读代码。
写给 Screeps 新手的第一段 Creep 控制教程:安全找到 Creep 和 Source,用 Store 状态判断是否继续采集,并正确处理 harvest() 返回值。
用一篇新手入门文章认识 Screeps: World:它与普通策略游戏有什么不同、玩家需要做什么,以及 Room、Creep、Spawn、Source 和 Controller 如何组成基础循环。