Files
totk-pc-recomp/CONTRIBUTING.md
T
Valiantsin DzerakhandClaude Opus 5.5 8ea1b5721f Update the remaining explanatory files: issue form, contributing, maxwell sources, settings example, comment rule
The bug form asks for the version on the settings menu's title line instead of the window title, which has none,
points to Copy system info and to logs\totk.log. CONTRIBUTING lists the lifter's differential tests and the commit
message style for pull requests. docs/maxwell.md cites nxnative's notes by name, since nxnative rewrote them and the
line numbers pointed nowhere, and pins the MacNativeGames shorthand to the commit its line numbers were read at.
totk.ini.example gains menu_lang and input_record and points to the menu's Advanced tab for the other keys. AGENTS.md
asks comments to cite upstream code by project, file and function. README: Linux and the Steam Deck are the platforms
planned.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 13:12:37 +03:00

2.2 KiB

Contributing

The one hard rule

Nothing that came out of the game goes into the repository: no game files, keys, extracted data, recompiled C, compiled binaries, shaders, shader caches, fonts, audio or movies. Not in commits, not in issues, not in pull requests. Only information about the game goes in: addresses, hashes, patch code we wrote, shader and bind-state identifiers.

Two checks enforce this:

  • CI runs tools/check_content.py on every push and pull request.

  • The same check runs before each local commit once you enable the hook:

    git config core.hooksPath .githooks
    

A failing check is never bypassed with --no-verify. If it flags a file by mistake, change the check in a separate pull request and say why.

Links to game files, keys or firmware in issues or pull requests get the issue closed and the content removed.

Code from other projects

Code may be copied only from projects under MIT, BSD, ISC, zlib or Apache-2.0. Each copy keeps its original header and gets a row in THIRD_PARTY_NOTICES.md with the source commit.

GPL projects (yuzu, suyu, OpenSmash-Ultimate, Unicorn inside the game binary) can be read to understand behaviour, but their code is not copied. Unicorn is fine as a separate test tool.

Reporting bugs

Use the issue form. Include the port version and game update from the title line of the settings menu (F1), your GPU and driver (Copy system info in the menu's Advanced tab copies them), the log (logs\totk.log next to totk.exe; after a crash, copy it before you start the game again), and the steps to reproduce. Screenshots are fine; recordings of long gameplay are not needed.

Pull requests

  • One topic per pull request.
  • Describe the problem, then what changed.
  • Say how you tested it: which version, which scene, how long.
  • A change to the lifter (recomp/) or the CPU headers passes the differential tests in docs/building.md, "Checks".
  • Commit messages are plain sentences, without feat: or other prefixes.
  • AI-assisted code is welcome. You are responsible for having read and run it.

Code and docs

  • Code, comments, commit messages and documentation are in English.
  • Generated code is never edited by hand: change the generator.