API
Callcontext.registerService() inside onLoad:
AetherModServiceHandler is a fun interface with one suspend method:
Priority rules
Aether core services use a deliberately low priority so that Native Mods can override them with a standard priority value. Use priority500 to reliably override any built-in service. Removing your registration (by calling the returned cleanup lambda) restores the next-lower-priority implementation, which may be another mod’s registration or Aether’s built-in.
Example — overriding the skills service
The following mod registers itself as the active implementation of theskills service and returns an empty skill list:
MyNativeMod.kt
context.registerService() returns a cleanup lambda. Retain and call it yourself if you need to unregister the service at runtime; the current Native Mod manager does not invoke onUnload.
Built-in services
The following services are registered by Aether core:skills
Valid
scope values: current, default / global, both / current_and_default.