@jjlmoya/utils-tabletop 1.3.0 → 1.4.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 (53) hide show
  1. package/package.json +1 -1
  2. package/src/category/TabletopCategorySEO.astro +2 -7
  3. package/src/category/i18n/en.ts +4 -4
  4. package/src/category/i18n/ru.ts +2 -2
  5. package/src/category/i18n/zh.ts +8 -8
  6. package/src/category/index.ts +2 -1
  7. package/src/entries.ts +4 -1
  8. package/src/pages/[locale]/[slug].astro +7 -6
  9. package/src/tests/locale_completeness.test.ts +1 -1
  10. package/src/tests/no_em_dash.test.ts +47 -0
  11. package/src/tests/seo_length.test.ts +1 -0
  12. package/src/tests/title_quality.test.ts +1 -1
  13. package/src/tests/tool_validation.test.ts +1 -1
  14. package/src/tool/board-game-timer/modules/ColorHelper.ts +2 -2
  15. package/src/tool/board-game-timer/modules/DuelViewManager.ts +4 -4
  16. package/src/tool/board-game-timer/modules/GameRunner.ts +1 -1
  17. package/src/tool/board-game-timer/modules/MultiplayerViewManager.ts +2 -2
  18. package/src/tool/board-game-timer/modules/SetupPanelManager.ts +1 -1
  19. package/src/tool/board-game-timer/modules/TimerEngine.ts +1 -1
  20. package/src/tool/board-game-timer/types.ts +1 -1
  21. package/src/tool/dice-roller-simulator/client.ts +2 -2
  22. package/src/tool/dice-roller-simulator/i18n/ru.ts +8 -8
  23. package/src/tool/dice-roller-simulator/modules/history.ts +1 -1
  24. package/src/tool/first-player-selector/bibliography.astro +16 -0
  25. package/src/tool/first-player-selector/bibliography.ts +12 -0
  26. package/src/tool/first-player-selector/client.ts +197 -0
  27. package/src/tool/first-player-selector/component.astro +77 -0
  28. package/src/tool/first-player-selector/entry.ts +42 -0
  29. package/src/tool/first-player-selector/first-player-selector.css +303 -0
  30. package/src/tool/first-player-selector/i18n/de.ts +226 -0
  31. package/src/tool/first-player-selector/i18n/en.ts +226 -0
  32. package/src/tool/first-player-selector/i18n/es.ts +226 -0
  33. package/src/tool/first-player-selector/i18n/fr.ts +227 -0
  34. package/src/tool/first-player-selector/i18n/id.ts +226 -0
  35. package/src/tool/first-player-selector/i18n/it.ts +227 -0
  36. package/src/tool/first-player-selector/i18n/ja.ts +227 -0
  37. package/src/tool/first-player-selector/i18n/ko.ts +227 -0
  38. package/src/tool/first-player-selector/i18n/nl.ts +226 -0
  39. package/src/tool/first-player-selector/i18n/pl.ts +227 -0
  40. package/src/tool/first-player-selector/i18n/pt.ts +226 -0
  41. package/src/tool/first-player-selector/i18n/ru.ts +227 -0
  42. package/src/tool/first-player-selector/i18n/sv.ts +226 -0
  43. package/src/tool/first-player-selector/i18n/tr.ts +226 -0
  44. package/src/tool/first-player-selector/i18n/zh.ts +227 -0
  45. package/src/tool/first-player-selector/index.ts +9 -0
  46. package/src/tool/first-player-selector/modules/AnimationEffects.ts +256 -0
  47. package/src/tool/first-player-selector/modules/SelectionEngine.ts +249 -0
  48. package/src/tool/first-player-selector/modules/SoundEffects.ts +87 -0
  49. package/src/tool/first-player-selector/modules/TouchTracker.ts +148 -0
  50. package/src/tool/first-player-selector/seo.astro +16 -0
  51. package/src/tool/first-player-selector/types.ts +21 -0
  52. package/src/tools.ts +2 -0
  53. package/src/types.ts +1 -2
@@ -0,0 +1,226 @@
1
+ import { bibliography } from '../bibliography';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { FirstPlayerSelectorUI } from '../entry';
4
+
5
+ const ui: FirstPlayerSelectorUI = {
6
+ title: 'Väljare för Första Spelare',
7
+ instructions: 'Placera fingrarna på skärmen eller klicka för att lägga till markörer',
8
+ tapToSelect: 'Tryck för att välja',
9
+ winner: 'Vinnare utsedd!',
10
+ reset: 'Återställ',
11
+ start: 'Starta val',
12
+ setupTitle: 'Väljarinställningar',
13
+ clearPlayers: 'Rensa alla markörer',
14
+ fingerMode: 'Fingerläge',
15
+ wheelMode: 'Rouletteläge',
16
+ presetsTitle: 'Alternativ',
17
+ soundOn: 'Ljud på',
18
+ soundOff: 'Ljud av',
19
+ playerCountLabel: 'Markörer / Fingrar',
20
+ };
21
+
22
+ const faq = [
23
+ {
24
+ question: 'Hur fungerar fingerläget?',
25
+ answer: 'I fingerläge placerar varje spelare ett finger på mobilskärmen. Verktyget detekterar alla beröringspunkter, visar glödande färgringar runt dem och startar automatiskt en kort nedräkning. När nedräkningen avslutas markeras en spelare som vinnare medan andra tonas ut, åtföljt av en explosion av partiklar.',
26
+ },
27
+ {
28
+ question: 'Kan jag använda detta verktyg på en stationär dator?',
29
+ answer: 'Ja! Om du är på en enhet utan pekskärm, använder verktyget automatiskt rouletteläge som standard. Du kan klicka på duken för att placera färgade markörer som representerar spelare, klicka sedan på knappen Starta val för att snurra väljarhjulet.',
30
+ },
31
+ {
32
+ question: 'Hur många spelare kan delta?',
33
+ answer: 'Verktyget stöder upp till 10 samtidiga spelare. I fingerläge kan upp till 10 fingrar detekteras samtidigt. I rouletteläge kan du placera upp till 10 färgade markörer på duken genom att klicka.',
34
+ },
35
+ {
36
+ question: 'Är urvalet verkligen slumpmässigt?',
37
+ answer: 'Ja. Urvalsalgoritmen använder JavaScripts kryptografiska Math.random() för att säkerställa opartiska resultat. I fingerläge väljs vinnaren enhetligt slumpmässigt bland alla detekterade beröringspunkter. I rouletteläge saktar hjulet realistiskt med hjälp av friktionsfysik, och den slutliga vinkeln bestämmer vinnaren matematiskt.',
38
+ },
39
+ {
40
+ question: 'Hur tar jag bort en spelarmarkör i rouletteläge?',
41
+ answer: 'Klicka helt enkelt på en befintlig markör för att ta bort den. Verktyget detekterar klick inom 30 pixlar från en placerad markör och tar bort den, så att du kan justera spelaruppställningen innan du startar snurrningen.',
42
+ },
43
+ {
44
+ question: 'Samlar eller överför detta verktyg någon data?',
45
+ answer: 'Inte alls. Allt körs lokalt i din webbläsare. Inga fingerdata, beröringspositioner eller urvalsresultat skickas någonsin till någon server. Din spelkväll förblir helt privat.',
46
+ },
47
+ {
48
+ question: 'Fungerar det på projektorer eller externa skärmar?',
49
+ answer: 'Ja. Rouletteläge fungerar utmärkt på stora skärmar och projektorer för sällskapsspel. De högkontrastrika neonvisualiseringarna och den stora nedräkningstimern är designade för att synas från andra sidan rummet.',
50
+ },
51
+ {
52
+ question: 'Varför återställs nedräkningen när någon lyfter sitt finger?',
53
+ answer: 'Detta är avsiktligt. I fingerläge fortsätter nedräkningen endast medan alla spelare håller fingrarna stadigt på skärmen. Om någon lyfter eller flyttar sig återställs timern för att säkerställa att alla är engagerade innan urvalet körs. Detta förhindrar oavsiktliga utlösningar.',
54
+ },
55
+ {
56
+ question: 'Kan jag ändra ljudet eller stänga av det?',
57
+ answer: 'Ja. Klicka på högtalarikonen i det övre högra hörnet för att växla ljud på eller av. Verktyget spelar ett tickljud under nedräkningen och en fanfar när en vinnare utses.',
58
+ },
59
+ {
60
+ question: 'Vad händer om det bara finns en spelare?',
61
+ answer: 'I båda lägena krävs minst två spelare för att göra ett urval. I fingerläge startar nedräkningen inte förrän minst två fingrar detekteras. I rouletteläge förblir knappen Starta val inaktiverad tills du placerar minst två markörer.',
62
+ },
63
+ ];
64
+
65
+ const howTo = [
66
+ {
67
+ name: 'Placera fingrar eller markörer',
68
+ text: 'I fingerläge placerar alla spelare ett finger på skärmen. I rouletteläge klickar du var som helst på duken för att placera spelarmarkörer.',
69
+ },
70
+ {
71
+ name: 'Utlös urval',
72
+ text: 'I fingerläge startar urvalet automatiskt efter att ha hållit i några sekunder. I rouletteläge klickar du på knappen Starta val för att snurra.',
73
+ },
74
+ {
75
+ name: 'Se vinnaren',
76
+ text: 'Vinnaren markeras med en pulseffekt, partikelexplosion och ljudfanfar. Klicka på Återställ eller lyft alla fingrar för att försöka igen.',
77
+ },
78
+ ];
79
+
80
+ export const content: ToolLocaleContent<FirstPlayerSelectorUI> = {
81
+ slug: 'forsta-spelare-valjare',
82
+ title: 'Väljare för Första Spelare: Finger väljare & Tur Roulett',
83
+ description: 'Välj vem som ska börja i dina brädspel med denna spektakulära finger väljare och interaktiva tur roulett.',
84
+ ui,
85
+ seo: [
86
+ { type: 'title', text: 'Rättvisa och Strategi: Att lösa förstaspelarfördelen i brädspel', level: 2 },
87
+ { type: 'paragraph', html: 'Att bestämma startspelaren i sällskapsspel kan kraftigt påverka spelets dynamik. Inom spelteori avser Förstaspelarfördelen (FPA) den statistiska fördel som spelaren som tar första turen har över sina motståndare. I strategiska schackpartier, krigsspel och moderna Eurospel som Agricola eller Puerto Rico gör första handlingen att en spelare kan säkra kritiska resurser eller placera pjäser innan motståndarna hinner reagera. För att minska FPA och garantera en balanserad spelplan är en pålitlig, opartisk urvalsmetod nödvändig. Vår digitala startspelarväljare garanterar absolut slumpmässighet, så att spelgrupper kan fastställa turordning omedelbart och komma rakt till spel.' },
88
+ {
89
+ type: 'stats',
90
+ items: [
91
+ { value: '100% Slump', label: 'Opartiskt urval' },
92
+ { value: '2 Sekunder', label: 'Nedräkningsutlösare' },
93
+ { value: 'Touch', label: 'Mobilkompatibel' },
94
+ ],
95
+ columns: 3,
96
+ },
97
+ { type: 'title', text: 'Spelregler vs. Digitala slumpgeneratorer: Beröringsrevolutionen', level: 2 },
98
+ { type: 'paragraph', html: 'Många moderna brädspelsregelböcker innehåller tematiska startspelarregler, såsom "den yngsta spelaren börjar", "den senaste personen som besökte en gård börjar" eller "den längsta spelaren börjar". Även om dessa är underhållande under första omgångarna blir de snabbt repetitiva, statiska och orättvisa för regelbundna spelgrupper. Fysiska slumpgeneratorer som tärningskast eller kortdragning ökar förberedelsetiden och är benägna att påverkas av mänsklig bias eller dålig blandning. Finger-väljarmekaniken löser detta genom att erbjuda en snabb, tryck-och-håll slumpgenerator som väljer en startspelare på några sekunder utan extra kort eller tärningar.' },
99
+ {
100
+ type: 'table',
101
+ headers: ['Urvalsmetod', 'Hastighet och förberedelse', 'Slumpkvalitet', 'Bäst lämpad för'],
102
+ rows: [
103
+ ['Godtyckliga regelboksregler', 'Omedelbart, men repetitivt', 'Ingen slump efter första omgången', 'Familjespel och partyspel'],
104
+ ['Tärningskast', 'Kräver att hitta och kasta tärningar, risk för lika', 'Hög slump, men tråkigt för stora grupper', 'Krigsspel och RPG'],
105
+ ['Kortdragning', 'Kräver blandning och utdelning', 'Bra slump, men kräver fysiska kort', 'Kortbyggarspel och kortspel'],
106
+ ['Tryckfinger-väljare', 'Omedelbar, ingen förberedelse, visuella animationer', 'Absolut algoritmisk slump', 'Alla sällskaps- och brädspel'],
107
+ ],
108
+ },
109
+ {
110
+ type: 'tip',
111
+ title: 'Optimera din Touch väljarinställning',
112
+ html: 'För bästa upplevelse i fingerläge, placera din surfplatta eller smartphone plant i mitten av bordet. Låt alla spelare placera ett finger tydligt på duken. Nedräkningen återställs om en spelare lyfter eller flyttar sitt finger, vilket förhindrar oavsiktliga utlösningar och säkerställer absolut konsensus innan väljaren körs.',
113
+ },
114
+ {
115
+ type: 'title',
116
+ text: 'Välj ditt verktyg: Tryckfinger väljare vs. Snurrroulett',
117
+ level: 3,
118
+ },
119
+ {
120
+ type: 'paragraph',
121
+ html: 'Beroende på din hårdvaruuppsättning och miljö kan du växla mellan två distinkta layoutlägen utformade för att maximera skärmyta och tillgänglighet:' },
122
+ {
123
+ type: 'proscons',
124
+ title: 'Jämförelse av urvalslägen',
125
+ items: [
126
+ {
127
+ pro: 'Fingerläge erbjuder en otroligt snabb och taktil upplevelse, som tillåter upp till 10 spelare att placera fingrar samtidigt.',
128
+ con: 'Kräver en pekkänslig skärm som en smartphone eller surfplatta.',
129
+ },
130
+ {
131
+ pro: 'Rouletteläge fungerar på alla bärbara datorer, stationära datorer eller projektorskärmar, vilket gör det idealiskt för virtuella sessioner och distansspelkvällar.',
132
+ con: 'Kräver klick för att manuellt placera markörer innan snurrningen startas.',
133
+ },
134
+ ],
135
+ },
136
+ {
137
+ type: 'title',
138
+ text: 'Visuell optimering: Touch vävar vs. Bromsande hjul',
139
+ level: 3,
140
+ },
141
+ {
142
+ type: 'comparative',
143
+ items: [
144
+ {
145
+ title: 'Touch väljare',
146
+ description: 'Spårar flera distinkta beröringspunkter på skärmen. Ritar neonförbindelsevävar och krympande nedräkningsringar runt varje finger, kulminerande i en festexplosion.',
147
+ icon: 'mdi:gesture-double-tap',
148
+ highlight: true,
149
+ points: [
150
+ 'Simultan beröringsspårning',
151
+ 'Taktila håll-och-släpp-kontroller',
152
+ 'Spektakulära partikelexplosioner',
153
+ ],
154
+ },
155
+ {
156
+ title: 'Snurrroulett hjul',
157
+ description: 'Placerar färgade spelarmarkörer runt en matematisk tyngdpunkt. Snurrar ett färgat sektorhjul som saktar ner naturligt med simulerad friktion innan vinnaren utses.',
158
+ icon: 'mdi:compass-outline',
159
+ highlight: false,
160
+ points: [
161
+ 'Tyngdpunktsbaserad justering',
162
+ 'Friktionsbaserad inbromsningsfysik',
163
+ 'Universellt stöd för datormus',
164
+ ],
165
+ },
166
+ ],
167
+ columns: 2,
168
+ },
169
+ {
170
+ type: 'glossary',
171
+ items: [
172
+ {
173
+ term: 'Förstaspelarfördel (FPA)',
174
+ definition: 'En turordningsbias i brädspel där startspelaren får en statistiskt signifikant fördel i aktionsval eller resurskontroll.',
175
+ },
176
+ {
177
+ term: 'Beröringsurvalsprotokoll',
178
+ definition: 'En tryck-och-håll-interaktion där alla deltagare placerar sina fingrar på en pekskärm tills en enda vinnare slumpmässigt markeras.',
179
+ },
180
+ {
181
+ term: 'Inbromsningsfysik',
182
+ definition: 'En matematisk animationsrutin som applicerar friktionsmultiplikatorer på ett snurrande hjul för att simulera naturlig tröghet och bygga upp förväntan.',
183
+ },
184
+ {
185
+ term: 'Tyngdpunktsberäkning',
186
+ definition: 'Den beräknade mittpunkten av en spridd uppsättning koordinatmarkörer, som används som rotationspunkt för roulett-hjulets grafik.',
187
+ },
188
+ ],
189
+ },
190
+ ],
191
+ faq: faq,
192
+ bibliography,
193
+ howTo: howTo,
194
+ schemas: [
195
+ {
196
+ '@context': 'https://schema.org',
197
+ '@type': 'FAQPage',
198
+ 'mainEntity': faq.map((f) => ({
199
+ '@type': 'Question',
200
+ 'name': f.question,
201
+ 'acceptedAnswer': {
202
+ '@type': 'Answer',
203
+ 'text': f.answer,
204
+ },
205
+ })),
206
+ },
207
+ {
208
+ '@context': 'https://schema.org',
209
+ '@type': 'SoftwareApplication',
210
+ 'name': 'Väljare för Första Spelare och Finger-väljare',
211
+ 'operatingSystem': 'Alla',
212
+ 'applicationCategory': 'UtilitiesApplication',
213
+ 'browserRequirements': 'Kräver HTML5. Kräver JavaScript.',
214
+ },
215
+ {
216
+ '@context': 'https://schema.org',
217
+ '@type': 'HowTo',
218
+ 'name': 'How to Use the First Player Selector',
219
+ 'step': howTo.map((h) => ({
220
+ '@type': 'HowToStep',
221
+ 'name': h.name,
222
+ 'text': h.text,
223
+ })),
224
+ },
225
+ ],
226
+ };
@@ -0,0 +1,226 @@
1
+ import { bibliography } from '../bibliography';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { FirstPlayerSelectorUI } from '../entry';
4
+
5
+ const ui: FirstPlayerSelectorUI = {
6
+ title: 'İlk Oyuncu Seçici',
7
+ instructions: 'Parmaklarınızı ekrana koyun veya iğne eklemek için tıklayın',
8
+ tapToSelect: 'Seçmek için Dokun',
9
+ winner: 'Kazanan seçildi!',
10
+ reset: 'Sıfırla',
11
+ start: 'Seçimi Başlat',
12
+ setupTitle: 'Seçici Ayarları',
13
+ clearPlayers: 'Tüm İğneleri Temizle',
14
+ fingerMode: 'Parmak Modu',
15
+ wheelMode: 'Rulet Modu',
16
+ presetsTitle: 'Seçenekler',
17
+ soundOn: 'Ses Açık',
18
+ soundOff: 'Ses Kapalı',
19
+ playerCountLabel: 'İğne / Parmak',
20
+ };
21
+
22
+ const faq = [
23
+ {
24
+ question: 'Parmak Modu nasıl çalışır?',
25
+ answer: 'Parmak Modunda, her oyuncu mobil ekrana bir parmak koyar. Araç tüm dokunma noktalarını algılar, etraflarında parlayan renkli halkalar görüntüler ve otomatik olarak kısa bir geri sayım başlatır. Geri sayım bittiğinde, bir oyuncu kazanan olarak vurgulanırken diğerleri solar ve bir parçacık patlaması eşlik eder.',
26
+ },
27
+ {
28
+ question: 'Bu aracı masaüstü bilgisayarda kullanabilir miyim?',
29
+ answer: 'Evet! Dokunmatik olmayan bir cihazdaysanız, araç otomatik olarak Rulet Moduna geçer. Oyuncuları temsil eden renkli iğneler yerleştirmek için tuvale tıklayabilir, ardından seçici çarkı döndürmek için Seçimi Başlat düğmesine tıklayabilirsiniz.',
30
+ },
31
+ {
32
+ question: 'Kaç oyuncu katılabilir?',
33
+ answer: 'Araç, aynı anda en fazla 10 oyuncuyu destekler. Parmak Modunda, aynı anda en fazla 10 parmak algılanabilir. Rulet Modunda, tıklayarak tuval üzerine en fazla 10 renkli iğne yerleştirebilirsiniz.',
34
+ },
35
+ {
36
+ question: 'Seçim gerçekten rastgele mi?',
37
+ answer: 'Evet. Seçim algoritması, tarafsız sonuçlar sağlamak için JavaScript\'in kriptografik düzeydeki Math.random() işlevini kullanır. Parmak Modunda, kazanan algılanan tüm dokunma noktaları arasından eşit olasılıkla rastgele seçilir. Rulet Modunda, çark sürtünme fiziği kullanarak gerçekçi bir şekilde yavaşlar ve nihai açı kazananı matematiksel olarak belirler.',
38
+ },
39
+ {
40
+ question: 'Rulet Modunda bir oyuncu iğnesini nasıl kaldırırım?',
41
+ answer: 'Mevcut bir iğneye tıklamanız yeterlidir. Araç, yerleştirilmiş herhangi bir iğnenin 30 piksel yakınındaki tıklamaları algılar ve siler, böylece döndürmeyi tetiklemeden önce oyuncu sıralamasını ayarlayabilirsiniz.',
42
+ },
43
+ {
44
+ question: 'Bu araç herhangi bir veri toplar veya iletir mi?',
45
+ answer: 'Hiçbir şekilde. Her şey tarayıcınızda yerel olarak çalışır. Hiçbir parmak verisi, dokunma konumu veya seçim sonucu herhangi bir sunucuya gönderilmez. Oyun geceniz tamamen özel kalır.',
46
+ },
47
+ {
48
+ question: 'Projektörlerde veya harici ekranlarda çalışır mı?',
49
+ answer: 'Evet. Rulet Modu, masaüstü oturumları için büyük ekranlarda ve projektörlerde harika çalışır. Yüksek kontrastlı neon görseller ve büyük geri sayım zamanlayıcısı, odanın diğer tarafından görülebilecek şekilde tasarlanmıştır.',
50
+ },
51
+ {
52
+ question: 'Biri parmağını kaldırdığında geri sayım neden sıfırlanıyor?',
53
+ answer: 'Bu kasıtlıdır. Parmak Modunda, geri sayım yalnızca tüm oyuncular parmaklarını ekranda sabit tutarken devam eder. Birisi kaldırır veya kaydırırsa, seçim çalışmadan önce herkesin kararlı olduğundan emin olmak için zamanlayıcı sıfırlanır. Bu, kazara tetiklenmeleri önler.',
54
+ },
55
+ {
56
+ question: 'Sesi değiştirebilir veya kapatabilir miyim?',
57
+ answer: 'Evet. Sağ üst köşedeki hoparlör simgesine tıklayarak sesi açıp kapatabilirsiniz. Araç, geri sayım sırasında bir tik sesi ve bir kazanan seçildiğinde bir fanfar çalar.',
58
+ },
59
+ {
60
+ question: 'Sadece bir oyuncu varsa ne olur?',
61
+ answer: 'Her iki modda da seçim yapmak için en az iki oyuncu gereklidir. Parmak Modunda, en az iki parmak algılanana kadar geri sayım başlamaz. Rulet Modunda, en az iki iğne yerleştirene kadar Seçimi Başlat düğmesi devre dışı kalır.',
62
+ },
63
+ ];
64
+
65
+ const howTo = [
66
+ {
67
+ name: 'Parmakları veya İğneleri Yerleştirin',
68
+ text: 'Parmak Modunda, tüm oyuncular ekrana bir parmak koyar. Rulet Modunda, oyuncu iğneleri yerleştirmek için tuvalin herhangi bir yerine tıklayın.',
69
+ },
70
+ {
71
+ name: 'Seçimi Tetikleyin',
72
+ text: 'Parmak Modunda, seçim birkaç saniye bekledikten sonra otomatik olarak başlar. Rulet Modunda, döndürmek için Seçimi Başlat düğmesine tıklayın.',
73
+ },
74
+ {
75
+ name: 'Kazananı Görün',
76
+ text: 'Kazanan, nabız efekti, parçacık patlaması ve ses fanfarı ile vurgulanır. Sıfırla düğmesine tıklayın veya tekrar denemek için tüm parmakları kaldırın.',
77
+ },
78
+ ];
79
+
80
+ export const content: ToolLocaleContent<FirstPlayerSelectorUI> = {
81
+ slug: 'ilk-oyuncu-secici',
82
+ title: 'İlk Oyuncu Seçici: Parmak Seçici & Sıra Ruleti',
83
+ description: 'Bu muhteşem parmak seçici ve interaktif sıra ruleti ile masa oyunlarınızda kimin ilk başlayacağını seçin.',
84
+ ui,
85
+ seo: [
86
+ { type: 'title', text: 'Adalet ve Strateji: Masa Oyunlarında İlk Oyuncu Avantajını Çözmek', level: 2 },
87
+ { type: 'paragraph', html: 'Masaüstü oturumlarında başlangıç oyuncusunu belirlemek oyun dinamiklerini büyük ölçüde etkileyebilir. Oyun teorisinde, İlk Oyuncu Avantajı (FPA), ilk sırayı alan oyuncunun rakiplerine karşı sahip olduğu istatistiksel üstünlüğü ifade eder. Stratejik satranç maçlarında, savaş oyunlarında ve Agricola veya Puerto Rico gibi modern Euro oyunlarında, ilk hamleyi yapmak bir oyuncunun rakipleri tepki veremeden kritik kaynakları güvence altına almasını veya taşları yerleştirmesini sağlar. FPA\'yı azaltmak ve dengeli bir oyun alanı garanti etmek için güvenilir, tarafsız bir seçim yöntemi esastır. Dijital başlangıç oyuncusu seçicimiz mutlak rastgelelik garantisi vererek oyun gruplarının anında sıra düzeni oluşturmasına ve doğrudan oyuna başlamasına olanak tanır.' },
88
+ {
89
+ type: 'stats',
90
+ items: [
91
+ { value: '%100 Rastgele', label: 'Tarafsız Seçim' },
92
+ { value: '2 Saniye', label: 'Geri Sayım Tetikleyicisi' },
93
+ { value: 'Çoklu Dokunma', label: 'Mobil Uyumlu' },
94
+ ],
95
+ columns: 3,
96
+ },
97
+ { type: 'title', text: 'Masa Oyunu Kuralları vs. Dijital Rastgeleleştiriciler: Dokunma Devrimi', level: 2 },
98
+ { type: 'paragraph', html: 'Birçok modern masa oyunu kural kitabı, "en genç oyuncu başlasın", "bir çiftliği en son ziyaret eden kişi başlasın" veya "en uzun oyuncu başlasın" gibi tematik başlangıç oyuncusu kuralları içerir. İlk oyunlarda eğlenceli olsa da, bu kuraller düzenli oyun grupları için hızla tekrarlayıcı, statik ve adaletsiz hale gelir. Zar atma veya kart çekme gibi fiziksel rastgeleleştiriciler hazırlık süresini artırır ve insan yanlılığına veya kötü karıştırmaya yatkındır. Parmak seçici mekaniği, ekstra kart veya zar gerektirmeden saniyeler içinde bir başlangıç oyuncusu seçen hızlı, dokun-ve-tut rastgeleleştirici sunarak bu sorunu çözer.' },
99
+ {
100
+ type: 'table',
101
+ headers: ['Seçim Yöntemi', 'Hız ve Kurulum', 'Rastgelelik Kalitesi', 'En Uygun Olduğu Yer'],
102
+ rows: [
103
+ ['Keyfi Kural Kitabı Kuralları', 'Anlık, ancak tekrarlayıcı', 'İlk oyundan sonra sıfır rastgelelik', 'Aile oyunları ve parti oyunları'],
104
+ ['Zar Atışları', 'Zar bulma ve atma gerektirir, beraberliğe yatkın', 'Yüksek rastgelelik, ancak büyük gruplar için sıkıcı', 'Savaş oyunları ve RPG\'ler'],
105
+ ['Kart Çekme', 'Karıştırma ve dağıtma gerektirir', 'İyi rastgelelik, ancak fiziksel kart gerektirir', 'Deste kurucular ve kart oyunları'],
106
+ ['Dokunmatik Parmak Seçici', 'Anlık, sıfır kurulum, görsel animasyonlar', 'Mutlak algoritmik rastgelelik', 'Tüm masa ve tahta oyunları'],
107
+ ],
108
+ },
109
+ {
110
+ type: 'tip',
111
+ title: 'Çoklu Dokunma Seçicinizi Optimize Etme',
112
+ html: 'Parmak Modunda en iyi deneyim için tabletinizi veya akıllı telefonunuzu masanın ortasına düz bir şekilde yerleştirin. Tüm oyuncuların tuval üzerine net bir şekilde tek bir parmak koymasını sağlayın. Bir oyuncu parmağını kaldırır veya kaydırırsa geri sayım sıfırlanır, bu da kazara tetiklenmeleri önler ve seçici çalışmadan önce mutlak fikir birliği sağlar.',
113
+ },
114
+ {
115
+ type: 'title',
116
+ text: 'Aracınızı Seçme: Dokunmatik Parmak Seçici vs. Döndürme Ruleti',
117
+ level: 3,
118
+ },
119
+ {
120
+ type: 'paragraph',
121
+ html: 'Donanım kurulumunuza ve ortamınıza bağlı olarak, ekran alanını ve erişilebilirliği en üst düzeye çıkarmak için tasarlanmış iki farklı düzen modu arasında geçiş yapabilirsiniz:' },
122
+ {
123
+ type: 'proscons',
124
+ title: 'Seçim Modlarını Karşılaştırma',
125
+ items: [
126
+ {
127
+ pro: 'Parmak Modu, 10 oyuncuya kadar aynı anda parmak yerleştirmeye izin veren inanılmaz derecede hızlı ve dokunsal bir deneyim sunar.',
128
+ con: 'Akıllı telefon veya tablet gibi dokunmatik ekran gerektirir.',
129
+ },
130
+ {
131
+ pro: 'Rulet Modu her dizüstü bilgisayar, masaüstü veya projektör ekranında çalışarak sanal oturumlar ve uzaktan oyun geceleri için idealdir.',
132
+ con: 'Döndürmeyi tetiklemeden önce manuel olarak iğne yerleştirmek için tıklama gerektirir.',
133
+ },
134
+ ],
135
+ },
136
+ {
137
+ type: 'title',
138
+ text: 'Görsel Optimizasyon: Çoklu Dokunma Ağları vs. Yavaşlayan Çarklar',
139
+ level: 3,
140
+ },
141
+ {
142
+ type: 'comparative',
143
+ items: [
144
+ {
145
+ title: 'Çoklu Dokunma Seçici',
146
+ description: 'Ekrandaki birden çok farklı dokunma noktasını izler. Her parmağın etrafında neon bağlantı ağları ve küçülen geri sayım halkaları çizer ve bir kutlama patlamasıyla doruğa ulaşır.',
147
+ icon: 'mdi:gesture-double-tap',
148
+ highlight: true,
149
+ points: [
150
+ 'Eşzamanlı dokunma takibi',
151
+ 'Dokunsal tut-ve-bırak kontrolleri',
152
+ 'Muhteşem parçacık patlamaları',
153
+ ],
154
+ },
155
+ {
156
+ title: 'Döndürme Rulet Çarkı',
157
+ description: 'Matematiksel bir merkez etrafında renkli oyuncu iğneleri yerleştirir. Kazananı belirlemeden önce simüle edilmiş sürtünme kullanarak doğal olarak yavaşlayan renkli bir sektör çarkı döndürür.',
158
+ icon: 'mdi:compass-outline',
159
+ highlight: false,
160
+ points: [
161
+ 'Merkez tabanlı hizalama',
162
+ 'Sürtünme tabanlı yavaşlama fiziği',
163
+ 'Evrensel masaüstü fare desteği',
164
+ ],
165
+ },
166
+ ],
167
+ columns: 2,
168
+ },
169
+ {
170
+ type: 'glossary',
171
+ items: [
172
+ {
173
+ term: 'İlk Oyuncu Avantajı (FPA)',
174
+ definition: 'Başlangıç oyuncusunun eylem seçimi veya kaynak kontrolünde istatistiksel olarak anlamlı bir avantaj elde ettiği tahta oyunlarındaki sıra düzeni yanlılığı.',
175
+ },
176
+ {
177
+ term: 'Dokunma Seçim Protokolü',
178
+ definition: 'Tüm katılımcıların, tek bir kazanan rastgele vurgulanana kadar parmaklarını dokunmatik ekranda tuttukları bir dokun-ve-tut etkileşimi.',
179
+ },
180
+ {
181
+ term: 'Yavaşlama Fiziği',
182
+ definition: 'Doğal ataleti simüle etmek ve heyecanı artırmak için dönen bir çarka sürtünme çarpanları uygulayan matematiksel bir animasyon rutini.',
183
+ },
184
+ {
185
+ term: 'Merkez Hesaplama',
186
+ definition: 'Rulet çarkı grafikleri için dönüş ekseni olarak kullanılan, dağınık bir koordinat iğne kümesinin hesaplanmış merkez noktası.',
187
+ },
188
+ ],
189
+ },
190
+ ],
191
+ faq: faq,
192
+ bibliography,
193
+ howTo: howTo,
194
+ schemas: [
195
+ {
196
+ '@context': 'https://schema.org',
197
+ '@type': 'FAQPage',
198
+ 'mainEntity': faq.map((f) => ({
199
+ '@type': 'Question',
200
+ 'name': f.question,
201
+ 'acceptedAnswer': {
202
+ '@type': 'Answer',
203
+ 'text': f.answer,
204
+ },
205
+ })),
206
+ },
207
+ {
208
+ '@context': 'https://schema.org',
209
+ '@type': 'SoftwareApplication',
210
+ 'name': 'İlk Oyuncu Seçici ve Parmak Seçici',
211
+ 'operatingSystem': 'Tümü',
212
+ 'applicationCategory': 'UtilitiesApplication',
213
+ 'browserRequirements': 'HTML5 gerektirir. JavaScript gerektirir.',
214
+ },
215
+ {
216
+ '@context': 'https://schema.org',
217
+ '@type': 'HowTo',
218
+ 'name': 'How to Use the First Player Selector',
219
+ 'step': howTo.map((h) => ({
220
+ '@type': 'HowToStep',
221
+ 'name': h.name,
222
+ 'text': h.text,
223
+ })),
224
+ },
225
+ ],
226
+ };