Files
2026-05-31 14:39:45 -05:00
..
2026-05-31 14:39:45 -05:00
2026-05-31 14:39:45 -05:00
2026-05-31 14:39:45 -05:00
2026-05-31 14:39:45 -05:00
2026-05-31 14:39:45 -05:00
2026-05-31 14:39:45 -05:00
2026-05-31 14:39:45 -05:00
2026-05-31 14:39:45 -05:00
2026-05-31 14:39:45 -05:00
2026-05-31 14:39:45 -05:00
2026-05-31 14:39:45 -05:00
2026-05-31 14:39:45 -05:00

TROX Druckpaket & Generator-Skripte

Alles für Prototyp und Serie bei The Game Crafter (TGC) bzw. ähnlichen Portalen.

Suit-Codes (NEU, englische Logik)

Suit Code Rolle Symbol
Red R Permanenter TRUMPF Crown
Yellow Y Standard Sun
Green G Standard Leaf
Black B Standard Gear

Kartencodes auf den Karten z.B. TK-Y4 (Yellow 4), TK-G7 (Green 7), TK-R17, TK-B12 (Black 12).

Was ist drin

Datei / Ordner Inhalt
trox_card.js Gemeinsames Modul die EINE Kartenzeichnung. Wird von cards + box genutzt
generate_cards.js 80 Kartenvorderseiten (TGC + Original)
generate_back.js gemeinsame Rückseite (TGC + Original)
generate_box.js Tuckbox: Front mit ECHTEN TROX-Karten (aus trox_card.js) + Box-Netz
generate_scorepad.js Scorepad als PDF Format/Ausrichtung/Layout/Spielerzahl frei wählbar
make_rules.js Node.js-Skript der PDF-Anleitung (pdfkit)
svg_to_png.js SVG -> PNG Konverter für den TGC-Upload
TROX_Rules_Extended_EN.pdf Erweiterte Anleitung mit 3-Spieler-Beispielen
karten_export_tgc/ 80 Karten + Rückseite, 825x1125 px (TGC-konform, mit Bleed)
karten_export_original/ dieselben in 694x1069 px (Originalmaß)
box_export/ trox_box_front.svg + trox_box_wrap.svg
scorepad_export/ mehrere PDF-Varianten (Letter/A4, portrait/landscape, versch. Layouts)

Architektur (wichtig)

trox_card.js ist die einzige Quelle des Kartendesigns:

  • buildCardSVG(colorName, num, opts) -> komplette Karten-SVG (von generate_cards.js)
  • miniCardGroup(colorName, num, cx, cy, breite, rotation) -> dieselbe Karte als skalierte Gruppe (von generate_box.js für den Fächer)

Dadurch sind die Karten auf der Box garantiert identisch mit den echten Spielkarten nur skaliert und gefächert. Wer das Design ändert (Farben, Symbole, Schrift), ändert NUR trox_card.js, und Karten + Box bleiben synchron.

Skripte ausführen

npm install pdfkit          # einmalig, für make_rules.js
node generate_cards.js      # both (TGC + Original)    oder: tgc | original
node generate_back.js       # both                     oder: tgc | original
node generate_box.js        # both (front + wrap)      oder: front | wrap [scale]
node generate_scorepad.js   # PDF, both 2x3 6 Spieler   [fmt] [orientation] [cols] [rows] [players] [margin]
node make_rules.js          # erzeugt die PDF-Anleitung

Druck-Workflow für The Game Crafter

  1. Produkt: Karten = Poker Card (825x1125). Box für 80 Karten = Poker Tuck Box (90 cards).
  2. SVG -> PNG (TGC nimmt KEIN SVG):
    npm install sharp
    node svg_to_png.js karten_export_tgc
    node svg_to_png.js box_export
    
  3. Hochladen: PNGs der 80 Karten + Rückseite in den Deck-Uploader.
  4. Box: offizielles Stanz-Template der "Poker Tuck Box (90 cards)" von TGC laden und in generate_box.js die Konstanten PANEL_W, PANEL_H, SPINE, FLAP daran angleichen. Faltlinien (gestrichelt) VOR dem Upload entfernen.

TGC-Specs (bestätigt)

  • 300 DPI, nur RGB (CMYK wird abgelehnt).
  • Bleed 1/8" (≈37 px), Safe Zone 1/4" (75 px) vom Rand.

Anpassen

  • Kartendesign (Farben/Symbole/Schrift): nur trox_card.js.
  • Welche Karten im Box-Fächer: cardFan() in generate_box.js (die vier miniCardGroup(...)-Aufrufe).
  • Größe der Box-Karten: CARD_SCALE oben in generate_box.js (Standard 0.30) ODER per CLI: node generate_box.js front 0.26. Eine Auto-Fit-Sicherung verkleinert den Fächer automatisch, falls er aus dem goldenen Rahmen ragen würde. Weitere Fächer-Regler: FAN_SPREAD, FAN_ARC, FAN_TILT, FAN_CY.
  • Scorepad-Layout: voll parametrisierbar per CLI node generate_scorepad.js [format] [cols] [rows] [players] [margin_in]. Weniger Cards/Seite = größere, besser lesbare Cards (Schrift skaliert mit). Beispiel gegen zu kleinen Druck: node generate_scorepad.js letter 1 2 6 0.5 (2 große Cards, 0.5" Rand). Defaults stehen im CONFIG-Block oben im Skript.
  • Anleitung: make_rules.js, klar in Abschnitte gegliedert.

Offene Designfrage (für dich)

Im Beispiel B summieren sich die Gebote auf genau die Stichzahl dann können theoretisch alle treffen. Viele Stichspiele verbieten das ("Screw-the-Dealer"). In der Anleitung ist das als optionale Variante "Exact Tension" (Abschnitt 8) eingebaut. Entscheide, ob das deine Standardregel wird.