Files
rivencraft/README.md
T
dnorberg 3760b0dea3
Build / build (push) Canceled after 0s
Expand destination preview snapshots
2026-09-21 09:53:10 -04:00

3.3 KiB

Rivencraft

Rivencraft is a clean, incremental port of the ideas and gameplay of Mystcraft Legacy to Minecraft 1.21.1 on NeoForge.

The bootstrap and books/linking milestones are complete. The project currently provides functional Linking Books and temporary vanilla-dimension Descriptive Book destinations with generated Return Links. Age generation, symbols, instability, and writing mechanics have not been ported yet.

Linking Book

Craft a Linking Book from a vanilla book and an ender pearl, then use it in the air. An unbound book opens a screen where it can be named and bound to the current location. A bound book opens its destination screen and travels when its preview panel is clicked. The destination is stored on the item and survives inventory and world saves. Travel only succeeds if the target dimension is loaded and a non-fluid, passable landing position can be found nearby.

Right-click an empty vanilla lectern with a Rivencraft book to convert it into a Book Stand and place the book on it. Use a Linking Book on the stand by right-clicking with an empty hand. Sneak-right-click with an empty hand to take the book back and restore the vanilla lectern. Breaking a Book Stand drops both the stored book and a vanilla lectern.

Bound Linking Books request a server-validated 32-by-32-by-32 snapshot around their destination. The book keeps its target-centered close-up framing as a rotating Ponder scene on the left page, backed by the destination biome's sky color. The snapshot is visual only; the server independently validates every link.

Descriptive Book

Until generated Ages arrive in Milestone 3, written Descriptive Books resolve deterministically to the Overworld, Nether, or End according to their Age UUID. The Rivencraft creative tab includes one sample book for each. Linking creates a bound Return Link to the exact source position and orientation. Descriptive Book destinations additionally require solid footing beneath the player. If their recorded arrival is unsafe, they search nearby terrain for a footed spot.

Requirements

  • A Java 21 JDK
  • Minecraft 1.21.1
  • NeoForge 21.1.251 or newer in the 21.1 line
  • Ponder 1.0.82 for Minecraft 1.21.1 (client)

Build and run

./gradlew build
./gradlew runClient

The built mod is written to build/libs/.

Versioning

Rivencraft versions use x.y.z:

  • x changes for a major public release.
  • y changes when a development milestone is completed.
  • z changes for iterations within the current milestone and for bug fixes.

The patch component resets to zero when a milestone is completed. For example, milestone 2 development follows 0.1.1, 0.1.2, and so on; completing that milestone produces 0.2.0.

Porting approach

Mystcraft Legacy targets Forge for Minecraft 1.12.2. Rivencraft therefore ports one subsystem at a time onto current registries, codecs, data packs, and NeoForge APIs instead of importing the legacy source tree wholesale.

See docs/PORTING.md for the initial roadmap and provenance rules.

License

Rivencraft is licensed under LGPL-3.0-or-later. Mystcraft Legacy is also LGPL-3.0; copied or adapted upstream code must retain its copyright and license notices. See LICENSE and NOTICE.