嗨,r/aigamedev!我刚刚发布了一款使用Gemini实时回应玩家选择的恋爱模拟游戏。游戏免费游玩、处于抢先体验阶段,发帖是为了宣传并希望获得更多测试者。同时我也打算聊聊在API使用和游戏开发中的经验。

游戏链接:https://venus-dev.itch.io/venus-university
(尽管有警告提示,但itch页面本身不含NSFW内容)

初次测试后,我对Gemini当前的能力印象深刻,因此立即推进了项目。个人使用中,Gemini Flash模型在回答问题或编程时偶尔会出现不准确的情况,但我发现它在散文写作方面基本合格。

Google在开发期间发布了多版Gemini Flash模型,最新版本为Gemini Flash 3.8。最初我用的是Gemini Flash 3.5,即使最低思考强度下速度也很快、表现尚可。但从3.6版本开始,模型速度大幅提升,智能性也略有提高(可能是3.7/3.8版本将最低努力设为“低”的效果)。

即使在3000-4000token的提示词下,Gemini Flash 3.8也能在2-3秒内返回结果,并能遵循复杂的JSON架构输出。玩家每分钟大概发送3-4个提示,每小时的游戏成本约为0.30美元——我认为相当合理。散文部分偶尔会有些重复,但对于基础分类任务(玩家想执行什么类型的动作?本场景中他们是否消费了?等),准确性和速度都令人满意。

如果提供角色关系信息,Gemini在理解角色关联方面表现也很出色。我会在提示词中告诉Gemini某NPC的朋友是谁、对玩家的看法以及最近的记忆,它通常能将所有要素编织成一个连贯的叙事,同时严格遵守JSON输出格式。

使用API的小贴士:

  • service_tier设为"priority"。价格增幅不大,但标准或弹性模式下,模型有时会被降级或生成时间增加。
  • 尽可能为返回结果定义JSON架构,避免输出糟糕内容以及开发端清理输出的麻烦。
  • Gemini-Flash 3.5-3.8都可用且表现优异。Gemini Flash-lite几乎不可用,只能处理基础散文任务且非常重复。
  • 根据情境动态构建提示词,尽量加入随机变量以产生涌现式玩法。如果从不改变发送给Gemini的提示词,你基本会得到几乎相同的确定性输出。
  • 用你期望的散文风格编写提示词:如果提示词是干巴巴的说明性文字,输出也会如此。我的所有提示词开头都是“你是RITA,一位创作设定在虚构大学的火辣读者视角言情小说作家”,并给出写作建议,比如“你喜欢杂乱、简洁且富含潜台词的散文。角色永远不会脱口而出内心想法,而是通过动作和身体语言表达感受。”如果不这样做,散文质量必定糟糕。
  • 不要直接塞一大段近期事件文本。让Gemini总结重要内容并重新注入后续提示词。也可以为角色生成具体记忆,告诉模型哪些角色知道哪些事,避免全知全能。
  • 利用提示缓存大幅节省生成成本:将永不更改的内容(如指令或风格指南)放在提示词顶部,把变化的情境信息放在底部。API会对提示词中的重复token收取极低的费用。
  • 免费层基本不可用:生成时间长达5-10秒,每小时只能发送大约10个提示就会触发限流。

整个过程中唯一的小插曲是,有一段时间Gemini服务器过载,4/5的提示都开始失败,但过去几周恢复正常后一直很顺畅。

如果还有其他问题,欢迎随意提问!