大家好!
Where is My Home? 的根源可以追溯到 2016 年。那是我因个人悲剧开始撰写其故事的时刻:故事背景围绕一个失去父亲的小男孩。写作和世界构建为我提供了避难所,帮助我度过艰难时刻。
在时间推移中,我想讲述的故事发展成了几百页的设计文档(GDD),并于 2019 年夏季开始实际编码和实现。在经历了多年的时光以及或多或少的间歇后,它终于看起来像是我要接近终点,v1.0 即将上线!
我想分享几张游戏开发中的截图和早期草图,同时聊聊技术挑战和开发背景。
视觉与 UI:一个由儿童绘画构建的虚构宇宙
由于游戏的世界位于一个悲伤小男孩的思维、内在想象以及寻找家的旅程中,视觉灵感来源于儿童的绘画。我面临的最大视觉挑战是保持整体外观一致、精致且富有氛围感,同时仍保留这种真诚、天真且略带超现实的想象形式。
- 草图与动画: 我最初全部在纸上用铅笔草图绘制;建筑使用 Moho 14 完成,角色和生物则在 Photoshop 中使用 Wacom 显示笔绘制。
- 设计系统: 在 UI/UX 方面,最初的设计系统使用 Adobe XD 创建,随后我将其迁移并基于行业标准在 Figma 上进一步开发。
不寻常的闲置配方
尽管它在 genre(类型)层面属于闲置游戏,但我肯定希望摆脱经典公式:
- 复杂的 ARPG 装备与属性缩放: 设计属性缩放和掉落系统是我最困难的任务之一。作为《Diablo》和《Path of Exile》的粉丝,我的目标是让镶嵌、属性和天赋树为构建和角色成长提供真实深度。
- 战术战斗系统: 与其自动点击,我设计了基于网格的交互式战术棋盘,玩家需要通过法术、技能和位置进行策略规划。
- 可定制的岛屿与农场: 浮动岛屿世界和经济可以自由形状和装饰。
- 丰富的其他活动、地牢和自制卡牌游戏: 我将游戏装满了团队地牢、每周挑战、地狱世界以及大量附加内容。为了确保等待时间不是空闲时间——无论是庄稼成长、职业工作还是属性恢复——我也构建了一个集成的自定义卡牌游戏。
技术选择:Ionic、Angular 和 Pixi.js
在前端方面,确定方向曾让我头疼不已:我需要权衡是把大量文本内容和复杂 UI 打包进基于画布的图形环境,还是采用相反的方式。最终,我选择了 Ionic / Angular + Pixi.js 的混合栈,因为 Angular 的逻辑与架构对我来说自然得很。我对这一选择毫无悔恨:在组件和游戏状态管理时,我能够清晰地处理 Angular 的生命周期,使其与 Pixi.js 的渲染循环以及包含文本数据的面板无缝协作。
关于我和技术:
我自儿童时代就开始绘画,并获得过多项国内外艺术比赛的奖项。我曾在国际环境中担任 UX/UI 设计师 4–5 年,并在此领域深耕近十年,目前以全栈/DevOps 架构师的身份主导项目。
由于项目的基础在代码生成工具普及之前就已奠定,后端和前端的骨架是真正的“手工编写”代码(.NET/SignalR、Redis、Ionic Angular、Pixi 客户端以及 Docker)。同时,为加速最后阶段,我引入了现代技术:基于本地 30+B 参数开源模型(Qwen 2.5 32B Coder / Command-R 35B)搭建了专用开发者管道,并配合内部 RAG 与决策模型,利用代码库和 GDD 的上下文。
我不需要 Claude 或 ChatGPT 的订阅,因为完全不必要:对于我的需求,像这样 30+B 的本地模型已经足够。它并不替我思考——我提前自行设计架构、数据模型和游戏逻辑——但在生成方法、接口和辅助函数时,这些输入输出严格定义的任务大幅减轻了我的重复劳动,随后我会仔细审查代码并将其放置到合适位置。
对我的英文表示抱歉,不幸的是它不是我的母语,我仍在学习它!
评论 (0)