Skip to content

Considerations for Contributors

迎春心情 edited this page Apr 18, 2024 · 23 revisions

We're glad you're interested in the project! Well-implemented PRs that improve TheXTech's compatibility with SMBX64 or add/improve our ports are always welcome. We are also very interested in PRs that add quality-of-life features to base SMBX64 content.

Project Roadmap

A broad overview of the goals for the project in the next few versions:

Please see the Issues that developers have endorsed for a fine-grained list of the development tasks and targets we are currently considering.

An important note on the scope of TheXTech

TheXTech is based on the SMBX64 standard, and it also aims for limited compatibility with the other SMBX branches. Therefore, issues or PRs whose purpose is to make the base TheXTech engine either imitate any non-SMBX games, or featuring gameplay changes, will be rejected as out-of-scope, and such discussions will be categorized as falling under the "TheXTech Game Asset Pack" topic (instead of affecting the engine itself). See Asset Pack tutorial for more details.

A note on "bugfixes"

TheXTech is a faithful reproduction of the SMBX 1.3 engine, so a number of things that may appear to be bugs to a user or contributor may actually be TheXTech reproducing SMBX 1.3 logic intended. Please see Types of Bugs for a categorization of types of bugs.

PRs fixing native bugs and critical vanilla bugs are always welcome (but you may be asked to justify that the bug in question is indeed critical).

Fixes for other vanilla bugs are not a good first contribution to the engine, due to the considerations we need to employ when faced with these. You are welcome to file an issue for any vanilla peculiarities you discover, but we are unlikely to fix them.

TheXTech content standard

We are in the process of developing a content standard for TheXTech, including new engine features such as multistars, more flexible warps, and world map sections. We are also developing a scripting layer including TheXTech-specific Lua and GLSL ES APIs.

We are being very careful in how we create the TheXTech standard, and we are generally hesitant to accept PRs that add new content to the standard. We intend to maintain indefinite compatibility with all content created for TheXTech 1.3.7+, and this makes it difficult to remove or refactor features once added.

Ports and limitations

We maintain ports for a wide variety of systems, and you should take care when developing new features to ensure that the appropriate ports of the game will continue to run with our minimum system requirements (16 MB of RAM and 200 MHz CPU).

If you are interested in contributing new ports to any such systems, please see Porting.

Clone this wiki locally