我们一直在大量使用人工智能来构建Chessfolk的代码和美术资源。这是一款基于Flutter/Dart的国际象棋游戏,现已登陆Android平台,包含虚构对手、离线锦标赛、课程和个人评级历史。核心理念是让与电脑对弈的感觉更像回到国际象棋俱乐部。
这个项目教会我们一件事:生成一个功能与让它在应用内正确运行是两码事。
一个小例子是首次启动时的个人资料界面。你可以输入姓名并成功保存,但顶栏仍然显示“玩家1”,直到你导航离开再返回。数据已保存,但可见的应用界面没有同步更新。现在我们有了一个回归测试,会在保存后立即检查顶栏中的姓名和头像,而不仅仅是检查存储的资料。
我们还把熊猫对手Susu带到了本地Lichess机器人原型中,使用我们现有的Dart引擎代码、Stockfish和Python桥接。这又带来了一系列问题:引擎时序、故障和走棋处理。现在我们用实际对局中的局面进行回归检查,并模拟了慢速、崩溃和无效响应的工人线程。需要说明的是,这个适配器使用的是Stockfish;我们没有训练新的国际象棋引擎,也没有让聊天机器人选择走法。
这就是我们AI开发旅程中不那么光鲜的部分:重现出错的问题、缩小修复范围、检查实际结果。一个听起来正确的AI生成解释,并不等同于实际可用的交互。
我们仍在打磨细节。AI对实现这个项目的帮助很大,但它并没有消除我们对于“什么感觉好、什么需要修复、什么应该等待”的判断需求。
对于其他发布AI辅助游戏的人:你们遇到更多麻烦的是生成的代码本身,还是让各自独立的功能协同工作?
Chessfolk可在Android上获取,免费下载,内含广告和可选内购。如果你更喜欢在桌面端玩,也可以在Steam上加入心愿单。
评论 (0)