这里是全站文章的归档入口,下面是按时间倒序排列的全部文章。若想按主题浏览,请从首页的专题分类进入。
7.2 难度曲线与心流模型
把难度值与玩家能力接成一条整数滞后追赶的递推曲线:玩家能力追不上突然跳高的峰值关时判定为焦虑、难度回落后能力追上则回到心流,逐关算出无聊/心流/焦虑三档分布,再用 B 层基准对每关难度做参数敏感性扰动,看心流占比会漂多少、单关扰动如何级联影响后续关卡。
posts
这里是全站文章的归档入口,下面是按时间倒序排列的全部文章。若想按主题浏览,请从首页的专题分类进入。
把难度值与玩家能力接成一条整数滞后追赶的递推曲线:玩家能力追不上突然跳高的峰值关时判定为焦虑、难度回落后能力追上则回到心流,逐关算出无聊/心流/焦虑三档分布,再用 B 层基准对每关难度做参数敏感性扰动,看心流占比会漂多少、单关扰动如何级联影响后续关卡。
上一节定下了版本列车的到站日期,本节回答「能不能做完」。用每个任务的人天估计与各职能每日产能,算出确定性完成日与瓶颈职能,再用蒙特卡洛把点估计变成区间,量化排期的系统性乐观偏差,并用《王朝纪元》版本的真实跑数,给出留缓冲与砍需求两类可执行决策。
版本列车决定 SLG 的内容供给节奏。本节把赛季结构、里程碑与依赖写成可校验的配置,用 bastion 脚本逐日扫描团队负载,一次抓出依赖倒置、里程碑间隔不足与资源冲突三类排期事故,并用《王朝纪元》的四车列车跑出可复现的真实报告与对应修复动作。
把《合成小岛》的 20 个关卡写成一张整数结构表:用 S 层脚本读表统计教学/主线/挑战/限时四类的占比、峰值关的相邻间隔与难度回落节奏,产出 CSV 与纯 Python 绘制的 SVG 图,让关卡结构从主观感觉变成可统计、可回归、可复核的数字。
把核心循环落成一个能跑的最小可玩原型:用 TypeScript 写可播种、无 Math.random 的合成内核,用 node --test 断言不变量,打包成单文件 HTML,再用 Playwright 无头注入输入、采样状态、验证确定性并截图存档。
把新手引导建模为「前置链 + 状态机」:每一步有前置步骤与基础通过率,前置为 AND 语义时瓶颈由最难过的一步决定。用脚本仿真分步流失漏斗,算出最终转化率并定位流失最大的步骤,输出 CSV 与漏斗图,含可跑的 Python 仿真与 TypeScript 状态机原型。只谈信息架构与步骤编排,不谈视觉表现。
把高频操作的最短点击路径建模成图上最短路问题:边权是一次跳转的点击成本,用 Dijkstra 求主界面到目标功能的最少点击次数,再按操作频率算加权平均点击成本,最后与设计预算做基准对照。含可跑的 Python 仿真、TypeScript 原型、CSV 明细与软告警基准。
给核心循环装上时钟与密度:用配置把每一次可感知反馈数成一个事件,算出《合成小岛》每秒反馈次数,再用整数匹配函数把它映射到一条单峰心流曲线,并用 B 层基准做循环时长参数的敏感性分析,讲清为什么反馈不是越多越好、以及怎么判断当前落点偏冷还是偏热。
把 SLG 主界面写成一张有向图:节点是界面、边是一次跳转、层级决定信息深度。本节用脚本从主城做 BFS,算出每个功能的跳转深度、可达性与没有入口的孤儿界面,并给出主界面扇出与层级规范怎么定的可量化依据,附可跑脚本与 SVG 图。只谈信息架构,不谈视觉与美术。
把「一句话玩法」拆成可判定的核心循环:用配置驱动《合成小岛》的动作 → 资源 → 反馈 → 再投入链条,再用 S 层脚本算出每个动作的时长与占整轮循环的比例,产出 CSV 与 SVG 时长条形图,并讲清占比读出来的三个设计结论与可检验自检表。
状态归属解决了「谁有权写」,这一节解决「一个模块怎么请求另一个模块去写」:用 TypeScript 接口把每个模块的写状态、读状态、命令与事件写死,再用 node --test 断言「同一份状态被两个模块写」「写了不属于自己的状态」一定被检出,让模块契约变成可执行的边界。
把「玩家会留下来多久」从一句愿望变成一条可递推的留存曲线:用 D1 起点加早晚两段整数衰减参数,递推出《合成小岛》0–30 天留存,输出 D1 / D7 / D30 与逐日序列,产 JSON + CSV + SVG,并用 B 层做衰减参数的敏感性扫描与软告警。
功能树钉死了「功能归谁」,这一节钉死「状态归谁」:每份状态有且只有一个写者,可被多个模块读。用《王朝纪元》9 份状态的归属表校验单写者、归属一致与引用有效,再用耦合度基准把「活动模块读了四个模块的状态」这类越界软告警出来,让模块边界真正稳固。
把「谁愿意花钱」从一句运营直觉变成一条可仿真的意愿轴:按动机把《合成小岛》用户切成五层,每层给出整数付费率与整数 ARPPU,用同一份配置算出总体付费率、总体 ARPPU 与总体 ARPDAU,产 JSON + CSV + SVG,并显式暴露整数地板除的 1 分钱缺口。
把「谁在玩」从一句口号拆成一张可仿真的画像表:定义《合成小岛》五类示例画像(通勤碎片族 / 睡前放松族 / 排队等待族 / 亲子陪伴族 / 深度成就族),给出各自的占比、日打开次数、单次时长、D1 留存与人均日广告次数,再用千分比占比加权出一组总体指标,产出 JSON + CSV + SVG,全程整数地板除,不含浮点。
把 SLG 的功能清单变成一棵可校验的树:模块是产品侧的职责单元,功能是玩家可感知的最小交付点。用《王朝纪元》8 模块 22 功能的配置,校验唯一归属、无悬空引用、无环、无孤儿与模块覆盖,把「模块职责」从口头分工变成每次改配置都会报警的有守卫的不变量。
前置依赖只是耦合的一层:本节把系统之间「读写了谁的数据」写成非结构耦合边,用 S 层脚本合并结构边与数据、时序边,算出每个系统的扇入、扇出、耦合分与变更影响半径,再用 B 基准给出软告警,最后讨论解耦为什么不是越多越好、什么时候该留着耦合不拆。
包体和加载定完之后,最后一关是平台能力与审核。本节把账号、支付、广告、分享、云存档、录屏、排行榜这八项能力在六个平台上的支持情况写成一份可校验的矩阵,再用一段 S 层脚本断言设计案用到的能力在目标平台都可用,并校验每条审核红线都写下了可执行的缓解措施。
首包体积定下来之后,真正决定流失的是它要加载多久。本节用整数递推把体积折算成下载耗时,再叠一个随体积增长的冷启动初始化开销,套进一个带下限的线性进入率模型,产出三条带宽档位的曲线;B 层反过来算,给出目标进入率下各档位允许的首包上限与带宽敏感性告警。
解锁节奏不是拍脑袋定天数:本节把每个系统的前置链与天数门槛写成一张门槛表,用 S 层脚本逐日推进,算出「第 N 天解锁第几个系统」的时间轴与累计曲线,再用 TypeScript 原型测试断言它与 Python 侧逐位一致,并解释为什么「前置满足」不等于「当天就能开」。