Akarin-project / Akarin

Akarin is a powerful server software from the 'new dimension'
https://akarin.app
Other
498 stars 63 forks source link

[1.12.2] Migrate to patch based system #231

Open ghost opened 2 years ago

ghost commented 2 years ago

For better code organization and compatibility, migrating mixin to a patch based system should be a good try. I'm already working on this and it seems to be easy for me.

Things to be merged

ghost commented 2 years ago

When migrating I've found several codes that aren't or may not be good ( or safe ). These parts will be listed below:

  1. bootstrap/DummyEula.java removed eula checking which I think is not ok.
  2. cps/MixinChunkProviderServer.java tried to directly remove a chunk without nulling lastChunkByPos which is defined in Paper 0087-Optimize-Chunk-Access.patch. Is that safe to do so?
josephworks commented 2 years ago

I am not sure about number 2, but I agree with you on number 1.

Is EULA checking removed in our current codebase? If so, can you readd it?

ghost commented 2 years ago

Almost done! :) I've readded EULA, too :)

josephworks commented 2 years ago

There was a merge to master two days ago. Please be sure to apply those changes as you see fit before your PR.

Thank you so much for your work, and let me know if you need anything!

ghost commented 2 years ago

Well it seems craftbukkit has already included some realtime fixes, for example in EntityItem.java. it's ok to keep them but I think overriding with akarin's code will be better.

ghost commented 2 years ago

Seems that akarin's code base is pretty old now, some mixins are actually conflict with recent craftbukkit changes. lol

ghost commented 2 years ago

All codes are done :) I'm going to prepare the build system, double-check the patches and do some clean up job :)

ghost commented 2 years ago

@josephworks I'm not so familiar with shell so I'm not so clear how to make the ./akarin work. It would be great that if you can help. I've now finished most of the cleanup job, I'll upload the patches soon :)

josephworks commented 1 year ago

@siyy123 Sorry for the late response. We can definitely look into getting an ./akarin script to work in the future.