Skip to content

About

Schatzkammer: German item cards for The One Ring 2nd Edition – famous weapons and armour, marvellous artefacts and treasure hoards as a print-ready PDF

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

42 Commits

Folders and files

Repository files navigation

Schatzkammer

A database of items for The One Ring, 2nd Edition: famous weapons and armour, useful items, marvellous artefacts, wondrous items and treasure hoards (collections of items plus generic wealth). The database is a few TOML files; a build turns them into two printable PDFs with cards in poker size (63.5 × 88.9 mm, nine per A4 page): one with an overview for printing on one side, one with card backs for printing on both.

The items are in src/cards.toml and src/cards/ (German, rules terms in English). The PDFs are built by GitHub Actions on every commit; tagged commits (v*) are published as a release. New items can be put together with the item wizard. This is an unofficial fan work, see Licence and rights.

Contents of the repository

Path Content
collection.toml Title, language, credit, notice
NOTICE.md Whose names and material this is, and what the MIT licence covers
src/cards.toml The database: items and hoards
src/cards/*.toml Further files, merged into the database: the sample treasure indexes, the heroes' gear, …
src/rules.toml Item types, bases, sources, categories, weapon groups, craftsmanships, qualities and limits
tools/check.py Checks the database against the rules
tools/build.py Builds the two PDFs
tools/logo.py Draws the logo into assets/ (needs Pillow)
tools/icons.py Draws the source icons into assets/icons/ (needs Pillow)
tools/social.py Draws the GitHub social preview assets/social-preview.png (needs Pillow and the TeX Gyre fonts)
tools/site.py Writes site/data.js for the item wizard
tools/test_site.py Checks that the wizard agrees with the checker and the build
site/ The item wizard (static website, published on GitHub Pages)
latex/ Layout (tor2e.sty) and the two documents
assets/ Logo, source icons and the social preview
Makefile Shortcuts: make, make check, make site, make test, make clean
.github/workflows/ build.yml builds and releases the PDFs, pages.yml publishes the wizard

Adding an item

Add a table to src/cards.toml or to a file in src/cards/. The fields are listed at the top of src/cards.toml.

[items.narcrist]
name = "Narcrist, das Schwert des Hauptmanns"
type = "weapon"                    # a type from src/rules.toml
proficiency = "swords"             # weapons only: the category in the PDF
base = "Long sword"                # the Core Rules item; shown on the card as its type
craftsmanship = "Elven"            # Dwarven, Elven or Númenórean: printed as "elbische Arbeit", and
                                   # what the qualities below depend on; other makes have none
damage = 5                         # the base stats of a Long sword (checked against src/rules.toml)
injury = 16
injury_two_handed = 18
load = 3
text = "In Gondolin geschmiedet …" # name and origin only
qualities = ["Superior Fell"]      # from src/rules.toml, which also holds their text for the card
banes = ["Orks"]
effects = [["Besonderheit", "Leuchtet schwach bläulich, wenn Orks nahe sind."]]

A hoard names the items it holds and its wealth in Treasure points:

[hoards.kammer-der-wacht]
name = "Die Kammer der Wacht"
items = { narcrist = 1, klinge-der-wacht = 2 }
wealth = 40

A hoard can also be the Magical Treasure Index of a campaign: campaign = "Tales from the Lone-lands" is printed on its card. Every item on a hoard card has a box to tick when it is found, and a long list goes on on further cards.

An item may leave out all its stats and its qualities: the card then shows only the name, the kind line and the text. Weapons, armour, helms and shields always need a base. Partial stats are an error.

The PDF follows the [categories] of src/rules.toml: the Combat Proficiencies for weapons, then armour, helms, shields, useful items, marvellous artefacts and wondrous items (the last three ordered by their skill), then the hoards. Each category starts a new page of cards; one without items yet gets an empty page. Every category of war gear ends with three blank cards for each base in it (Short sword, Sword, Long sword, …): the base and its stats are printed, the name is left to be written in. The free places on the last page of the category are filled with more blank cards, shared out by how often each base appears among its items (a category of 13 Long swords and 7 Swords gets more blank Long swords). The three categories of useful items, marvellous artefacts and wondrous items have no blanks of their own: only their free places are filled, with blank cards with a line for each skill, left to write in (the players choose). How many there are of each kind follows how often each skill appears. They are made by the build and are not part of the database.

Source icons. source says where an item or a hoard comes from. The icon is printed in the lower right corner of the card and explained on the first page; a made-up item has no source and stays plain.

source Where from Icon
canon Tolkien's works and Peter Jackson's films a ring
finsterwacht the adventure Die Finsterwacht its logo
rulebook the rule books a book
lone-lands the sample Magical Treasure Index Tales from the Lone-lands a horse with two riders in the snow
erebor the sample index The Quest for Erebor a mountain
starter-set the first Starter Set a tree
over-hill the starter set Over Hill and Under Hill hills with a round door
homebrew the fan-made Circleofnoms TOR 2e Homebrew Collection a tankard

The sources are defined in src/rules.toml ([sources]), the icons are in assets/icons/ (python3 tools/icons.py draws all but the adventure's logo).

Stats and qualities

The stats are the base values of the item's base, and that is what the cards show, like the war gear cards of the game. A quality changes them where the rule book says so (Fell +2 Injury, Superior Grievous of Dwarven craftsmanship +2 Damage, Mithril Armour sets the Load, …); that bonus is printed small below the base value on the card, not added to it. A Load never goes below 0.

src/rules.toml holds the qualities as the rule book gives them: the basic rewards (Keen, Fell, Grievous, Close-fitting, Cunning Make, Reinforced), the superior and ancient ones, and the weapon qualities (Cleaving, Hammering, Luminescence, Straight Flight, …). For each quality it says

  • which item types, weapon groups (close combat, ranged), Combat Proficiencies or bases may carry it,
  • which craftsmanships may carry it, and what it does for each (effects),
  • the German text printed on the card. The wording of the rule book is not in this repository: look it up there.

Bonuses that become the bearer's Valour rating against a Bane creature are printed as text on the card; they do not change the stats.

Famous items. Everything that is not a basic reward makes an item famous: a superior or ancient reward, any other special quality (Luminescence, Mithril Armour, …), a blessing or a free effect. Famous weapons and armour start their kind line with Famous Weapon or Famous Armour. Items with only basic rewards (basic = true in src/rules.toml), or none, are just well made and get no such label. A Bane comes with the craftsmanship (Elven and Númenórean weapons and shields), whatever the qualities of the item. It does not count towards the number of rewards. A famous weapon or piece of armour has at most three qualities, like the three lines of the Magical Treasure Index ([limits] in src/rules.toml).

Curses. curse is the curse on an item, as free text, so there are no rules for it. The card prints the text. src/rules.toml lists the curses of the Circleofnoms Homebrew Collection ([curses.<name>], with a one-line text) for the item wizard to offer; no item uses one yet.

Useful items

Items that are not weapons or armour help with skills (blessings), in three steps:

Type Kind line Skills Extra Success dice Magical success
useful Useful Item 1 1d no
artefact Marvellous Artefact 1 2d for 1 Hope
wonder Wondrous Item 2 2d for 1 Hope

A useful item is a simple thing that helps; a marvellous artefact is a special item; wondrous items are the very important ones, so powerful that they seem like magic to people. The card says it after the skills: "Skill: Travel (1d)" or "Blessing: Healing (2d); für 1 Hope ein Magical success". The skills are listed in src/rules.toml; the number of skills, the dice and the note per type are blessings, blessing_dice and blessing_note there, and the checker enforces the number. Each of the three has its own category in the PDF, with the cards ordered by the first skill.

Item wizard

site/ is a small website that walks through the steps of the rule book (item type, craftsmanship, Banes, qualities, name), checks the new item against the rules, and ends with the TOML table to paste into src/cards.toml. Qualities that do not fit the item are greyed out with the reason, and a live card shows the result. A curse is one from the list of src/rules.toml (with a short explanation each) or free text. The source is one of the existing ones or a new one; for a new one the wizard also writes the table for src/rules.toml and names the icon file to add. The workflow .github/workflows/pages.yml publishes it on GitHub Pages (once: Settings > Pages > Source: GitHub Actions), at https://andx667.github.io/tor2e-items/.

Random item. The button Roll a random famous item on the first step lets the dice choose everything: the type (d12, only famous kinds), the base, the craftsmanship (d6), Banes, one to three qualities (the first is never a basic reward) or the skills, and a German name and origin. site/roll.js keeps only what site/verify.js allows, so the item follows the rules. The wizard jumps to the check, lists the dice and offers Roll again; every step can still be edited. tools/test_site.py rolls 400 seeds and has tools/check.py check each item.

To run it locally:

python3 tools/site.py      # or: make site. Writes site/data.js from src/rules.toml and the existing ids
# then open site/index.html in a browser

The page needs no server and no libraries. Its rules come from src/rules.toml, so a new quality or base shows up without touching the page. The checks are site/verify.js, a copy of what tools/check.py does; python3 tools/test_site.py (or make test) runs both on every item and on hundreds of broken variants and fails if they disagree. The TOML the wizard writes must read back as the same item, and its card preview must show what the PDF build prints. It needs Node or pip install quickjs; without either it says that it was skipped. A new @rule in tools/check.py has to be added to site/verify.js too, which this test notices.

The checker

python3 tools/check.py prints one line per problem and fails if there is any. The build and the CI run it first.

  1. Schema (built in): known fields, required fields, whole numbers, the stats each type needs (all or none), a base on weapons, armour, helms and shields, known craftsmanships and sources, hoards that only hold existing items. The rules file is checked too, including a German text on every quality.
  2. Rules from src/rules.toml: applies_to, weapon_group, proficiency, bases, craftsmanship, excludes and requires per quality, and [limits.<type>] for the highest number of rewards and blessings (a Bane is not counted).
  3. Custom rules: whatever the tables cannot express is a Python function with @rule at the end of tools/check.py: the kinds and number of Banes that the craftsmanship allows, stats that follow the base, a base on all gear, and the number of blessings of a type.

Build

Needs TeX Live or MiKTeX with LuaLaTeX and latexmk, and Python 3.11+.

make            # check, then build/<file_name>.pdf, -Duplex.pdf and -Duplex-Print.pdf
make check      # only the checker
python3 tools/build.py kammer-der-wacht narcrist    # a selection: ids of items and hoards
python3 tools/build.py source:finsterwacht          # ... or every item of a source

A card with more text than fits stops the build with the id of the item and by how much it is too full; shorten its text.

A hoard in a selection brings its own card and one card per copy of every item it holds, so a selection is the set of cards to hand out at the table. A selection is written to build/<file_name>-Auswahl.pdf, with its own duplex PDFs.

The version in the footer comes from the latest git tag v*, the date from the last commit:

git tag v2.2
git push --tags      # the CI also publishes a release with the PDFs

Printing

The build writes three PDFs. <file_name>.pdf has the overview and the cards, for printing on one side. <file_name>-Duplex.pdf has only the cards, and after every page of cards a page with their backs: print it on both sides, flipped on the long edge, and every card gets a back. The rows of the back pages are mirrored so that a half-full page lines up too. Printers shift the two sides against each other by a millimetre or two, so the backs have no cut lines, their colour runs 2 mm over the edge of the card and their frame sits well inside.

The back of a weapon, armour, helm or shield carries the item's name under the logo (GEAR_TYPES in tools/build.py): turn the card over when the item is not equipped, and you still see what it is. Every other card says only its kind in the same place (Useful Item, Marvellous Artefact, Wondrous Item, Hort).

<file_name>-Duplex-Print.pdf is the same duplex PDF without the parchment, to save ink: white cards and backs, the stats box only outlined, the frames and the logo as before. Pages and positions are identical, so it prints and cuts exactly like the other one.

Print at 100 % (actual size), not "fit to page". The dashed line is the cut line: the cell is 63.5 × 88.9 mm (2.5 × 3.5 in) and the parchment fills it right up to the line, with no visible frame: the text keeps 1.6 mm plus its margin from the line.

Licence and rights

Schatzkammer is an unofficial fan work, not affiliated with or endorsed by Middle-earth Enterprises, the Tolkien Estate, Sophisticated Games or Free League Publishing. The names from Tolkien's works and the films, the rules terms of The One Ring™ Roleplaying Game and the items taken from its books belong to their owners and are used without a licence; see NOTICE.md. The same notice is printed on the first page of the PDF (notice in collection.toml).

The code, the layout and the author's own items and texts are under the MIT licence, see LICENSE. It does not cover the third-party names and material.

About

Schatzkammer: German item cards for The One Ring 2nd Edition – famous weapons and armour, marvellous artefacts and treasure hoards as a print-ready PDF

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages