Darkhax-Minecraft / Game-Stages

An API for universal player based progression.
https://minecraft.curseforge.com/projects/game-stages
GNU Lesser General Public License v2.1
64 stars 17 forks source link

Port to multiloader Fabric #79

Closed cschierig closed 1 year ago

cschierig commented 1 year ago

I wanted to write an orestages-like mod for modern Minecraft versions and decided to port Game Stages to quilt in the process.

A list of things I have done or am currently doing:

Multiloader

I have, as of now, partially migrated the project to use multiloader. A lot of the code seems to be platform independent, but I have yet to move code into the Common subproject because I haven't actually gotten to re-adding the forge code to the multiloader. To be honest, I don't completely understand all of the gradle magic used in the forge branch so I might need some more time or help with this.

Things that are yet to be done

  1. Testing. I have done quite a lot of that by using the project in BlockStages, but I have yet to test things like differences in cross-loader behaviour.
  2. Forge. I have never really worked with Forge ever since the 1.12 days, so I haven't found the courage to touch that code yet and add it into the multiloader project.

If there are any things that need to be changed, I'm happy to help in any way I can. It might just take a while because I'm pretty busy at the moment.

cschierig commented 1 year ago

the forge subproject is now able to build and run, I have yet to add the publishing, discord posting and other gradle code.

cschierig commented 1 year ago

I'm rewriting it to target fabric instead of quilt as I would like to add compat for @terrarium-earth's new questing mod on their side. Should also benefit the wider fabric ecosystem.

cschierig commented 1 year ago

It would probably be good to separate more code into the common code base, but I'm unsure on how to do that. I think this is about as far as I can take this. It is now ready from my side.

cschierig commented 1 year ago

Sorry to bother you @Darkhax. I just wanted to ask if you would be interested in something like this. I have a local copy of my patches ported over to 1.20.1 based on bookshelfs gradle structure (its also a bit cleaner and more complete than this port). If you aren't interested in upstreaming, I would like to ask for permission to publish my changes as a separate mod on modrinth which would consist of the fabric port only. I am willing to work on improving the port if there are any things that need changing, it might just take some time as I'm quite busy.

Darkhax commented 1 year ago

Hello, I am interested in moving the project to a multiloader project however it's something I would want to do myself so I can carefully validate the changes and implement some plans and features that are not fully public yet. I've been putting this off for a while now because of the constant porting grind since 1.16.5 however I am anticipating 1.20.2 will be a good time to make these changes.

cschierig commented 1 year ago

Thx for the response, that sounds great. I'll just close the pull request then and wait for you to get to this.