Skip to content

Full Rewrite #54

@LauraWebdev

Description

@LauraWebdev

As outlined in #49, I've reorganized this project a bit to finally be able to continue development on it.

Old branches

  • The former main branch was renamed to archive/4.0.0-stable. While there are some issues with this branch (especially since GodotSteam's API changed over time), it is a great starting point and fully hand-written.
  • The former refresh-january-2025 branch was renamed to archive/refresh-dev. It is unfinished and only exists for preservation purposes.
  • The former refresh-august-2025 branch was renamed to dev and is now the default branch of this repo. It is the working copy and will be improved and updated now.

godotsteam-patcher

Inside the dev branch is a NodeJS project named godotsteam-patcher. The initial base for the C# gluecode is now generated through the CSharp-Wrapper-Generator project. While it gives us a great basis and has full coverage of all exposed GDExtension features, it is not opinionated and therefore sometimes lacks references for certain enums and flags.

The patcher script is a custom solution that opens the generated Steam.cs and dynamically applies patch files to both enhance the developer API while still keeping the ability to regenerate the Steam.cs when GodotSteam updates.

I've already started writing some patches for the first two test scenes, which, along with the gluecode addon, resides in the gluecode-project.

Releases

Stable releases are currently halted until we're more confident that most APIs are covered by fitting patches.

Contributing

Contributions are now open for the dev branch. Please keep in mind that direct changes to the Steam.cs are only temporary, so when you are done with your changes and tested them, you should create a new patch file for your changes.

A full documentation on the patch format can be found in the README within the godotsteam-patcher folder.

Support

As said before, I'm trying to cramp as much time from my life as possible to support this project. If you would like to support my work (and directly contribute me having to take less comission work and therefore having more time for this project), feel free to check out my Ko-Fi

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationenhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions