Developer Resources
Find SoulFire Javadocs, source code, dependencies, and plugin examples.
This page lists the main references for SoulFire plugin authors.
This page is reference material. If you want the guided path first, start at Development or Build Your First Plugin.
Official links
| Resource | Link |
|---|---|
| SoulFire source repository | github.com/soulfiremc-com/SoulFire |
| Official plugin template | github.com/soulfiremc-com/SoulFirePluginExample |
| Aggregated Javadocs | ci.codemc.io/.../SoulFire/javadoc |
| Maven public repo | repo.codemc.org/repository/maven-public |
mod metadata | maven-metadata.xml |
shared metadata | maven-metadata.xml |
Fabric and Mixin references
| Resource | Link |
|---|---|
| Fabric documentation | docs.fabricmc.net |
| Fabric wiki: Mixin injection reference | tutorial:mixin_injects |
| Fabric wiki: Access wideners | tutorial:accesswideners |
| SpongePowered Mixin wiki | github.com/SpongePowered/Mixin/wiki |
Current package entry points in the Javadocs
Start with these package summaries:
com.soulfiremc.server.apicom.soulfiremc.server.api.eventcom.soulfiremc.server.botcom.soulfiremc.server.settings.libcom.soulfiremc.grpc.generated
Artifact coordinates
Use these coordinates for most plugin projects:
groupId: com.soulfiremc
artifactId: mod
artifactId: shared
repository: https://repo.codemc.org/repository/maven-public/The public metadata currently reports:
- latest release for
mod:2.7.0 - latest snapshot for
mod:2.7.1-SNAPSHOT
Read the metadata before you select a version. The template repository can use an older version than the current release.
Source tree map
| Location | What you learn there |
|---|---|
mod/src/main/java/com/soulfiremc/server/api | plugin base classes, events, metadata helpers |
mod/src/main/java/com/soulfiremc/server/bot | BotConnection, ControlState, ControllingTask |
mod/src/main/java/com/soulfiremc/server/settings | property model and settings infrastructure |
mod/src/main/java/com/soulfiremc/server/grpc | how client actions become runtime behavior |
proto/src/main/proto/soulfire | server, instance, bot, command, and scripting contracts |
mod/src/main/java/com/soulfiremc/server/plugins | built-in plugin implementations |
Built-in plugins to study first
If you only read a few internal plugins, read these:
| Plugin | Why it is useful |
|---|---|
| AntiAFK | small, clean example of event hooks plus settings page registration |
| AutoArmor | staged inventory control |
| AutoEat | action sequencing and fallback behavior |
| CaptchaSolver | richer settings, multiple property types, and more complex behavior |
| KillAura | metadata, control ownership, and manual task markers |
| DialogHandler | bridging Minecraft dialog state into the API layer |
Template caveat
The official example is the best starting template for your first plugin. It is not always the final word on low-level current internals.
Compare these three sources before you publish the plugin:
- the current template repository
- the current SoulFire Javadocs
- the current built-in plugin and mixin sources
If an old template example and the current Javadocs disagree, trust the current Javadocs and current SoulFire source tree.
Extra references
How is this page?
Last updated on
