Seed to Stars

Seed to Stars

Farm. Forge. Fly.

Grow a homestead, automate it into a crop-fed factory, then launch humanity's seed vault to the stars.

Earth's breadbaskets are failing. The Ark Initiative has picked you, a farmer with a hoe and a handful of seeds, to grow the seed vault that will found humanity's first off-world colony.

Seed to Stars is a hand-built Minecraft modpack: Stardew-style farming on a real seasonal calendar, Factorio-style production lines in Create, crops refined into biodiesel, bioplastic and rocket fuel, and Ad Astra rockets to the Moon, Mars and beyond. A custom quest book guides every step with production milestones. The Oasis Challenge is a premade survival world that drops you into the last fertile oasis in a desert of hazards and ruins.

It is also the first draft of a game of its own. Quests compile from JSON specs, art and worldgen come from Python generators, and coding agents work on it like any other software project.

  • 102mods
  • 354quests in 11 chapters
  • 26custom items
  • 25custom recipes
  • 14year-round staple crops + 92 seasonal ones
  • 22Oasis structure templates

The journey

#

Five Acts take you from a dirt field to a colony on an ice world. Every Act opens with a briefing that lists its milestones; big deliveries go into Task Screens fed by belts and pipes.

  1. FARM

    1. Mission Briefing

      answer the Ark Initiative

    2. Act I · The Homestead

      crops, kitchen, animals, seasons

  2. FORGE

    1. Act II · The Harvest Engine

      Create automates the farm

    2. Act III · Bio-Industry

      biodiesel, bioplastic, rocket fuel

  3. FLY

    1. Act IV · Mission Control

      suits, rations, rocket, liftoff

    2. Act V · Seed to Stars

      Moon, Mars, Venus, Mercury, Glacio

    3. Ark Seed Vault

      delivered to Glacio

  • Colony Life opens after the briefing and runs alongside: Supply Contracts buy your produce for Colony Credits, the Colony Exchange spends them, and the Farmer's Almanac is a field guide to dishes, fish, crops, bees and animals.
  • The Ark Manifest opens after Act II: the endgame megaproject. 3,000 bread, 2,500 astronaut rations, 512,000 mB of rocket fuel, 2,048 bioplastic sheets, 1,024 steel plates, then a flight to Glacio orbit to build the Ark as a station.
  • The Oasis Challenge uses the same pack and book with a much harder start (see below).

Highlights

#
Homestead banner

Homestead and seasons

Pam's HarvestCraft 2 and Farmer's Delight on a Serene Seasons calendar: 18-day seasons, out-of-season crops pause, glass makes a greenhouse. 14 Staple Crops grow all year, so mass production never stops. Eat new foods for extra hearts.

Harvest Engine banner

The Harvest Engine

Create water wheels, mills, presses, mixers, belts and deployers turn the farm into a production line. Quests set throughput milestones that you feed into Task Screens. EMI's recipe tree is your planner.

Seed to Stars banner

Crops to rocket fuel

Crops become biomass, bioplastic and biodiesel, and rockets only burn refined fuel. Bioplastic goes into space suits, rations come off a sequenced-assembly line, and Ad Astra flies you to five worlds.

The quest book chapter list

A quest book that teaches

354 quests compiled from JSON specs by our own compiler, which lints them. Every quest has the same shape: Goal, why it matters, Tip, Delivery. Auto-pin keeps the quests you can do right now on screen.

The caravanserai in the spawn oasis

Oasis Challenge

A premade survival world: one oasis in a sea of desert, mesas, basalt and tundra. Heat and cold, sandstorms, Ark supply drops, landmarks and a six-site story chain with a boss.

Distant Horizons view across the wastes

Kilometres of view

Terralith terrain and Distant Horizons, with an 11-byte fix for an Apple OpenGL crash built in this repo. 73 to 107 FPS in the V2 test tour (Apple M5 Pro, 1728×1080, DH on).

The quest book

#

Eleven chapters in two groups, "Main Mission" and "Colony Life". The story chapters use flexible progression: the book guides, it does not railroad.

Image Chapter Quests
Mission Briefing
Incoming transmission from the Ark Initiative
12
Oasis Challenge
Survive the wastes. Find what the first colony left behind.
32
Act I · The Homestead
Put down roots.
32
Act II · The Harvest Engine
Build the machine that feeds the colony.
36
Act III · Bio-Industry
Crops in. Power out.
32
Act IV · Mission Control
Steel, seeds, and a ticket to the Moon.
34
Act V · Seed to Stars
Grow where nothing has ever grown.
31
The Ark Manifest
Feed a colony. Fuel a starship. Bring a friend.
30
Supply Contracts (Colony Life)
Grow it. Ship it. Get paid.
32
Colony Exchange (Colony Life)
Spend Colony Credits on time-savers and treats.
37
Farmer's Almanac (Colony Life)
Field notes on everything that grows, swims, grazes and buzzes.
46
Every quest reads the same way. build/STYLE.md is enforced by the compiler.

Made for this pack. 26 custom items, 2 effects, 8 chapter banners, a title logo and a painted title panorama, all drawn by Python pixel-art generators in build/branding/:

Custom item sprites
The bio-industry chain from Colony Credit to Ark Seed Vault · Act badges and the Colony Founder's Medal · Oasis relics and the Refreshed and Warmed effects

Oasis Challenge

#
The spawn oasis, 400 × 400 blocks, rendered from the shipped world's region files by tools/render_region.py.
  • Seed 1037. Your pod lands in the only fertile oasis for hundreds of blocks, ringed by desert, red mesas, gravel and basalt wastes and tundra.
  • The Caravanserai: a ruined waypost with a well, market, bounty board, kitchen, lookout and Dune, a saddled camel.
  • Heat and cold: a meter fills in the sun or the cold. Cool drinks give Refreshed, hot meals give Warmed, so your farm feeds your survival.
  • Sandstorms sweep the deserts when it rains elsewhere.
  • Ark supply drops land 120 to 320 blocks out every two to two and a half in-game days, each with a manifest to turn in for Colony Credits.
  • Landmarks: crashed pods, waystations, fossils, four kinds of obelisk and nomad camps, plus YUNG's desert temples.
  • Story chain: Pod 7, Buried Caravan, Frozen Expedition, Rustfang's Hold (boss), Ember Forge, Colony Zero. Finish all six for an Elytra.
  • Built by code: Python writes the worldgen datapack (131 JSON files, 22 NBT templates), a test-server script places the sites, and ./sts oasis-build ships the world. All of it lives in the world's own datapack, so normal worlds are untouched.

Built to run great on Mac and Linux

#

Everyone in the group plays on a Mac, and the multiplayer server runs on Linux. The pack is tuned for both, and every choice below is in the pack today.

The Apple crash hunt. Early builds crashed at random, 0 to 60 seconds after joining a world. Crash-log forensics traced it to Distant Horizons: it reads one OpenGL setting into a buffer sized for one number, and Apple's OpenGL-on-Metal driver writes two. A small probe program proved it on the M5 Pro. The fix is an 11-byte bytecode patch to Distant Horizons, rebuilt from the official download by one command (./sts patch-dh), so the far-view LODs stay and the crashes are gone.

Layer What it does Mods
Rendering engine A modern renderer instead of OptiFine, with OptiFine-style quality, animation and detail toggles Sodium, Sodium Extra
Draw calls Batches HUD, text and item rendering; skips mobs and block entities you cannot see ImmediatelyFast, Entity Culling
Memory and load time Less RAM and faster launches on both the Mac and the server ModernFix, FerriteCore
Laptop battery Drops the frame rate when the window is in the background or minimised Dynamic FPS
Busy farms Merges piles of XP orbs into one Clumps
Far views Desert vistas to the horizon, patched for Apple GPUs Distant Horizons (macfix)
The OptiFine extras Zoom on X, handheld torches that light the way, animated and glowing mob textures Zume, LambDynamicLights, Entity Texture Features
Shaders Ready when you want them (K toggles); off by default because Apple's OpenGL 4.1 limits how many textures a shader can use Iris

Linux server. The dedicated NeoForge server runs as a systemd service and shares the memory optimizations (ModernFix, FerriteCore, Clumps). Client-only mods (rendering, zoom, shaders) are marked client-side in the pack, so the server never loads them.

Next up: a Mac tuning pass (Retina render scale, trackpad and keyboard fixes, Java memory flags for Apple silicon) and a shader preset tested on Apple GPUs.

Play it

#
  • On the Mac

    Minecraft Launcher → Seed to Stars profile → Play. The game folder ~/Games/SeedToStars is synced from this repo with ./sts deploy client-mods, which keeps your worlds and refuses to run while the game is open.
  • New world

    Create a Survival world; you spawn with the Quest Book.
  • Oasis Challenge

    Singleplayer → Oasis Challenge. ./sts deploy client installs a fresh copy and moves the old one to the game folder's backups/worlds/.
  • Multiplayer

    A private, whitelisted server on Omid's Linux box runs its own Oasis Challenge world. Ask for access; friends need the same pack (a shareable package is on the roadmap).
  • Player guide

    Keys, world rules and tips are in build/oasis/README_PLAYER.md and build/KEYS.md.

Develop it

#

Coding agents (Claude Code, Codex, others) start with AGENTS.md: repo map, golden rules, dev loop and definition of done. Every doc is indexed in docs/README.md.

gh repo clone omid-ctrl/seed-to-stars ~/modpacks   # the tools expect exactly this path
cd ~/modpacks
./sts doctor      # prerequisites: packwiz, Java 21, python3 + Pillow, gh, local inputs
./sts validate    # compile tools, lint quest specs, parse pack files, packwiz index check
./sts quests      # compile build/specs into the pack's FTB Quests files
./sts integrate   # boot the local test server with the pack and report errors

./sts integrate and ./sts oasis-build need a local NeoForge test-server/, which is not in git (docs/PLAYBOOKS.md).

All ./sts commands
Command What it does
./sts help List commands
./sts status Git summary, pack stats, whether the game, launcher or test servers are running (read-only)
./sts validate Every offline check: Python compile, quest lint and temp build, HUD check, JSON/TOML, packwiz index, zsh -n
./sts quests Compile build/specs into seed-to-stars/config/ftbquests/, then packwiz refresh
./sts integrate Quests, packwiz refresh, reinstall and boot test-server/, print errors (wipes the test world)
./sts oasis-build Datapack, fresh seed-1037 world on the test server, site log, shipped world
./sts deploy <client-mods|client|server|all> Sync the game folder and/or the server. Ask first; all but client-mods replace the Oasis world (with backups)
./sts test-client [world] Print the client-test recipe; --run launches it (needs an unlocked screen)
./sts patch-dh Rebuild the patched Distant Horizons jar from the upstream release
./sts docs Regenerate docs/CONTENT.md
./sts doctor Check prerequisites and local inputs

How it fits together (details in docs/ARCHITECTURE.md):

  • build/specs/*.json quest specs./sts questsseed-to-stars/ packwiz pack
  • build/branding/*.py art generatorsseed-to-stars/ packwiz pack
  • seed-to-stars/ packwiz pack./sts integratelocal test server
  • tools/oasis_*.py worldgen generators./sts oasis-buildOasis Challenge world
  • seed-to-stars/ packwiz pack./sts deploygame folder + server
  • Oasis Challenge world./sts deploygame folder + server

Repo map

Path What
seed-to-stars/ The packwiz pack: pack.toml, index.toml, 102 mod metafiles, KubeJS scripts and assets, configs. Everything here ships to players
build/specs/ Quest chapter sources (JSON), compiled by tools/build_quests.py
build/ Design docs (DESIGN, STYLE, RECIPES, SEASONS, KEYS, MODS) and the art generators in build/branding/
build/oasis/ Oasis Challenge contract, player guide, quest-spec generator and test-only builder scripts
tools/ Quest compiler, worldgen generators, NBT library, map renderer, build and deploy scripts, item catalog
client-extras/ Client-only files outside packwiz: the Distant Horizons macOS patch
docs/ Knowledge base, playbooks, architecture, generated content inventory, README media
  • AGENTS.md
  • CLAUDE.md
  • sts
Agent manual, Claude Code wrapper, task runner
.github/workflows/ CI: the headless checks from ./sts validate

Tech stack

Layer Tech
Game Minecraft 1.21.1, NeoForge 21.1.265
Pack packwiz: 102 mod metafiles (83 both sides, 19 client-only), 206 index entries
Core mods Create 6.0.10, Ad Astra 1.16.26, Farmer's Delight 1.3.4, Pam's HarvestCraft 2, Serene Seasons 10.1.0.9, Terralith 2.5.8
Scripting KubeJS 2101.7.2 on Rhino: 8 scripts, 1,268 lines (items, effects, recipes, seasons, fuel rules, Oasis systems)
Quests FTB Quests 2101.1.37, compiled from JSON with deterministic IDs and a style lint
Worldgen A generated world datapack: Terralith biomes remapped by climate, a custom oasis biome, jigsaw landmarks
Tooling Python 3.12 + Pillow (about 6,800 lines: compiler, generators, NBT, map renderer, pixel art), zsh, ./sts
Client Sodium, ImmediatelyFast, Entity Culling, Distant Horizons 3.3.3 (patched for macOS)

Roadmap

#

The engine stays NeoForge, Create and about 100 mods. "A game of its own" means our own layer on top: content, names, art, worldgen and systems.

Done

6 of 6 done

  • 354-quest book compiled from JSON specs, with a style lint and a HUD check
  • The farm-to-fuel chain: 26 custom items, 25 custom recipes, seasonal crops with year-round staples
  • Custom title logo, panorama, chapter banners and item art, all generated from code
  • Oasis Challenge V2: generated worldgen, 11 hand-built site templates, survival systems, a 32-quest chapter
  • This repo, the agent manual and the ./sts task runner
  • CI on GitHub Actions: the headless part of ./sts validate on every push

Next: foundations

0 of 3 done

  • Play-test the Oasis V2 systems end to end and fix the camel stage
  • Confirm the Distant Horizons macOS fix over long sessions
  • Refresh the stale numbers in the older design docs

Then: a game of its own

0 of 6 done

  • Our own names for borrowed things through lang overrides, ids unchanged (Task Screen → Delivery Terminal, NASA Workbench → Launch Fabricator, a new name for Glacio)
  • More custom items, blocks, fluids and Create chains, with code-drawn art
  • The Oasis worldgen pipeline as a pack-wide world preset, and a custom planet in place of Glacio
  • Heat, cold, sandstorms and supply drops as an optional survival layer for the main game
  • Our own NeoForge mod (Java) where KubeJS runs out: machines, GUIs, performance, with an id migration plan
  • A shareable friend package (.mrpack plus the DH extra and its patch script)

Credits and licenses

#
  • Mods belong to their authors. This repo ships no mod jars: packwiz metafiles point at Modrinth and CurseForge downloads, checked by hash. The full list is below.
  • Terralith by Stardust Labs shapes the terrain. The pack silences its intro chat message, so the credit lives here.
  • Distant Horizons is LGPL-3.0. The macOS fix changes 11 bytes in one class; the patched jar is not committed and ./sts patch-dh rebuilds it from the official release (see client-extras/README.md).
  • Original code, quest text and art in this repo © Omid. No open-source license yet; ask before reusing.
  • Not an official Minecraft product. Not approved by or associated with Mojang or Microsoft.
All 102 mods, by category (ᶜ = client-only)
Category Mods
Farming & food (11)
Create & automation (8)
Space (1)
Quests, scripting & progression (6)
Worldgen & exploration (7)
Storage (4)
Building & decoration (8)
Quality of life & UI (19)
Performance (8)
Visuals & audio (7)
Libraries (23)
Client extra (1) Distant Horizons ᶜ, patched for macOS and installed outside the packwiz index

Turn your phone sideways for a bigger view