这里是全站文章的归档入口,下面是按时间倒序排列的全部文章。若想按主题浏览,请从首页的专题分类进入。
附录 A:环境与复现速查
卷一的复现手册:本机实测环境(Python 3.14 + numpy/pandas、Node 26 原生 TypeScript、无 matplotlib、无 tsc/npm)、bastion 完整目录结构、全部实跑命令、跨语言逐位一致的三条硬规则、以及一份可一键复现的校验脚本。遇到「书里的数字对不上」时先看这一页。
posts
这里是全站文章的归档入口,下面是按时间倒序排列的全部文章。若想按主题浏览,请从首页的专题分类进入。
卷一的复现手册:本机实测环境(Python 3.14 + numpy/pandas、Node 26 原生 TypeScript、无 matplotlib、无 tsc/npm)、bastion 完整目录结构、全部实跑命令、跨语言逐位一致的三条硬规则、以及一份可一键复现的校验脚本。遇到「书里的数字对不上」时先看这一页。
卷一的复现手册:两个 python3(python3 3.14.6 与系统 3.9.6)的区别与陷阱、Node 26 原生跑 TypeScript 的 strip-only 约束、Playwright 复用写法(NODE_PATH 对 ESM import 无效)、pebble 目录结构与全部实跑命令,以及一份可一键运行的环境自检脚本。数字对不上时先看这一页。
小游戏不是「缩小的手游」。包体上限、首包加载时间、无 DOM 渲染与平台 API 这四条平台约束,会一路反向决定做什么品类、把核心循环设多长、界面能铺几层、社交怎么接进分发。本文讲清《小游戏开发实战》三卷本要回答的问题、六档可运行性主张,以及它与站内既有内容的分工与边界。
产品设计书最容易写成散文:道理都对,落不了地。这篇序讲清楚这套书的写法——把 SLG 的设计写成可验证的模型,每一节配可跑的仿真或原型,一份配置两处消费,改一个数字两边结果都变。也讲清楚它与站内既有的 SLG 技术架构、经济平衡、赛季运营等内容的边界。
这一页讲清楚三件事:三卷各自负责什么、贯穿项目《合成小岛》与工具链 pebble(config / sim / core / web)长什么样、以及代码块头部的层级注释和 verify 命令该怎么读。读完你能在本机把书里任意一段代码跑起来,并知道一个数字是从哪一层出来的。
卷一的阅读指南:三条阅读路径(产品经理的系统课、经济策划的建模课、只看闭环)、可运行性五档口径(S 仿真 / P 原型 / D 静态 / X 不可复现 / B 基准)、贯穿项目 bastion 的目录结构、需要准备的环境(Python 3 + numpy/pandas、Node 26,无需 tsc 与 npm),以及怎么验证书里的代码真的能跑。
分层和归属定完资源的身份,这一节给经济配一个动态机制——复式账本:每一次资源变动都是一组借贷分录,产出记 @source、消耗记 @sink、玩家间转移只搬存量。配一段可跑的 Python 脚本,跑完一批交易后断言总量守恒,再用 B 层基准压测记账路径不会漏记。
给「强制分享」这条捷径建一个能跑的对照模型:把强制分享建模为每日额外流失项且接受率被压低,把自然分享建模为无额外流失项且接受率较高,逐日递推两条留存曲线,读出一个结论——强制的拉新优势只维持三天,之后就被留存塌陷和低接受率反超,纯商业账上并不划算。
把七个社交传播面收成一个可递推的传播系数 K:K = 每用户邀请数 × 接受率,用整数千分比递推多轮传播,算不同 K 值下累计用户是翘上去还是沉下去,再用 B 层基准扫描出 K = 1000‰ 这条「衰减 / 自增长」的分界线,并验证增长只由乘积决定、不依赖因子拆分。
上一节按稀缺度给资源分了层,但稀缺度不回答「它归谁、能流到哪」。本节给资源加第二个正交维度:绑定与非绑定、账号级与角色级,用一张四组合表讲清同一资源在不同归属下能不能跨玩家交易、能不能账号内共享,并配一段可跑的 Python 脚本校验归属矩阵的完备性、一致性与反例自检。
经济系统的第一块地基是分层:把资源按稀缺度分成基础、进阶、稀有,把货币按流通范围分成软货币、硬货币、代币,讲清每层的作用与流通边界,并用一段可跑的 Python 脚本从 config 里读出分层、校验「每层至少一种资源」与「不存在孤立资源」。
把小游戏的社交传播面拆成「触达 → 发起 → 接受」三段千分比,用一份 config 列出分享得奖励、好友助力、排行榜、组队、邀请码等七个面,再用 S 层脚本算出每个面的综合转化率并排名,读出一个反直觉的结论:触达最高的「分享得奖励」只排第五,请求型传播面反而领先。
把「不在线的时间」也算进成长:在线速率、离线比例、逐段衰减与时长封顶的整数递推模型,逐分钟算出累计收益并产出 JSON、CSV 与纯 Python SVG 对比曲线,再用上限敏感性基准回答「离线补偿到底该给多长」,与 8.1 成长线、8.2 续玩机制接成闭环。
看板的价值不在画曲线,而在给曲线装闸门:用配置驱动的《王朝纪元》告警规则(阈值 / 环比 / 同比三类,带 streak 过滤),跑一段 mulberry32 确定性时序做告警判定,产出 CSV + SVG,再用 B 层基准量化误报率与检出延迟。
把「差一点」量化成千分比:从每局目标与进度判定,到近失驱动的「再来一局」给出概率与接受概率,用可播种内核写成能被 node --test 钉住的不变量,并让 Node 测试与 Chromium 原型跑出逐位一致的数字,文末附可直接打开的单文件 HTML 原型与无头验证脚本。
埋点口径打架的根因是事件没有 schema:用一份配置驱动的《王朝纪元》埋点规范(4 个事件、公共必填字段、命名正则、参数类型与枚举),配 TypeScript 校验器把一批上报样本判出 7 类违规码,让「口径统一」从口头约定变成可断言的埋点契约。
把《合成小岛》的成长线拆成升级成本与产出速率两条整数比递推曲线:用 S 层脚本算出每级耗时、累计投入与满级总账,讲清成本增速与产出增速的比值才是成长线真正的节奏旋钮,并与站点既有的通用经济配置逐级对照,最后收成三条可落地的设计规则,全程整数递推、命令行可复现。
把北极星指标从「拍脑袋定的一个数」变成一棵可校验的指标树:用配置驱动的《王朝纪元》指标树(10 个指标、根为周活跃领主数),机械校验父子关系、口径唯一与无重复定义,并让校验器自证会报错,S 层脚本产出 JSON + CSV + SVG,讲的是口径与采集框架。
版本做完不等于能安全上线。本节把灰度写成配置:用 FNV-1a 分桶决定「放多少」,用硬/警告两级阈值决定「继续、暂停还是回滚」,并用《王朝纪元》的真实跑数,演示一次 50% 直跳 100% 的翻车,以及拆成小步后顺利放量的完整过程与代价。
给定每关的目标通过率,用一段整数内核反解难度参数:先建通过率模型,再写可逆的反解函数,配一个可播种抖动生成器,用 node --test 断言每关回代通过率都落在容差内,并与 Python 侧对照逐位一致,全程禁用 Math.random()。