Steam Deck 已经成了独立游戏最重要的「第二块屏」之一。Deck 用户买游戏前会看那个绿勾(Verified)、黄叹号(Playable)还是灰叉(Unsupported)——这个 badge 直接影响转化率。今天就把这套评审规则和适配方法一次讲清。
今日速览
- Deck 就是一台 Linux PC:SteamOS + Proton(把 DirectX 翻译成 Vulkan)。你的 Windows 游戏大概率能跑,但「能跑」≠「Verified」。
- 官方评审产出 4 种 badge:Verified / Playable / Unsupported / Unknown。它不影响游戏能不能买,只影响展示——但这就是曝光和转化。
- Verified 的硬指标集中在四块:输入(默认手柄配置能用全功能 + 正确 glyph)、文字输入(必须能弹出屏幕键盘)、显示(1280×800 原生显示正常、字够大不被裁)、性能(默认配置就要有可玩帧率)。
- 一个好消息:Deck 上 Verified 的游戏,在 Steam Machine 上也自动 Verified,一套标准通吃。
- 给开发者的推荐项:主用 Vulkan、用独立编解码器(VP9/AV1)、支持云存档(但图形设置不要云同步)、支持超宽/异形比例、单人内容离线可玩、别做独立启动器。
核心学习内容
1. 兼容性评审怎么运作
Valve 会拿你的正式包在 Deck 上实测,对照一张固定的 Checklist 逐条检查,然后把结果发回 Steamworks 后台。你有一周时间预览,之后 badge 才会公开。核心逻辑是:不是「能不能运行」,而是「用户不用折腾就能玩全吗」——任何需要用户手动选社区手柄配置、手动召唤键盘、手动进启动器点下一步的行为,都会把 Verified 拉到 Playable。
2. Verified 的四大硬指标
- 输入:默认手柄配置必须能访问全部游戏功能,且不需要玩家先去设置里开手柄。屏幕上的按键提示 glyph 必须跟随实际输入设备(用键鼠时不能还显示 ABXY)。官方强烈建议接 Steam Input API,它会自动处理 glyph 切换。
- 文字输入:需要玩家打字的场景(角色命名、存档名),必须调用 Steamworks 的屏幕键盘 API:
ShowFloatingGamepadTextInput(直接发送按键)或ShowGamepadTextInput(回调式)。 - 显示:默认分辨率要能覆盖 Deck 的 1280×800(16:10),UI 不被裁切、最小字号要够大(握在手里看)。同时要能处理比 16:9 更高/更宽的异形比例。
- 性能:默认配置下就要跑出可玩帧率,不能指望玩家自己去调低画质。另外单人内容要能离线玩,云存档不能把分辨率这类图形设置也同步过去。
3. Godot 项目的适配落地
Godot 官方文档给的标准做法是 One size fits all:在项目设置 Display → Window 里定一个基准设计分辨率(例如 1280×720 或直接用 1280×800),然后用 stretch 模式缩放到各种屏幕。2D/UI 场景建议 stretch mode = canvas_items、aspect = expand(能容纳更多画面而非黑边);像素画游戏则用 viewport 模式 + 整数缩放(integer scale)保证像素不糊。这样一套 UI 就能同时喂给 16:10 的 Deck、16:9 的普通显示器和超宽屏。
4. 手柄与混合输入
Deck 同时有摇杆、触摸板、陀螺仪。官方推荐「混合输入」:允许鼠标(1:1)和摇杆(比例式)同时影响镜头,而不是「最后动的那个独占控制权」——实现方式是把所有输入源的旋转量累加后再更新相机。还有个实用彩蛋:把「相机角度/鼠标像素」设为 0.022 度/像素、默认鼠标灵敏度设为 2.5×,就能跳过玩家手动校准的步骤。
🎯 DeepSeek 提示词
以下提示词都假设你把项目关键信息(引擎、分辨率、输入方案)补进「项目背景」,DeepSeek 才能给出可用的代码。
① 生成 Deck 兼容性自检清单与适配改造方案
你是资深独立游戏发行顾问,熟悉 Valve 的 Steam Deck 兼容性评审(Verified / Playable / Unsupported)。
我的项目背景:
- 引擎与版本:[Godot 4.x / Unity 6 / ...]
- 类型与玩法:[2D 平台跳跃 / 俯视射击 ...]
- 当前输入方案:[仅键鼠 / 已有手柄初步支持 / 已接 Steam Input]
- 目标分辨率与 UI 方案:[基准 1280x720,canvas_items + expand ...]
- 是否用云存档 / 是否有启动器 / 是否有文字输入:[...]
请输出一份 Markdown 表格形式的自检清单,列:检查项 | Verified 要求 | 我的现状判断 | 改造动作 | 优先级(P0/P1/P2)。必须覆盖:输入(默认手柄配置、glyph)、文字输入(屏幕键盘 API)、显示(1280x800、字号、异形比例)、性能(默认配置帧率)、云存档与图形设置分离、离线单人、无启动器、Vulkan。
约束:不要泛泛而谈,每条改造动作要具体到「改哪个文件/哪个设置项」;不确定的地方标注「需实测确认」。
② 让 DeepSeek 写 Godot 的分辨率/UI 自适应代码
你是资深 Godot 4 工程师。请帮我为一个 2D 游戏实现分辨率自适应。
需求:
- 基准设计分辨率 1280x800(16:10,对齐 Steam Deck)
- 需要同时适配 16:9、16:10、超宽(21:9),UI 不裁切、不糊
- 像素画素材,希望整数缩放保持像素锐利
- 需要一个「UI 缩放倍率」动态计算,供 HUD/菜单在运行时按屏幕高度调整字号与间距
请给出:
1. 项目设置里 Display/Window 各字段应该填什么(base size、stretch mode、stretch aspect、scale mode)
2. 一个 Autoload 脚本 `ScreenAdapter.gd`,暴露 `get_ui_scale()` 返回 float,并在窗口 resize 时发信号 `ui_scale_changed(scale)`
3. 一个使用示例:HUD 根节点监听信号后调整 `scale` 或字号
输出为完整 .gd 文件 + 关键设置项的说明注释。约束:Godot 4.x 语法,不要用已废弃 API。
③ 让 DeepSeek 生成「手柄 glyph 自动切换 + 屏幕键盘」集成方案
你是熟悉 GodotSteam / Steamworks SDK 的工程师。请帮我实现 Deck 友好的输入体验。
需求:
- 检测当前活跃输入设备(键鼠 / 手柄 / Steam Deck),自动切换屏幕上显示的按键提示图标
- 当需要玩家输入文字(命名存档)时,用手柄也能弹出系统屏幕键盘
- 单人模式默认手柄配置即可访问全部功能
请输出:
1. 设备检测与信号方案(在 Godot 里怎么监听 Input 事件、如何维护 current_device 状态)
2. 一个 `KeyPrompt.tscn` + 脚本的实现思路:根据 current_device 切换 Texture2D(Xbox / Deck / 键鼠三套)
3. GodotSteam 中调用屏幕键盘的代码(说明 `ShowFloatingGamepadTextInput` / `ShowGamepadTextInput` 的选用场景)
4. 一份「Deck 上手动验证清单」,列出我应该亲自在真机上测哪些点
约束:给出可运行的 GDScript 骨架,注明哪些 API 需要 GodotSteam 已初始化。
学习心得
Deck Verified 的本质不是技术难题,而是**「零折腾承诺」:玩家拿起来就能玩全、字能看清、帧数够用。对我们「用 DeepSeek 做一款 Steam 游戏」的目标来说,这一步特别划算——它不需要重写玩法,大多是输入映射、UI 缩放、默认画质**这类可以在项目后期批量补齐的工程活,而这些活恰好是 DeepSeek 最擅长按清单产出代码的地方。越早把「1280×800 基准 + 手柄 glyph + 屏幕键盘」这三件事写进需求,后面返工越少。
明日关注
- 在 Godot 项目设置里把基准分辨率改成 1280×800,跑一遍 UI 看有没有裁切。
- 用提示词①让 DeepSeek 产出自检清单,挑出 P0 项排进待办。
- 查 Steamworks 后台的兼容性评审入口,确认提交正式包后的预览流程与时间。
本文由自动化学习流水线每日生成,坚持即学即记。
评论