promotional bannermobile promotional banner

Rustic Craft 2

The official modpack for Rustic Craft 2
Back to Files

Rustic Craft 2 2.2.0

File namerustic-craft-2-2.2.0.zip
Uploader
dwurdydwurdy
Uploaded
Oct 24, 2026
Downloads
9
Size
73.7 MB
Mod Loaders
NeoForge
File ID
9314816
Type
R
Release
Supported game versions
  • 1.21.1

What's new

Rustic Craft 2 — v2.2.0

The Brass Age.

What's new

  • The Brass Age — a full powder-and-steel progression arrives: gunsmithing built from real parts, proof and carry discipline, and the industry around it. What you can make — and what it costs to hold — is found in play.
  • The Straja's domain gains machinery — new institutional systems now run server-side: order, labor, and commerce are mechanics now, not lore. You meet them when they meet you.
  • Simply Swords, with rules — unique weapons join the arsenal, wrapped in a fairness layer that keeps special abilities answerable rather than absolute.
  • Horseman 1.5.13 + Decorative Particle 1.2.0 — mounted-combat fixes (incl. MC-100830) and new ambient effects.
  • Rusti 2 Skins, built in — the NPC skin collection now ships inside the pack through KubeJS assets: no separate resource pack, no server download.

Holstered weapons now render on your back and hip for everyone, not just the server.

Server admin notes

  • kubejs/config/web_server.json ships disabled with an empty auth token (sanitized); keep your live file — the delta leaves it untouched.
  • resource-pack=/resource-pack-sha1= in server.properties were only needed for the old skins zip and can be removed.
  • create-aeronautics and AnimalHusbandry still require a manual client download (authors disabled API distribution) — the prompt is the sanctioned path, not an error.

Installing on the server (2.1.11 → 2.2.0)

Uses rustic-craft-2-server-delta-2.1.11-to-2.2.0.zip + scripts/apply_delta.py from the repo. The applier verifies every checksum and — on format-2 deltas like this one — refuses to overwrite files whose bytes differ from the version it was computed against. Locally evolved server files are skipped and reported, never clobbered.

Do not use scripts/sync_server.py for this upgrade — it overwrites same-path KubeJS files. It is for dev/staging syncs only.

  1. Stop the server.
  2. Back up the server directory — at minimum kubejs/, config/, world/.
  3. Download rustic-craft-2-server-delta-2.1.11-to-2.2.0.zip and rustic-craft-2-server-delta-2.1.11-to-2.2.0.zip.sha256 from this release. Verify:
    sha256sum --strict --check rustic-craft-2-server-delta-2.1.11-to-2.2.0.zip.sha256
    # Windows PowerShell:
    (Get-FileHash .\rustic-craft-2-server-delta-2.1.11-to-2.2.0.zip).Hash -eq (
      Get-Content .\rustic-craft-2-server-delta-2.1.11-to-2.2.0.zip.sha256).Split(" ")[0].ToUpper()
    
  4. Discover the server's current version. If .rc2-server-version exists at the server root, it wins — omit --assume-version entirely. If the file is absent, first confirm which pack version is actually installed (this delta needs 2.1.11); only then pass --assume-version with that version — the flag is a claim of fact, not a guess, and the applier refuses a mismatched base. If your server is on an older stable, apply the intermediate deltas in order first.
  5. Dry-run the plan (changes nothing):
    # marker present (reads .rc2-server-version itself):
    python scripts/apply_delta.py rustic-craft-2-server-delta-2.1.11-to-2.2.0.zip \
      --target /path/to/server
    
    # marker absent AND you've confirmed the server is at 2.1.11:
    python scripts/apply_delta.py rustic-craft-2-server-delta-2.1.11-to-2.2.0.zip \
      --target /path/to/server --assume-version 2.1.11
    
    Expect write 3739, already current 1, remove 0, conflicts 8 — the 8 ! CONFLICT lines are the KubeJS files your live server evolved past the pack; they will be skipped.
  6. Apply (same --assume-version rule as step 5 — shown here for the marker-absent case):
    python scripts/apply_delta.py rustic-craft-2-server-delta-2.1.11-to-2.2.0.zip \
      --target /path/to/server --assume-version 2.1.11 --apply
    
    Expect exit code 2 with applied with 8 unresolved conflicts; live files kept and version NOT stamped. — every addition lands, the 8 live files stay byte-identical, .rc2-server-version is not advanced yet.
  7. Review the conflict list, then resolve (same --assume-version rule — shown for the marker-absent case):
    # live versions win (recommended — matches the verified state):
    python scripts/apply_delta.py rustic-craft-2-server-delta-2.1.11-to-2.2.0.zip \
      --target /path/to/server --assume-version 2.1.11 --apply --keep
    
    Exit 0, version stamped 2.2.0, kept files recorded in .rc2-backups/2.1.11-to-2.2.0/SKIPPED.json. The second run is idempotent (already current 3740). Use --force instead of --keep only if you want the pack's versions — live files are copied into .rc2-backups/ first either way.
  8. Restart the server and verify in logs/latest.log: Done (...), Loaded N/N KubeJS ... with 0 errors, and your usual systems (mines, checkpoint, economy) responding.
  9. If the apply prints ! download manually lines for any mod jar, fetch those files from the linked CurseForge file pages and drop them into mods/ — everything else, including the 8 new mod jars, is applied by the delta itself.

--keep scope note: --keep preserves locally modified files. Pack-declared mod removals still apply (the removed jar is backed up under .rc2-backups/); this delta declares zero mod removals anyway.

Compatibility

  • Minecraft 1.21.1 · NeoForge 21.1.248 · 299 mods (9 added, 0 removed, 0 changed vs 2.1.11)
  • Verified: manifest validation, 90/90 unit tests, headless dedicated-server boot of the shipped payload composed with the live baseline (KubeJS 82/82 server + 6/6 startup scripts, 0 errors), and this exact delta applied against a copy of the live server baseline — all 8 diverged live files preserved byte-identical.

This mod has no additional files