For Developers

This page is the contributor- and integrator-facing entry point. The deep API reference lives in the repo's ../docs/ folder; this page orients you and links there.

Building on Core

Core is the single, stable foundation every Neroland mod depends on. Declare it a required dependency ordered after Core, and pin to a major range ([1.0,2.0)):

  • Fabric (fabric.mod.json): "depends": { "nerolandcore": ">=1.0.0" }
  • NeoForge (neoforge.mods.toml): a required [[dependencies.<modid>]] on nerolandcore, ordering = "AFTER".
  • Forge (mods.toml): the equivalent required, AFTER dependency.

Full instructions: ../docs/USING-CORE.md.

The systems and their facades

Every system is reached through a small facade; per-loader wiring is Core's job.

You want to…UseWikiDeveloper doc
Require a material by tagc:ingots/<m> / neroland:materials/<m>Tags & DatapacksTAGS-AND-DATAPACKS
Register your own configConfigManager.register(schema)ConfigurationCONFIG
Gate content on progressProgressionGates.isOpen(player, gate)Progression GatesPROGRESSION
Read/move moneyCurrencyApiEconomy & ReputationECONOMY-REPUTATION
Adjust faction standingReputationApiEconomy & ReputationECONOMY-REPUTATION
Build a machineextend AbstractMachineBlockEntityMachines, Power & UpgradesMACHINES-POWER-UPGRADES
Expose/find energyEnergyLookup + *EnergyLookup.ENERGYMachines, Power & UpgradesMACHINES-POWER-UPGRADES
Store/expose a fluidNeroFluidStorage / FluidBuffer + nerolandcore:fluidMachines, Power & UpgradesMACHINES-POWER-UPGRADES
Store/expose a gasNeroGasStorage / GasBuffer / NeroGases + nerolandcore:gasMachines, Power & UpgradesMACHINES-POWER-UPGRADES
Ask "is this place off-Earth?"SpaceTags.isSpace(level) / SpaceTags.biomeIn(...)Space Tags & Entity RegistrationSPACE-TAGS-AND-ENTITIES
Register mob attributes / spawn placementEntityRegistrationSupport.get(modId)Space Tags & Entity RegistrationSPACE-TAGS-AND-ENTITIES
Store player dataregister a PlayerDataEraserPrivacy & DataCOMPLIANCE

Implementing a Core provider

Core defines the contracts and stores nothing for economy/reputation; your mod registers the store:

  • CurrencyApi.setProvider(new MyCurrencyStore()) — NeroEconomy.
  • ReputationApi.setProvider(new MyReputationStore()) — NeroFactions.

API stability

Core follows semantic versioning on its public API, frozen between majors. Implementation types are marked @ApiStatus.Internal and may change at any time — reference materials by tag and use the facades, never the internals. See ../docs/API-STABILITY.md.

Contributing

  • Resources are hand-authored in common/src/main/resources — validate JSON after edits.
  • Keep common/ free of loader-specific imports; use the platform seams.
  • Whenever you add, change, or remove a feature, update this wiki in the same change.
  • See ../AGENTS.md / ../CLAUDE.md for the full build-and-verify rules.

See also

Search across every Nero mod wiki.