ReSkate README

The project's README from github.com/Dingo-Shenanigans/ReSkate. As one markdown file: README.md.

ReSkate

play it offline, host your own lobbies and dedicated servers, and mod it. the launcher, the runtime that loads into the game, and the dedicated server.

ReSkate is a fan project. It is not affiliated with or endorsed by Electronic Arts or Full Circle. You need your own copy of skate. on Steam.

Features

Getting started

  1. Download the latest ReSkate-<version>.zip from Releases.
  2. Extract ReSkateLauncher.exe and ReSkate.dll into either folder:
    • your skate. folder, beside Skate.exe (Steam → skate. → Manage → Browse local files); or
    • an empty folder, where the launcher installs the game for you (about 14 GB).
  3. Run ReSkateLauncher.exe.
    • It checks for ReSkate updates, then checks the game files against the supported build.
    • If the game is missing, or Steam has updated it past the supported build, sign in when asked. You can scan a QR code with the Steam app, or use your username and password with Steam Guard. It then downloads only the files it needs.
  4. Press PLAY.

ReSkate supports one game build at a time (Steam build 25414733).

Controls

Key Opens
Insert the ReSkate menu
~ (grave/tilde) the command console (help lists the commands)
T chat, in multiplayer

The menu and console keys can be changed in the launcher's Settings.

Where things are

What Where
Mods Mods\<mod name>\ beside Skate.exe, ordered by Mods\mods.json
Logs logs\ReSkate.log beside Skate.exe
Profile (skater, progress, parks) %LOCALAPPDATA%\ReSkate\profiles\offline\
The game's own settings and saves %LOCALAPPDATA%\ReSkate\Game\ (kept apart from the normal game)
Launcher settings ReSkateLauncher.settings.json beside the launcher

Mods

Only install mods you trust. Mods change game data, and custom scripts can run code.

Dedicated servers

ReSkateServer.exe is a headless lobby that needs neither the game nor Steam installed. It is in the ReSkateServer-<version>.zip of each release. See Server/README.txt for setup, ReSkateServer.json, admin commands, votes and the anti-cheat checks.

Linux servers

Each release also ships ReSkateServer-Linux-<version>.zip: the same headless lobby as a native x86_64 Linux binary (no Wine, no game install). Setup in short:

unzip ReSkateServer-Linux-<version>.zip -d reskate-server && cd reskate-server
./setup-linux-server-libs.sh
./ReSkateServer            # writes ReSkateServer.json on first run; edit name/admins, restart

Details (Steam .so files, world-layers.json, systemd, ports, building from source with cmake --preset linux-x64) are in Server/README-linux.md.

Building from source

Requirements

All third-party libraries are in the repository, so the build needs no package manager or network access.

Build

From a Developer PowerShell for VS 2022 in the repository folder:

cmake --preset vs2022-x64
cmake --build --preset release --parallel 4

The files are written to build/vs2022-x64/Release/:

File What it is
ReSkateLauncher.exe the launcher (also hosts crash reporting)
ReSkate.dll the runtime the launcher loads into the game
ReSkateServer.exe the dedicated server
ReSkateEmotePacker.exe builds the chat emote pack in assets/emotes

To work in Visual Studio, open build/vs2022-x64/DingoSDK.sln after configuring and select Release | x64.

Running your build

Close the game. Copy ReSkateLauncher.exe and ReSkate.dll beside Skate.exe, then run the launcher.

Local builds never replace themselves. They only report that an update exists, so a release can't overwrite the DLL you are testing.

Useful launcher flags:

Flag Effect
--no-gui start the game straight away, without the launcher window
--no-update skip the update check
--offline play offline, without Steam running
--windowed, --width=N, --height=N windowed mode and its size
--log-level=<trace|debug|info|warning|error> how much ReSkate.log records
--menu-key=0x2D, --console-key=0xC0 menu and console keys (virtual-key codes)
--no-loose-files ignore loose Lua and config files beside the game
--gpu-diagnostics record extra detail when the graphics driver crashes (DRED)

CMake options

Option Default Effect
DINGOSDK_VERSION 0.0.0 version stamped into the binaries
DINGOSDK_LAUNCHER_AUTO_UPDATE OFF let the launcher replace itself and ReSkate.dll, and the server replace itself (release builds)
DINGOSDK_RELEASE_REPO Dingo-Shenanigans/ReSkate public GitHub repository whose latest release carries launcher.json and the files it pins
DINGOSDK_BACKTRACE_URL the project's endpoint Backtrace minidump submission URL; empty turns crash uploads off
DINGOSDK_TEST_GAME_ROOT empty a Skate folder, for the tests that read real game data

Tests

Each module keeps its regression tests in a Test/ folder. Turn them on with any of DINGOSDK_BUILD_MULTIPLAYER_TESTS, DINGOSDK_BUILD_LAUNCHER_TESTS, DINGOSDK_BUILD_PARK_EDITOR_TESTS and DINGOSDK_BUILD_BACKTRACE_TESTS, then run CTest:

cmake --preset vs2022-x64 -DDINGOSDK_BUILD_MULTIPLAYER_TESTS=ON -DDINGOSDK_BUILD_LAUNCHER_TESTS=ON
cmake --build --preset release --parallel 4
ctest --test-dir build/vs2022-x64 -C Release

The project builds with /W4 /WX: warnings are errors.

Project layout

The source tree loosely follows Frostbite's own layout.

Folder Contents
Engine/Core/ logging, console, JSON, storage, platform helpers, Detours hooks, crash reporting (Debug/)
Engine/Resource/ Frostbite data formats: EBX, TOC, CAS, bundles, shader lookup
Engine/Vfs/ InitFS, the Mods folder, mod merging, the content cache
Engine/Scripting/ custom Lua scripts
Engine/Game/ the game's native ABI and data models
Engine/Game/Build/<build>/ every address, fingerprint and patch tied to one Skate.exe build, as addr::<area>::<name>
Extension/ ReSkate's features, the in-game UI and diagnostics
Runtime/ ReSkate.dll: entry point, startup and exports
Launcher/ ReSkateLauncher.exe
Server/ ReSkateServer.exe
EmotePacker/ ReSkateEmotePacker.exe
External/ third-party libraries, pinned and hashed (see External/README.md)
assets/, config/ files built into the binaries: launcher art, emotes, default profile settings
cmake/ the build, split by area

Supporting a new game build

Feature code never contains addresses. Everything tied to one Skate.exe lives in Engine/Game/Build/<build>/ and in the pins of supported_build.h: file hashes, the Steam depot and manifest, and the content cache. A new game build means a new table and new pins. Most hooks and patches check the bytes they expect before touching them, so code from the wrong build is refused rather than patched.

Crash reports and privacy

When the launcher or the game crashes, ReSkate uploads a minidump and that session's log to the project's Backtrace account, so crashes can be fixed. The log never contains your Steam password or login name.

To turn it off, untick Send crash reports in the launcher's Settings (ADVANCED), or set the environment variable RESKATE_CRASH_REPORTING=0.

Third-party code

ReSkate uses Dear ImGui, Microsoft Detours, RapidJSON, spdlog, SQLite, LZ4, Zstandard, miniz, bcdec and Valve's networking headers, and the Montserrat and Permanent Marker fonts. Versions, licenses and local patches are in External/README.md. Every release ships their license files in licenses/.

License

Copyright © 2026 the ReSkate contributors.

ReSkate's source code is free software: you can redistribute it and modify it under the terms of the GNU General Public License, version 3. If you share a modified ReSkate, share its source code under the same license.

The license covers ReSkate's own code. It does not cover:

AI disclosure

Parts of ReSkate, including code, reverse-engineering notes and documentation, were written with the help of AI coding assistants. The maintainers direct and test that work, but AI-written code can contain mistakes like any other. If something looks wrong, please open an issue.

ReSkate (Dingo-Shenanigans/ReSkate)

Searching Database…

1.2K ·GitHub
这是什么?ReSkate 是为 EA 滑板游戏 'skate.' 制作的粉丝自制模组框架和启动器,让你能完全离线游玩、自建多人大厅或专用服务器,并安装模组。
这是独立游戏,还是配合 skate. 运行的东西?它由三部分组成:启动器、会被加载进游戏进程的运行时 DLL,以及可选的专用服务器。它不会取代游戏本体,游戏必须另行拥有。
怎么让它跑起来?从 Releases 页面下载最新的 ReSkate zip,把 ReSkateLauncher.exe 和 ReSkate.dll 解压到你现有的 skate. 文件夹或某个空文件夹中(启动器可以替你安装游戏,约 14 GB),然后运行 ReSkateLauncher.exe 并按下 PLAY。
我需要先在 Steam 上拥有 skate. 吗?需要,你得在 Steam 上拥有自己的 skate.;启动器会检查你的文件,必要时下载唯一受支持的版本(通过二维码或 Steam 凭据登录),并保持自身更新。
ReSkate 能配合任意游戏版本使用吗?不能,ReSkate 每次只支持一个游戏版本(当前是 Steam build 25414733);如果 Steam 把游戏更新超过这个版本,启动器会重新下载正确的版本,然后你才能游玩。
客户端能在 Linux 上运行,还是只有服务器可以?启动器和游戏客户端仅支持 Windows(用 Visual Studio 2022 构建)。不过专用服务器还提供原生 Linux x86_64 二进制,无需 Wine,也无需安装游戏。
启动器或游戏崩溃时会发生什么?崩溃时,ReSkate 会自动把小型转储(minidump)和该次会话的日志上传到项目的 Backtrace 账号用于调试;其中绝不包含你的 Steam 密码或登录名,并且可以在设置中关闭报告功能。
模组是怎么工作的?把模组文件夹或 .zip 放进 Mods/ 目录,或者在启动器的 MODS 页面安装——该页面可直接浏览 Thunderstore 社区。大多数模组无需重启即可在游戏内生效,不兼容的模组会被跳过并给出警告,其余模组仍会正常加载。
Park Editor(场地编辑器)是什么?它是游戏内用来搭建自定义滑板场地的工具:借助自由视角、吸附和撤销功能来放置、移动并保存物体。
多人模式下能做什么?你可以创建最多 32 人的公开或密码保护 Steam 大厅,从游戏内浏览器加入专用服务器,使用近距离语音和带表情的文字聊天,组建队伍,并参加 Jam、Spot Battle、S.K.A.T.E. 对决或合作挑战。
ReSkate 的开发用到了 AI 吗?有,部分代码、逆向工程笔记和文档由 AI 编程助手编写,但维护者会审查并测试这些内容,也请用户报告任何看起来不对的地方。
Size
66.7 MB
Stars
1.2K
Age
16d
Commits · 90 Days