下载 App

开发日记 — 2026年3月17日(周一) 节拍前夜 · 第49天

精华03/1833 浏览开发日记
今日概况
TapTap
今天做了什么
BUG-54 终结:TitleScreen 按钮宽度坍塌
跨了好几个会话的按钮宽度 bug 终于修了。根因是 Button:SetStyle\(\)
在 fontSize
变化时会隐式重算 width
,而此时 text=\&\#34;\&\#34;
导致宽度被压到 max\(64, 0\+32\) = 64
。修法很简单——SetStyle 后单独调一次 SetWidth。
真正的收获不是这个修复本身,而是过程中总结出的 debug-stuck-guard 规则:bug 修两轮不行就别继续猜了,加日志看数据。这条教训写进了 CLAUDE.md,以后应该能少走弯路。
DWP 二次挑战:从失败到成功
这是今天的主线。上次(迭代#037)DWP 实验以失败告终——Boot 阶段黑屏、占位纹理不可控、2D 图片密集型项目和 DWP 天然不兼容。但加载时间的问题还是得解决,所以换了个思路重来。
新方案的核心想法:不在 Boot 阶段搞事,而是把 LoadingScreen 做成正经的 UI Widget,用引擎自己的 NanoVG 上下文渲染,通过 cache:DownloadResources\(\)
主动拉取全部资源。下载没完成就不切屏,玩家永远看不到白色占位纹理。
下午 16:53 写完第一版,17:24 重写为 UI Widget 架构,17:32 修了 Web 端卡在 0% 的问题(手动驱动 OnUpdate + 快速完成跳过动画),到 18:51 完成了 v2 美化版。三个小时,四轮迭代,从概念到成品。
LoadingScreen v2 最终效果
选卡背景图 + 暗色渐变遮罩 + 暗角聚焦
Logo 替代文字标题,带紫色微光晕
进度条六层渲染:阴影→暗色轨道→紫色渐变填充→顶部高光→流动光效→末端发光点
DrawingMachine 卷纹九宫格装饰边框
鼠标移动生成紫色光点粒子,点击产生涟漪扩散
DWP 兼容:nvgCreateImage 每 0.5s 尝试加载,纹理就绪前用纯 NanoVG 兜底
初始加载从 120MB 降到约 1.8MB(仅脚本),剩余资源在 LoadingScreen 期间后台下载。
TapTap
DWP 资源列表 UTF-8 修复
美化完没多久就发现新问题——ALL_RESOURCES 里的中文路径在某些环境下 UTF-8 编码损坏,导致资源匹配失败。花了一个小时做全量转义清理,顺便给下载失败加了显式报错,不再静默吞错。
文案镜像:game-texts.txt
晚上换个脑子,做了个一直想做的事:把游戏里散落在各处 Lua 文件里的文案全部镜像到game\-texts\.txt
。从 18 章扩展到 25 章,覆盖了乐器店、乐录、奖励、标题、通关、生涯、教学时停、新手指南、战斗界面等所有屏幕的文案。同时标记了已废弃的内容(TutorialModal、坚韧 tenacity 死代码),然后把对应的废弃代码也一并清理了——删了 TutorialModal 整个文件(118 行),移除了 RhythmEngineV2 和 BattleScreenV2 里残留的 tenacity 相关代码。
把 game-texts.txt 纳入了记忆文档体系的级联读取和自动同步清单,以后改文案时 AI 会自动同步。
深夜收尾:记忆文档全面审计
做了一件拖了很久的事:把源代码和记忆文档逐行对账。
上次认真同步文档大概是 v3.0 发布前后,之后连续做了模块化拆分、废弃代码清理、新控件开发,文档就一直没跟上。花了两个小时,把 97 个 Lua 文件的行数全部重新统计,和文档里记录的 81 个文件 / 32000 行逐一比对。
结果比预想的差距大:
  • 文件数 81 → 97(多了 16 个文件没被记录)
  • 总行数 32000 → 47500(差了一万五千行)
  • 版本号还停在 v3.1.1,实际已经是 v3.1.2
  • 敌人种类写着"5+1种",实际 EnemyData 里已经有 8 种了
  • 地图层数写着"15层",MapData 里已经是 18 层了
  • 屏幕注册数写着"8个",main.lua 里已经 10 个了
一项一项改完,主文档从 v2.6.0 更新到 v2.7.0。子文档(架构与系统、规范与历史)也检查了一遍,里面的旧数据都是历史快照,如实保留没动。
今天卡过的地方
LoadingScreen 第一版在 Web 端卡在 0% 不跳转。根因是 Web 平台资源已在 VFS 里,`DownloadResources` 的回调瞬间完成,但 LoadingScreen 的 OnUpdate 还没被调用过,`displayProgress_` 停在 0。修法:手动驱动一次 OnUpdate,加上快速完成时跳过动画直接切屏。
DWP 资源列表的 UTF-8 问题也费了点时间,240 条资源路径逐一检查。
文档审计比较顺利,没有技术卡点。唯一花了点时间的是判断子文档里的\"15层\"\"v3.0.0\"该不该改——最终确认它们是特定版本的历史记录,改了反而不准确。
数据
项目总代码量:47,744 行(104 个 Lua 文件)
版本跨度:v1.16.0 → v1.18.1(3 个版本)
迭代编号:#037、#040、#041
LoadingScreen 重写:\~580 行
game-texts.txt:25 章,约 1000 行文案镜像
清理废弃代码:删除 TutorialModal(118 行)+ tenacity 相关(约 40 行)
初始加载体积:\~120MB → \~1.8MB
文档审计:v2.6.0 → v2.7.0,修正 97+ 处差异
碎碎念
今天从下午干到凌晨,干了四件大事:BUG-54 收尾、DWP 翻盘、文案系统建立、记忆文档审计。每件单独拎出来都是一个完整的工作单元,一天全做完了,有种把待办清单一口气清空的爽感。
DWP 的故事挺有意思。上次的失败不是方向错了,是切入点错了。Boot 阶段搞 NanoVG 就是在和引擎的初始化时序较劲,注定不会顺利。换成 UI Widget 方案以后,所有东西都在引擎的正常生命周期里,一切顺理成章。有时候退一步换个角度,比死磕更有效率。
六层渲染的进度条是今天最满意的细节。加载屏是玩家看到的第一个画面,值得花功夫打磨。
深夜的文档审计不\"刺激\"——没有新功能、没有炫酷效果,就是把文档和代码对齐。但第50天了,代码从零写到快五万行,这种基础设施工作其实很重要,不然 AI 助手每次开会话都在用过时的信息做判断。
开发工具:TapTap Maker
项目起始日:2026-01-28
  (注:文档部分内容可能由 AI 生成)#开发日志 #节拍前夜
猜你想搜
taptap 制造开发日记
01:29
官方阅,申请积分计划2,希望官方继续支持我完成这款游戏,截图
官方阅,申请积分计划2,希望官方继续支持我完成这款游戏,
视频内容只是一部分, 本游戏耗时3个月,目前完成进度百分之80, 是生存游戏,进入修仙界,走剧情找到宗门加入, 这时游戏才是真正开始, 提升实力境界后就可以变强,获取功法法术法宝, @视频内是游戏里挑战妖族入侵一种主流玩法,游戏就是围绕着这个来进行, 还有很多地方可以战斗,获得资源修炼变强,比如去藏书阁学习功法, 去法宝楼抽法宝,每一个宗门数十个法宝抽取 去修仙界探索,获得各自的资源,可能遇见妖兽
1 赞
3 回复
00:45
TapTap制造本地开发模式保姆级教程截图
TapTap制造本地开发模式保姆级教程
1.你可以使用 Codex、Cursor、Claude Code 等支持 MCP 的 AI 工具 最简单的就是腾讯的WorkBuddy 2.去官网下载WorkBuddy 3.对WorkBuddy说:我要安装个Agent 我给你安装方法 一、安装 Maker MCP npx -y @taptap/maker install --ide codex,cursor,claude 部分 Agent 安装
12 赞
8 回复
如何提升你游戏中的UI美术水平截图
如何提升你游戏中的UI美术水平
一、请为你的游戏挑选一款合适的字体 很多开发者没有注意到其实UI界面中最重要的元素是字体,一款合适的字体能给整个游戏的界面感官带来蜕变。 请看案例 那么如何挑选适合自己的字体呢? 我总结出了一些小经验可供参考: 黑体:通用 宋体:古风、武侠、修仙 楷体:古风、武侠、修仙 圆体:卡通、动漫、Q版 科技:科幻、未来、电子 顺手分享一个免费可商用字体网站: 当然 如果你不知道自己的游戏适合什么风格
精华
121 赞
44 回复
03:06
为了不被斩杀,我只能做到这些了截图
为了不被斩杀,我只能做到这些了
之前一直申请不到计划3,之前说太花哨,后面说体量完成度不足,在我一番小作文下,编辑终于给了我解答,什么原生质感,玩家开局体验啥的。 本来计划2也够用,准备以后再优化了,结果计划2赠送的积分要砍半了,学生党实在消费不起,于是只能再冲一波计划3了 从周六中午到现在一天半时间,优化了一遍角色卡,战斗卡,还有抽卡界面,优化了新手教程,该说不说确实比之前要舒服些。 前半部分为新版,后半部分为旧版。 明天再次
23 赞
6 回复
00:45
一个在做的小项目截图
一个在做的小项目
这是7月11 创建的项目 内容不是很多,但是因为是菜鸡小白,所以很多东西进度很慢。 开发了7天,进度也仅仅才达到这样。 我是用慢慢推进的方式一点点做的,从开始界面,然后一点点往里面推。 点开的都是开发得差不多了,没点的那就是没做。 战斗场景也没做, 缺的东西很多。 但是都在规划中,我的思路是先做好UI布局,然后再完善内部数值系统。 玩法也是比较常用的刷宝玩法。 刷宝养成类 所以没有太复杂的系统,所
1 赞
5 回复
本地部署 AI 对接 TapMaker 指南 —— 以 CodeBuddy 为例V1.1截图
本地部署 AI 对接 TapMaker 指南 —— 以 CodeBuddy 为例V1.1
写在前面 大家好,我是橘猫,和你一样也是TapMaker的萌新玩家。在"全能神"天哥的悉心指导下,我顺利完成了本地开发环境的部署。经过这段时间的实战测试,已经成功打通了「本地开发 → 同步至TapMaker」的完整流程。 以下内容全部来自我的个人实操经验,旨在为同样在探索本地部署的朋友提供一个参考。每个人的电脑环境、网络情况、AI工具版本都不尽相同,文中的步骤仅供交流学习。如果你照着操作后遇到问题
31 赞
14 回复
游戏墨染灵境,续一下计划二被说同质化截图
游戏墨染灵境,续一下计划二被说同质化
玩法如图,灵兽渡劫,灵武渡造(包括可以打造自定义灵武),炼丹引兽,12个挑战(每个boss都有各自特色),墨境轮回肉鸽玩法,基础秘境探索,拍卖玩法(可以抢夺可以尾随),灵田种植,还有异步pvp在线切磋。 真的有同质化吗[表情_生气][表情_生气][表情_生气]
4 赞
7 回复
【新游上线】TapTap制造模拟器截图
【新游上线】TapTap制造模拟器
大家好,我是《TapTap制造模拟器》的制作人Paul~ 《Taptap制造模拟器》是一款轻度经营模拟游戏。玩家将经营一家独立游戏工作室,使用 AI 游戏制作工具从零开始开发作品,选择游戏类型、美术风格、玩法方向、商业化方案和制作规格,完成立项、制作、发布与运营。游戏上线后,你需要处理玩家反馈、修复 Bug、提升评分、控制服务器费用和员工工资,在收入、口碑、粉丝与现金流之间做出取舍。随着章节推进,
7 赞
14 回复
00:48
我做了一款哥特风像素射击游戏|《失落庭院》实机演示截图
我做了一款哥特风像素射击游戏|《失落庭院》实机演示
序列帧实在是太好丸辣! 一直想做哥特风的游戏哈哈,目前做了三把武器,三个怪物和两个房间,不知道有生之年能不能做完😭
11 赞
6 回复
新人避坑指南第一期(核心必看)截图
新人避坑指南第一期(核心必看)
新手制作游戏项目三大避坑准则 一、前期地图规范要求 开启新项目之后,必须清晰交代需求:明确项目内容、运行环境、角色出生点位置,再交由助手制作第一张地图。 第一张地图禁止直接预览,先将生成内容存入素材库,核对样式是否符合自身预期。 核心判定方法:单独生成第一张地图预览图,第一张地图决定整体全局架构,UI、UX整体风格全部由它锁定。如果第一张地图的画面、UI、UX不符合自己的设想,立刻新建项目,不要在
15 赞
6 回复