@jjlmoya/utils-tabletop 1.4.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/entries.ts +11 -1
- package/src/index.ts +1 -0
- package/src/tests/locale_completeness.test.ts +1 -1
- package/src/tests/tool_validation.test.ts +1 -1
- package/src/tool/decision-wheel/audio.ts +78 -0
- package/src/tool/decision-wheel/bibliography.astro +16 -0
- package/src/tool/decision-wheel/bibliography.ts +8 -0
- package/src/tool/decision-wheel/client.ts +226 -0
- package/src/tool/decision-wheel/component.astro +48 -0
- package/src/tool/decision-wheel/components/SegmentEditor.astro +22 -0
- package/src/tool/decision-wheel/components/SpinHistory.astro +17 -0
- package/src/tool/decision-wheel/components/SpinResult.astro +13 -0
- package/src/tool/decision-wheel/components/WheelCanvas.astro +23 -0
- package/src/tool/decision-wheel/decision-wheel.css +632 -0
- package/src/tool/decision-wheel/drawing.ts +144 -0
- package/src/tool/decision-wheel/entry.ts +48 -0
- package/src/tool/decision-wheel/i18n/de.ts +97 -0
- package/src/tool/decision-wheel/i18n/en.ts +251 -0
- package/src/tool/decision-wheel/i18n/es.ts +93 -0
- package/src/tool/decision-wheel/i18n/fr.ts +93 -0
- package/src/tool/decision-wheel/i18n/id.ts +93 -0
- package/src/tool/decision-wheel/i18n/it.ts +93 -0
- package/src/tool/decision-wheel/i18n/ja.ts +93 -0
- package/src/tool/decision-wheel/i18n/ko.ts +93 -0
- package/src/tool/decision-wheel/i18n/nl.ts +93 -0
- package/src/tool/decision-wheel/i18n/pl.ts +93 -0
- package/src/tool/decision-wheel/i18n/pt.ts +93 -0
- package/src/tool/decision-wheel/i18n/ru.ts +75 -0
- package/src/tool/decision-wheel/i18n/sv.ts +93 -0
- package/src/tool/decision-wheel/i18n/tr.ts +93 -0
- package/src/tool/decision-wheel/i18n/zh.ts +93 -0
- package/src/tool/decision-wheel/index.ts +9 -0
- package/src/tool/decision-wheel/logic.test.ts +163 -0
- package/src/tool/decision-wheel/logic.ts +145 -0
- package/src/tool/decision-wheel/seo.astro +16 -0
- package/src/tool/decision-wheel/types.ts +14 -0
- package/src/tool/decision-wheel/ui.ts +121 -0
- package/src/tool/fantasy-runes-translator/bibliography.astro +16 -0
- package/src/tool/fantasy-runes-translator/bibliography.ts +16 -0
- package/src/tool/fantasy-runes-translator/client.ts +205 -0
- package/src/tool/fantasy-runes-translator/component.astro +95 -0
- package/src/tool/fantasy-runes-translator/entry.ts +56 -0
- package/src/tool/fantasy-runes-translator/fantasy-runes-translator.css +712 -0
- package/src/tool/fantasy-runes-translator/i18n/de.ts +139 -0
- package/src/tool/fantasy-runes-translator/i18n/en.ts +139 -0
- package/src/tool/fantasy-runes-translator/i18n/es.ts +139 -0
- package/src/tool/fantasy-runes-translator/i18n/fr.ts +139 -0
- package/src/tool/fantasy-runes-translator/i18n/id.ts +139 -0
- package/src/tool/fantasy-runes-translator/i18n/it.ts +139 -0
- package/src/tool/fantasy-runes-translator/i18n/ja.ts +139 -0
- package/src/tool/fantasy-runes-translator/i18n/ko.ts +139 -0
- package/src/tool/fantasy-runes-translator/i18n/nl.ts +139 -0
- package/src/tool/fantasy-runes-translator/i18n/pl.ts +139 -0
- package/src/tool/fantasy-runes-translator/i18n/pt.ts +139 -0
- package/src/tool/fantasy-runes-translator/i18n/ru.ts +139 -0
- package/src/tool/fantasy-runes-translator/i18n/sv.ts +139 -0
- package/src/tool/fantasy-runes-translator/i18n/tr.ts +139 -0
- package/src/tool/fantasy-runes-translator/i18n/zh.ts +139 -0
- package/src/tool/fantasy-runes-translator/index.ts +9 -0
- package/src/tool/fantasy-runes-translator/logic.ts +174 -0
- package/src/tool/fantasy-runes-translator/seo.astro +16 -0
- package/src/tool/fantasy-runes-translator/types.ts +26 -0
- package/src/tool/rpg-initiative-tracker/bibliography.astro +16 -0
- package/src/tool/rpg-initiative-tracker/bibliography.ts +12 -0
- package/src/tool/rpg-initiative-tracker/client.ts +201 -0
- package/src/tool/rpg-initiative-tracker/component.astro +23 -0
- package/src/tool/rpg-initiative-tracker/components/AddForm.astro +49 -0
- package/src/tool/rpg-initiative-tracker/components/CombatantList.astro +16 -0
- package/src/tool/rpg-initiative-tracker/components/TurnControls.astro +28 -0
- package/src/tool/rpg-initiative-tracker/entry.ts +50 -0
- package/src/tool/rpg-initiative-tracker/i18n/de.ts +266 -0
- package/src/tool/rpg-initiative-tracker/i18n/en.ts +263 -0
- package/src/tool/rpg-initiative-tracker/i18n/es.ts +264 -0
- package/src/tool/rpg-initiative-tracker/i18n/fr.ts +263 -0
- package/src/tool/rpg-initiative-tracker/i18n/id.ts +263 -0
- package/src/tool/rpg-initiative-tracker/i18n/it.ts +263 -0
- package/src/tool/rpg-initiative-tracker/i18n/ja.ts +263 -0
- package/src/tool/rpg-initiative-tracker/i18n/ko.ts +263 -0
- package/src/tool/rpg-initiative-tracker/i18n/nl.ts +263 -0
- package/src/tool/rpg-initiative-tracker/i18n/pl.ts +264 -0
- package/src/tool/rpg-initiative-tracker/i18n/pt.ts +263 -0
- package/src/tool/rpg-initiative-tracker/i18n/ru.ts +264 -0
- package/src/tool/rpg-initiative-tracker/i18n/sv.ts +263 -0
- package/src/tool/rpg-initiative-tracker/i18n/tr.ts +263 -0
- package/src/tool/rpg-initiative-tracker/i18n/zh.ts +263 -0
- package/src/tool/rpg-initiative-tracker/index.ts +9 -0
- package/src/tool/rpg-initiative-tracker/logic.test.ts +121 -0
- package/src/tool/rpg-initiative-tracker/logic.ts +122 -0
- package/src/tool/rpg-initiative-tracker/rpg-initiative-tracker.css +617 -0
- package/src/tool/rpg-initiative-tracker/seo.astro +16 -0
- package/src/tool/rpg-initiative-tracker/types.ts +15 -0
- package/src/tool/score-tracker/bibliography.astro +16 -0
- package/src/tool/score-tracker/bibliography.ts +12 -0
- package/src/tool/score-tracker/client.ts +248 -0
- package/src/tool/score-tracker/component.astro +34 -0
- package/src/tool/score-tracker/components/Leaderboard.astro +19 -0
- package/src/tool/score-tracker/components/PlayerSetup.astro +32 -0
- package/src/tool/score-tracker/components/RoundScoring.astro +22 -0
- package/src/tool/score-tracker/components/ScoreHistory.astro +25 -0
- package/src/tool/score-tracker/entry.ts +57 -0
- package/src/tool/score-tracker/i18n/de.ts +278 -0
- package/src/tool/score-tracker/i18n/en.ts +278 -0
- package/src/tool/score-tracker/i18n/es.ts +251 -0
- package/src/tool/score-tracker/i18n/fr.ts +278 -0
- package/src/tool/score-tracker/i18n/id.ts +278 -0
- package/src/tool/score-tracker/i18n/it.ts +278 -0
- package/src/tool/score-tracker/i18n/ja.ts +278 -0
- package/src/tool/score-tracker/i18n/ko.ts +278 -0
- package/src/tool/score-tracker/i18n/nl.ts +278 -0
- package/src/tool/score-tracker/i18n/pl.ts +278 -0
- package/src/tool/score-tracker/i18n/pt.ts +278 -0
- package/src/tool/score-tracker/i18n/ru.ts +278 -0
- package/src/tool/score-tracker/i18n/sv.ts +278 -0
- package/src/tool/score-tracker/i18n/tr.ts +278 -0
- package/src/tool/score-tracker/i18n/zh.ts +278 -0
- package/src/tool/score-tracker/index.ts +9 -0
- package/src/tool/score-tracker/logic.test.ts +83 -0
- package/src/tool/score-tracker/logic.ts +122 -0
- package/src/tool/score-tracker/score-tracker.css +1029 -0
- package/src/tool/score-tracker/seo.astro +16 -0
- package/src/tool/score-tracker/types.ts +17 -0
- package/src/tools.ts +8 -0
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { InitiativeTrackerUI } from '../entry';
|
|
4
|
+
|
|
5
|
+
const ui: InitiativeTrackerUI = {
|
|
6
|
+
title: 'InitiativenVerfolger',
|
|
7
|
+
addCombatant: 'Kämpfer hinzufügen',
|
|
8
|
+
removeCombatant: 'Entfernen',
|
|
9
|
+
playerLabel: 'Spieler',
|
|
10
|
+
npcLabel: 'NSC',
|
|
11
|
+
initiativeLabel: 'Initiative',
|
|
12
|
+
modifierLabel: 'Modifikator',
|
|
13
|
+
namePlaceholder: 'Charaktername',
|
|
14
|
+
initiativePlaceholder: 'Initiative',
|
|
15
|
+
modifierPlaceholder: 'Modifikator',
|
|
16
|
+
addButton: 'Hinzufügen',
|
|
17
|
+
startCombat: 'Kampf beginnen',
|
|
18
|
+
endCombat: 'Kampf beenden',
|
|
19
|
+
nextTurn: 'Nächster Zug',
|
|
20
|
+
prevTurn: 'Vorheriger Zug',
|
|
21
|
+
roundLabel: 'Runde',
|
|
22
|
+
turnLabel: 'Zug',
|
|
23
|
+
noCombatants: 'Noch keine Kämpfer. Füge Charaktere hinzu, um zu beginnen.',
|
|
24
|
+
statusInput: 'Status',
|
|
25
|
+
combatStarted: 'Kampf begonnen!',
|
|
26
|
+
combatEnded: 'Kampf beendet',
|
|
27
|
+
yourTurn: 'Zug',
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export const content: ToolLocaleContent<InitiativeTrackerUI> = {
|
|
31
|
+
slug: 'initiativen-verfolger',
|
|
32
|
+
title: 'RPG Initiativen Verfolger: Kampfreihenfolge & InitiativenManager',
|
|
33
|
+
description: 'Verfolge die Initiative-Reihenfolge für jedes Tabletop-RPG. Füge Kämpfer hinzu, würfle Initiative, verwalte Statuseffekte und navigiere durch die Kampfzüge.',
|
|
34
|
+
ui,
|
|
35
|
+
seo: [
|
|
36
|
+
{ type: 'title', text: 'Wie Initiative in D&D und anderen Tabletop-RPGs funktioniert', level: 2 },
|
|
37
|
+
{ type: 'paragraph', html: 'Die Initiative bestimmt die Reihenfolge der Aktionen im Kampf. Jeder Teilnehmer würfelt zu Beginn eines Kampfes einen Geschicklichkeitswurf, und die Zugreihenfolge verläuft vom höchsten zum niedrigsten Wert. Ein digitaler Initiativen Verfolger automatisiert die Sortierung, hebt den aktiven Kämpfer hervor, verfolgt laufende Statuseffekte und informiert den gesamten Tisch darüber, wer als Nächstes an der Reihe ist. Dies ist besonders nützlich für Spielleiter, die komplexe Begegnungen mit mehreren Gegnertypen und Spielercharakteren leiten.' },
|
|
38
|
+
{
|
|
39
|
+
type: 'stats',
|
|
40
|
+
items: [
|
|
41
|
+
{ value: 'Unbegrenzt', label: 'Kämpfer unterstützt' },
|
|
42
|
+
{ value: 'Auto-Sortierung', label: 'Nach Initiative-Wurf' },
|
|
43
|
+
{ value: 'Echtzeit', label: 'Zugverfolgung' },
|
|
44
|
+
],
|
|
45
|
+
columns: 3,
|
|
46
|
+
},
|
|
47
|
+
{ type: 'title', text: 'Standard Initiative-Regeln für D&D 5e', level: 2 },
|
|
48
|
+
{ type: 'paragraph', html: 'In D&D 5. Edition würfelt jeder Teilnehmer zu Beginn des Kampfes einen Geschicklichkeitswurf. Spieler würfeln einzeln. Der Spielleiter würfelt einmal für jede Gruppe identischer Monster. Die Zugreihenfolge verläuft vom höchsten zum niedrigsten Wert und springt dann für die nächste Runde zurück zum Anfang. Gleichstände werden durch den Geschicklichkeitswert entschieden oder der SL entscheidet. Ein digitaler Verfolger erledigt dies alles automatisch und zeigt die vollständige Zugreihenfolge auf einen Blick.' },
|
|
49
|
+
{
|
|
50
|
+
type: 'table',
|
|
51
|
+
headers: ['Funktion', 'Manuelle Verfolgung', 'Digitaler Verfolger'],
|
|
52
|
+
rows: [
|
|
53
|
+
['Sortierung', 'Liste neu schreiben, wenn sich die Initiative ändert', 'Sofortige automatische Neusortierung'],
|
|
54
|
+
['Aktueller Zug', 'Muss mündlich oder mit einem Marker verfolgt werden', 'Mit grünem Leuchten hervorgehoben'],
|
|
55
|
+
['Statuseffekte', 'Separater Notizblock oder Würfel neben der Miniatur', 'Klicken zum Umschalten bei jedem Kämpfer'],
|
|
56
|
+
['Rundenzählung', 'Im Kopf oder auf Schmierpapier zählen', 'Wird automatisch angezeigt'],
|
|
57
|
+
['Hinzufügen während des Kampfes', 'Reihenfolge ausradieren und neu schreiben', 'An der richtigen Position eingefügt'],
|
|
58
|
+
],
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
type: 'tip',
|
|
62
|
+
title: 'Tipps zur Initiative am Spieltisch',
|
|
63
|
+
html: 'Würfle die Initiative für alle Monster vor der Sitzung aus, um während des Kampfes Zeit zu sparen. Füge einem Kämpfer häufige Statuseffekte wie Betäubt oder Vergiftet hinzu, sobald sie angewendet werden. So verhinderst du, dass eine Bedingung vergessen wird, wenn der betroffene Charakter an der Reihe ist. Verwende den Button „Vorheriger Zug", um nachzusehen, was passiert ist, falls du eine Regelentscheidung aus einer früheren Runde überprüfen musst.',
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
type: 'title',
|
|
67
|
+
text: 'Häufig verwendete Statuseffekte im Kampf',
|
|
68
|
+
level: 3,
|
|
69
|
+
},
|
|
70
|
+
{ type: 'paragraph', html: 'Das Verfolgen von Zuständen während des Kampfes ist eine der am häufigsten übersehenen Aufgaben. Ein Statuseffekt kann die Effektivität eines Charakters völlig verändern, und das Vergessen, ihn zu entfernen, kann das Gleichgewicht einer Begegnung kippen. Der Initiativen Verfolger ermöglicht es dir, Zustände mit einem einzigen Klick anzuwenden und zu entfernen, sodass sie neben dem Namen des Kämpfers sichtbar bleiben.' },
|
|
71
|
+
{
|
|
72
|
+
type: 'proscons',
|
|
73
|
+
title: 'Statuseffekte digital vs. manuell verwalten',
|
|
74
|
+
items: [
|
|
75
|
+
{
|
|
76
|
+
pro: 'Zustände sind direkt neben dem Charakternamen sichtbar, sodass niemand einen aktiven Effekt vergisst.',
|
|
77
|
+
con: 'Erfordert, dass man daran denkt, Status ein- und auszuschalten, wenn sie angewendet und entfernt werden.',
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
pro: 'Mehrere Status können gleichzeitig auf demselben Kämpfer aktiv sein und werden gemeinsam angezeigt.',
|
|
81
|
+
con: 'Der Verfolger setzt die Regeln nicht automatisch durch; der SL muss sie weiterhin anwenden.',
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
pro: 'Status können während des Kampfes hinzugefügt werden, ohne anzuhalten, um auf einem Charakterblatt zu schreiben.',
|
|
85
|
+
con: 'Standardmäßig sind nur vordefinierte Status-Tags verfügbar.',
|
|
86
|
+
},
|
|
87
|
+
],
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
type: 'title',
|
|
91
|
+
text: 'Alternative Initiative-Systeme',
|
|
92
|
+
level: 3,
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
type: 'comparative',
|
|
96
|
+
items: [
|
|
97
|
+
{
|
|
98
|
+
title: 'Standard Initiative',
|
|
99
|
+
description: 'Jeder Kämpfer würfelt einmal zu Beginn. Dieselbe Reihenfolge wiederholt sich jede Runde. Einfach und vorhersehbar, aber die Reihenfolge ist nach dem ersten Wurf festgelegt. Funktioniert gut für die meisten Gruppen und Begegnungsgrößen.',
|
|
100
|
+
icon: 'mdi:swap-vertical',
|
|
101
|
+
highlight: true,
|
|
102
|
+
points: ['Einfach zu lernen und zu lehren', 'Feste Zugreihenfolge jede Runde', 'Funktioniert für jede Gruppengröße'],
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
title: 'Seiten Initiative',
|
|
106
|
+
description: 'Alle Spielercharaktere handeln gemeinsam, dann alle Gegner gemeinsam. Üblich in älteren Editionen und OSR-Spielen. Beschleunigt den Kampf durch weniger individuelle Verfolgung, reduziert aber die taktische Vielfalt.',
|
|
107
|
+
icon: 'mdi:account-group',
|
|
108
|
+
highlight: false,
|
|
109
|
+
points: ['Schnellste Kampfauflösung', 'Fördert Gruppenkoordination', 'Weniger individuelle Zugvielfalt'],
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
title: 'Geschwindigkeitsfaktor Variante',
|
|
113
|
+
description: 'Jede Runde erklären die Teilnehmer zuerst ihre Aktionen, dann würfeln sie Initiative, modifiziert durch die gewählte Aktion. Wird in optionalen Regelsätzen verwendet. Erzeugt eine unvorhersehbare Zugreihenfolge, verleiht der Entscheidungsfindung aber mehr Tiefe.',
|
|
114
|
+
icon: 'mdi:run-fast',
|
|
115
|
+
highlight: false,
|
|
116
|
+
points: ['Andere Reihenfolge jede Runde', 'Aktionswahl beeinflusst Timing', 'Mehr taktische Entscheidungen pro Zug'],
|
|
117
|
+
},
|
|
118
|
+
],
|
|
119
|
+
columns: 3,
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
type: 'title',
|
|
123
|
+
text: 'Kampfverfolger-Glossar',
|
|
124
|
+
level: 3,
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'glossary',
|
|
128
|
+
items: [
|
|
129
|
+
{
|
|
130
|
+
term: 'Initiative',
|
|
131
|
+
definition: 'Ein Geschicklichkeitswurf zu Beginn des Kampfes, der die Reihenfolge der Züge bestimmt. Jeder Teilnehmer würfelt und handelt in absteigender Reihenfolge.',
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
term: 'Runde',
|
|
135
|
+
definition: 'Ein vollständiger Zyklus, in dem jeder Kämpfer einen Zug macht. Nachdem der letzte Kämpfer gehandelt hat, endet die Runde und eine neue Runde beginnt von oben in der Reihenfolge.',
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
term: 'Statuseffekt',
|
|
139
|
+
definition: 'Ein vorübergehender Zustand, der die Fähigkeiten eines Charakters verändert. Beispiele sind Betäubt (kann nicht handeln), Vergiftet (Nachteil auf Würfe) und Geblendet (Angriffe haben Nachteil).',
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
term: 'NSC',
|
|
143
|
+
definition: 'Nicht-Spieler-Charakter, der vom Spielleiter gesteuert wird. Bei der Initiative-Verfolgung sind NSC typischerweise Gegner oder neutrale Kreaturen in der Begegnung.',
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
term: 'SC',
|
|
147
|
+
definition: 'Spieler-Charakter, der von einem der Spieler am Tisch gesteuert wird. SC werden im Verfolger von NSC unterschieden, damit der SL freundliche Ziele erkennen kann.',
|
|
148
|
+
},
|
|
149
|
+
],
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
type: 'diagnostic',
|
|
153
|
+
variant: 'info',
|
|
154
|
+
title: 'Wann die Initiative jede Runde neu würfeln?',
|
|
155
|
+
icon: 'mdi:information-outline',
|
|
156
|
+
badge: 'SL-TIPP',
|
|
157
|
+
html: 'Manche SL würfeln die Initiative lieber jede Runde neu für Unvorhersehbarkeit, während die meisten aus Einfachheit dieselbe Reihenfolge beibehalten. Wenn ein neuer Kämpfer mitten im Kampf dazustößt, würfle seine Initiative und füge ihn an der aktuellen Position ein. Der Verfolger erledigt dies automatisch. Für Boss-Begegnungen solltest du dem Schurken eine feste Initiative zu einem bestimmten Wert geben, damit der Kampf strukturierter wirkt.',
|
|
158
|
+
},
|
|
159
|
+
],
|
|
160
|
+
faq: [
|
|
161
|
+
{
|
|
162
|
+
question: 'Wie füge ich Kämpfer zur Initiative-Reihenfolge hinzu?',
|
|
163
|
+
answer: 'Gib den Charakternamen, den Initiative-Wurf und den Initiative-Modifikator ein und klicke dann auf Hinzufügen. Wechsle zwischen Spieler- und NSC-Typen, um Gruppenmitglieder optisch von Gegnern in der Liste zu unterscheiden.',
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
question: 'Was passiert, wenn ich auf Kampf beginnen klicke?',
|
|
167
|
+
answer: 'Alle Kämpfer werden nach Initiative vom höchsten zum niedrigsten Wert sortiert. Die Zugreihenfolge beginnt von oben, der Runden-Zähler startet bei 1 und der aktive Kämpfer wird mit einem grünen Leuchten hervorgehoben.',
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
question: 'Wie verfolge ich Statuseffekte während des Kampfes?',
|
|
171
|
+
answer: 'Klicke auf ein Status-Tag (Betäubt, Vergiftet, Geblendet usw.), um es für den ausgewählten Kämpfer ein- oder auszuschalten. Aktive Status erscheinen neben dem Charakternamen. So werden alle an laufende Effekte erinnert, wenn dieser Kämpfer an der Reihe ist.',
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
question: 'Bleiben meine Kampfdaten erhalten, wenn ich die Seite aktualisiere?',
|
|
175
|
+
answer: 'Ja. Der Initiativen Verfolger speichert den Kampfzustand im lokalen Speicher deines Browsers. Deine Kämpfer, Zugreihenfolge und Statuseffekte bleiben nach einem Seitenneuladen erhalten. Die Daten werden gelöscht, wenn du auf Kampf beenden klickst.',
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
question: 'Kann ich zum vorherigen Zug zurückgehen?',
|
|
179
|
+
answer: 'Ja. Der Button Vorheriger Zug ermöglicht es dir, rückwärts durch die Zugreihenfolge zu navigieren. Dies ist nützlich, um nachzusehen, was früher in der Runde passiert ist, oder um einen Fehler zu korrigieren.',
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
question: 'Kann ich während des Kampfes Kämpfer hinzufügen oder entfernen?',
|
|
183
|
+
answer: 'Ja. Neue Kämpfer können jederzeit hinzugefügt werden und werden automatisch an der richtigen Position basierend auf ihrem Initiative-Wurf eingefügt. Vorhandene Kämpfer können entfernt werden, wenn sie die Begegnung verlassen.',
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
question: 'Funktioniert dies mit jedem RPG-System?',
|
|
187
|
+
answer: 'Ja. Der Verfolger funktioniert mit jedem Tabletop-RPG, das eine initiativebasierte Zugreihenfolge verwendet. Gib einfach die Initiative-Werte ein, die dein System verwendet, sei es ein d20-Wurf plus Dex für D&D oder eine andere Mechanik für andere Spiele.',
|
|
188
|
+
},
|
|
189
|
+
],
|
|
190
|
+
bibliography,
|
|
191
|
+
howTo: [
|
|
192
|
+
{
|
|
193
|
+
name: 'Kämpfer vor dem Kampf hinzufügen',
|
|
194
|
+
text: 'Gib für jeden Charakter den Namen, den Initiative-Wurf und den Modifikator ein. Markiere sie als Spieler oder NSC. Füge so viele Kämpfer hinzu, wie deine Begegnung benötigt.',
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
name: 'Kampf beginnen, um die Reihenfolge festzulegen',
|
|
198
|
+
text: 'Klicke auf Kampf beginnen, um alle nach Initiative zu sortieren und die Zugverfolgung zu starten. Der erste Kämpfer in der Reihenfolge wird hervorgehoben.',
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
name: 'Züge navigieren und Zustände verfolgen',
|
|
202
|
+
text: 'Verwende Nächster Zug und Vorheriger Zug, um durch die Reihenfolge zu gehen. Wende Statuseffekte durch Klicken auf die Status-Tags an, um Zustände während des Kampfes zu verfolgen.',
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
name: 'Kampf beenden, wenn fertig',
|
|
206
|
+
text: 'Klicke auf Kampf beenden, um die Zugverfolgung zu stoppen. Dies löscht den aktiven Status und setzt den Runden-Zähler zurück, während die Kämpferliste für die nächste Begegnung erhalten bleibt.',
|
|
207
|
+
},
|
|
208
|
+
],
|
|
209
|
+
schemas: [
|
|
210
|
+
{
|
|
211
|
+
'@context': 'https://schema.org',
|
|
212
|
+
'@type': 'SoftwareApplication',
|
|
213
|
+
'name': 'RPG Initiativen Verfolger',
|
|
214
|
+
'operatingSystem': 'Alle',
|
|
215
|
+
'applicationCategory': 'UtilitiesApplication',
|
|
216
|
+
'browserRequirements': 'Erfordert HTML5. Erfordert JavaScript.',
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
'@context': 'https://schema.org',
|
|
220
|
+
'@type': 'FAQPage',
|
|
221
|
+
'mainEntity': [
|
|
222
|
+
{
|
|
223
|
+
'@type': 'Question',
|
|
224
|
+
'name': 'Wie füge ich Kämpfer hinzu?',
|
|
225
|
+
'acceptedAnswer': {
|
|
226
|
+
'@type': 'Answer',
|
|
227
|
+
'text': 'Gib den Charakternamen, den Initiative-Wurf und den Initiative-Modifikator ein und klicke dann auf Hinzufügen. Spieler und NSC können umgeschaltet werden, um sie in der Liste zu unterscheiden.',
|
|
228
|
+
},
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
'@type': 'Question',
|
|
232
|
+
'name': 'Was passiert, wenn ich auf Kampf beginnen klicke?',
|
|
233
|
+
'acceptedAnswer': {
|
|
234
|
+
'@type': 'Answer',
|
|
235
|
+
'text': 'Alle Kämpfer werden nach Initiative sortiert (höchster zuerst). Die Zugreihenfolge beginnt mit dem ersten Kämpfer und ein Runden-Zähler startet bei 1.',
|
|
236
|
+
},
|
|
237
|
+
},
|
|
238
|
+
],
|
|
239
|
+
},
|
|
240
|
+
{
|
|
241
|
+
'@context': 'https://schema.org',
|
|
242
|
+
'@type': 'HowTo',
|
|
243
|
+
'name': 'So verwendest du den Initiativen Verfolger',
|
|
244
|
+
'step': [
|
|
245
|
+
{
|
|
246
|
+
'@type': 'HowToStep',
|
|
247
|
+
'name': 'Kämpfer hinzufügen',
|
|
248
|
+
'text': 'Gib die Charakterdetails einschließlich Name, Initiative-Wurf und Modifikator ein. Wechsle zwischen Spieler- und NSC-Typen vor dem Hinzufügen.',
|
|
249
|
+
},
|
|
250
|
+
{
|
|
251
|
+
'@type': 'HowToStep',
|
|
252
|
+
'name': 'Kampf beginnen',
|
|
253
|
+
'text': 'Klicke auf Kampf beginnen, um alle Kämpfer nach Initiative zu sortieren und die Zugreihenfolge-Verfolgung zu starten.',
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
'@type': 'HowToStep',
|
|
257
|
+
'name': 'Züge verwalten',
|
|
258
|
+
'text': 'Verwende Nächster Zug und Vorheriger Zug, um durch die Zugreihenfolge zu navigieren. Der aktive Kämpfer wird mit einem grünen Leuchten hervorgehoben.',
|
|
259
|
+
},
|
|
260
|
+
],
|
|
261
|
+
},
|
|
262
|
+
],
|
|
263
|
+
};
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
|
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { InitiativeTrackerUI } from '../entry';
|
|
4
|
+
|
|
5
|
+
const ui: InitiativeTrackerUI = {
|
|
6
|
+
title: 'Initiative Tracker',
|
|
7
|
+
addCombatant: 'Add Combatant',
|
|
8
|
+
removeCombatant: 'Remove',
|
|
9
|
+
playerLabel: 'Player',
|
|
10
|
+
npcLabel: 'NPC',
|
|
11
|
+
initiativeLabel: 'Initiative',
|
|
12
|
+
modifierLabel: 'Modifier',
|
|
13
|
+
namePlaceholder: 'Character name',
|
|
14
|
+
initiativePlaceholder: 'Initiative',
|
|
15
|
+
modifierPlaceholder: 'Modifier',
|
|
16
|
+
addButton: 'Add',
|
|
17
|
+
startCombat: 'Start Combat',
|
|
18
|
+
endCombat: 'End Combat',
|
|
19
|
+
nextTurn: 'Next Turn',
|
|
20
|
+
prevTurn: 'Previous Turn',
|
|
21
|
+
roundLabel: 'Round',
|
|
22
|
+
turnLabel: 'Turn',
|
|
23
|
+
noCombatants: 'No combatants yet. Add characters to begin.',
|
|
24
|
+
statusInput: 'Status',
|
|
25
|
+
combatStarted: 'Combat Started!',
|
|
26
|
+
combatEnded: 'Combat Ended',
|
|
27
|
+
yourTurn: 'Turn',
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export const content: ToolLocaleContent<InitiativeTrackerUI> = {
|
|
31
|
+
slug: 'rpg-initiative-tracker',
|
|
32
|
+
title: 'RPG Initiative Tracker: Combat Turn Order & Initiative Manager',
|
|
33
|
+
description: 'Track initiative order for any tabletop RPG. Add combatants, roll initiative, manage status effects, and navigate turns in combat.',
|
|
34
|
+
ui,
|
|
35
|
+
seo: [
|
|
36
|
+
{ type: 'title', text: 'How Initiative Works in D&D and Other Tabletop RPGs', level: 2 },
|
|
37
|
+
{ type: 'paragraph', html: 'Initiative determines the order of actions in combat. Every participant rolls a Dexterity check at the start of a fight, and the turn order goes from highest to lowest. A digital initiative tracker automates sorting, highlights the active combatant, tracks ongoing status effects, and keeps the entire table informed about whose turn is next. This is especially useful for Dungeon Masters running complex encounters with multiple enemy types and player characters.' },
|
|
38
|
+
{
|
|
39
|
+
type: 'stats',
|
|
40
|
+
items: [
|
|
41
|
+
{ value: 'Unlimited', label: 'Combatants Supported' },
|
|
42
|
+
{ value: 'Auto Sort', label: 'By Initiative Roll' },
|
|
43
|
+
{ value: 'Real Time', label: 'Turn Tracking' },
|
|
44
|
+
],
|
|
45
|
+
columns: 3,
|
|
46
|
+
},
|
|
47
|
+
{ type: 'title', text: 'Standard Initiative Rules for D&D 5e', level: 2 },
|
|
48
|
+
{ type: 'paragraph', html: 'In D&D 5th Edition, each participant rolls a Dexterity check at the start of combat. Players roll individually. The Dungeon Master rolls once for each group of identical monsters. The turn order cycles from highest to lowest, then wraps back to the top for the next round. Ties are broken by Dexterity score, or the DM decides. A digital tracker handles all this automatically and shows the complete turn order at a glance.' },
|
|
49
|
+
{
|
|
50
|
+
type: 'table',
|
|
51
|
+
headers: ['Feature', 'Manual Tracking', 'Digital Tracker'],
|
|
52
|
+
rows: [
|
|
53
|
+
['Sorting', 'Rewrite the list when initiatives change', 'Instant automatic reorder'],
|
|
54
|
+
['Current Turn', 'Must track verbally or with a token', 'Highlighted with green glow'],
|
|
55
|
+
['Status Effects', 'Separate notepad or dice near the mini', 'Click to toggle on each combatant'],
|
|
56
|
+
['Round Counting', 'Keep count in your head or on scratch paper', 'Shown automatically'],
|
|
57
|
+
['Adding Mid Combat', 'Erase and rewrite the order', 'Inserted at the correct position'],
|
|
58
|
+
],
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
type: 'tip',
|
|
62
|
+
title: 'Tips for Running Initiative at the Table',
|
|
63
|
+
html: 'Roll initiative for all monsters before the session starts to save time during combat. Add common status effects like Stunned or Poisoned to a combatant as soon as they are applied. This prevents forgetting about a condition when the affected character turn comes around. Use the Previous Turn button to review what happened if you need to check a ruling from earlier in the round.',
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
type: 'title',
|
|
67
|
+
text: 'Status Effects Commonly Used in Combat',
|
|
68
|
+
level: 3,
|
|
69
|
+
},
|
|
70
|
+
{ type: 'paragraph', html: 'Tracking conditions during combat is one of the most frequently overlooked tasks. A status effect can completely change a character effectiveness, and forgetting to remove it can swing the balance of an encounter. The initiative tracker lets you apply and remove conditions with a single click so they stay visible next to the combatant name.' },
|
|
71
|
+
{
|
|
72
|
+
type: 'proscons',
|
|
73
|
+
title: 'Handling Status Effects Digitally vs Manually',
|
|
74
|
+
items: [
|
|
75
|
+
{
|
|
76
|
+
pro: 'Conditions are visible right next to the character name so nobody forgets an active effect.',
|
|
77
|
+
con: 'Requires remembering to toggle statuses on and off as they are applied and removed.',
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
pro: 'Multiple statuses can be active on the same combatant and are all shown together.',
|
|
81
|
+
con: 'The tracker does not enforce the rules effects automatically, the DM still applies them.',
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
pro: 'Statuses can be added mid combat without pausing to write on a character sheet.',
|
|
85
|
+
con: 'Only predefined status tags are available by default.',
|
|
86
|
+
},
|
|
87
|
+
],
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
type: 'title',
|
|
91
|
+
text: 'Alternative Initiative Systems',
|
|
92
|
+
level: 3,
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
type: 'comparative',
|
|
96
|
+
items: [
|
|
97
|
+
{
|
|
98
|
+
title: 'Standard Initiative',
|
|
99
|
+
description: 'Each combatant rolls once at the start. The same order repeats each round. Simple and predictable, but the order is fixed after the first roll. Works well for most groups and encounter sizes.',
|
|
100
|
+
icon: 'mdi:swap-vertical',
|
|
101
|
+
highlight: true,
|
|
102
|
+
points: ['Simple to learn and teach', 'Fixed turn order each round', 'Works for any group size'],
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
title: 'Side Initiative',
|
|
106
|
+
description: 'All player characters act together, then all enemies act together. Common in older editions and OSR games. Speeds up combat by reducing individual tracking but reduces tactical nuance.',
|
|
107
|
+
icon: 'mdi:account-group',
|
|
108
|
+
highlight: false,
|
|
109
|
+
points: ['Fastest combat resolution', 'Encourages party coordination', 'Less individual turn variety'],
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
title: 'Speed Factor Variant',
|
|
113
|
+
description: 'Each round participants declare actions first, then roll initiative modified by their chosen action. Used in optional rulesets. Creates unpredictable turn order but adds depth to decision making.',
|
|
114
|
+
icon: 'mdi:run-fast',
|
|
115
|
+
highlight: false,
|
|
116
|
+
points: ['Different order every round', 'Action choice affects timing', 'More tactical decisions per turn'],
|
|
117
|
+
},
|
|
118
|
+
],
|
|
119
|
+
columns: 3,
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
type: 'title',
|
|
123
|
+
text: 'Combat Tracker Glossary',
|
|
124
|
+
level: 3,
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'glossary',
|
|
128
|
+
items: [
|
|
129
|
+
{
|
|
130
|
+
term: 'Initiative',
|
|
131
|
+
definition: 'A Dexterity check rolled at the start of combat to determine the sequence of turns. Each participant rolls and acts in descending order.',
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
term: 'Round',
|
|
135
|
+
definition: 'A complete cycle where every combatant takes one turn. After the last combatant acts, the round ends and a new round begins from the top of the order.',
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
term: 'Status Effect',
|
|
139
|
+
definition: 'A temporary condition that modifies a character capabilities. Examples include Stunned (cannot act), Poisoned (disadvantage on rolls), and Blinded (attacks have disadvantage).',
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
term: 'NPC',
|
|
143
|
+
definition: 'Non Player Character controlled by the Dungeon Master. In initiative tracking, NPCs are typically enemies or neutral creatures in the encounter.',
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
term: 'PC',
|
|
147
|
+
definition: 'Player Character controlled by one of the players at the table. PCs are distinct from NPCs in the tracker to help the DM identify friendly targets.',
|
|
148
|
+
},
|
|
149
|
+
],
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
type: 'diagnostic',
|
|
153
|
+
variant: 'info',
|
|
154
|
+
title: 'When to Reroll Initiative Each Round',
|
|
155
|
+
icon: 'mdi:information-outline',
|
|
156
|
+
badge: 'DM TIP',
|
|
157
|
+
html: 'Some DMs prefer rerolling initiative each round for unpredictability, while most keep the same order for simplicity. If a new combatant joins mid fight, roll their initiative and insert them into the current position. The tracker handles this automatically. For boss encounters, consider giving the villain a fixed initiative at a specific count to make the fight feel more structured.',
|
|
158
|
+
},
|
|
159
|
+
],
|
|
160
|
+
faq: [
|
|
161
|
+
{
|
|
162
|
+
question: 'How do I add combatants to the initiative order?',
|
|
163
|
+
answer: 'Enter the character name, initiative roll, and initiative modifier, then click Add. Toggle between Player and NPC types to visually distinguish party members from enemies in the list.',
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
question: 'What happens when I click Start Combat?',
|
|
167
|
+
answer: 'All combatants are sorted by initiative from highest to lowest. The turn order begins at the top, the round counter starts at 1, and the active combatant is highlighted with a green glow.',
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
question: 'How do I track status effects during combat?',
|
|
171
|
+
answer: 'Click a status tag (Stunned, Poisoned, Blinded, etc.) to toggle it on or off for the selected combatant. Active statuses appear next to the character name. This reminds everyone of ongoing effects when that combatant turn comes up.',
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
question: 'Does my combat data persist if I refresh the page?',
|
|
175
|
+
answer: 'Yes. The initiative tracker saves the combat state to your browser local storage. Your combatants, turn order, and status effects remain after a page reload. Data is cleared when you click End Combat.',
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
question: 'Can I go back to the previous turn?',
|
|
179
|
+
answer: 'Yes. The Previous Turn button lets you navigate backward through the turn order. This is useful for reviewing what happened earlier in the round or correcting a mistake.',
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
question: 'Can I add or remove combatants during combat?',
|
|
183
|
+
answer: 'Yes. New combatants can be added at any time and are automatically inserted into the correct position based on their initiative roll. Existing combatants can be removed if they leave the encounter.',
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
question: 'Does this work with any RPG system?',
|
|
187
|
+
answer: 'Yes. The tracker works with any tabletop RPG that uses initiative based turn order. Enter whatever initiative values your system uses whether it is a d20 roll plus Dex for D&D or a different mechanic for other games.',
|
|
188
|
+
},
|
|
189
|
+
],
|
|
190
|
+
bibliography,
|
|
191
|
+
howTo: [
|
|
192
|
+
{
|
|
193
|
+
name: 'Add Combatants Before Combat',
|
|
194
|
+
text: 'Enter each character name, their initiative roll, and modifier. Mark them as Player or NPC. Add as many combatants as your encounter needs.',
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
name: 'Start Combat to Lock the Order',
|
|
198
|
+
text: 'Click Start Combat to sort everyone by initiative and begin tracking turns. The first combatant in the order is highlighted.',
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
name: 'Navigate Turns and Track Conditions',
|
|
202
|
+
text: 'Use Next Turn and Previous Turn to move through the order. Apply status effects by clicking the status tags to track conditions during the fight.',
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
name: 'End Combat When Finished',
|
|
206
|
+
text: 'Click End Combat to stop turn tracking. This clears the active state and resets the round counter while keeping the combatant list for the next encounter.',
|
|
207
|
+
},
|
|
208
|
+
],
|
|
209
|
+
schemas: [
|
|
210
|
+
{
|
|
211
|
+
'@context': 'https://schema.org',
|
|
212
|
+
'@type': 'SoftwareApplication',
|
|
213
|
+
'name': 'RPG Initiative Tracker',
|
|
214
|
+
'operatingSystem': 'All',
|
|
215
|
+
'applicationCategory': 'UtilitiesApplication',
|
|
216
|
+
'browserRequirements': 'Requires HTML5. Requires JavaScript.',
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
'@context': 'https://schema.org',
|
|
220
|
+
'@type': 'FAQPage',
|
|
221
|
+
'mainEntity': [
|
|
222
|
+
{
|
|
223
|
+
'@type': 'Question',
|
|
224
|
+
'name': 'How do I add combatants?',
|
|
225
|
+
'acceptedAnswer': {
|
|
226
|
+
'@type': 'Answer',
|
|
227
|
+
'text': 'Enter the character name, initiative roll, and initiative modifier, then click Add. Players and NPCs can be toggled to help distinguish them in the list.',
|
|
228
|
+
},
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
'@type': 'Question',
|
|
232
|
+
'name': 'What happens when I click Start Combat?',
|
|
233
|
+
'acceptedAnswer': {
|
|
234
|
+
'@type': 'Answer',
|
|
235
|
+
'text': 'All combatants are sorted by initiative (highest first). The turn order begins with the first combatant and a round counter starts at 1.',
|
|
236
|
+
},
|
|
237
|
+
},
|
|
238
|
+
],
|
|
239
|
+
},
|
|
240
|
+
{
|
|
241
|
+
'@context': 'https://schema.org',
|
|
242
|
+
'@type': 'HowTo',
|
|
243
|
+
'name': 'How to Use the Initiative Tracker',
|
|
244
|
+
'step': [
|
|
245
|
+
{
|
|
246
|
+
'@type': 'HowToStep',
|
|
247
|
+
'name': 'Add Combatants',
|
|
248
|
+
'text': 'Enter character details including name, initiative roll, and modifier. Toggle between Player and NPC types before adding.',
|
|
249
|
+
},
|
|
250
|
+
{
|
|
251
|
+
'@type': 'HowToStep',
|
|
252
|
+
'name': 'Start Combat',
|
|
253
|
+
'text': 'Click Start Combat to sort all combatants by initiative and begin turn order tracking.',
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
'@type': 'HowToStep',
|
|
257
|
+
'name': 'Manage Turns',
|
|
258
|
+
'text': 'Use Next Turn and Previous Turn to navigate the turn order. The active combatant is highlighted with a green glow.',
|
|
259
|
+
},
|
|
260
|
+
],
|
|
261
|
+
},
|
|
262
|
+
],
|
|
263
|
+
};
|