Minimal base Plugin abstraction for hMod plugins.
Maven coordinates:
<dependency>
<groupId>com.asbestosstar</groupId>
<artifactId>hmod-plugin-base</artifactId>
<version>0.0.1</version>
</dependency>This project provides a minimal version of hMod's Plugin class containing only the essential functionality needed to create simple hMod plugins.
The original hMod software is old and difficult to compile against cleanly in modern environments. This artifact exists mainly as a lightweight bootstrap abstraction for plugin development.
It is intended for:
- Simple plugins
- Legacy plugin compatibility
- Compiling old plugins
- Minimal hMod bootstrap support
- Projects that only need the basic plugin structure
It is not intended to fully replace the complete hMod API.
The base Plugin abstraction provides:
enable()disable()initialize()- plugin enabled state
- plugin name storage
Example:
public abstract class Plugin {
public abstract void enable();
public abstract void disable();
public void initialize() {
}
}hMod loads plugins by:
- Reading the
plugins=entry fromserver.properties - Looking for:
plugins/PluginName.jar - Loading a class named:
PluginName - Instantiating it
- Calling:
enable(); - Then calling:
initialize();
Plugins are explicitly listed in server.properties.
public class MyPlugin extends Plugin {
@Override
public void enable() {
System.out.println("Plugin enabled");
}
@Override
public void disable() {
System.out.println("Plugin disabled");
}
@Override
public void initialize() {
System.out.println("Plugin initialized");
}
}- Add this dependency
- Create a class extending
Plugin - Build your jar
- Name the jar:
MyPlugin.jar - Place it into:
plugins/ - Add to
server.properties:plugins=MyPlugin
This project only provides the minimal Plugin base abstraction.
It does not include:
- full listener APIs
- server wrappers
- entity wrappers
- block APIs
- player APIs
- hook systems
- networking
- world APIs
- inventory APIs
- internal Minecraft server classes
Those systems depend heavily on old and obfuscated Minecraft server internals.
If your plugin needs deeper integration, you will still need the original hMod server/API environment.
Old Minecraft server ecosystems are difficult to compile against today because:
- many artifacts were never published to Maven Central
- original downloads are disappearing
- APIs depend on obfuscated internals
- repositories are incomplete or broken
This project provides a clean Maven Central artifact for the basic hMod plugin bootstrap structure.
GNU General Public License v3.0