# Skate 3 Rust Engine：基于《Skate 3》逆向研究的 Bevy 重写

> 在新的 Rust 与 Bevy 引擎中重新实现《Skate 3》的滑行、技巧、擦边滑行和下板移动，运行时使用从使用者自有 Xbox 360 版游戏转换得到的素材，并加入难度设置和 .skate 自定义地图格式。物理说明引用了在 IDA 中读取的原版可执行文件的函数和常量，音频研究则读取另一个《Skate 3》静态重编译项目 research-hooks 分支产生的跟踪记录。README 称游戏玩法与原版的一致性仍在完善中，肯定了 dumbad 多年的格式研究，并说明这次重写借助了 AI 编程工具。

- 类型：案例
- 目标：游戏
- 类别：独立重建案例
- 关联：独立重建项目
- 来源复核于：2026-10-19
- 收录于：2026-11-02
- 原始资源：<https://github.com/SK8-ENGINE/skate-3-rust-engine>
- 一手来源：<https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/skate-3-rust-engine-case/>
- 记录 JSON：<https://awesomerea.org/resources/skate-3-rust-engine-case/record.json>
- 英文版：[English](https://awesomerea.org/resources/skate-3-rust-engine-case/index.md)

## 使用条件与局限

- **前提条件：**游玩需要使用者自己的《Skate 3》Xbox 360 ISO，或已解包的 default.xex 及其 data 文件夹；设置程序会将角色、动画、光盘地图和 HUD 素材转换到本地 data 文件夹，提取 ISO 需要联网。仓库不包含《Skate 3》素材；随附的 format-demo 地图被说明为原创的程序生成内容。
- **前提条件：**在 Windows 上运行：发行版 ZIP 启动 skate3rust.exe，需要兼容 SDL3 的手柄。从源码构建需要带 MSVC 工具链的 Rust 和 LLVM，使用 BUILD.bat 与 PLAY.bat；便携包脚本需要 Python 3.13。
- **局限：**tools/recomp-trace 读取 Hailey-Ross/skate3recomp 的 research-hooks 分支产生的跟踪记录，该分支须由使用者用自己的游戏副本自行构建；其 README 提醒，重编译版本的时序和线程与主机版游戏不同。
- **测试证据：**Windows 发行工作流运行更新器、设置程序和素材管线的 Python 测试，但不运行各 Rust crate 自带的测试。tools/regression-checks 将地图、出生点和角色定制输出与使用者自行记录的基线比较。一致性结果均为项目报告。
- **许可：**原创代码采用 GPL-3.0-only，版权属于 dumbad 及贡献者；内置并打过补丁的 Bevy crate 和 tools/vendor/ 下的工具保留各自的许可证，该许可证不授予对 Electronic Arts 的代码、数据、素材或商标的任何权利，也不涉及第三方地图和模组。项目为非官方项目，与 EA 无关。
- **署名：**tools/claude-skills 收录了用于开发该引擎的 Claude Code 技能。

## 一手来源

1. <https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/README.md>
2. <https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/docs/physics/grind-trick-state-202.md>
3. <https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/tools/recomp-trace/README.md>
4. <https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/tools/regression-checks/README.md>
5. <https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/tools/setup-equivalence/README.md>
6. <https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/tools/make_collision_fixture.py>
7. <https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/tools/claude-skills/README.md>
8. <https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/.github/workflows/release.yml>
9. <https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/scripts/Build-Release.ps1>
10. <https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/LICENSE>
11. <https://github.com/SK8-ENGINE/skate-3-rust-engine/releases/tag/experimental>

## 同分区更多条目：游戏

- [Snowball War：范围明确的 REA 辅助小游戏重建](https://awesomerea.org/zh/resources/snowball-war-rea-case/index.md) · 案例
- [Thyme《将军》引擎重实现](https://awesomerea.org/zh/resources/thyme/index.md) · 案例
- [touhou-engine：用 Python 重实现东方游戏玩法](https://awesomerea.org/zh/resources/touhou-engine-case/index.md) · 案例
- [Untangle：基于 REA 与 Ghidra 证据的浏览器重建](https://awesomerea.org/zh/resources/untangle-rea-evidence-rebuild-case/index.md) · 案例
- [xoreos：BioWare Aurora 引擎家族的开源重新实现](https://awesomerea.org/zh/resources/xoreos-aurora-engine-case/index.md) · 案例
- [z2rs：以模拟器对照逐步重建《塞尔达传说 II》的 Rust 项目](https://awesomerea.org/zh/resources/z2rs-zelda2-reconstruction-case/index.md) · 案例

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
