TOS 开发周记 17:从角色创建走到读档
本文根据 2026-01-26 至 2026-02-01 的 Git 提交回补。
这一周终于把注意力从地图内转向“进入游戏之前”。角色选择、角色创建、地图选择、读档和设置保存陆续出现,原本直接进入主场景的流程开始有了完整的外壳。
先创建一个属于自己的角色
Godot 端加入角色选择与创建界面,能够选择角色外观,也能在创建时选择地图。相关提交引入了角色素材、精灵处理工具和多语言文案。后端则给用户模型与实时事件补上 CharacterName,让角色名称不只停留在客户端。
后端同一提交曾加入 money 字段,紧接着又移除,因此周记里不把它当作最终功能。保留下来的重点是角色名称和用户数据在接口、地图消息与客户端显示之间完成对接。
从欢迎页进入读档流程
客户端先加入已有用户选择对话框,随后做成独立的 load_game 页面。API client、全局状态、欢迎页与主场景都参与了这次调整:选择存档后,需要把用户、角色外观与地图信息带入游戏,而不是只切换一个场景。
游戏设置也开始持久化,并修复了用户名、玩家形象与读档过程中的问题。地图加载侧新增 found 字段来判断扫描区域内是否仍有空 tile;另一个提交统一把 API 中的浮点数字转成整数,减少 Godot 端处理服务端数值时的类型分支。
小结
这一周的成果不是某个孤立页面,而是一条新的进入路径:欢迎页、角色创建或读档、配置状态,最后进入地图。服务端只增加了少量用户字段与修正,大部分工作都在客户端,但它仍然依赖后端返回的用户与地图数据才能闭合。
提交记录
| 日期 | 仓库 | 提交 | 原始说明 |
|---|---|---|---|
| 2026-01-26 | 客户端 | 8ab353a |
feat: allow to choose player |
| 2026-01-27 | 客户端 | d08e5e3 |
feat: allow to select map in user createion scene |
| 2026-01-28 | 后端 | 816dbb8 |
feat: add CharacterName, mony for user |
| 2026-01-28 | 后端 | fcdc614 |
tidy: remove money |
| 2026-01-28 | 客户端 | 1097a15 |
fix: load game |
| 2026-01-28 | 客户端 | 1eb6c2d |
feat: allow to load game |
| 2026-01-28 | 客户端 | 41ac7e8 |
fix: player character |
| 2026-01-28 | 客户端 | 4590827 |
fix: user name |
| 2026-01-28 | 客户端 | 759f8d4 |
feat: persist game setting |
| 2026-01-28 | 客户端 | f023673 |
fix: new found field to judge if have empty tiles |
| 2026-01-29 | 后端 | 5940534 |
fix |
| 2026-01-29 | 客户端 | 31dd1fc |
feat: dedicated load_game page |
| 2026-01-29 | 客户端 | 46d79ec |
tmp |
| 2026-01-29 | 客户端 | ad477d2 |
feat: auto parse float to int |
TOS 开发周记 17:从角色创建走到读档
https://blog.util.online/2026/02/01/tos-weekly-history/2026-01-26-tos-weekly-17/