@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.
Files changed (123) hide show
  1. package/package.json +1 -1
  2. package/src/entries.ts +11 -1
  3. package/src/index.ts +1 -0
  4. package/src/tests/locale_completeness.test.ts +1 -1
  5. package/src/tests/tool_validation.test.ts +1 -1
  6. package/src/tool/decision-wheel/audio.ts +78 -0
  7. package/src/tool/decision-wheel/bibliography.astro +16 -0
  8. package/src/tool/decision-wheel/bibliography.ts +8 -0
  9. package/src/tool/decision-wheel/client.ts +226 -0
  10. package/src/tool/decision-wheel/component.astro +48 -0
  11. package/src/tool/decision-wheel/components/SegmentEditor.astro +22 -0
  12. package/src/tool/decision-wheel/components/SpinHistory.astro +17 -0
  13. package/src/tool/decision-wheel/components/SpinResult.astro +13 -0
  14. package/src/tool/decision-wheel/components/WheelCanvas.astro +23 -0
  15. package/src/tool/decision-wheel/decision-wheel.css +632 -0
  16. package/src/tool/decision-wheel/drawing.ts +144 -0
  17. package/src/tool/decision-wheel/entry.ts +48 -0
  18. package/src/tool/decision-wheel/i18n/de.ts +97 -0
  19. package/src/tool/decision-wheel/i18n/en.ts +251 -0
  20. package/src/tool/decision-wheel/i18n/es.ts +93 -0
  21. package/src/tool/decision-wheel/i18n/fr.ts +93 -0
  22. package/src/tool/decision-wheel/i18n/id.ts +93 -0
  23. package/src/tool/decision-wheel/i18n/it.ts +93 -0
  24. package/src/tool/decision-wheel/i18n/ja.ts +93 -0
  25. package/src/tool/decision-wheel/i18n/ko.ts +93 -0
  26. package/src/tool/decision-wheel/i18n/nl.ts +93 -0
  27. package/src/tool/decision-wheel/i18n/pl.ts +93 -0
  28. package/src/tool/decision-wheel/i18n/pt.ts +93 -0
  29. package/src/tool/decision-wheel/i18n/ru.ts +75 -0
  30. package/src/tool/decision-wheel/i18n/sv.ts +93 -0
  31. package/src/tool/decision-wheel/i18n/tr.ts +93 -0
  32. package/src/tool/decision-wheel/i18n/zh.ts +93 -0
  33. package/src/tool/decision-wheel/index.ts +9 -0
  34. package/src/tool/decision-wheel/logic.test.ts +163 -0
  35. package/src/tool/decision-wheel/logic.ts +145 -0
  36. package/src/tool/decision-wheel/seo.astro +16 -0
  37. package/src/tool/decision-wheel/types.ts +14 -0
  38. package/src/tool/decision-wheel/ui.ts +121 -0
  39. package/src/tool/fantasy-runes-translator/bibliography.astro +16 -0
  40. package/src/tool/fantasy-runes-translator/bibliography.ts +16 -0
  41. package/src/tool/fantasy-runes-translator/client.ts +205 -0
  42. package/src/tool/fantasy-runes-translator/component.astro +95 -0
  43. package/src/tool/fantasy-runes-translator/entry.ts +56 -0
  44. package/src/tool/fantasy-runes-translator/fantasy-runes-translator.css +712 -0
  45. package/src/tool/fantasy-runes-translator/i18n/de.ts +139 -0
  46. package/src/tool/fantasy-runes-translator/i18n/en.ts +139 -0
  47. package/src/tool/fantasy-runes-translator/i18n/es.ts +139 -0
  48. package/src/tool/fantasy-runes-translator/i18n/fr.ts +139 -0
  49. package/src/tool/fantasy-runes-translator/i18n/id.ts +139 -0
  50. package/src/tool/fantasy-runes-translator/i18n/it.ts +139 -0
  51. package/src/tool/fantasy-runes-translator/i18n/ja.ts +139 -0
  52. package/src/tool/fantasy-runes-translator/i18n/ko.ts +139 -0
  53. package/src/tool/fantasy-runes-translator/i18n/nl.ts +139 -0
  54. package/src/tool/fantasy-runes-translator/i18n/pl.ts +139 -0
  55. package/src/tool/fantasy-runes-translator/i18n/pt.ts +139 -0
  56. package/src/tool/fantasy-runes-translator/i18n/ru.ts +139 -0
  57. package/src/tool/fantasy-runes-translator/i18n/sv.ts +139 -0
  58. package/src/tool/fantasy-runes-translator/i18n/tr.ts +139 -0
  59. package/src/tool/fantasy-runes-translator/i18n/zh.ts +139 -0
  60. package/src/tool/fantasy-runes-translator/index.ts +9 -0
  61. package/src/tool/fantasy-runes-translator/logic.ts +174 -0
  62. package/src/tool/fantasy-runes-translator/seo.astro +16 -0
  63. package/src/tool/fantasy-runes-translator/types.ts +26 -0
  64. package/src/tool/rpg-initiative-tracker/bibliography.astro +16 -0
  65. package/src/tool/rpg-initiative-tracker/bibliography.ts +12 -0
  66. package/src/tool/rpg-initiative-tracker/client.ts +201 -0
  67. package/src/tool/rpg-initiative-tracker/component.astro +23 -0
  68. package/src/tool/rpg-initiative-tracker/components/AddForm.astro +49 -0
  69. package/src/tool/rpg-initiative-tracker/components/CombatantList.astro +16 -0
  70. package/src/tool/rpg-initiative-tracker/components/TurnControls.astro +28 -0
  71. package/src/tool/rpg-initiative-tracker/entry.ts +50 -0
  72. package/src/tool/rpg-initiative-tracker/i18n/de.ts +266 -0
  73. package/src/tool/rpg-initiative-tracker/i18n/en.ts +263 -0
  74. package/src/tool/rpg-initiative-tracker/i18n/es.ts +264 -0
  75. package/src/tool/rpg-initiative-tracker/i18n/fr.ts +263 -0
  76. package/src/tool/rpg-initiative-tracker/i18n/id.ts +263 -0
  77. package/src/tool/rpg-initiative-tracker/i18n/it.ts +263 -0
  78. package/src/tool/rpg-initiative-tracker/i18n/ja.ts +263 -0
  79. package/src/tool/rpg-initiative-tracker/i18n/ko.ts +263 -0
  80. package/src/tool/rpg-initiative-tracker/i18n/nl.ts +263 -0
  81. package/src/tool/rpg-initiative-tracker/i18n/pl.ts +264 -0
  82. package/src/tool/rpg-initiative-tracker/i18n/pt.ts +263 -0
  83. package/src/tool/rpg-initiative-tracker/i18n/ru.ts +264 -0
  84. package/src/tool/rpg-initiative-tracker/i18n/sv.ts +263 -0
  85. package/src/tool/rpg-initiative-tracker/i18n/tr.ts +263 -0
  86. package/src/tool/rpg-initiative-tracker/i18n/zh.ts +263 -0
  87. package/src/tool/rpg-initiative-tracker/index.ts +9 -0
  88. package/src/tool/rpg-initiative-tracker/logic.test.ts +121 -0
  89. package/src/tool/rpg-initiative-tracker/logic.ts +122 -0
  90. package/src/tool/rpg-initiative-tracker/rpg-initiative-tracker.css +617 -0
  91. package/src/tool/rpg-initiative-tracker/seo.astro +16 -0
  92. package/src/tool/rpg-initiative-tracker/types.ts +15 -0
  93. package/src/tool/score-tracker/bibliography.astro +16 -0
  94. package/src/tool/score-tracker/bibliography.ts +12 -0
  95. package/src/tool/score-tracker/client.ts +248 -0
  96. package/src/tool/score-tracker/component.astro +34 -0
  97. package/src/tool/score-tracker/components/Leaderboard.astro +19 -0
  98. package/src/tool/score-tracker/components/PlayerSetup.astro +32 -0
  99. package/src/tool/score-tracker/components/RoundScoring.astro +22 -0
  100. package/src/tool/score-tracker/components/ScoreHistory.astro +25 -0
  101. package/src/tool/score-tracker/entry.ts +57 -0
  102. package/src/tool/score-tracker/i18n/de.ts +278 -0
  103. package/src/tool/score-tracker/i18n/en.ts +278 -0
  104. package/src/tool/score-tracker/i18n/es.ts +251 -0
  105. package/src/tool/score-tracker/i18n/fr.ts +278 -0
  106. package/src/tool/score-tracker/i18n/id.ts +278 -0
  107. package/src/tool/score-tracker/i18n/it.ts +278 -0
  108. package/src/tool/score-tracker/i18n/ja.ts +278 -0
  109. package/src/tool/score-tracker/i18n/ko.ts +278 -0
  110. package/src/tool/score-tracker/i18n/nl.ts +278 -0
  111. package/src/tool/score-tracker/i18n/pl.ts +278 -0
  112. package/src/tool/score-tracker/i18n/pt.ts +278 -0
  113. package/src/tool/score-tracker/i18n/ru.ts +278 -0
  114. package/src/tool/score-tracker/i18n/sv.ts +278 -0
  115. package/src/tool/score-tracker/i18n/tr.ts +278 -0
  116. package/src/tool/score-tracker/i18n/zh.ts +278 -0
  117. package/src/tool/score-tracker/index.ts +9 -0
  118. package/src/tool/score-tracker/logic.test.ts +83 -0
  119. package/src/tool/score-tracker/logic.ts +122 -0
  120. package/src/tool/score-tracker/score-tracker.css +1029 -0
  121. package/src/tool/score-tracker/seo.astro +16 -0
  122. package/src/tool/score-tracker/types.ts +17 -0
  123. package/src/tools.ts +8 -0
@@ -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: 'Initiatief Volger',
7
+ addCombatant: 'Strijder toevoegen',
8
+ removeCombatant: 'Verwijderen',
9
+ playerLabel: 'Speler',
10
+ npcLabel: 'NPC',
11
+ initiativeLabel: 'Initiatief',
12
+ modifierLabel: 'Modifier',
13
+ namePlaceholder: 'Karakter naam',
14
+ initiativePlaceholder: 'Initiatief',
15
+ modifierPlaceholder: 'Modifier',
16
+ addButton: 'Toevoegen',
17
+ startCombat: 'Gevecht starten',
18
+ endCombat: 'Gevecht beëindigen',
19
+ nextTurn: 'Volgende beurt',
20
+ prevTurn: 'Vorige beurt',
21
+ roundLabel: 'Ronde',
22
+ turnLabel: 'Beurt',
23
+ noCombatants: 'Nog geen strijders. Voeg personages toe om te beginnen.',
24
+ statusInput: 'Status',
25
+ combatStarted: 'Gevecht gestart!',
26
+ combatEnded: 'Gevecht beëindigd',
27
+ yourTurn: 'Beurt',
28
+ };
29
+
30
+ export const content: ToolLocaleContent<InitiativeTrackerUI> = {
31
+ slug: 'initiatief-volger',
32
+ title: 'RPG Initiatief Volger: Beurtvolgorde & Initiatief Beheerder',
33
+ description: 'Volg de initiatiefvolgorde voor elke tabletop RPG. Voeg strijders toe, rol voor initiatief, beheer statuseffecten en navigeer door beurten in gevechten.',
34
+ ui,
35
+ seo: [
36
+ { type: 'title', text: 'Hoe Initiatief Werkt in D&D en Andere Tabletop RPGs', level: 2 },
37
+ { type: 'paragraph', html: 'Initiatief bepaalt de volgorde van acties in een gevecht. Elke deelnemer gooit een Behendigheidscheck aan het begin van een gevecht, en de beurtvolgorde gaat van hoog naar laag. Een digitale initiatiefvolger automatiseert het sorteren, markeert de actieve strijder, volgt lopende statuseffecten en houdt de hele tafel op de hoogte van wie de volgende beurt heeft. Dit is vooral handig voor Dungeon Masters die complexe ontmoetingen met meerdere vijandtypes en spelerspersonages leiden.' },
38
+ {
39
+ type: 'stats',
40
+ items: [
41
+ { value: 'Onbeperkt', label: 'Strijders ondersteund' },
42
+ { value: 'Auto sorteren', label: 'Op initiatief worp' },
43
+ { value: 'Realtime', label: 'Beurt bijhouden' },
44
+ ],
45
+ columns: 3,
46
+ },
47
+ { type: 'title', text: 'Standaard Initiatief Regels voor D&D 5e', level: 2 },
48
+ { type: 'paragraph', html: 'In D&D 5e gooit elke deelnemer een Behendigheidscheck aan het begin van het gevecht. Spelers gooien individueel. De Dungeon Master gooit eenmaal voor elke groep identieke monsters. De beurtvolgorde gaat van hoog naar laag, dan terug naar het begin voor de volgende ronde. Gelijke worpen worden beslist door Behendigheidsscore, of de DM beslist. Een digitale volger handelt dit alles automatisch af en toont de volledige beurtvolgorde in één oogopslag.' },
49
+ {
50
+ type: 'table',
51
+ headers: ['Functie', 'Handmatig bijhouden', 'Digitale volger'],
52
+ rows: [
53
+ ['Sorteren', 'Lijst herschrijven wanneer initiatief verandert', 'Direct automatisch herordenen'],
54
+ ['Huidige beurt', 'Moet mondeling of met een token worden bijgehouden', 'Gemarkeerd met groene gloed'],
55
+ ['Statuseffecten', 'Apart notitieblok of dobbelsteen bij de mini', 'Klik om aan te zetten per strijder'],
56
+ ['Rondetelling', 'In je hoofd of op kladpapier tellen', 'Automatisch weergegeven'],
57
+ ['Toevoegen tijdens gevecht', 'Volgorde uitgummen en herschrijven', 'Ingevoegd op de juiste positie'],
58
+ ],
59
+ },
60
+ {
61
+ type: 'tip',
62
+ title: 'Tips voor het Leiden van Initiatief aan Tafel',
63
+ html: 'Gooi initiatief voor alle monsters vóór de sessie om tijd te besparen tijdens het gevecht. Voeg veelvoorkomende statuseffecten zoals Verdoofd of Vergiftigd toe aan een strijder zodra ze worden toegepast. Dit voorkomt dat je een conditie vergeet wanneer de beurt van het getroffen personage komt. Gebruik de Vorige beurt knop om te bekijken wat er gebeurde als je een beslissing van eerder in de ronde moet controleren.',
64
+ },
65
+ {
66
+ type: 'title',
67
+ text: 'Veelgebruikte Statuseffecten in Gevechten',
68
+ level: 3,
69
+ },
70
+ { type: 'paragraph', html: 'Het bijhouden van condities tijdens gevechten is een van de meest over het hoofd geziene taken. Een statuseffect kan de effectiviteit van een personage volledig veranderen, en vergeten het te verwijderen kan de balans van een ontmoeting doen kantelen. De initiatiefvolger laat je condities toepassen en verwijderen met één klik, zodat ze zichtbaar blijven naast de naam van de strijder.' },
71
+ {
72
+ type: 'proscons',
73
+ title: 'Statuseffecten digitaal versus handmatig beheren',
74
+ items: [
75
+ {
76
+ pro: 'Condities zijn zichtbaar direct naast de personagenaam, zodat niemand een actief effect vergeet.',
77
+ con: 'Vereist dat je onthoudt statussen aan en uit te zetten wanneer ze worden toegepast en verwijderd.',
78
+ },
79
+ {
80
+ pro: 'Meerdere statussen kunnen tegelijk actief zijn op dezelfde strijder en worden allemaal samen getoond.',
81
+ con: 'De volger past de regels niet automatisch toe; de DM moet ze nog steeds toepassen.',
82
+ },
83
+ {
84
+ pro: 'Statussen kunnen tijdens het gevecht worden toegevoegd zonder te stoppen om op een personageblad te schrijven.',
85
+ con: 'Alleen vooraf gedefinieerde statustags zijn standaard beschikbaar.',
86
+ },
87
+ ],
88
+ },
89
+ {
90
+ type: 'title',
91
+ text: 'Alternatieve Initiatief Systemen',
92
+ level: 3,
93
+ },
94
+ {
95
+ type: 'comparative',
96
+ items: [
97
+ {
98
+ title: 'Standaard Initiatief',
99
+ description: 'Elke strijder gooit eenmaal aan het begin. Dezelfde volgorde herhaalt zich elke ronde. Eenvoudig en voorspelbaar, maar de volgorde staat vast na de eerste worp. Werkt goed voor de meeste groepen en ontmoetingsgroottes.',
100
+ icon: 'mdi:swap-vertical',
101
+ highlight: true,
102
+ points: ['Eenvoudig te leren en onderwijzen', 'Vaste beurtvolgorde elke ronde', 'Werkt voor elke groepsgrootte'],
103
+ },
104
+ {
105
+ title: 'Kant Initiatief',
106
+ description: 'Alle spelerspersonages handelen samen, dan alle vijanden samen. Gebruikelijk in oudere edities en OSR spellen. Versnelt gevechten door individueel bijhouden te verminderen maar vermindert tactische diepgang.',
107
+ icon: 'mdi:account-group',
108
+ highlight: false,
109
+ points: ['Snelste gevechtsafhandeling', 'Stimuleert partijcoördinatie', 'Minder variatie in individuele beurten'],
110
+ },
111
+ {
112
+ title: 'Snelheidsfactor Variant',
113
+ description: 'Elke ronde verklaren deelnemers eerst acties, dan gooien ze initiatief aangepast door de gekozen actie. Gebruikt in optionele regelsets. Creëert een onvoorspelbare beurtvolgorde maar voegt diepgang toe aan besluitvorming.',
114
+ icon: 'mdi:run-fast',
115
+ highlight: false,
116
+ points: ['Andere volgorde elke ronde', 'Actiekeuze beïnvloedt timing', 'Meer tactische beslissingen per beurt'],
117
+ },
118
+ ],
119
+ columns: 3,
120
+ },
121
+ {
122
+ type: 'title',
123
+ text: 'Gevechtsvolger Verklarende Woordenlijst',
124
+ level: 3,
125
+ },
126
+ {
127
+ type: 'glossary',
128
+ items: [
129
+ {
130
+ term: 'Initiatief',
131
+ definition: 'Een Behendigheidscheck aan het begin van een gevecht om de volgorde van beurten te bepalen. Elke deelnemer gooit en handelt in aflopende volgorde.',
132
+ },
133
+ {
134
+ term: 'Ronde',
135
+ definition: 'Een volledige cyclus waarin elke strijder één beurt neemt. Nadat de laatste strijder heeft gehandeld, eindigt de ronde en begint een nieuwe ronde vanaf het begin van de volgorde.',
136
+ },
137
+ {
138
+ term: 'Statuseffect',
139
+ definition: 'Een tijdelijke conditie die de capaciteiten van een personage wijzigt. Voorbeelden zijn Verdoofd (kan niet handelen), Vergiftigd (nadeel op worpen) en Verblind (aanvallen hebben nadeel).',
140
+ },
141
+ {
142
+ term: 'NPC',
143
+ definition: 'Niet-Speler Personage bestuurd door de Dungeon Master. Bij initiatief bijhouden zijn NPCs typisch vijanden of neutrale wezens in de ontmoeting.',
144
+ },
145
+ {
146
+ term: 'PC',
147
+ definition: 'Spelers Personage bestuurd door een van de spelers aan tafel. PCs worden onderscheiden van NPCs in de volger om de DM te helpen vriendelijke doelen te identificeren.',
148
+ },
149
+ ],
150
+ },
151
+ {
152
+ type: 'diagnostic',
153
+ variant: 'info',
154
+ title: 'Wanneer Initiatief Elke Ronde Herrollen',
155
+ icon: 'mdi:information-outline',
156
+ badge: 'DM TIP',
157
+ html: 'Sommige DMs geven er de voorkeur aan initiatief elke ronde te herrollen voor onvoorspelbaarheid, terwijl de meeste dezelfde volgorde aanhouden voor eenvoud. Als een nieuwe strijder midden in het gevecht meedoet, rol dan zijn initiatief en voeg hem in op de huidige positie. De volger handelt dit automatisch af. Voor baas ontmoetingen, overweeg de schurk een vast initiatief op een specifieke telling te geven om het gevecht gestructureerder te laten aanvoelen.',
158
+ },
159
+ ],
160
+ faq: [
161
+ {
162
+ question: 'Hoe voeg ik strijders toe aan de initiatiefvolgorde?',
163
+ answer: 'Voer de personagenaam, initiatiefworp en initiatiefmodifier in en klik vervolgens op Toevoegen. Schakel tussen Speler en NPC types om groepsleden visueel te onderscheiden van vijanden in de lijst.',
164
+ },
165
+ {
166
+ question: 'Wat gebeurt er als ik op Gevecht starten klik?',
167
+ answer: 'Alle strijders worden gesorteerd op initiatief van hoog naar laag. De beurtvolgorde begint bovenaan, de rondeteller start op 1 en de actieve strijder wordt gemarkeerd met een groene gloed.',
168
+ },
169
+ {
170
+ question: 'Hoe houd ik statuseffecten bij tijdens het gevecht?',
171
+ answer: 'Klik op een statustag (Verdoofd, Vergiftigd, Verblind, etc.) om deze aan of uit te zetten voor de geselecteerde strijder. Actieve statussen verschijnen naast de personagenaam. Dit herinnert iedereen aan lopende effecten wanneer de beurt van die strijder komt.',
172
+ },
173
+ {
174
+ question: 'Blijven mijn gevechtsgegevens behouden als ik de pagina ververs?',
175
+ answer: 'Ja. De initiatiefvolger slaat de gevechtsstatus op in de lokale opslag van je browser. Je strijders, beurtvolgorde en statuseffecten blijven behouden na een paginaverversing. Gegevens worden gewist wanneer je op Gevecht beëindigen klikt.',
176
+ },
177
+ {
178
+ question: 'Kan ik teruggaan naar de vorige beurt?',
179
+ answer: 'Ja. De Vorige beurt knop laat je achteruit navigeren door de beurtvolgorde. Dit is handig om te bekijken wat er eerder in de ronde gebeurde of om een fout te corrigeren.',
180
+ },
181
+ {
182
+ question: 'Kan ik strijders toevoegen of verwijderen tijdens het gevecht?',
183
+ answer: 'Ja. Nieuwe strijders kunnen op elk moment worden toegevoegd en worden automatisch op de juiste positie ingevoegd op basis van hun initiatiefworp. Bestaande strijders kunnen worden verwijderd als ze de ontmoeting verlaten.',
184
+ },
185
+ {
186
+ question: 'Werkt dit met elk RPG systeem?',
187
+ answer: 'Ja. De volger werkt met elke tabletop RPG die een op initiatief gebaseerde beurtvolgorde gebruikt. Voer gewoon de initiatiefwaarden in die jouw systeem gebruikt, of het nu een d20 worp plus Behendigheid is voor D&D of een ander mechanisme voor andere spellen.',
188
+ },
189
+ ],
190
+ bibliography,
191
+ howTo: [
192
+ {
193
+ name: 'Voeg strijders toe voor het gevecht',
194
+ text: 'Voer voor elk personage de naam, hun initiatiefworp en modifier in. Markeer ze als Speler of NPC. Voeg zoveel strijders toe als je ontmoeting nodig heeft.',
195
+ },
196
+ {
197
+ name: 'Start gevecht om de volgorde vast te leggen',
198
+ text: 'Klik op Gevecht starten om iedereen op initiatief te sorteren en te beginnen met het bijhouden van beurten. De eerste strijder in de volgorde wordt gemarkeerd.',
199
+ },
200
+ {
201
+ name: 'Navigeer beurten en volg condities',
202
+ text: 'Gebruik Volgende beurt en Vorige beurt om door de volgorde te gaan. Pas statuseffecten toe door op de statustags te klikken om condities bij te houden tijdens het gevecht.',
203
+ },
204
+ {
205
+ name: 'Beëindig gevecht wanneer klaar',
206
+ text: 'Klik op Gevecht beëindigen om het bijhouden van beurten te stoppen. Dit wist de actieve status en reset de rondeteller terwijl de strijderslijst behouden blijft voor de volgende ontmoeting.',
207
+ },
208
+ ],
209
+ schemas: [
210
+ {
211
+ '@context': 'https://schema.org',
212
+ '@type': 'SoftwareApplication',
213
+ 'name': 'RPG Initiatief Volger',
214
+ 'operatingSystem': 'Alle',
215
+ 'applicationCategory': 'UtilitiesApplication',
216
+ 'browserRequirements': 'Vereist HTML5. Vereist JavaScript.',
217
+ },
218
+ {
219
+ '@context': 'https://schema.org',
220
+ '@type': 'FAQPage',
221
+ 'mainEntity': [
222
+ {
223
+ '@type': 'Question',
224
+ 'name': 'Hoe voeg ik strijders toe?',
225
+ 'acceptedAnswer': {
226
+ '@type': 'Answer',
227
+ 'text': 'Voer de personagenaam, initiatiefworp en initiatiefmodifier in en klik vervolgens op Toevoegen. Spelers en NPCs kunnen worden omgeschakeld om ze te onderscheiden in de lijst.',
228
+ },
229
+ },
230
+ {
231
+ '@type': 'Question',
232
+ 'name': 'Wat gebeurt er als ik op Gevecht starten klik?',
233
+ 'acceptedAnswer': {
234
+ '@type': 'Answer',
235
+ 'text': 'Alle strijders worden gesorteerd op initiatief (hoogste eerst). De beurtvolgorde begint met de eerste strijder en een rondeteller start op 1.',
236
+ },
237
+ },
238
+ ],
239
+ },
240
+ {
241
+ '@context': 'https://schema.org',
242
+ '@type': 'HowTo',
243
+ 'name': 'Hoe de Initiatief Volger te Gebruiken',
244
+ 'step': [
245
+ {
246
+ '@type': 'HowToStep',
247
+ 'name': 'Strijders toevoegen',
248
+ 'text': 'Voer persoonsgegevens in inclusief naam, initiatiefworp en modifier. Schakel tussen Speler en NPC types vóór het toevoegen.',
249
+ },
250
+ {
251
+ '@type': 'HowToStep',
252
+ 'name': 'Gevecht starten',
253
+ 'text': 'Klik op Gevecht starten om alle strijders op initiatief te sorteren en te beginnen met het bijhouden van de beurtvolgorde.',
254
+ },
255
+ {
256
+ '@type': 'HowToStep',
257
+ 'name': 'Beurten beheren',
258
+ 'text': 'Gebruik Volgende beurt en Vorige beurt om door de beurtvolgorde te navigeren. De actieve strijder wordt gemarkeerd met een groene gloed.',
259
+ },
260
+ ],
261
+ },
262
+ ],
263
+ };
@@ -0,0 +1,264 @@
1
+ import { bibliography } from '../bibliography';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { InitiativeTrackerUI } from '../entry';
4
+
5
+ const ui: InitiativeTrackerUI = {
6
+ title: 'Śledzenie Inicjatywy',
7
+ addCombatant: 'Dodawanie Uczestnika',
8
+ removeCombatant: 'Usuń',
9
+ playerLabel: 'Gracz',
10
+ npcLabel: 'NPC',
11
+ initiativeLabel: 'Inicjatywa',
12
+ modifierLabel: 'Modyfikator',
13
+ namePlaceholder: 'Nazwa postaci',
14
+ initiativePlaceholder: 'Inicjatywa',
15
+ modifierPlaceholder: 'Modyfikator',
16
+ addButton: 'Dodaj',
17
+ startCombat: 'Rozpocznij Walkę',
18
+ endCombat: 'Zakończ Walkę',
19
+ nextTurn: 'Następna Tura',
20
+ prevTurn: 'Poprzednia Tura',
21
+ roundLabel: 'Runda',
22
+ turnLabel: 'Tura',
23
+ noCombatants: 'Brak uczestników. Dodaj postacie, aby rozpocząć.',
24
+ statusInput: 'Status',
25
+ combatStarted: 'Walka Rozpoczęta!',
26
+ combatEnded: 'Walka Zakończona',
27
+ yourTurn: 'Tura',
28
+ };
29
+
30
+ export const content: ToolLocaleContent<InitiativeTrackerUI> = {
31
+ slug: 'sledzenie-inicjatywy',
32
+ title: 'Śledzenie Inicjatywy RPG: Kolejność Tur i Menedżer Inicjatywy',
33
+ description: 'Śledź kolejność inicjatywy w każdej erpegi stołowej. Dodawaj uczestników, rzucaj inicjatywę, zarządzaj efektami statusu i nawiguj turami w walce.',
34
+ ui,
35
+ seo: [
36
+ { type: 'title', text: 'Jak Działa Inicjatywa w D&D i Innych RPG Stołowych', level: 2 },
37
+ { type: 'paragraph', html: 'Inicjatywa określa kolejność działań w walce. Każdy uczestnik wykonuje test Zręczności na początku walki, a kolejność tur idzie od najwyższej do najniższej. Cyfrowy tracker inicjatywy automatyzuje sortowanie, podświetla aktywnego uczestnika, śledzi aktywne efekty statusów i informuje cały stół, czyja tura jest następna. Jest to szczególnie przydatne dla Dungeon Masterów prowadzących złożone starcia z wieloma typami wrogów i postaciami graczy.' },
38
+ {
39
+ type: 'stats',
40
+ items: [
41
+ { value: 'Nieograniczone', label: 'Liczba Uczestników' },
42
+ { value: 'Auto Sortowanie', label: 'Według Rzutu Inicjatywy' },
43
+ { value: 'Na Bieżąco', label: 'Śledzenie Tur' },
44
+ ],
45
+ columns: 3,
46
+ },
47
+ { type: 'title', text: 'Standardowe Zasady Inicjatywy dla D&D 5e', level: 2 },
48
+ { type: 'paragraph', html: 'W D&D 5. edycji każdy uczestnik wykonuje test Zręczności na początku walki. Gracze rzucają indywidualnie. Dungeon Master rzuca raz dla każdej grupy identycznych potworów. Kolejność tur idzie od najwyższej do najniższej, a następnie zawraca na górę dla następnej rundy. Remisy są rozstrzygane przez wartość Zręczności lub decyzję MG. Cyfrowy tracker obsługuje to wszystko automatycznie i pokazuje pełną kolejność tur na pierwszy rzut oka.' },
49
+ {
50
+ type: 'table',
51
+ headers: ['Funkcja', 'Ręczne Śledzenie', 'Cyfrowy Tracker'],
52
+ rows: [
53
+ ['Sortowanie', 'Przepisywanie listy przy zmianie inicjatywy', 'Natychmiastowe automatyczne sortowanie'],
54
+ ['Obecna Tura', 'Trzeba śledzić ustnie lub za pomocą żetonu', 'Podświetlona na zielono'],
55
+ ['Efekty Statusów', 'Osobna kartka lub kostka przy miniaturce', 'Kliknij, aby włączyć na uczestniku'],
56
+ ['Liczenie Rund', 'Zapamiętywanie lub zapisywanie na kartce', 'Wyświetlane automatycznie'],
57
+ ['Dodawanie w Walce', 'Wymazywanie i przepisywanie kolejności', 'Wstawiane na właściwą pozycję'],
58
+ ],
59
+ },
60
+ {
61
+ type: 'tip',
62
+ title: 'Porady Prowadzenia Inicjatywy przy Stole',
63
+ html: 'Rzuć inicjatywę dla wszystkich potworów przed sesją, aby zaoszczędzić czas podczas walki. Dodawaj popularne efekty statusów, takie jak Ogłuszenie czy Zatrucie, do uczestnika natychmiast po ich zastosowaniu. Zapobiega to zapomnieniu o stanie, gdy nadejdzie tura dotkniętej postaci. Użyj przycisku Poprzednia Tura, aby przejrzeć, co się wydarzyło, jeśli musisz sprawdzić decyzję z wcześniejszej części rundy.' },
64
+ {
65
+ type: 'title',
66
+ text: 'Efekty Statusów Powszechnie Używane w Walce',
67
+ level: 3,
68
+ },
69
+ { type: 'paragraph', html: 'Śledzenie stanów podczas walki to jedno z najczęściej pomijanych zadań. Efekt statusu może całkowicie zmienić skuteczność postaci, a zapomnienie o jego usunięciu może zachwiać balansem starcia. Tracker inicjatywy pozwala dodawać i usuwać stany jednym kliknięciem, dzięki czemu pozostają widoczne obok nazwy uczestnika.' },
70
+ {
71
+ type: 'proscons',
72
+ title: 'Obsługa Efektów Statusów Cyfrowo vs Ręcznie',
73
+ items: [
74
+ {
75
+ pro: 'Stany są widoczne tuż obok nazwy postaci, więc nikt nie zapomni o aktywnym efekcie.',
76
+ con: 'Wymaga pamiętania o włączaniu i wyłączaniu statusów w miarę ich stosowania i usuwania.',
77
+ },
78
+ {
79
+ pro: 'Wiele statusów może być aktywnych na tym samym uczestniku i wszystkie są wyświetlane razem.',
80
+ con: 'Tracker nie egzekwuje automatycznie efektów zasad - MG nadal je stosuje.',
81
+ },
82
+ {
83
+ pro: 'Statusy można dodawać w trakcie walki bez zatrzymywania się na zapis na karcie postaci.',
84
+ con: 'Domyślnie dostępne są tylko predefiniowane tagi statusów.',
85
+ },
86
+ ],
87
+ },
88
+ {
89
+ type: 'title',
90
+ text: 'Alternatywne Systemy Inicjatywy',
91
+ level: 3,
92
+ },
93
+ {
94
+ type: 'comparative',
95
+ items: [
96
+ {
97
+ title: 'Standardowa Inicjatywa',
98
+ description: 'Każdy uczestnik rzuca raz na początku. Ta sama kolejność powtarza się w każdej rundzie. Prosta i przewidywalna, ale kolejność jest ustalona po pierwszym rzucie. Działa dobrze dla większości grup i rozmiarów starć.',
99
+ icon: 'mdi:swap-vertical',
100
+ highlight: true,
101
+ points: ['Łatwa do nauczenia i nauczania', 'Stała kolejność tur w każdej rundzie', 'Działa dla dowolnej wielkości grupy'],
102
+ },
103
+ {
104
+ title: 'Inicjatywa Stron',
105
+ description: 'Wszyscy gracze działają razem, a następnie wszyscy wrogowie działają razem. Popularna w starszych edycjach i grach OSR. Przyspiesza walkę poprzez redukcję indywidualnego śledzenia, ale zmniejsza niuanse taktyczne.',
106
+ icon: 'mdi:account-group',
107
+ highlight: false,
108
+ points: ['Najszybsza rozgrywka walki', 'Wspiera koordynację drużyny', 'Mniejsza różnorodność indywidualnych tur'],
109
+ },
110
+ {
111
+ title: 'Wariant Szybkości',
112
+ description: 'Każdej rundy uczestnicy najpierw deklarują działania, a następnie rzucają inicjatywę zmodyfikowaną przez wybrane działanie. Używane w opcjonalnych zasadach. Tworzy nieprzewidywalną kolejność tur, ale dodaje głębi podejmowaniu decyzji.',
113
+ icon: 'mdi:run-fast',
114
+ highlight: false,
115
+ points: ['Inna kolejność każdej rundy', 'Wybór działania wpływa na czas', 'Więcej decyzji taktycznych na turę'],
116
+ },
117
+ ],
118
+ columns: 3,
119
+ },
120
+ {
121
+ type: 'title',
122
+ text: 'Słowniczek Trackera Walki',
123
+ level: 3,
124
+ },
125
+ {
126
+ type: 'glossary',
127
+ items: [
128
+ {
129
+ term: 'Inicjatywa',
130
+ definition: 'Test Zręczności rzucany na początku walki w celu określenia kolejności tur. Każdy uczestnik rzuca i działa w kolejności malejącej.',
131
+ },
132
+ {
133
+ term: 'Runda',
134
+ definition: 'Pełny cykl, w którym każdy uczestnik wykonuje jedną turę. Po działaniu ostatniego uczestnika runda się kończy i zaczyna nowa runda od początku kolejności.',
135
+ },
136
+ {
137
+ term: 'Efekt Statusu',
138
+ definition: 'Tymczasowy stan modyfikujący możliwości postaci. Przykłady obejmują Ogłuszenie (nie może działać), Zatrucie (utrudnienie w rzutach) i Oślepienie (ataki mają utrudnienie).',
139
+ },
140
+ {
141
+ term: 'NPC',
142
+ definition: 'Postać Niegrająca kontrolowana przez Dungeon Mastera. W śledzeniu inicjatywy NPC to zazwyczaj wrogowie lub neutralne stworzenia w starciu.',
143
+ },
144
+ {
145
+ term: 'PC',
146
+ definition: 'Postać Gracza kontrolowana przez jednego z graczy przy stole. PC są odróżniane od NPC w trackerze, aby pomóc MG identyfikować przyjazne cele.',
147
+ },
148
+ ],
149
+ },
150
+ {
151
+ type: 'diagnostic',
152
+ variant: 'info',
153
+ title: 'Kiedy Przerzucać Inicjatywę Każdej Rundzie',
154
+ icon: 'mdi:information-outline',
155
+ badge: 'PORADA MG',
156
+ html: 'Niektórzy MG wolą przerzucać inicjatywę każdej rundy dla nieprzewidywalności, podczas gdy większość zachowuje tę samą kolejność dla prostoty. Jeśli nowy uczestnik dołącza w trakcie walki, rzuć ich inicjatywę i wstaw ich na bieżącą pozycję. Tracker obsługuje to automatycznie. W przypadku starć z bossem rozważ nadanie złoczyńcy stałej inicjatywy na konkretnej wartości, aby walka wydawała się bardziej uporządkowana.',
157
+ },
158
+ ],
159
+ faq: [
160
+ {
161
+ question: 'Jak dodać uczestników do kolejności inicjatywy?',
162
+ answer: 'Wprowadź nazwę postaci, rzut inicjatywy i modyfikator inicjatywy, a następnie kliknij Dodaj. Przełączaj między typami Gracz i NPC, aby wizualnie odróżnić członków drużyny od wrogów na liście.',
163
+ },
164
+ {
165
+ question: 'Co się stanie, gdy kliknę Rozpocznij Walkę?',
166
+ answer: 'Wszyscy uczestnicy są sortowani według inicjatywy od najwyższej do najniższej. Kolejność tur zaczyna się od góry, licznik rund startuje od 1, a aktywny uczestnik jest podświetlony na zielono.',
167
+ },
168
+ {
169
+ question: 'Jak śledzić efekty statusów podczas walki?',
170
+ answer: 'Kliknij tag statusu (Ogłuszenie, Zatrucie, Oślepienie itp.), aby włączyć lub wyłączyć go dla wybranego uczestnika. Aktywne statusy pojawiają się obok nazwy postaci. Przypomina to wszystkim o trwających efektach, gdy nadejdzie tura tego uczestnika.',
171
+ },
172
+ {
173
+ question: 'Czy moje dane walki zostaną zachowane po odświeżeniu strony?',
174
+ answer: 'Tak. Tracker inicjatywy zapisuje stan walki w lokalnym magazynie przeglądarki. Twoi uczestnicy, kolejność tur i efekty statusów pozostają po przeładowaniu strony. Dane są czyszczone po kliknięciu Zakończ Walkę.',
175
+ },
176
+ {
177
+ question: 'Czy mogę wrócić do poprzedniej tury?',
178
+ answer: 'Tak. Przycisk Poprzednia Tura pozwala nawigować wstecz przez kolejność tur. Jest to przydatne do przejrzenia, co wydarzyło się wcześniej w rundzie, lub do poprawienia błędu.',
179
+ },
180
+ {
181
+ question: 'Czy mogę dodawać lub usuwać uczestników podczas walki?',
182
+ answer: 'Tak. Nowi uczestnicy mogą być dodawani w dowolnym momencie i są automatycznie wstawiani na właściwą pozycję na podstawie ich rzutu inicjatywy. Istniejący uczestnicy mogą być usunięci, jeśli opuszczą starcie.',
183
+ },
184
+ {
185
+ question: 'Czy to działa z dowolnym systemem RPG?',
186
+ answer: 'Tak. Tracker działa z każdą erpegią stołową, która używa kolejności tur opartej na inicjatywie. Wprowadź dowolne wartości inicjatywy, których używa twój system - czy to rzut k20 plus Zr dla D&D, czy inny mechanik dla innych gier.',
187
+ },
188
+ ],
189
+ bibliography,
190
+ howTo: [
191
+ {
192
+ name: 'Dodaj Uczestników Przed Walką',
193
+ text: 'Wprowadź nazwę każdej postaci, jej rzut inicjatywy i modyfikator. Oznacz jako Gracz lub NPC. Dodaj tylu uczestników, ilu wymaga twoje starcie.',
194
+ },
195
+ {
196
+ name: 'Rozpocznij Walkę, aby Zablokować Kolejność',
197
+ text: 'Kliknij Rozpocznij Walkę, aby posortować wszystkich według inicjatywy i rozpocząć śledzenie tur. Pierwszy uczestnik w kolejności jest podświetlony.',
198
+ },
199
+ {
200
+ name: 'Nawiguj Turami i Śledź Stany',
201
+ text: 'Użyj Następna Tura i Poprzednia Tura, aby poruszać się po kolejności. Stosuj efekty statusów, klikając tagi statusów, aby śledzić stany podczas walki.',
202
+ },
203
+ {
204
+ name: 'Zakończ Walkę po Skończeniu',
205
+ text: 'Kliknij Zakończ Walkę, aby zatrzymać śledzenie tur. Czyści to aktywny stan i resetuje licznik rund, zachowując listę uczestników na następne starcie.',
206
+ },
207
+ ],
208
+ schemas: [
209
+ {
210
+ '@context': 'https://schema.org',
211
+ '@type': 'SoftwareApplication',
212
+ 'name': 'Śledzenie Inicjatywy RPG',
213
+ 'operatingSystem': 'Wszystkie',
214
+ 'applicationCategory': 'UtilitiesApplication',
215
+ 'browserRequirements': 'Wymaga HTML5. Wymaga JavaScript.',
216
+ },
217
+ {
218
+ '@context': 'https://schema.org',
219
+ '@type': 'FAQPage',
220
+ 'mainEntity': [
221
+ {
222
+ '@type': 'Question',
223
+ 'name': 'Jak dodać uczestników?',
224
+ 'acceptedAnswer': {
225
+ '@type': 'Answer',
226
+ 'text': 'Wprowadź nazwę postaci, rzut inicjatywy i modyfikator inicjatywy, a następnie kliknij Dodaj. Gracze i NPC mogą być przełączani, aby pomóc odróżnić ich na liście.',
227
+ },
228
+ },
229
+ {
230
+ '@type': 'Question',
231
+ 'name': 'Co się stanie, gdy kliknę Rozpocznij Walkę?',
232
+ 'acceptedAnswer': {
233
+ '@type': 'Answer',
234
+ 'text': 'Wszyscy uczestnicy są sortowani według inicjatywy (najwyższa pierwsza). Kolejność tur zaczyna się od pierwszego uczestnika, a licznik rund startuje od 1.',
235
+ },
236
+ },
237
+ ],
238
+ },
239
+ {
240
+ '@context': 'https://schema.org',
241
+ '@type': 'HowTo',
242
+ 'name': 'Jak Korzystać z Trackera Inicjatywy',
243
+ 'step': [
244
+ {
245
+ '@type': 'HowToStep',
246
+ 'name': 'Dodaj Uczestników',
247
+ 'text': 'Wprowadź szczegóły postaci, w tym nazwę, rzut inicjatywy i modyfikator. Przełącz między typami Gracz i NPC przed dodaniem.',
248
+ },
249
+ {
250
+ '@type': 'HowToStep',
251
+ 'name': 'Rozpocznij Walkę',
252
+ 'text': 'Kliknij Rozpocznij Walkę, aby posortować wszystkich uczestników według inicjatywy i rozpocząć śledzenie kolejności tur.',
253
+ },
254
+ {
255
+ '@type': 'HowToStep',
256
+ 'name': 'Zarządzaj Turami',
257
+ 'text': 'Użyj Następna Tura i Poprzednia Tura, aby nawigować po kolejności tur. Aktywny uczestnik jest podświetlony na zielono.',
258
+ },
259
+ ],
260
+ },
261
+ ],
262
+ };
263
+
264
+