I rewrote the plugin.
Changelog:
- You know that weird issue on windows terminals where you would need to press a key multiple times to make it enter that key in console? Fixed. Also custom colored logging is fixed lol
- Vanilla logging formatting is back!
- Rewrote mod api
- Fixed
getPlugin
andgetProvidingPlugin
static methods inJavaPlugin
- Basically reorganize packages everywhere
- Rewrote context carriers
- Rewrote launch init and game launch
- Rewrote property service and removed blackboard api
- Support 1.21.4
- Rewrote Ember to use OptionSet instead of String[]
- Named classloaders(MRJ)
- BootstrapEntryContext compile/decompile(context carriers rewrite)
- Added mappings resolver
- Basically verifies if the mappings for the plugin are correct and warns if it isnt mojmapped
- Nested library loading! You can now bundle libraries, plugins, and mixin plugins into your jar by putting htem in
META-INF/mods
directory of your resources! - Entrypoint api! Basically fabrics
ModInitializer
api, but more customizable :) - Way too many improvements and fixes
- I forgot a lot of things
- Added javadocs for more things
- More APIs
- Rewrote game patches and transformer services
Just a bunch of fixes :)
Update to 1.21.3
Add isprovidercontext
argument
- Improved logging impl
- Datapack entrypoint
- Allows loading your plugin as a vanilla datapack instance, similar to a fabric mod
- Cleaned original server instance process more during startup
- Mod entrypoint API
- Clean redundant code
- JVM ManagementFactory for identifying which JDK to use - resolves hosts not setting JAVA_HOME ENV_VAR
- JVM Instrumentation for original process to retrieve OptionSet
Hey guys! Another patch, this time improving the library loader implementation to only heighten the libraries used by mixin plugins to the higher classloader, instead of all libraries.
Changelog:
- Add
Eclipse Plugins
section to/plugins
command
- Merge Ignite/Eclipse files to avoid uneccessary management
- Eclipse gradle plugin :
- Updated to
1.2.0
Eclipse - Includes AccessWideners for IDE environment
- Bundles the mixin/mixinextras libraries
- Includes the Eclipse jar for development
- Updated to
- Uses
paper-plugin.yml
(or.yaml
) for mixin defining instead ofmixin-plugin.json
- Fix JVM args from not being provided to new
ProcessBuilder
- DOES NOT work for args like--nogui
yet, making a Paper PR for access to that in plugin bootstrap - Add
MixinPlugin
API access, meaning you can now cast aJavaPlugin
to aMixinPlugin
, and it will provide nullable methods for getting information from Ignite(if any of those is null, then the plugin is NOT a mixin plugin) - Documents the mixins in Eclipse a bit more
- Rewrite the
ModernPluginLoadingStrategyMixin
to just use normal injectors rather than using@Overwrite
- Better support for library loading with paper plugins
- With mixin plugins, it is HIGHLY different in classloading, and some instances will frankly just fail to apply. I am working on a new feature that will bundle libraries like Fabric Loom does for mixin plugins, but that will be in
1.3.0
along with properMinecraftServer
optionset providers for bootstrapping.
- With mixin plugins, it is HIGHLY different in classloading, and some instances will frankly just fail to apply. I am working on a new feature that will bundle libraries like Fabric Loom does for mixin plugins, but that will be in
- Rewrite
PaperGameLocator
to a newEclipseGameLocator
to be more version-agnostic and fix possible jar-corruption of the server jar during Eclipse process init. - Better cleanup of the Eclipse process
- Some more debugging logs
- Better termination output logs
First official release of Eclipse! Changelog:
- Fix Paper terminal console appender
- Fix plugin classloading
- Implemented dynamic server loading
First release, beta build. Changelog:
- MIXINS.