Skip to content

Modpack Author Guide

beeboee edited this page Aug 18, 2026 · 1 revision

Modpack Author Guide

Install the correct components

  • Use Minecraft 1.21.1 and NeoForge 21.1.x.
  • Install the same Biblio JAR on server and clients.
  • Add Scholar 1.2.4+ only if you want its presentation features.
  • Do not install the legacy Biblio datapack alongside the mod JAR.

See Installation and Requirements.

Decide how much loot you want

Biblio's built-in vanilla chest behavior is guaranteed when eligible books are enabled:

  • ordinary structure chests: 1 book
  • villages: 2–4 books per chest
  • stronghold libraries: 6–10 books per chest

Operators can disable catalog branches or individual volumes with /biblio. Those choices are saved per world and also constrain books injected by data-driven integrations.

Add support for third-party structures

Create a datapack in your modpack rather than editing another mod's loot table. Example:

<pack>/data/my_pack/biblio/loot_integrations/ancient_observatory.json
{
  "target": "structuresplus:chests/ancient_observatory",
  "any_tags": ["science", "philosophy"],
  "exclude_tags": ["comedy"],
  "rolls": {"min": 1, "max": 2},
  "chance": 0.75
}

The Biblio API must be present in the installed Biblio release; see the availability note in Data-Driven Loot Integration API.

Choose target IDs carefully

Target a loot table, not a structure registry ID. A single structure may use a common chest, a treasure chest, and a basement chest with different IDs. Add each intended table to targets.

The owning mod's resources are the best source of truth. A file at:

data/structuresplus/loot_table/chests/ancient_observatory.json

has this loot table ID:

structuresplus:chests/ancient_observatory

Prefer themes over long allow-lists

Use tags for a theme that should grow with the Biblio catalog. Use works only when the pack design calls for exact titles. Combine any_tags, all_tags, and exclusions to keep the pool intentional.

Inspect data/biblio/work_tags.json inside the installed Biblio JAR for the exact tags and work IDs available in that build.

Balance additive rules

Every rule that targets a loot table is evaluated. Two compatibility datapacks can therefore both add books. Audit your pack for overlapping files, keep rolls modest, and use chance where a guaranteed addition is not appropriate.

Test the assembled pack

  1. Run /reload and inspect the server log.
  2. Run /biblio selftest for Biblio's deterministic diagnostics.
  3. Generate a new example structure or use an unopened target container.
  4. Confirm the original mod's normal loot remains present.
  5. Disable the relevant Biblio catalog branch and confirm the integration respects it.
  6. Test without Biblio if your pack treats the structure compatibility file as optional.

Clone this wiki locally