Nerospace 1.0.0 - Fabric 26.1.2
Curse Maven Snippet
What's new
Added
Marker-less quarry setup (frame outline)
- The quarry area can now be defined without landmarks: outline a closed rectangle with
hand-placed Frame Casing (it is now a placeable block item that places
quarry_frame) and put the Quarry Controller beside it — the controller detects the complete perimeter (same plane, same size limits as the landmark path) and starts mining inside it immediately. The landmark flow is unchanged. - The GUI now shows why the quarry is paused ("Paused — frame incomplete / out of power / output buffer full / fluid buffer full / out of Frame Casing / wrong planet").
Public cargo-rocket route API (za.co.neroland.nerospace.api)
- New semver-stable route surface for logistics consumers (NeroLogistics'
RouteProviderseam):NerospaceRoutes— static lookup facade:endpoints()(Home + Orbital Station + the three moons, stable order),endpoint/isEndpoint,route(from, to),routesFrom(from), andisOpen(...)liveness checks against loaded dimensions.RouteEndpoint— immutable endpoint record (dimension key, display name, optionalPlanetId).CargoRoute— immutable directed route record carrying the minimum rocket tier (1–4), the per-launch fuel cost in millibuckets (the same cross-dimension launch cost a crewed rocket pays,fuelCost-config-scaled at query time), and a canonical transit duration in ticks (TRANSIT_TICKS_PER_STEPper step of separation in the destination order).
- Read-only and player-data-free; the internals (
rocket.Destinations,rocket.RocketTravel,rocket.RocketTier) remain internal.
Meteor Tracker is now craftable (survival)
- New shaped recipe: a vanilla Compass with Nerosteel Ingots above and below and Redstone Dust at the sides. The tracker was previously creative-only. (The four destination compasses remain creative-only pending a rework.)
Optional Energized Power interop declared
- All three loader manifests now declare Energized Power as an optional/suggested
dependency with
AFTERload ordering, so its capabilities andc:tags are ready before Nerospace loads when it is installed. Nerospace stays fully independent of it.
Fixed
Machine blocks now drop themselves when mined
- Several blocks used
requiresCorrectToolForDropsbut were missing from theminecraft:mineable/pickaxetag, so no tool ever counted as correct and they dropped nothing: Fuel Tank, Fuel Refinery, Oxygen Generator, Terraformer, Hydration Module, Terraform Monitor, Star Guide, Solar Panel (all tiers), Quarry Controller, Rocket Launch Pad, Launch Gantry, Village Core (plus Meteor Core, Launch Controller and its filler for mining-speed parity). All are now pickaxe-mineable; loot-table-dropping ones also need an iron tool, matching the other machines. Solar Panel T2/T3 keep their one-item multiblock drop from code (their loot tables are now empty to prevent a duplicate drop).
Changed
Quarry frame lifecycle
- Breaking a frame block now drops a Frame Casing, and the quarry notices the broken ring: it rebuilds the gap from its casing stock, or pauses with "frame incomplete" until the player patches the ring by hand or inserts casings into the frame slots.
- A finished dig dismantles its frame: the standing frame blocks are removed and their casings returned to the controller's frame slots (spilled at the controller if the slots overflow). Breaking the controller still drops everything it holds.
- Breaking the controller mid-dig no longer silently deletes the frame. The orphaned frame
blocks now decay: each one crumbles (break effect, dropping its Frame Casing — the same
drop as mining it yourself) at its own random moment, the ring slowly dissolving block by
block over roughly the next 30 seconds to 4 minutes (tunable via the new
quarryFrameDecayTicksconfig key). Placing a new controller beside a still-complete orphaned ring re-adopts it and stops the decay.
Storage blocks moved to Neroland Core
- The Battery, Fluid Tank, Gas Tank, Item Store, and Trash Can (the first
four with their Creative variants) now ship in the shared Neroland Core library
instead of Nerospace. Their ids changed from
nerospace:*tonerolandcore:battery,nerolandcore:fluid_tank,nerolandcore:gas_tank,nerolandcore:item_store,nerolandcore:trash_can(andnerolandcore:creative_*), so every Neroland mod now shares one set of storage endpoints. They craft and behave exactly as before. - Bumped the required Neroland Core dependency to 1.1.0 (the release that adds these blocks and the generic fluid/gas storage APIs; the Trash Can also brings Core's first menu type and client screen).
- The Universal Pipe still interoperates with all of these blocks — it bridges Core's
nerolandcore:fluid/nerolandcore:gas(and energy / item) capabilities onto Nerospace's ownnerospace:fluid/nerospace:gaslookups, so existing pipe networks keep working (including voiding into the Trash Can).
Generators now push power directly (no cables needed)
- The Combustion Generator, Passive Generator, and Solar Panel now default their energy auto-eject to ON: they push power into adjacent receivers every tick — machines, batteries, pipes, and (via Neroland Core 1.3.2's Forge-Energy fallback) third-party FE blocks. Auto-eject can still be toggled off per machine in the side-config UI.
Quarry pacing rebalance
- The quarry's mining interval increased from 8 to 10 ticks — a modest slow-down to rebalance throughput against its power draw.
Neroland Core dependency bumped to 1.3.2
- Brings the standard Forge-Energy fallback in Core's energy lookup: the Universal Pipe now connects to and transfers with third-party FE cables and machines (e.g. Energized Power) on NeoForge and Forge, and Core's Battery pushes power into adjacent blocks without cables. See Neroland Core's changelog for details.
Build & CI
- New auto-assign workflow: the maintainer is assigned to newly opened issues and PRs
(including forked PRs via a limited, API-only
pull_request_target). publish.ymlrelease-note extraction now tries the exact version section first, falls back to[Unreleased], and only uses the placeholder when neither exists.
Migration note (existing worlds)
- Block-id aliases preserve existing placements. Blocks already placed as
nerospace:battery,nerospace:fluid_tank,nerospace:gas_tank,nerospace:item_store, ornerospace:trash_can(andcreative_*) are remapped to the matchingnerolandcore:block on load:- Forge — via Forge's
MissingMappingsEvent(fully supported). - NeoForge / Fabric — modern NeoForge removed that event and Fabric never had
one, so a small, strictly-scoped mixin remaps these ids at the registry
lookup instead. It is
require = 0(best-effort): if it can't apply on a given version it safely no-ops rather than crashing. Verify on your save after updating; if a placed block ever drops, break and re-place it with the Neroland Core variant — items and stored contents are unaffected regardless.
- Forge — via Forge's
This mod has no additional files