- Find: text search, grouped search, undo, went up/down by, where to search, before/after compare - Debug tab: breakpoints, stepping, registers, stack, threads, what code touches, structure compare, pointer re-check - Engine tab: Unreal, Unity, Godot, GameMaker and C++ class names; hidden settings and switches - Code cheats with labels, variables, references and shared code; rule builder; script commands - Cheats kept on by the PS5 without the browser - Learn section with twelve lessons and an in-page practice game - Section (master code) community cheats; SHN and MC4 export - Groups, dropdowns, hotkeys, first-cheat guide, re-find after update, restore everything - MCP server: 25 tools - Quick start, wiki, contributor and security guides, changelog
2.4 KiB
Contributing to CheatSpecter
Thank you for helping. This page says what is welcome, how to set up, and what a change needs before it can be merged.
What does not belong here
- Copies of game code or assets.
- Copies of other projects' cheat tables. They are read from their own repositories at runtime.
- Jailbreaks and exploits. CheatSpecter starts from a console that can already load payloads.
Reporting a bug
Open an issue using the bug report form. The most useful reports say which CheatSpecter version, PS5 firmware and ps5debug-NG version, which game (title ID and version), what you did, what you expected and what happened. Please do not attach game files.
Security problems go through SECURITY.md, not public issues.
Setting up
You need Node.js 22.18 or newer for the tests (20.19 is enough to run the app).
npm install
npm run dev # the app with hot reload, the bridge, and a simulated console
npm test # every test suite
npm run typecheck
No PS5 is needed: the simulated console in mock/ has a small game that the
whole app and every test run against.
Building from source
covers the console payload and the MCP bundle.
Before you open a pull request
npm run typecheckandnpm testpass.- New behavior has a test in
test/, against the simulated console where a console is involved. - Text shown to people is plain and says what to do next. The audience runs from complete beginners to experienced modders.
- Screens work on a phone (about 390 pixels wide) as well as on a desktop.
- No new dependencies without discussing it in an issue first.
- If you could test on a real PS5, say so and say which firmware and game. If you could not, say that too; it is fine, and it is recorded in the changelog.
Keep pull requests to one topic. All changes are reviewed and merged by the maintainer.
Writing lessons
The lessons on the Learn page are the JSON files in learn/.
learn/README.md describes the format. Run
node scripts/check-lessons.mjs before submitting; the tests also complete
every practice step automatically, so a lesson that cannot be finished fails.
License
By contributing you agree that your contribution is licensed under GPL-3.0-only, the license of this project.