我正在 Unity 中开发一个在线 PvP 游戏,并且丢弃了所有的预设多人游戏解决方案,决定自己实现一个解决方案,因为我不需要任何复杂的功能,只需要简单的客户端和服务器消息交换。这个游戏是基于回合制的策略游戏,玩家设定自己的行动计划,然后回合结束时游戏会解析。由于这不是真正的实时环境,我不需要太多的同步、网格变换和网格游戏对象。游戏是确定性的,客户端只需要知道对手的输入,并且应该保持同步。尽管如此,我仍然在服务器端进行了防止作弊的检查,通过比较两端客户端的状态来保护。我的技术栈是 Unity 6、GitHub Actions、Railway Python 后端、PostgreSQL 和 Edgegap 运行服务器实例和匹配器。我使用 GitHub Actions 进行构建自动化,构建 WebGL 并自动更新它到 itch,构建 Android 版本并自动发布到 Play Console,还有一个 Windows 版本。所有这些都在并行进行,所以我不需要手动构建并阻塞编辑器。这个项目中最难的部分实际上是测试。由于游戏专注于 PvP,无法使用 bot,所以我必须与自己玩,这很难让游戏获得初始的关注度,但我已经与朋友和随机互联网人玩了几场比赛,我们都很享受玩这个游戏。

如果你之前开发过一个仅 PvP 游戏,如何处理早期测试时玩家人数不足的问题?你认为仅比较客户端状态在服务器上是否足够安全?我可能会遇到什么问题?