大家好,
在作为 QA 工程师和 QA 经理的 9 年后,我终于决定switch 到开发自己的游戏。
我目前正在开发一款灵感来自早 2000 年代的 Mega Man Battle Network (GBA) PET 设备 的游戏,融合了经典的网格/芯片机制与现代的现实世界集成。
作为一个 solo 开发者,我想分享我的结构方法,特别是如何 QA 心态影响游戏开发,以及我面临的架构障碍。
🛠️ 架构设置
我选择使用 Flutter & Dart,而不是 Unity 或 Godot。虽然这不是传统的选择,但由于游戏的 UI 密集性,使得 Flutter 在构建菜单、子系统和响应式布局方面非常快。
- 后端: 使用 Supabase。我使用 Supabase Realtime 构建一个实时的多人对战大厅(“The Square”),以及在线匹配。
- 硬件 & 本地玩法: 我连接了本机步数计数器(步数会为游戏提供能量)并实现了 Bluetooth Low Energy (BLE) 进行本地、离线 PvP 和芯片交易。
🐛 9 年的 QA 改变了我的开发流程
从测试背景出发,我注意到我构建游戏的方式与标准教程有所不同:
- 内置诊断工具: 在打磨战斗系统之前,我在客户端内建了一个强大的、隐藏的 QA 工具箱。它包含实时状态重置、沙盒诊断和本地崩溃日志记录。如果游戏中出现问题,我不猜测——我检查我的日志。
- 离线优先的韧性: 网络状态会不断失败。我设计了一个高度冗余的保存状态。即使云同步失败,玩家也可以通过手动导出和导入 Base64 编码的本地备份系统来恢复他们的数据。
🎮 核心功能分解
- 战斗 & 收集: 一个基于格子和芯片的回合制战斗系统,包含 ~160 个可收集的战斗芯片,具有匹配的融合逻辑矩阵。
- 进展: 一个 6 项技能系统(完全可重新配置)与视觉和统计数据的 Style 树。
💬 我想获得你的反馈:
- 使用非传统引擎: 对于那些在 Unity/Unreal/Godot 之外(如 Flutter、React Native 或纯 Web 技术)开发游戏的人们——您的最大障碍是什么,当您扩大资产管理和碰撞逻辑时?
- 步数机制: 核心循环依赖于现实世界的步数。您如何平衡趣味性与限制,当游戏进展与现实世界的运动相关时?
期待与大家讨论技术方面。
评论 (0)