
移植 Flash 游戏到 Steam
把 Flash 游戏移植到 Steam
Flash Player 在 2020 年底停止支持。Flash 游戏上 Steam 的方式,是被重建成原生桌面游戏,而不是被套一层壳。
把 Flash 游戏移植到 Steam,意思是把一款你拥有的游戏重建成原生桌面构建,因为 Flash Player 运行时已于 2020 年 12 月 31 日停止支持并在 2021 年被阻止。把 SWF 塞进一层壳里发布,不是一个可行的发行方案。
多数 Flash 游戏是为门户站做的:单局很短、一个固定舞台尺寸、鼠标优先的操作、没有存档系统、也没有暂停。上 Steam 会改变所有这些预期。玩家想要分辨率选项、手柄支持、崩溃后还在的存档,以及足以支撑一次购买的内容量。这就是为什么 Flash 到 Steam 的项目通常一半是移植、一半是扩充。
Summer Engine 把游戏重建成归你所有的项目,可导出到桌面、移动、网页和主机。代码是 C++ 和 GDScript,C# 在除网页之外的每个目标上可用。没有分成,也没有收入抽成。
把你的内容从 Flash 里取出来
如果你还留着 FLA 源文件,就把元件导出成 PNG 序列或 SVG,把音频导出成 WAV 或 OGG。矢量美术可以按任意分辨率重新导出,这是 Flash 美术相对老像素美术唯一真正的优势。如果只剩 SWF,有工具能从你自己的文件里提取内嵌图像和声音,反编译器也能还原 ActionScript 供你当文档读。只对你拥有或有明确许可的游戏这么做。
从 ActionScript 到现代语言
ActionScript 3 是基于类的,放在 GDScript 或 C# 旁边会很眼熟。变的是运行时概念:显示列表变成节点树,MovieClip 时间轴变成动画播放器,enterFrame 变成处理回调,Event 监听器变成信号。重写逻辑,保留调校数值。来自 30 fps 舞台的帧计时必须转换成时间增量,这样游戏在 60 fps 及以上才会有同样的表现。
Flash 游戏成为 Steam 游戏之前还缺什么
加上存档系统,因为多数 Flash 游戏靠门户站的 cookie,或者干脆什么都没有。加上暂停菜单、分辨率与全屏选项、音量滑条,以及可重映射的操作。通过 Steam Input 加上手柄支持。把固定的 800 乘 600 舞台放大到现代宽屏分辨率,同时别把 UI 拉变形。也要考虑内容长度:一款十五分钟的门户游戏,通常需要更多模式、关卡或成长线,才撑得过 Steam 的评价。
发行之前先理清权利
在上架商店页面之前,先弄清楚谁拥有什么。很多 Flash 游戏接受过赞助、独家授权给某个门户站,或者用了购买的音效包和授权音乐。赞助合同有时会授予至今仍然有效的分发权。只有当你握有设计、美术和音频的权利,或者替换掉你不拥有的部分时,才发布这次重建。
常见问题
我能直接把 SWF 套进桌面应用发到 Steam 吗?
那条路脆弱又过时。Flash Player 在 2020 年底停止支持。通过 Ruffle 这类项目做模拟,可以为浏览器保存一款游戏,但商业化的 Steam 发行更适合做成带存档、选项和手柄支持的原生重建。
FLA 文件丢了,我还能移植这款游戏吗?
通常可以,只要游戏归你。内嵌的美术和音频能从你自己的 SWF 里提取出来,ActionScript 也能用反编译器还原,当作重建的规格说明来读。
ActionScript 能自动转换吗?
不能。它要用 GDScript、C# 或 C++ 重写。类结构转起来很容易,但显示列表和时间轴行为必须用节点与动画重新制作。
一款老 Flash 游戏在 Steam 上卖得动吗?
只有加上更多内容和现代便利之后才行。Steam 买家期待存档、设置、手柄支持,以及比门户游戏更长的游玩时长。成功的 Flash 到 Steam 发行,通常是扩充过的重制,而不是直接移植。
在 Steam 上发行要花多少钱?
每款游戏一次性 100 美元的应用提交费,销售额达到 1000 美元后可回收,再加上 Valve 的分成。Summer Engine 不额外收分成。
继续探索
用 Summer Engine 创作的更多方式
AI 游戏制作器
用语言描述就能制作完整 2D 和 3D 游戏的中心。
打开Port a 3DS game to Steam
Rebuild a 3DS game you own in Summer Engine, then export a Windows, macOS, or Linux build and publish it on Steam.
打开Port a 3DS game to Steam Deck
Rebuild a 3DS game you own in Summer Engine, then ship a Steam build that plays well on a 1280x800 handheld with gamepad only input.
打开Port a Nintendo DS game to Steam
Rebuild a DS game you own in Summer Engine, then export a desktop build for Steam. Mouse covers the stylus, monitors cover both screens.
打开Port a Wii game to Steam
Rebuild a Wii game you own in Summer Engine, then export a desktop build for Steam. Pointer becomes mouse. Motion becomes a design decision.
打开Port a PSP game to Steam
Rebuild a PSP game you own in Summer Engine and export a desktop build for Steam. One screen already fits. One analog nub does not.
打开Port a PS Vita game to Steam
Rebuild a Vita game you own in Summer Engine and export a desktop build for Steam. Dual sticks transfer. Front and rear touch do not.
打开Port a GameCube game to Steam
Rebuild a GameCube game you own in Summer Engine and export a desktop build for Steam. Analog triggers, 4:3 framing, and memory card saves.
打开Port a Switch game to Steam
Rebuild a Switch game you own in Summer Engine and export a desktop build. The gameplay is ready. The platform layer is the job.
打开平台游戏模板
从现成的项目开始,描述你想要的改动即可。
浏览浏览所有游戏模板
从现成的项目开始,描述你想要的改动即可。
浏览