Description
Starfarer — No Man's Sky-inspired add-on for Minecraft Bedrock
Target
- Bedrock 1.21.120+ (works on current 26.x). No experimental toggles.
- Script API:
@minecraft/server2.3.0,@minecraft/server-ui2.0.0. - Namespace
sf:. Packs:Starfarer_BP+Starfarer_RP, shipped asStarfarer.mcaddon.
Features
- Exosuit: life support (Oxygen / Di-hydrogen Jelly / Life Support Gel), hazard protection (Sodium / Sodium Nitrate), jetpack (hold jump in mid-air, landing stabilisers), shelter detection (roof, cave, ship, base), HUD on the action bar.
- Terrain: each planet re-sculpts its surface out to your render distance as you explore (palettes, sub-surface, trees, plus spires/craters/arches/ice spikes/fungal towers/crystal spires). Player-built blocks and the home planet are left alone.
- Deep space: above y=200 the Overworld becomes a vacuum band (5,000 m orbital scale) with night sky, asteroid fields, derelicts, micro-gravity and doubled life-support drain.
- Planets: the Overworld is split into 2048x2048 planets centred on world spawn (home = safe Lush). Types: Lush, Toxic, Irradiated, Frozen, Scorched, Barren, Exotic. Nether = Infernal, End = Dead. Procedural names, systems, weather, star class, economy, Sentinel level. Biome and night adjust the temperature. Custom fog per planet, extreme storms (fog, particles, 4x hazard drain). Procedural alien flora, crystals, mineral deposits and buried tech are generated per chunk (tracked by a bitmap in world dynamic properties).
- Multi-Tool (sneak + use cycles the mode): Mining Beam (hold, heat/overheat, carbon charge, ranged mining, resources straight to inventory, tractor-pulls drops), Boltcaster (hitscan, magazine, Projectile Ammo), Analysis Scanner (expanding pulse ring, resource beacons, distance/compass list, fauna discovery rewards).
- Resources and crafting: 22 resources, 8 components, 23 crafting recipes, a timed Refiner block (22 recipes, persistent jobs), Galactic Trade Terminal (sell with planet-economy pricing, shop, Nanite exchange, 9 upgrade lines for exosuit, multi-tool and starship), Base Computer (respawn point, life-support zone, warp destination).
- Starship: custom model (glowing engines, banking/pitch animation, retracting landing gear, animated exhaust). Summoned with the Starship Beacon (flies in and lands). Hold W (forward) for ~0.4s to launch (uses launch fuel). Flies where you look; W/S throttle, A/D strafe and bank, double-tap W to engage the Pulse Engine (brake to disengage), brake near the ground to land, sneak to exit. Jump is never read while piloting. The beacon opens a touch-friendly pilot menu while seated. A Warp Cell opens the Galaxy Map; the hyperdrive jump has a fade, streaks and sound, and you arrive in a new system in flight. Emergency eject gives slow falling.
- Sentinels: drone entity with patrol and alert textures, script AI (orbit, line-of-sight laser fire), patrols that scan you, wanted levels 1–3 with escalating waves, evasion by breaking line of sight, and rewards.
- Signal Booster points of interest: crashed freighter (cargo pods), emergency drop pod (+8% exosuit capacity each), ancient ruins (monolith riddle), buried tech cache, all with HUD waypoints and marker beams.
- Voyager's Guide: in-game manual, discovery log, HUD toggle, operator world settings (hazards off/relaxed/full, life support, storms, sentinels off/normal/aggressive, flora).
- Starter kit and an "exosuit boot" intro on first join.
- 26 original synthesised sounds, 10 custom particles, 16 fogs, all-original pixel art.
- Debug script events:
/scriptevent sf:kit,sf:units <n>,sf:nanites <n>,sf:ship,sf:storm <sec>,sf:wanted <1-3>,sf:refill,sf:give_all,sf:reset.
Source layout (saved in this project under starfarer/src/)
tools/defs.py— items, recipes, refiner recipes, prices (single source of truth)tools/sprites.py+tools/pixel.py— 16x16 ASCII pixel-art sprites and palette rampstools/geo.py+tools/models.py— geometry builder with an auto texture atlas; starship, drone and block modelstools/sounds.py— numpy synthesis, encoded to .ogg with ffmpegtools/build.py— generates both packs intodist/(python3 build.py ../dist)tools/validate.py— checks every reference, UV bounds, 30px block bounds, and flags pixels that would render invisiblescripts/*.js— gameplay (main, util, planets, terrain, exosuit, multitool, refiner, trade, starship, sentinels, poi, guide, hud, forms, discovery).data.jsis generated by the build.scripts/terrain.js— per-planet block palettes, the surface repaint job, landmark features and the deep-space asteroid generator.
How it was verified
tsc --checkJsagainst the official 2.3.0 typings (plus a stricter pass with auto-annotated parameters).validate.py: OK (54 items and blocks, 13 geometries, 10 particles, 26 sounds).bench.mjsmeasures sculpting throughput per second (pinned salt) so speed changes are comparable.- Node smoke test with a mocked API (40 checks): boot, kit, jetpack, mining, bolts, scan, refiner, trade, base, ship summon, land, launch, pulse (double-tap), warp and arrival, sentinel waves, signal booster, drop pod, monolith, cargo, harvest, storms, other dimensions, terrain repaint, deep-space HUD/night/asteroids/re-entry. All passed with 0 script errors.
- Models rendered with three.js to confirm every face is textured.
- Not yet tested in the real game. Items most likely to need tuning in-game: ship seat height, pitch/roll sign on the ship animation, block front orientation, jetpack strength.
- Known Bedrock quirk: while riding, the jump button dismounts the rider, so ship controls must never use it (fixed in 1.0.1).
To rebuild
Requirements: Python 3 + Pillow + numpy, ffmpeg (libvorbis). Put tools/ and scripts/ side by side, run cd tools && python3 build.py ../dist && python3 validate.py ../dist, then zip each pack folder to a .mcpack and both into Starfarer.mcaddon.






