Orion - Mixins for Paper!


#1

Orion is a Mixin loader for Paper

Who uses this?

Orion:
Definitely me and 2-3 people who contacted me to ask how to use it exactly.

Mixins:
whole goddamn Sponge server software is built on top of Mixins

So what are Mixins exactly?

Using mixins you can modify your server’s behaviour without patching the server’s code using Paper method, building, and testing it (and then realizing it didn’t event work).
Write your patches directly in Java and apply them with simply restarting your server, allowing you to test code changes way faster than before.

Read more about Mixins here

Examples?

Yes, there is one public example which I wrote to showcase how to write server mods on Orion: ExampleMod

Okay, but how does it work?

Instead of launching paperclip.jar, you need to launch OrionLauncher.jar instead which will handle server launching yourself (you read it right - IT IS NOT A PLUGIN).
As a bonus, you’ll get semi-automatic server updating mechanism (if you delete paperclip.jar from server directory, it’ll be downloaded again automatically)

Mixins are applied using Mixin library and good old LegacyLauncher (with few tweaks)

How can I use it?

Launch OrionLauncher.jar instead of your server, put mods into mods folder (and optionally check mod-specific configuration from modconfigs/<mod id>.cfg

Also there’s a wiki:

Behavioural differences between Mixins on Sponge and Paper

Right now there are no ways to:

  • Use MCP mappings (this is the most requested feature), so you must use remap = false

Requirements

You can use only Java 8 (preferably OpenJDK or Oracle’s). Orion does not support using anything newer than that.

Downloads

Thanks for CodeMC for providing a CI for Minecraft-related projects

https://ci.codemc.org/job/Mikroskeem/job/Orion/

Contribute/report an issue?

See Github