SuperAPI AI 工具集

maximizing-game-feel

设计与创作

查看项目

更新于 10-15 10:16

技能介绍

用途

Maximizing Game Feel 是一个面向动作游戏的打磨技能,目标是解决“游戏能跑但看起来死气沉沉”的问题。当机制正确、视觉可用却缺乏冲击力,跳跃、落地、命中、破坏没有反馈,移动显得僵硬、没有预备与跟随、没有重量感时,使用该技能。它希望让单个对象(通常是玩家)显得灵敏,并让整个世界与之匹配。

主要能力

技能提供一套可复用的表现技巧,并强调这些技巧应同时应用于玩家、敌人、障碍物、弹幕和道具,而不只是玩家。核心技巧包括:

  • 挤压与拉伸:起跳时纵向拉伸,落地时横向压扁;待机时加入轻微呼吸式缩放;敌人撞墙时压扁并逐渐恢复。
  • 动态倾斜/旋转:根据 X 轴速度或加速度让对象朝移动方向轻微倾斜;移动的敌人按速度比例旋转;用旋转预告状态变化(蓄力、警觉、被击败)。
  • 表情(眼睛):在身体形状内绘制眼白与瞳孔,眼睛始终看向移动方向、输入方向或当前目标;给敌人加眼睛能极大提升个性。
  • 粒子效果:落地、跳跃、冲刺、停止时从脚下散出尘土并淡出;撞墙、破坏、生成时也生成粒子;用颜色与密度传达意图(尘土温和、火花激烈、闪光有奖励感)。
  • 残影(拖尾):快速移动或跳跃时沿轨迹留下淡出副本以强调速度;也可用于快速敌人和弹幕,让玩家一眼读出运动矢量。
  • 区分化反馈语汇:危险反馈强调锐利边缘、警告闪烁、火花、冷/热警示色和短促硬冲击;奖励反馈强调闪光、放射状亮片、柔和弹出和更亮的分数确认;状态变化使用门/场景脉冲、局部抖动、光照变化或过渡母题;擦身而过反馈应令人满足但亮度或价值感低于实际奖励收集。

使用方式

技能建议按“每份努力带来的影响”排序应用:先做跳跃/落地的挤压拉伸(改动最小、影响最大),再给玩家加眼睛,然后在冲击时刻加粒子,接着按速度加倾斜,再给敌人加眼睛/粒子/挤压,最后为高速元素加残影拖尾。

实现基线(2D 游戏):保持玩法/碰撞状态为权威,把挤压、倾斜、拖尾、闪烁和粒子放在仅渲染的视觉或表现组件上,不要缩放或旋转碰撞几何体来卖手感;对视觉形变和旋转做钳制,并始终补间回静止状态;拖尾、屏幕震动、密集粒子和命中停顿应由观测到的速度、蓄力、冲击值或失败重要性来触发,避免常开式打磨;使用小型本地辅助或表现组件(如 player_feel、hazard_feel、reward_feel、FeelController 或 JuiceSystem),而不是为小游戏引入大型框架;面向 Web/移动/低端目标时限制活跃粒子/拖尾数量,优先使用短生命周期池化精灵或引擎原生廉价粒子,并定义最低性能目标(如稳定 30 FPS)。

默认产物:若已知项目目录,将打磨计划、阈值和效果预算记录在 <PROJECT_DIR>/FEEL_TUNING.md;对已有项目,先检查当前实体/组件/脚本、碰撞边界、渲染层级、粒子/拖尾辅助和性能说明,再选择文件路径或效果名称,若路径缺失则生成标准路径计划并说明跳过了项目盘点;若打磨改动影响玩法可读性、难度、视觉/音频方向或遥测预期,更新 <PROJECT_DIR>/README.md 中的相关简短摘要。

适用场景

适用于机制正确但视觉静态或“死”的动作游戏;命中、跳跃、落地或破坏缺乏冲击力;移动僵硬、没有预备、跟随或重量感;希望单个对象(通常是玩家)显得灵敏并让世界匹配其能量。

限制与注意事项

避免以下陷阱:不要添加遮挡玩法的运动,挤压不应让判定框在视觉上产生误导;不要对所有对象统一施加效果,否则场景会显得嘈杂,最强效果应留给最重要时刻;不要做没有回弹的倾斜或挤压,永久倾斜的精灵看起来是坏了而非有生命;不要给慢速物体加拖尾,拖尾暗示速度,慢速只会像涂抹;不要让打磨掩盖危险轮廓,粒子、奖励脉冲、屏幕震动和拖尾不应在紧凑时机窗口内穿过或模糊主要危险判读;不要在没有可读性检查的情况下调手感,应使用临时调试/可读性模式或截图对比碰撞形状、视觉边界、活跃粒子和危险边缘。

引擎差异:使用 crisp-game-lib 时,没有 push/pop/translate/rotate,需用 bar(x, y, length, thickness, rotate) 或 line() 表达旋转形状,旋转 0 为向右、顺时针为正,垂直向上对象以 -PI/2 为基准旋转并叠加倾斜偏移;particle() 的颜色由前一个 color() 调用决定,不能通过参数指定颜色,需先调用 color(...) 再调用 particle(pos, { count, speed, angle, angleWidth })。使用通用 2D 引擎(Canvas / Pixi / Phaser / Unity / Godot)时,所有技巧可直接映射到标准缩放、旋转、粒子系统和拖尾渲染器:用非均匀缩放实现挤压,绕质心旋转实现倾斜,用幽灵精灵或运动模糊着色器实现残影。使用 Godot 时,保持 CollisionShape2D 为权威,将挤压、倾斜、闪烁和拖尾应用到子视觉节点(如 VisualRoot);小游戏使用 player_feel、hazard_feel 或 reward_feel 等轻量本地脚本;Web 导出时限制活跃粒子/拖尾,优先使用短生命周期池化精灵或轻量 CPUParticles2D。

配套技能:directing-game-visuals 定义调色板角色和主角/危险/奖励判读,选择打磨颜色与强度时应遵循;evaluating-gameplay-balance 报告可能标记打磨导致的可读性或危险轮廓退化,实质性手感改动后应重新运行;对 Godot 项目,scaffolding-godot-mini-games 和 running-headless-godot 可能定义项目结构、测试流程和 Web 导出约束,存在时应遵循,但不要对非 Godot 游戏做此假设。