@jjlmoya/utils-tabletop 1.25.0 → 1.26.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/category/index.ts +2 -0
- package/src/entries.ts +2 -0
- package/src/tests/locale_completeness.test.ts +1 -1
- package/src/tests/tool_validation.test.ts +1 -1
- package/src/tool/encounter-difficulty-calculator/bibliography.astro +6 -0
- package/src/tool/encounter-difficulty-calculator/bibliography.ts +12 -0
- package/src/tool/encounter-difficulty-calculator/component.astro +53 -0
- package/src/tool/encounter-difficulty-calculator/controller.ts +133 -0
- package/src/tool/encounter-difficulty-calculator/dnd-5e-encounter-difficulty-calculator.css +389 -0
- package/src/tool/encounter-difficulty-calculator/dom-views.ts +54 -0
- package/src/tool/encounter-difficulty-calculator/entry.ts +27 -0
- package/src/tool/encounter-difficulty-calculator/evaluator.ts +12 -0
- package/src/tool/encounter-difficulty-calculator/i18n/de.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/i18n/en.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/i18n/es.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/i18n/fr.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/i18n/id.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/i18n/it.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/i18n/ja.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/i18n/ko.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/i18n/nl.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/i18n/pl.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/i18n/pt.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/i18n/ru.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/i18n/sv.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/i18n/tr.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/i18n/zh.ts +155 -0
- package/src/tool/encounter-difficulty-calculator/index.ts +11 -0
- package/src/tool/encounter-difficulty-calculator/logic.test.ts +37 -0
- package/src/tool/encounter-difficulty-calculator/logic.ts +174 -0
- package/src/tool/encounter-difficulty-calculator/seo.astro +16 -0
- package/src/tool/encounter-difficulty-calculator/storage.ts +26 -0
- package/src/tool/encounter-difficulty-calculator/ui.ts +45 -0
- package/src/tools.ts +2 -0
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { EncounterDifficultyLocaleContent, EncounterDifficultyUI } from '../entry';
|
|
4
|
+
|
|
5
|
+
const ui: EncounterDifficultyUI = {
|
|
6
|
+
intro: '파티와 위협을 설정하세요. 계산기가 D&D 5e 2014 임계값을 기준으로 조우 난이도를 측정합니다.',
|
|
7
|
+
partySection: '파티 설정',
|
|
8
|
+
partyLevel: '캐릭터 레벨',
|
|
9
|
+
partyLevelHint: '비슷한 레벨의 파티인 경우 평균 레벨을 사용하세요.',
|
|
10
|
+
partySize: '캐릭터 수',
|
|
11
|
+
partySizeHint: '규칙에 따라 소규모 또는 대규모 파티의 몬스터 배율이 조정됩니다.',
|
|
12
|
+
threatSection: '위협 설정',
|
|
13
|
+
monsterCr: '몬스터 도전 자격 (CR)',
|
|
14
|
+
monsterCrHint: '동일한 몬스터의 CR을 선택하세요. 혼합 그룹은 별도 계산이 필요합니다.',
|
|
15
|
+
moreCr: '높은 CR 표시',
|
|
16
|
+
lessCr: 'CR 표시 줄이기',
|
|
17
|
+
monsterCount: '몬스터 수',
|
|
18
|
+
monsterCountHint: '개체 수가 많으면 기본 XP가 낮아도 행동 경제상의 압박이 커집니다.',
|
|
19
|
+
presets: '시나리오 예시로 시작',
|
|
20
|
+
presetClassic: '클래식 순찰대',
|
|
21
|
+
presetBoss: '단독 보스',
|
|
22
|
+
presetSwarm: '하급 몬스터 무리',
|
|
23
|
+
resultSection: '조우 압박도',
|
|
24
|
+
belowEasyHint: '다음 도전 과제를 위해 자원을 아낄 수 있는 가벼운 전투입니다.',
|
|
25
|
+
easyHint: '파티에 대한 압박이 적고 무난하게 해결 가능한 전투입니다.',
|
|
26
|
+
mediumHint: '체력이나 주요 자원 소모가 예상되는 의미 있는 시험입니다.',
|
|
27
|
+
hardHint: '전술과 자원 관리가 중요한 위험한 전투입니다.',
|
|
28
|
+
deadlyHint: '치명적 위협 신호. 도주 경로, 지형, 한 턴의 실수가 가져올 비용을 점검하세요.',
|
|
29
|
+
adjustedXp: '조정된 XP',
|
|
30
|
+
baseXp: '기본 XP',
|
|
31
|
+
multiplier: '그룹 배율',
|
|
32
|
+
partyThreshold: '보통 임계값',
|
|
33
|
+
belowEasy: '쉬움 미만',
|
|
34
|
+
easy: '쉬움',
|
|
35
|
+
medium: '보통',
|
|
36
|
+
hard: '어려움',
|
|
37
|
+
deadly: '치명적',
|
|
38
|
+
warning: '주의 사항',
|
|
39
|
+
partyAdjustment: '파티원 수가 3명 미만이거나 6명 이상이므로 몬스터 배율이 조정되었습니다.',
|
|
40
|
+
highCr: '파티 레벨보다 높은 CR을 가진 몬스터는 캐릭터를 한 번에 쓰러뜨릴 수 있습니다.',
|
|
41
|
+
manyMonsters: '11마리 이상의 몬스터는 전투 진행을 복잡하게 만들 수 있습니다.',
|
|
42
|
+
rulesNote: 'D&D 5e 2014 규칙 기준 추정치입니다. 지형이나 전술은 반영되지 않습니다.',
|
|
43
|
+
rulesLinkLabel: '원문 규칙 읽기',
|
|
44
|
+
reset: '샘플로 초기화',
|
|
45
|
+
xpUnit: 'XP',
|
|
46
|
+
sceneLabel: '전투 압박도 시각화',
|
|
47
|
+
partyMarker: '파티',
|
|
48
|
+
threatMarker: '위협',
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
const faq = [
|
|
52
|
+
{
|
|
53
|
+
question: '이 조우 난이도 계산기는 어떤 규칙을 사용하나요?',
|
|
54
|
+
answer: '기본 규칙에 수록된 D&D 5e 2014 공식 공식을 사용하며, 파티 임계값과 몬스터의 조정된 XP를 비교합니다.',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
question: '조정된 XP가 몬스터의 보상 XP와 다른 이유는 무엇인가요?',
|
|
58
|
+
answer: '한 라운드에 여러 개체가 동시에 행동하는 위험성을 반영하기 위해 총 XP에 배율을 곱하기 때문입니다.',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
question: '혼합 몬스터 그룹에도 사용할 수 있나요?',
|
|
62
|
+
answer: '동일한 몬스터 그룹의 빠른 계산에 적합합니다. 혼합 그룹은 각 몬스터의 기본 XP를 합산한 후 배율을 적용하세요.',
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
question: '치명적 결과가 나오면 파티가 전멸한다는 의미인가요?',
|
|
66
|
+
answer: '아니요. 조정된 XP가 치명적 임계값에 도달했음을 의미합니다. 지형, 전술, 주문 사용에 따라 실제 결과는 달라집니다.',
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
question: '파티 인원수에 따라 배율이 변하는 이유는 무엇인가요?',
|
|
70
|
+
answer: '3명 미만의 소규모 파티는 배율을 높이고, 6명 이상의 파티는 배율을 낮추도록 공식 규칙에서 권장하기 때문입니다.',
|
|
71
|
+
},
|
|
72
|
+
];
|
|
73
|
+
|
|
74
|
+
const howTo = [
|
|
75
|
+
{
|
|
76
|
+
name: '파티 레벨 설정',
|
|
77
|
+
text: '파티 캐릭터들의 평균 레벨을 선택합니다.',
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
name: '파티 인원수 설정',
|
|
81
|
+
text: '전투에 참여할 캐릭터 수를 입력합니다.',
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
name: '위협 요소 설정',
|
|
85
|
+
text: '몬스터의 도전 자격 (CR)과 개체 수를 선택합니다.',
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
name: '난이도 확인',
|
|
89
|
+
text: '조정된 XP와 공식 임계값 구간을 비교합니다.',
|
|
90
|
+
},
|
|
91
|
+
];
|
|
92
|
+
|
|
93
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
94
|
+
'@context': 'https://schema.org',
|
|
95
|
+
'@type': 'FAQPage',
|
|
96
|
+
mainEntity: faq.map((item) => ({
|
|
97
|
+
'@type': 'Question',
|
|
98
|
+
name: item.question,
|
|
99
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
100
|
+
})),
|
|
101
|
+
};
|
|
102
|
+
|
|
103
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
104
|
+
'@context': 'https://schema.org',
|
|
105
|
+
'@type': 'SoftwareApplication',
|
|
106
|
+
name: 'D&D 5e 조우 난이도 계산기',
|
|
107
|
+
operatingSystem: 'All',
|
|
108
|
+
applicationCategory: 'GameApplication',
|
|
109
|
+
description: '레벨, 인원수, 몬스터 CR, 개체 수, 조정된 XP 및 공식 임계값을 기준으로 D&D 5e 2014 조우 난이도를 계산합니다.',
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
const howToSchema: WithContext<HowTo> = {
|
|
113
|
+
'@context': 'https://schema.org',
|
|
114
|
+
'@type': 'HowTo',
|
|
115
|
+
name: 'D&D 5e 조우 난이도 계산 방법',
|
|
116
|
+
step: howTo.map((item) => ({
|
|
117
|
+
'@type': 'HowToStep',
|
|
118
|
+
name: item.name,
|
|
119
|
+
text: item.text,
|
|
120
|
+
})),
|
|
121
|
+
};
|
|
122
|
+
|
|
123
|
+
export const content: EncounterDifficultyLocaleContent = {
|
|
124
|
+
slug: 'dnd-5e-encounter-difficulty-calculator',
|
|
125
|
+
title: 'D&D 5e 조우 난이도 계산기',
|
|
126
|
+
description: '파티 레벨, 인원수, 몬스터 CR, 조정된 XP 및 공식 임계값을 이용하여 D&D 5e 2014 전투 압박도를 추정합니다.',
|
|
127
|
+
ui,
|
|
128
|
+
seo: [
|
|
129
|
+
{ type: 'title', text: '우선권 굴림 전에 전투 난이도를 평가하세요', level: 2 },
|
|
130
|
+
{ type: 'paragraph', html: 'D&D 전투는 몬스터 수치 이상의 의미를 갖습니다. 이 계산기는 인원수, 레벨, CR, 개체 수를 D&D 5e 2014 공식 조정 XP로 변환합니다. 시각적 그래프를 통해 계획한 조우가 쉬움, 보통, 어려움, 치명적 구간 중 어디에 위치하는지 한눈에 확인할 수 있습니다.' },
|
|
131
|
+
{ type: 'title', text: 'D&D 5e 전투 계산식의 작동 원리', level: 2 },
|
|
132
|
+
{ type: 'paragraph', html: '각 난이도별 캐릭터 XP 임계값을 합산한 후 몬스터의 기본 XP 합계에 개체 수 배율을 적용합니다. 3명 미만의 소규모 파티는 한 단계 높은 배율을 적용하고, 6명 이상의 파티는 한 단계 낮은 배율을 적용합니다.' },
|
|
133
|
+
{
|
|
134
|
+
type: 'table',
|
|
135
|
+
headers: ['신호', '테이블에서 점검할 사항'],
|
|
136
|
+
rows: [
|
|
137
|
+
['쉬움 미만', '워밍업이나 소규모 자원 소모용 조우입니다.'],
|
|
138
|
+
['쉬움', '자원 소모를 최소화하며 무난히 승리할 수 있습니다.'],
|
|
139
|
+
['보통', '적절한 압박과 자원 사용에 대한 선택이 발생합니다.'],
|
|
140
|
+
['어려움', '체력 손실 및 주문 슬롯 소모를 예상해야 합니다.'],
|
|
141
|
+
['치명적', '전술, 지형, 도주 경로를 사전에 점검하세요.'],
|
|
142
|
+
],
|
|
143
|
+
},
|
|
144
|
+
{ type: 'title', text: '몬스터 개체 수가 중요한 이유', level: 2 },
|
|
145
|
+
{ type: 'paragraph', html: '여러 몬스터는 라운드당 공격 및 반응 기회가 많아 기본 XP 이상의 위험을 유발합니다. 따라서 같은 총 XP를 가진 단일 몬스터보다 두 마리의 몬스터 조합에 더 높은 배율이 적용됩니다.' },
|
|
146
|
+
{ type: 'tip', title: '높은 CR 몬스터에 대한 경계', html: '파티 레벨보다 높은 CR의 몬스터는 한 번의 강력한 행동으로 캐릭터를 쓰러뜨릴 수 있습니다. 난이도 라벨만 믿지 말고 피해량과 상태 이상 능력을 사전에 점검하세요.' },
|
|
147
|
+
{ type: 'title', text: '전투 준비 도구로 활용하세요', level: 2 },
|
|
148
|
+
{ type: 'paragraph', html: '어려움이나 치명적 전투를 배치하기 전 좁은 공간, 기습, 파티 피로도를 점검하세요. 좁은 공간, 엄폐물, 환경 피해, 집중 주문 등은 실제 테이블에서의 위험도를 크게 변화시킬 수 있습니다.' },
|
|
149
|
+
{ type: 'tip', title: '혼합 몬스터 그룹 계산', html: '각 몬스터의 기본 XP를 합산한 후 전체 개체 수에 해당하는 배율을 곱해 평가합니다.' },
|
|
150
|
+
],
|
|
151
|
+
faq,
|
|
152
|
+
bibliography,
|
|
153
|
+
howTo,
|
|
154
|
+
schemas: [faqSchema, appSchema, howToSchema] as unknown as Record<string, unknown>[],
|
|
155
|
+
};
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { EncounterDifficultyLocaleContent, EncounterDifficultyUI } from '../entry';
|
|
4
|
+
|
|
5
|
+
const ui: EncounterDifficultyUI = {
|
|
6
|
+
intro: 'Stel de groep en de dreiging in. De calculator vergelijkt de ontmoeting met de D&D 5e 2014 drempels.',
|
|
7
|
+
partySection: 'De groep',
|
|
8
|
+
partyLevel: 'Karakterniveau',
|
|
9
|
+
partyLevelHint: 'Gebruik een gemiddeld niveau voor een groep met een vergelijkbaar niveau.',
|
|
10
|
+
partySize: 'Karacters',
|
|
11
|
+
partySizeHint: 'De regels passen de monstermenigvuldiger aan voor erg kleine of grote groepen.',
|
|
12
|
+
threatSection: 'De dreiging',
|
|
13
|
+
monsterCr: 'Monster uitdagingsgraad (CR)',
|
|
14
|
+
monsterCrHint: 'Kies de CR van een monster. Gemengde groepen vereisen een aparte berekening.',
|
|
15
|
+
moreCr: 'Hogere CR tonen',
|
|
16
|
+
lessCr: 'Minder CR tonen',
|
|
17
|
+
monsterCount: 'Aantal monsters',
|
|
18
|
+
monsterCountHint: 'Meer wezens verhogen de actiedruk, zelfs bij een bescheiden basis-XP.',
|
|
19
|
+
presets: 'Start met een scène',
|
|
20
|
+
presetClassic: 'Klassieke patrouille',
|
|
21
|
+
presetBoss: 'Solo baas',
|
|
22
|
+
presetSwarm: 'Zwerm handlangers',
|
|
23
|
+
resultSection: 'Druk van de ontmoeting',
|
|
24
|
+
belowEasyHint: 'Een lichte scène om middelen te sparen voor wat volgt.',
|
|
25
|
+
easyHint: 'Een beheersbare scène met beperkte druk op de groep.',
|
|
26
|
+
mediumHint: 'Een betekenisvolle test die hitpoints of middelen kan kosten.',
|
|
27
|
+
hardHint: 'Een gevaarlijke scène waarin tactiek en middelenkeuzes van belang zijn.',
|
|
28
|
+
deadlyHint: 'Signaal voor dodelijke druk. Controleer vluchtroutes en terrein.',
|
|
29
|
+
adjustedXp: 'Aangepaste XP',
|
|
30
|
+
baseXp: 'Basis XP',
|
|
31
|
+
multiplier: 'Groepsvermenigvuldiger',
|
|
32
|
+
partyThreshold: 'Gemiddelde drempel',
|
|
33
|
+
belowEasy: 'Onder makkelijk',
|
|
34
|
+
easy: 'Makkelijk',
|
|
35
|
+
medium: 'Gemiddeld',
|
|
36
|
+
hard: 'Moeilijk',
|
|
37
|
+
deadly: 'Dodelijk',
|
|
38
|
+
warning: 'Waarschuwing',
|
|
39
|
+
partyAdjustment: 'De vermenigvuldiger is aangepast omdat de groep uit minder dan drie of meer dan vijf karakters bestaat.',
|
|
40
|
+
highCr: 'Een monster met een CR boven het groepsniveau kan een karakter snel uitschakelen.',
|
|
41
|
+
manyMonsters: 'Elf of meer monsters maken een gevecht erg complex om te leiden.',
|
|
42
|
+
rulesNote: 'Schatting volgens D&D 5e 2014 regels. Houdt geen rekening met terrein of tactiek.',
|
|
43
|
+
rulesLinkLabel: 'Lees de bronregels',
|
|
44
|
+
reset: 'Herstellen naar voorbeeld',
|
|
45
|
+
xpUnit: 'XP',
|
|
46
|
+
sceneLabel: 'Grafische weergave van gevechtsdruk',
|
|
47
|
+
partyMarker: 'Groep',
|
|
48
|
+
threatMarker: 'Dreiging',
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
const faq = [
|
|
52
|
+
{
|
|
53
|
+
question: 'Welke regels gebruikt deze ontmoetingscalculator?',
|
|
54
|
+
answer: 'Het gebruikt de officiële D&D 5e 2014 methode uit de Basisregels en vergelijkt de groepsdrempels met de aangepaste XP.',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
question: 'Waarom verschilt aangepaste XP van de belonings-XP?',
|
|
58
|
+
answer: 'De regels vermenigvuldigen de totale monster-XP om het gevaar van meerdere wezens in dezelfde ronde te weerspiegelen.',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
question: 'Kan ik dit gebruiken voor gemengde monstergroepen?',
|
|
62
|
+
answer: 'Gebruik het als snelle schatting voor gelijke monsters. Tel voor gemengde groepen de XP van elk wezen op en pas de vermenigvuldiger toe.',
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
question: 'Betekent een dodelijk resultaat dat de groep doodgaat?',
|
|
66
|
+
answer: 'Nee. Dodelijk betekent dat de aangepaste XP de dodelijke drempel bereikt. Terrein en keuzes veranderen het werkelijke resultaat.',
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
question: 'Waarom verandert de groepsgrootte de vermenigvuldiger?',
|
|
70
|
+
answer: 'De Basisregels adviseren een hogere vermenigvuldiger voor groepen kleiner dan drie en een lagere voor groepen van zes of meer.',
|
|
71
|
+
},
|
|
72
|
+
];
|
|
73
|
+
|
|
74
|
+
const howTo = [
|
|
75
|
+
{
|
|
76
|
+
name: 'Stel het groepsniveau in',
|
|
77
|
+
text: 'Kies het gemiddelde niveau van de karakters in de groep.',
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
name: 'Stel de groepsgrootte in',
|
|
81
|
+
text: 'Vul het aantal karakters in dat deelneemt aan het gevecht.',
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
name: 'Beschrijf de dreiging',
|
|
85
|
+
text: 'Kies de uitdagingsgraad (CR) en het aantal monsters.',
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
name: 'Lees de druk af',
|
|
89
|
+
text: 'Vergelijk de aangepaste XP met de drempelwaarden.',
|
|
90
|
+
},
|
|
91
|
+
];
|
|
92
|
+
|
|
93
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
94
|
+
'@context': 'https://schema.org',
|
|
95
|
+
'@type': 'FAQPage',
|
|
96
|
+
mainEntity: faq.map((item) => ({
|
|
97
|
+
'@type': 'Question',
|
|
98
|
+
name: item.question,
|
|
99
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
100
|
+
})),
|
|
101
|
+
};
|
|
102
|
+
|
|
103
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
104
|
+
'@context': 'https://schema.org',
|
|
105
|
+
'@type': 'SoftwareApplication',
|
|
106
|
+
name: 'D&D 5e Ontmoetings-Moeilijkheidsgraad Calculator',
|
|
107
|
+
operatingSystem: 'All',
|
|
108
|
+
applicationCategory: 'GameApplication',
|
|
109
|
+
description: 'Bereken de moeilijkheidsgraad van gevechten voor D&D 5e 2014 op basis van niveau, groepsgrootte, monster-CR, aantal en officiële drempels.',
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
const howToSchema: WithContext<HowTo> = {
|
|
113
|
+
'@context': 'https://schema.org',
|
|
114
|
+
'@type': 'HowTo',
|
|
115
|
+
name: 'Hoe je de D&D 5e ontmoetingsmoeilijkheid berekent',
|
|
116
|
+
step: howTo.map((item) => ({
|
|
117
|
+
'@type': 'HowToStep',
|
|
118
|
+
name: item.name,
|
|
119
|
+
text: item.text,
|
|
120
|
+
})),
|
|
121
|
+
};
|
|
122
|
+
|
|
123
|
+
export const content: EncounterDifficultyLocaleContent = {
|
|
124
|
+
slug: 'dnd-5e-ontmoetings-moeilijkheidsgraad-calculator',
|
|
125
|
+
title: 'D&D 5e Ontmoetings Moeilijkheidsgraad Calculator',
|
|
126
|
+
description: 'Schat de druk van gevechten in D&D 5e 2014 in via groepsniveau, grootte, monster-CR, aangepaste XP en officiële drempels.',
|
|
127
|
+
ui,
|
|
128
|
+
seo: [
|
|
129
|
+
{ type: 'title', text: 'Schat de gevechtsmoeilijkheid in voor het initiatief begint', level: 2 },
|
|
130
|
+
{ type: 'paragraph', html: 'Een D&D-gevecht is meer dan alleen de uitdagingsgraad van een monster. Deze calculator zet groepsgrootte, niveau, CR en monsteraantal om in de aangepaste XP volgens de D&D 5e 2014 regels. Het visuele resultaat toont duidelijk waar de ontmoeting zich bevindt ten opzichte van de drempels voor makkelijk, gemiddeld, moeilijk en dodelijk.' },
|
|
131
|
+
{ type: 'title', text: 'Hoe de D&D 5e gevechtsformule werkt', level: 2 },
|
|
132
|
+
{ type: 'paragraph', html: 'De methode telt de XP-drempel van elk karakter op voor elk moeilijkheidsniveau en past de vermenigvuldiger toe op de totale monster-XP. Groepen met minder dan drie karakters gebruiken de eerstvolgende hogere vermenigvuldiger, terwijl groepen van zes of meer karakters de lagere vermenigvuldiger gebruiken.' },
|
|
133
|
+
{
|
|
134
|
+
type: 'table',
|
|
135
|
+
headers: ['Signaal', 'Wat te controleren aan tafel'],
|
|
136
|
+
rows: [
|
|
137
|
+
['Onder makkelijk', 'Het gevecht dient als opwarming of voor een klein middelenverbruik.'],
|
|
138
|
+
['Makkelijk', 'De groep wint meestal zonder veel middelen in te zetten.'],
|
|
139
|
+
['Gemiddeld', 'Verwacht matige druk en ten minste één belangrijke keuze over middelen.'],
|
|
140
|
+
['Moeilijk', 'Houd rekening met verlies van hitpoints en spell slots.'],
|
|
141
|
+
['Dodelijk', 'Controleer tactiek, terrein en vluchtroutes.'],
|
|
142
|
+
],
|
|
143
|
+
},
|
|
144
|
+
{ type: 'title', text: 'Waarom het aantal monsters belangrijk is', level: 2 },
|
|
145
|
+
{ type: 'paragraph', html: 'Meerdere monsters creëren meer gevaar dan hun basis-XP aangeeft omdat ze meer aanvallen en reacties in dezelfde ronde uitvoeren. Daarom gebruikt een paar wezens een hogere vermenigvuldiger dan één wezen met dezelfde gecombineerde XP.' },
|
|
146
|
+
{ type: 'tip', title: 'Zie een hoge CR als een specifiek waarschuwingssignaal', html: 'Een monster met een CR boven het groepsniveau kan een karakter met één sterke actie uitschakelen. Controleer schade en controle-effecten in plaats van alleen af te gaan op het moeilijkheidslabel.' },
|
|
147
|
+
{ type: 'title', text: 'Gebruik het resultaat als voorbereidingshulp', level: 2 },
|
|
148
|
+
{ type: 'paragraph', html: 'Beoordeel voor moeilijke of dodelijke gevechten ook de omgeving, verrassing en de algemene staat van de groep. Krappe ruimtes, dekking, valstrikken en concentratiespreuken kunnen het werkelijke gevaar aan tafel aanzienlijk veranderen.' },
|
|
149
|
+
{ type: 'tip', title: 'Gemengde monstergroepen handmatig aanpassen', html: 'Tel de basis-XP van elk wezen op en pas de vermenigvuldiger toe op het totale aantal monsters.' },
|
|
150
|
+
],
|
|
151
|
+
faq,
|
|
152
|
+
bibliography,
|
|
153
|
+
howTo,
|
|
154
|
+
schemas: [faqSchema, appSchema, howToSchema] as unknown as Record<string, unknown>[],
|
|
155
|
+
};
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { EncounterDifficultyLocaleContent, EncounterDifficultyUI } from '../entry';
|
|
4
|
+
|
|
5
|
+
const ui: EncounterDifficultyUI = {
|
|
6
|
+
intro: 'Ustaw drużynę i zagrożenie. Kalkulator ocenia starcie według progów D&D 5e 2014.',
|
|
7
|
+
partySection: 'Drużyna',
|
|
8
|
+
partyLevel: 'Poziom postaci',
|
|
9
|
+
partyLevelHint: 'Użyj średniego poziomu dla drużyny o podobnym poziomie postaci.',
|
|
10
|
+
partySize: 'Postacie',
|
|
11
|
+
partySizeHint: 'Zasady dostosowują mnożnik potworów dla bardzo małych lub dużych grup.',
|
|
12
|
+
threatSection: 'Zagrożenie',
|
|
13
|
+
monsterCr: 'Stopień wyzwania potwora (CR)',
|
|
14
|
+
monsterCrHint: 'Wybierz CR jednego potwora. Grupy mieszane wymagają osobnego obliczenia.',
|
|
15
|
+
moreCr: 'Pokaż wyższe CR',
|
|
16
|
+
lessCr: 'Pokaż mniej CR',
|
|
17
|
+
monsterCount: 'Liczba potworów',
|
|
18
|
+
monsterCountHint: 'Większa liczba stworzeń zwiększa presję akcji nawet przy umiarkowanym XP bazowym.',
|
|
19
|
+
presets: 'Rozpocznij od sceny',
|
|
20
|
+
presetClassic: 'Klasyczny patrol',
|
|
21
|
+
presetBoss: 'Samotny boss',
|
|
22
|
+
presetSwarm: 'Horda słabych wrogów',
|
|
23
|
+
resultSection: 'Presja starcia',
|
|
24
|
+
belowEasyHint: 'Lekka scena pozwalająca zachować zasoby na kolejne wyzwania.',
|
|
25
|
+
easyHint: 'Łatwa scena o niewielkiej presji na drużynę.',
|
|
26
|
+
mediumHint: 'Odczuwalny sprawdzian, który może kosztować punkty życia lub zasoby.',
|
|
27
|
+
hardHint: 'Niebezpieczna scena, w której taktyka i zarządzanie zasobami mają znaczenie.',
|
|
28
|
+
deadlyHint: 'Sygnał śmiertelnej presji. Sprawdź drogi ucieczki i teren.',
|
|
29
|
+
adjustedXp: 'Skorygowany XP',
|
|
30
|
+
baseXp: 'Bazowy XP',
|
|
31
|
+
multiplier: 'Mnożnik grupy',
|
|
32
|
+
partyThreshold: 'Średni próg',
|
|
33
|
+
belowEasy: 'Poniżej łatwego',
|
|
34
|
+
easy: 'Łatwy',
|
|
35
|
+
medium: 'Średni',
|
|
36
|
+
hard: 'Trudny',
|
|
37
|
+
deadly: 'Śmiertelny',
|
|
38
|
+
warning: 'Uwaga',
|
|
39
|
+
partyAdjustment: 'Mnożnik został skorygowany, ponieważ drużyna liczy mniej niż trzy lub więcej niż pięć postaci.',
|
|
40
|
+
highCr: 'Potwór o CR wyższym niż poziom drużyny może szybko powalić postać.',
|
|
41
|
+
manyMonsters: 'Jedenascie lub więcej potworów utrudnia prowadzenie walki.',
|
|
42
|
+
rulesNote: 'Szacunek według zasad D&D 5e 2014. Nie uwzględnia terenu ani taktyki.',
|
|
43
|
+
rulesLinkLabel: 'Przeczytaj zasady źródłowe',
|
|
44
|
+
reset: 'Przywróć przykład',
|
|
45
|
+
xpUnit: 'XP',
|
|
46
|
+
sceneLabel: 'Wizualizacja presji starcia',
|
|
47
|
+
partyMarker: 'Drużyna',
|
|
48
|
+
threatMarker: 'Zagrożenie',
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
const faq = [
|
|
52
|
+
{
|
|
53
|
+
question: 'Jakie zasady wykorzystuje ten kalkulator trudności starć?',
|
|
54
|
+
answer: 'Wykorzystuje oficjalną metodę D&D 5e 2014 z Zasad Podstawowych, porównując progi drużyny ze skorygowanym XP potworów.',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
question: 'Dlaczego skorygowany XP różni się od XP przyznawanego za potwora?',
|
|
58
|
+
answer: 'Zasady mnożą całkowity XP potworów, aby odzwierciedlić zagrożenie wynikające z działania kilku stworzeń w tej samej rundzie.',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
question: 'Czy mogę użyć kalkulatora do mieszanej grupy potworów?',
|
|
62
|
+
answer: 'Używaj go jako szybkiego szacunku dla jednakowych potworów. W przypadku grup mieszanych zsumuj XP każdego stworzenia i zastosuj mnożnik.',
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
question: 'Czy śmiertelny wynik oznacza pewną śmierć drużyny?',
|
|
66
|
+
answer: 'Nie. Śmiertelny oznacza, że skorygowany XP osiąga śmiertelny próg w zasadach. Teren, taktyka i czary mogą zmienić rzeczywisty wynik.',
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
question: 'Dlaczego wielkość drużyny zmienia mnożnik?',
|
|
70
|
+
answer: 'Zasady zalecają zwiększenie mnożnika dla drużyn liczących mniej niż trzy postacie i zmniejszenie dla grup od sześciu postaci.',
|
|
71
|
+
},
|
|
72
|
+
];
|
|
73
|
+
|
|
74
|
+
const howTo = [
|
|
75
|
+
{
|
|
76
|
+
name: 'Ustaw poziom drużyny',
|
|
77
|
+
text: 'Wybierz średni poziom postaci w drużynie.',
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
name: 'Ustaw wielkość drużyny',
|
|
81
|
+
text: 'Podaj liczbę postaci biorących udział w walce.',
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
name: 'Opisz zagrożenie',
|
|
85
|
+
text: 'Wybierz stopień wyzwania (CR) i liczbę potworów.',
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
name: 'Odczytaj presję',
|
|
89
|
+
text: 'Porównaj skorygowany XP z oficjalnymi progami trudności.',
|
|
90
|
+
},
|
|
91
|
+
];
|
|
92
|
+
|
|
93
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
94
|
+
'@context': 'https://schema.org',
|
|
95
|
+
'@type': 'FAQPage',
|
|
96
|
+
mainEntity: faq.map((item) => ({
|
|
97
|
+
'@type': 'Question',
|
|
98
|
+
name: item.question,
|
|
99
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
100
|
+
})),
|
|
101
|
+
};
|
|
102
|
+
|
|
103
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
104
|
+
'@context': 'https://schema.org',
|
|
105
|
+
'@type': 'SoftwareApplication',
|
|
106
|
+
name: 'Kalkulator Trudności Starć D&D 5e',
|
|
107
|
+
operatingSystem: 'All',
|
|
108
|
+
applicationCategory: 'GameApplication',
|
|
109
|
+
description: 'Oblicz trudność starć D&D 5e 2014 na podstawie poziomu, wielkości drużyny, CR potworów, liczby i oficjalnych progów.',
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
const howToSchema: WithContext<HowTo> = {
|
|
113
|
+
'@context': 'https://schema.org',
|
|
114
|
+
'@type': 'HowTo',
|
|
115
|
+
name: 'Jak obliczyć trudność starcia w D&D 5e',
|
|
116
|
+
step: howTo.map((item) => ({
|
|
117
|
+
'@type': 'HowToStep',
|
|
118
|
+
name: item.name,
|
|
119
|
+
text: item.text,
|
|
120
|
+
})),
|
|
121
|
+
};
|
|
122
|
+
|
|
123
|
+
export const content: EncounterDifficultyLocaleContent = {
|
|
124
|
+
slug: 'kalkulator-trudnosci-starc-dnd-5e',
|
|
125
|
+
title: 'Kalkulator Trudności Starć D&D 5e',
|
|
126
|
+
description: 'Oszacuj presję walki w D&D 5e 2014 za pomocą poziomu drużyny, wielkości, CR potworów, skorygowanego XP i oficjalnych progów.',
|
|
127
|
+
ui,
|
|
128
|
+
seo: [
|
|
129
|
+
{ type: 'title', text: 'Oceń trudność walki zanim rzucisz na inicjatywę', level: 2 },
|
|
130
|
+
{ type: 'paragraph', html: 'Walka w D&D to coś więcej niż liczba wydrukowana obok potwora. Ten kalkulator przelicza wielkość drużyny, poziom, CR i liczbę potworów na skorygowany XP według Zasad Podstawowych D&D 5e 2014. Wynik wizualny wyraźnie pokazuje, gdzie planowane starcie znajduje się względem progów łatwego, średniego, trudnego i śmiertelnego.' },
|
|
131
|
+
{ type: 'title', text: 'Jak działa formuła starć D&D 5e', level: 2 },
|
|
132
|
+
{ type: 'paragraph', html: 'Metoda sumuje próg XP każdej postaci dla każdego poziomu trudności, a następnie nakłada mnożnik na łączny XP potworów. Drużyny liczące mniej niż trzy postacie używają kolejnego wyższego mnożnika, podczas gdy grupy liczące sześć lub więcej postaci używają kolejnego niższego mnożnika.' },
|
|
133
|
+
{
|
|
134
|
+
type: 'table',
|
|
135
|
+
headers: ['Sygnał', 'Co warto sprawdzić przy stole'],
|
|
136
|
+
rows: [
|
|
137
|
+
['Poniżej łatwego', 'Starcie służy jako rozgrzewka lub drobne zużycie zasobów.'],
|
|
138
|
+
['Łatwy', 'Drużyna powinna wygrać bez większego zużycia zasobów.'],
|
|
139
|
+
['Średni', 'Spodziewaj się umiarkowanej presji i co najmniej jednej ważnej decyzji o zasobach.'],
|
|
140
|
+
['Trudny', 'Zaplanuj utratę punktów życia i komórek czarów.'],
|
|
141
|
+
['Śmiertelny', 'Sprawdź taktykę, teren i drogi ucieczki.'],
|
|
142
|
+
],
|
|
143
|
+
},
|
|
144
|
+
{ type: 'title', text: 'Dlaczego liczba potworów ma kluczowe znaczenie', level: 2 },
|
|
145
|
+
{ type: 'paragraph', html: 'Wielu wrogów stwarza większe zagrożenie, niż wynika z ich bazowego XP, ponieważ wykonują więcej ataków i reakcji w tej samej rundzie. Dlatego para stworzeń używa wyższego mnożnika niż jedno stworzenie o tym samym łącznym XP.' },
|
|
146
|
+
{ type: 'tip', title: 'Wysoki CR traktuj jako ostrzeżenie', html: 'Potwór o CR wyższym niż poziom drużyny może powalić postać jedną silną akcją. Sprawdź jego obrażenia i efekty kontroli, zamiast polegać wyłącznie na ostatecznym etykiecie trudności.' },
|
|
147
|
+
{ type: 'title', text: 'Użyj wyniku jako pomocy w przygotowaniu', level: 2 },
|
|
148
|
+
{ type: 'paragraph', html: 'Przed przygotowaniem trudnego lub śmiertelnego starcia oceń teren, zaskoczenie i ogólny stan drużyny. Ciasny pokój, osłona, pułapki i czary koncentracji mogą znacząco zmienić rzeczywiste zagrożenie przy stole.' },
|
|
149
|
+
{ type: 'tip', title: 'Mieszane grupy potworów', html: 'Zsumuj bazowy XP każdego stworzenia i zastosuj mnożnik do łącznej liczby potworów.' },
|
|
150
|
+
],
|
|
151
|
+
faq,
|
|
152
|
+
bibliography,
|
|
153
|
+
howTo,
|
|
154
|
+
schemas: [faqSchema, appSchema, howToSchema] as unknown as Record<string, unknown>[],
|
|
155
|
+
};
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { EncounterDifficultyLocaleContent, EncounterDifficultyUI } from '../entry';
|
|
4
|
+
|
|
5
|
+
const ui: EncounterDifficultyUI = {
|
|
6
|
+
intro: 'Ajuste o grupo e a ameaça. A calculadora mede o encontro com os limiares de D&D 5e 2014.',
|
|
7
|
+
partySection: 'O grupo',
|
|
8
|
+
partyLevel: 'Nível dos personagens',
|
|
9
|
+
partyLevelHint: 'Use um nível médio para um grupo de nível similar.',
|
|
10
|
+
partySize: 'Personagens',
|
|
11
|
+
partySizeHint: 'As regras ajustam o multiplicador de monstros para grupos muito pequenos ou grandes.',
|
|
12
|
+
threatSection: 'A ameaça',
|
|
13
|
+
monsterCr: 'Nível de desafio (CR)',
|
|
14
|
+
monsterCrHint: 'Escolha o CR de um monstro repetido. Grupos mistos exigem um cálculo separado.',
|
|
15
|
+
moreCr: 'Mostrar mais CR',
|
|
16
|
+
lessCr: 'Mostrar menos CR',
|
|
17
|
+
monsterCount: 'Quantidade de monstros',
|
|
18
|
+
monsterCountHint: 'Mais criaturas aumentam a pressão de ações mesmo com XP base modesto.',
|
|
19
|
+
presets: 'Começar com uma cena',
|
|
20
|
+
presetClassic: 'Patrulha clássica',
|
|
21
|
+
presetBoss: 'Chefe solo',
|
|
22
|
+
presetSwarm: 'Horda de lacaios',
|
|
23
|
+
resultSection: 'Pressão do encontro',
|
|
24
|
+
belowEasyHint: 'Uma cena leve que permite preservar recursos para desafios futuros.',
|
|
25
|
+
easyHint: 'Uma cena acessível com pouca pressão sobre o grupo.',
|
|
26
|
+
mediumHint: 'Um teste significativo que pode custar pontos de vida ou recursos.',
|
|
27
|
+
hardHint: 'Uma cena perigosa onde a tática e a gestão de recursos importam.',
|
|
28
|
+
deadlyHint: 'Sinal de pressão mortal. Verifique rotas de fuga, terreno e custos.',
|
|
29
|
+
adjustedXp: 'XP Ajustado',
|
|
30
|
+
baseXp: 'XP Base',
|
|
31
|
+
multiplier: 'Multiplicador de grupo',
|
|
32
|
+
partyThreshold: 'Limiar Médio',
|
|
33
|
+
belowEasy: 'Abaixo de fácil',
|
|
34
|
+
easy: 'Fácil',
|
|
35
|
+
medium: 'Médio',
|
|
36
|
+
hard: 'Difícil',
|
|
37
|
+
deadly: 'Mortal',
|
|
38
|
+
warning: 'Atenção',
|
|
39
|
+
partyAdjustment: 'O multiplicador foi ajustado porque o grupo tem menos de três ou mais de cinco personagens.',
|
|
40
|
+
highCr: 'Um monstro com CR superior ao nível do grupo pode derrubar um personagem rapidamente.',
|
|
41
|
+
manyMonsters: 'Onze ou mais monstros tornam o combate difícil de gerenciar.',
|
|
42
|
+
rulesNote: 'Estimativa baseada nas regras de D&D 5e 2014. Não considera terreno ou táticas.',
|
|
43
|
+
rulesLinkLabel: 'Ler as regras de origem',
|
|
44
|
+
reset: 'Restaurar exemplo',
|
|
45
|
+
xpUnit: 'XP',
|
|
46
|
+
sceneLabel: 'Gráfico visual de pressão',
|
|
47
|
+
partyMarker: 'Grupo',
|
|
48
|
+
threatMarker: 'Ameaça',
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
const faq = [
|
|
52
|
+
{
|
|
53
|
+
question: 'Quais regras esta calculadora de dificuldade utiliza?',
|
|
54
|
+
answer: 'Utiliza o método oficial de D&D 5e 2014 das Regras Básicas, comparando os limiares do grupo com o XP ajustado dos monstros.',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
question: 'Por que o XP ajustado difere do XP concedido pelo monstro?',
|
|
58
|
+
answer: 'As regras multiplicam o XP total dos monstros para refletir o perigo de várias criaturas agindo no mesmo turno.',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
question: 'Posso usar isso para um grupo misto de monstros?',
|
|
62
|
+
answer: 'Use como uma estimativa rápida para monstros idênticos. Para grupos mistos, some o XP de cada criatura e aplique o multiplicador.',
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
question: 'Um resultado mortal significa que o grupo vai morrer?',
|
|
66
|
+
answer: 'Não. Mortal significa que o XP ajustado atinge o limiar mortal nas regras. O terreno, táticas e magias podem alterar o resultado real.',
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
question: 'Por que o tamanho do grupo altera o multiplicador?',
|
|
70
|
+
answer: 'As Regras Básicas recomendam aumentar o multiplicador para grupos com menos de três personagens e reduzi-lo para seis ou mais.',
|
|
71
|
+
},
|
|
72
|
+
];
|
|
73
|
+
|
|
74
|
+
const howTo = [
|
|
75
|
+
{
|
|
76
|
+
name: 'Defina o nível do grupo',
|
|
77
|
+
text: 'Escolha o nível médio dos personagens do grupo.',
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
name: 'Indique o tamanho do grupo',
|
|
81
|
+
text: 'Insira a quantidade de personagens no combate.',
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
name: 'Descreva a ameaça',
|
|
85
|
+
text: 'Selecione o nível de desafio (CR) e a quantidade de monstros.',
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
name: 'Interprete a pressão',
|
|
89
|
+
text: 'Compare o XP ajustado com os limiares oficiais.',
|
|
90
|
+
},
|
|
91
|
+
];
|
|
92
|
+
|
|
93
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
94
|
+
'@context': 'https://schema.org',
|
|
95
|
+
'@type': 'FAQPage',
|
|
96
|
+
mainEntity: faq.map((item) => ({
|
|
97
|
+
'@type': 'Question',
|
|
98
|
+
name: item.question,
|
|
99
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
100
|
+
})),
|
|
101
|
+
};
|
|
102
|
+
|
|
103
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
104
|
+
'@context': 'https://schema.org',
|
|
105
|
+
'@type': 'SoftwareApplication',
|
|
106
|
+
name: 'Calculadora de Dificuldade de Encontros D&D 5e',
|
|
107
|
+
operatingSystem: 'All',
|
|
108
|
+
applicationCategory: 'GameApplication',
|
|
109
|
+
description: 'Calcule a dificuldade de encontros para D&D 5e 2014 com base em nível, tamanho do grupo, CR de monstros, quantidade e limiares oficiais.',
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
const howToSchema: WithContext<HowTo> = {
|
|
113
|
+
'@context': 'https://schema.org',
|
|
114
|
+
'@type': 'HowTo',
|
|
115
|
+
name: 'Como calcular a dificuldade de um encontro em D&D 5e',
|
|
116
|
+
step: howTo.map((item) => ({
|
|
117
|
+
'@type': 'HowToStep',
|
|
118
|
+
name: item.name,
|
|
119
|
+
text: item.text,
|
|
120
|
+
})),
|
|
121
|
+
};
|
|
122
|
+
|
|
123
|
+
export const content: EncounterDifficultyLocaleContent = {
|
|
124
|
+
slug: 'calculadora-dificuldade-encontros-dnd-5e',
|
|
125
|
+
title: 'Calculadora de Dificuldade de Encontros D&D 5e',
|
|
126
|
+
description: 'Estime a pressão dos combates em D&D 5e 2014 por meio do nível do grupo, tamanho, CR de monstros, XP ajustado e limiares oficiais.',
|
|
127
|
+
ui,
|
|
128
|
+
seo: [
|
|
129
|
+
{ type: 'title', text: 'Analise a dificuldade do combate antes da iniciativa', level: 2 },
|
|
130
|
+
{ type: 'paragraph', html: 'Um encontro de D&D é mais do que o número impresso ao lado de um monstro. Esta calculadora transforma o tamanho do grupo, nível, CR e quantidade de monstros no valor de XP ajustado das regras D&D 5e 2014. O resultado visual mostra claramente onde o combate está posicionado em relação aos limiares fácil, médio, difícil e mortal.' },
|
|
131
|
+
{ type: 'title', text: 'Como funciona a fórmula de encontros de D&D 5e', level: 2 },
|
|
132
|
+
{ type: 'paragraph', html: 'O método soma o limiar de XP de cada personagem para cada nível de dificuldade, somando o XP base e aplicando o multiplicador correspondente. Grupos com menos de três personagens usam o multiplicador superior seguinte, enquanto grupos com seis ou mais usam o inferior.' },
|
|
133
|
+
{
|
|
134
|
+
type: 'table',
|
|
135
|
+
headers: ['Sinal', 'O que avaliar na mesa'],
|
|
136
|
+
rows: [
|
|
137
|
+
['Abaixo de fácil', 'O combate serve como aquecimento ou desgaste menor de recursos.'],
|
|
138
|
+
['Fácil', 'O grupo deve vencer sem gastar muitos recursos.'],
|
|
139
|
+
['Médio', 'Espere pressão moderada e ao menos uma decisão importante sobre recursos.'],
|
|
140
|
+
['Difícil', 'Planeje a perda de pontos de vida e espaços de magia.'],
|
|
141
|
+
['Mortal', 'Verifique táticas, terreno e rotas de fuga.'],
|
|
142
|
+
],
|
|
143
|
+
},
|
|
144
|
+
{ type: 'title', text: 'Por que a quantidade de monstros é fundamental', level: 2 },
|
|
145
|
+
{ type: 'paragraph', html: 'Vários monstros criam mais perigo do que o XP base indica porque multiplicam ataques e reações no mesmo turno. É por isso que um par de criaturas usa um multiplicador mais alto do que uma única criatura com o mesmo XP combinado.' },
|
|
146
|
+
{ type: 'tip', title: 'Considere um CR alto como um alerta específico', html: 'Um monstro com CR superior ao nível do grupo pode derrubar um personagem em uma única ação potente. Inspecione seu dano e controle em vez de confiar apenas na palavra de dificuldade final.' },
|
|
147
|
+
{ type: 'title', text: 'Use o resultado como guia de preparação', level: 2 },
|
|
148
|
+
{ type: 'paragraph', html: 'Antes de propor um combate difícil ou mortal, avalie o terreno, surpresa e condições gerais do grupo. Salas estreitas, cobertura, armadilhas e magias de concentração podem alterar substancialmente o perigo real na mesa.' },
|
|
149
|
+
{ type: 'tip', title: 'Grupos de monstros mistos', html: 'Some o XP base de cada criatura e aplique o multiplicador correspondente ao total de monstros.' },
|
|
150
|
+
],
|
|
151
|
+
faq,
|
|
152
|
+
bibliography,
|
|
153
|
+
howTo,
|
|
154
|
+
schemas: [faqSchema, appSchema, howToSchema] as unknown as Record<string, unknown>[],
|
|
155
|
+
};
|