15.2 经济事故案例库
上一节教会我们认出可疑账号,这一节处理已经发生的事故。SLG 的经济事故翻来覆去就那么几类:产出漏洞、复制 bug、汇率套利、赛季重置算错、补偿发多。每一类都给「症状 / 根因 / 影响面 / 处置」四段,并把案例库结构化成一份可校验的配置——真实事故一律标 X(需真实业务环境,命令行不可复现),只归纳公开可观察的机制。
category
上一节教会我们认出可疑账号,这一节处理已经发生的事故。SLG 的经济事故翻来覆去就那么几类:产出漏洞、复制 bug、汇率套利、赛季重置算错、补偿发多。每一类都给「症状 / 根因 / 影响面 / 处置」四段,并把案例库结构化成一份可校验的配置——真实事故一律标 X(需真实业务环境,命令行不可复现),只归纳公开可观察的机制。
经济系统设计得再稳,也会被人从外部撬动。这一节把打金识别拆成四条可判定的统计规则——单位时间产出离群、资源转移的星型拓扑、账号行为高度同步、资源流向单一出口——用自己实现的确定性 PRNG 造一批模拟账号,跑出混淆矩阵与阈值扫描曲线,并用一份配置同时喂给 Python 与 TypeScript,证明两侧结果逐位一致。
哪里有价差,哪里就有套利。本节先讲清套利的经济学:跨市场价差扣掉手续费与运费后还剩多少,什么程度是健康的、什么程度会招来工作室;再给一个可跑的工作室收益模型,用账号数、日产金、封禁率与成本算出打金 ROI,并给出跨市场套利千分比与 ROI 的风控阈值建议。
撮合规则只决定「谁和谁成交」,定价机制才决定「成交在什么价位、能不能一直成交下去」。本节讲价格如何形成——供需、锚定、系统指导价——以及流动性怎么用挂单深度、成交率、买卖价差来度量;再用多玩家限价订单簿仿真跑 40 轮,观察价格收敛与价差收窄,输出 CSV 与纯 Python SVG 图。
玩家之间的交换是 SLG 经济最容易被低估的一环。本节把拍卖行、摆摊、交易所三种市场形态拆开,讲清集中撮合、分散位置成本、挂单深度各自对经济的影响与实现代价;再对同一批买卖订单用先到先得、价格优先、价格时间优先三种规则跑出成交价与成交量,对比差异。
赛季边界是 SLG 最彻底的货币回收手段。本节让四种方案(不清零 / 全额清零 / 按比例压缩 / 压缩+保底)各跑 10 个赛季、每赛季 90 天:不清零的赛季初存量膨胀到 2500 万,全额清零永远停在 0,按比例压缩收敛到 13 万却低于健康带,只有压缩+保底收敛到 20 万。附纯 Python SVG 与 TypeScript 对照。
同一段经济,叠加不同的沉淀与回收组合,存量曲线会走到哪?本节用《王朝纪元》跑 150 天:升级消耗、仓库税、交易税三档沉淀,限时兑换、赛季宝箱、拍卖行抽水三档回收,对比四种组合的终值与末段斜率,得出「沉淀决定稳态高度、回收决定到达速度」的结论。
经济生病了,第一步是能诊断。本节把「通胀 / 通缩 / 健康」从口头判断变成可判定的量:读一段存量时序,算出存量、价格、交易三组日均变化率,再归因到产出侧、消耗侧或外部注入;用《王朝纪元》五个场景验证判定与归因,并给出判定稳定性与余量的 B 层基准。
把产出与消耗合起来跑 180 天多玩家闭环仿真:300 名玩家、确定性 PRNG、逐日结算存量,判定经济是否收敛到稳态。输出 JSON、CSV 与纯 Python SVG 三曲线(存量/日产/日耗),并给出稳态偏差基准——第 170–180 天存量相对波动,软告警不硬失败。
把「存量 = 历史产出 − 历史消耗」写成方程,推导稳态条件:产出速率 = 消耗速率。用伐木场产出曲线与消耗曲线求数值解,讲清楚稳态是设计出来的——产出增速只要不低于消耗增速,稳态就不存在。附可跑的 S 层脚本与 TypeScript 原型。
把 11.1 的养成消耗与 11.2 的市场回收汇总成一条 N 天消耗曲线,用 S 层脚本跑出每天各消耗槽的明细与合计,再用 B 层基准对活动强度做蒙特卡洛抖动,量化总消耗的 P10–P90 带宽。闭环(产出与消耗一起建模)留给第 12 章。
摩擦成本怎么设计:税率太高玩家绕过市场、回收不足,太低又回收不够。本节用 S 层仿真把税率从 0% 扫到 20%,画出回收量、交易量、玩家净收益三条曲线,找到拉弗拐点,并用 TypeScript 原型与断言验证同一份配置两侧逐位一致,最后给出保守取值的建议。
资源到哪去:本节盘点 SLG 的六类消耗槽(建筑升级、科技研发、兵种训练、行军消耗、伤兵治疗、交易税),区分线性、指数、分段三种消耗曲线形态,并用 S 层脚本从 config/buildings.json 算出各等级升级成本表,折算成「回本时间」与产出速率对照。
把 10.1 的建筑产出、10.2 的离线效率与脉冲型产出源汇总成一条 N 天产出曲线,是本节的落点。我们用一段 S 层脚本仿真 60 天产出并对累计曲线做幂律拟合,输出 JSON、CSV 与纯 Python SVG;再用一段 B 层脚本把曲线在锚点日与设计目标做残差对照,超阈值只软告警不硬失败。
同一份产出速率表,在线玩家与离线玩家拿到的资源并不一样。本节讨论离线产出该不该有、上限怎么设、回归玩家怎么补,并用一段 S 层脚本对比无离线、有离线、有上限离线三种方案 30 天的资源曲线,输出 CSV 与纯 Python SVG,再用 TypeScript 原型断言同一组数字。
产出源决定了资源从哪来。本节把 SLG 的产出端拆成连续型与脉冲型两类,盘点地块、建筑、任务活动、掠夺、赠送、付费七种来源的速率特征与可控性,并用一段 S 层脚本从 config/buildings.json 算出四栋建筑十级的每小时产出表并输出 CSV,再用 TypeScript 原型断言同一张表。
定位不该是一句 PPT 口号,而是一串可判定的判据。本篇把《王朝纪元》的一句话定位拆成 must / must_not / should 三类约束,再用一个约束检查器把候选功能逐条过筛,输出接受 / 告警 / 否决三档,让每次功能评审都有可复算的门禁,而不是靠拍脑袋。
定位不能只朝内看画像,还要朝外看竞品。本篇给一套只依赖公开可观察机制的竞品拆解方法:把「某机制是否存在」做成 0/1 矩阵,算出品类采用率与自研《王朝纪元》的差异向量,识别惯例轴与分水岭轴,再用 B 基准把背离强惯例的轴挑成软告警,全程不碰任何竞品后台数据。
「SLG」几乎从不指同一件事。本篇用一张 8 轴设计图谱把 4X 沙盘、城战城建、卡牌 SLG 量化区分开,跑出三个方向的两两距离与真正的分界线排序,再给一个配置驱动的分类器,把任意产品画像映射到最近的细分方向,为《王朝纪元》的立项定位提供可复算的底稿。
《SLG 游戏产品设计》卷一《产品架构与经济系统》全书目录:15 章 45 节,第一部分讲产品定位、玩家分层、核心循环、系统地图、功能架构、交互信息架构、版本规划与指标体系,第二部分讲资源货币、产出、消耗、产出回收闭环、通胀治理、交易市场与经济风控。每一节都配可跑的 Python 仿真或 TypeScript 原型,围绕虚构 SLG《王朝纪元》与贯穿工具链 bastion 展开。