使用AI构建血糖战士游戏:设计师的游戏开发之旅

设计师Alex使用AI工具开发糖尿病教育游戏"血糖战士"的全过程,涵盖像素艺术创作、游戏机制设计、音效系统构建、移动端优化等技术细节,展示了AI辅助开发的实践经验和挑战。

游戏机制:快速点击,更快思考

游戏循环

  • 每轮游戏时长一分钟
  • 食物从空中落下,玩家点击食物
  • 血糖仪根据食物选择产生反应
  • 健康食物降低血糖值并得分
  • 垃圾食物飙升血糖值、扣分并打断连击链

能量道具系统

玩家拥有两种紧急能量道具:

  • 运动:血糖值降低50点
  • 糖分冲击:血糖值提升25点

两种道具使用次数有限,时机把握至关重要。同时需要密切关注血糖仪:血糖值过低或过高都会显著影响整体表现。

开发起点:提示词与低期望

选择在Lovable.no-code AI平台上构建应用,初始提示词相对简洁:

“开发类似水果忍者的移动触控游戏,主题为2型糖尿病教育。评分系统采用受用户食物选择影响的血糖仪,建立包含不同营养等级的食物库,美学遵循Google Material Design表达性UI规范。”

初期生成版本功能基本但外观简陋,使用表情符号作为食物在基础背景上飞行,没有音效,评分简单累加。但这个基础版本能够运行,为后续迭代奠定了基础。

艺术指导:漫长、繁琐但值得的过程

像素艺术创作

转向8位和16位风格游戏美学,使用Aseprite创建和编辑几乎所有艺术资源。从itch.io购买第三方图标和动画包,修改和重新着色以匹配调色板。最终使用了79个食物资源进行游戏玩法。

所有像素艺术动画都构建为精灵表,便于在代码中控制和操作。字体选择使用ChiKareGo2和Lo-Res两种基于位图的字体,捕捉90年代末操作系统美学。

音效设计:打造沉浸式体验

花费数周在itch.io上寻找合适的8位音乐和UI音效,使用SFX Browser Mac应用管理下载的音效。

AI在构建音频架构方面发挥了重要作用:

  • 移动浏览器的池化系统
  • 防止快速点击造成声音混乱的去重逻辑
  • Web Audio不可用时的回退机制

音频文件需要特定格式(WAV用于某些场景,OGG用于其他场景)、标准化音量和尾部静音以防止剪切。

经典Mac OS界面整合

采用复古Mac OS概念作为游戏框架,主游戏窗口外的所有元素都看起来像桌面图标。游戏本身具有标题栏、像素按钮和90年代末操作系统预期的所有窗口装饰。

使用Figma设计大部分界面,然后通过Figma-to-React插件导出粗略代码,使用Cursor和Copilot清理代码,手动调整不工作的部分。

游戏逻辑与平衡

食物影响系统

每个食物项在foodLibrary中存储bloodSugarImpact值,基于美国糖尿病协会和其他教育资源的研究:

  • 非淀粉类蔬菜:-3到+1
  • 健康脂肪:-2到0
  • 瘦肉蛋白:-1到0
  • 低糖水果:+2到+5
  • 复合碳水化合物:+5到+8
  • 高糖水果:+8到+15
  • 精制碳水化合物/加工食品:+16到+40
  • 乳制品:+3到+6

连击与能量道具系统

快速连续点击健康食物会提高得分乘数,垃圾食物会打断连击。能量道具平衡成为战略迷你游戏:

  • 运动:高风险高回报,大幅降低血糖值,但容易耗尽
  • 糖分冲击:安全网,低血糖时小幅提升,但容易过度校正

难度模式与评分系统

难度配置

1
2
3
4
5
6
7
const BASE_DIFFICULTY = {
  PHYSICS_TICK_MS: 20,
  CLOUD_TO_APPEAR_MS: 300,
  APPEAR_TO_VISIBLE_MS: 500,
  GRAVITY_PER_TICK: 0.5,
  TERMINAL_VY: 12,
} as const;

智能评分系统

重构评分系统以实时跟踪时间范围百分比,影响最终评估。添加加权bloodSugarAverage:

1
2
3
4
5
export const BLOOD_SUGAR_AVG_WEIGHTS = {
  normal: 1.0,
  warning: 1.8,
  critical: 2.5,
} as const;

正常区域计数为1.0倍,警告区域1.8倍,危险区域2.5倍。两种指标(得分和血糖控制)需要同步才能获得成功消息。

技术经验总结

AI协作实践

  • 早期编写清晰的指令文件定义编码方法
  • 尽早定义技术栈,防止AI使用未经批准的依赖
  • 使用ChatGPT或Copilot进行调试,避免消耗过多信用额

移动端优化

  • 使用动态视口单位、安全区域填充和紧凑HUD
  • 设置游戏为PWA,但优先确保浏览器体验
  • 大触摸目标,不依赖全屏模式

性能与资源管理

  • 使用精灵表减少HTTP请求
  • 分层预热资源:关键UI优先,效果和较少看到的精灵稍后
  • 前瞻系统在食物出现在屏幕前进行解码

音频与跨平台测试

  • 移动浏览器音频需要积极的池化处理
  • 有时需要双重编码(iOS用WAV,其他用OGG)
  • 在不同浏览器上持续测试

项目收获

血糖战士游戏花费三个月时间构建,大部分时间用于工艺制作:制作像素艺术、UI/UX和整体创意指导。

AI使作为独立设计师发布完整游戏成为可能,但没有做出创意决策。它将意图转化为代码,然后通过迭代直到符合愿景。

工具不会(也不应该)取代品味和批判性思维,而是放大它们。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计