dnd5-scripts/generate_trap/traps_tables.md
2026-06-17 22:32:48 +03:00

139 lines
8.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Вы правы, забыл хиты. Добавляю колонку **HP** (Hit Points) — среднее значение из диапазона `Рек. Хиты` для соответствующего CR, округлённое до целого.
Для дробных CR (0.125, 0.25, 0.5) беру данные из вашей таблицы:
- CR 0.125 → 735 → среднее 21
- CR 0.25 → 3649 → среднее 43
- CR 0.5 → 5070 → среднее 60
Для целых CR — как в таблице (беру середину диапазона, округлённую до целого).
Ниже — итоговые таблицы с хитами для каждой серьёзности.
---
## Easy (M=0.25)
| Lvl | CR | PB | DC | ATK | HP (сред) | DMG_s (сред) | DMG_a (сред) | INIT |
|-----|------|----|----|-----|-----------|--------------|--------------|------|
| 1 | 0.125 | 2 | 13 | +3 | 21 | 1d4 (2.5) | 1d4 (2.5) | 2 |
| 2 | 0.25 | 2 | 13 | +3 | 43 | 1d4 (2.5) | 1d4 (2.5) | 2 |
| 3 | 0.5 | 2 | 13 | +3 | 60 | 1d6 (3.5) | 1d4 (2.5) | 2 |
| 4 | 1 | 2 | 13 | +3 | 78 | 2d10 (11) | 2d6 (7) | 2 |
| 5 | 1 | 2 | 13 | +3 | 78 | 2d10 (11) | 2d6 (7) | 2 |
| 6 | 1 | 2 | 13 | +3 | 78 | 2d10 (11) | 2d6 (7) | 2 |
| 7 | 1 | 2 | 13 | +3 | 78 | 2d10 (11) | 2d6 (7) | 2 |
| 8 | 2 | 2 | 13 | +3 | 93 | 3d10 (16.5) | 3d6 (10.5) | 2 |
| 9 | 2 | 2 | 13 | +3 | 93 | 3d10 (16.5) | 3d6 (10.5) | 2 |
| 10 | 2 | 2 | 13 | +3 | 93 | 3d10 (16.5) | 3d6 (10.5) | 2 |
| 11 | 2 | 2 | 13 | +3 | 93 | 3d10 (16.5) | 3d6 (10.5) | 2 |
| 12 | 3 | 2 | 13 | +4 | 108 | 4d10 (22) | 4d6 (14) | 2 |
| 13 | 3 | 2 | 13 | +4 | 108 | 4d10 (22) | 4d6 (14) | 2 |
| 14 | 3 | 2 | 13 | +4 | 108 | 4d10 (22) | 4d6 (14) | 2 |
| 15 | 3 | 2 | 13 | +4 | 108 | 4d10 (22) | 4d6 (14) | 2 |
| 16 | 4 | 2 | 14 | +5 | 123 | 5d10 (27.5) | 5d6 (17.5) | 2 |
| 17 | 4 | 2 | 14 | +5 | 123 | 5d10 (27.5) | 5d6 (17.5) | 2 |
| 18 | 4 | 2 | 14 | +5 | 123 | 5d10 (27.5) | 5d6 (17.5) | 2 |
| 19 | 4 | 2 | 14 | +5 | 123 | 5d10 (27.5) | 5d6 (17.5) | 2 |
| 20 | 5 | 3 | 15 | +6 | 138 | 6d10 (33) | 6d6 (21) | 3 |
---
## Moderate (M=0.5)
| Lvl | CR | PB | DC | ATK | HP (сред) | DMG_s (сред) | DMG_a (сред) | INIT |
|-----|----|----|----|-----|-----------|--------------|--------------|------|
| 1 | 0.5 | 2 | 13 | +3 | 60 | 1d6 (3.5) | 1d4 (2.5) | 2 |
| 2 | 1 | 2 | 13 | +3 | 78 | 2d10 (11) | 2d6 (7) | 2 |
| 3 | 1 | 2 | 13 | +3 | 78 | 2d10 (11) | 2d6 (7) | 2 |
| 4 | 2 | 2 | 13 | +3 | 93 | 3d10 (16.5) | 3d6 (10.5) | 2 |
| 5 | 2 | 2 | 13 | +3 | 93 | 3d10 (16.5) | 3d6 (10.5) | 2 |
| 6 | 3 | 2 | 13 | +4 | 108 | 4d10 (22) | 4d6 (14) | 2 |
| 7 | 3 | 2 | 13 | +4 | 108 | 4d10 (22) | 4d6 (14) | 2 |
| 8 | 4 | 2 | 14 | +5 | 123 | 5d10 (27.5) | 5d6 (17.5) | 2 |
| 9 | 4 | 2 | 14 | +5 | 123 | 5d10 (27.5) | 5d6 (17.5) | 2 |
| 10 | 5 | 3 | 15 | +6 | 138 | 6d10 (33) | 6d6 (21) | 3 |
| 11 | 5 | 3 | 15 | +6 | 138 | 6d10 (33) | 6d6 (21) | 3 |
| 12 | 6 | 3 | 15 | +6 | 153 | 7d10 (38.5) | 7d6 (24.5) | 3 |
| 13 | 6 | 3 | 15 | +6 | 153 | 7d10 (38.5) | 7d6 (24.5) | 3 |
| 14 | 7 | 3 | 15 | +6 | 168 | 8d10 (44) | 8d6 (28) | 3 |
| 15 | 7 | 3 | 15 | +6 | 168 | 8d10 (44) | 8d6 (28) | 3 |
| 16 | 8 | 3 | 16 | +7 | 183 | 9d10 (49.5) | 9d6 (31.5) | 3 |
| 17 | 8 | 3 | 16 | +7 | 183 | 9d10 (49.5) | 9d6 (31.5) | 3 |
| 18 | 9 | 4 | 16 | +7 | 198 | 10d10 (55) | 10d6 (35) | 4 |
| 19 | 9 | 4 | 16 | +7 | 198 | 10d10 (55) | 10d6 (35) | 4 |
| 20 | 10 | 4 | 16 | +7 | 213 | 11d10 (60.5) | 11d6 (38.5) | 4 |
---
## Dangerous (M=0.75)
| Lvl | CR | PB | DC | ATK | HP (сред) | DMG_s (сред) | DMG_a (сред) | INIT |
|-----|----|----|----|-----|-----------|--------------|--------------|------|
| 1 | 0.5 | 2 | 13 | +3 | 60 | 1d6 (3.5) | 1d4 (2.5) | 2 |
| 2 | 1 | 2 | 13 | +3 | 78 | 2d10 (11) | 2d6 (7) | 2 |
| 3 | 2 | 2 | 13 | +3 | 93 | 3d10 (16.5) | 3d6 (10.5) | 2 |
| 4 | 3 | 2 | 13 | +4 | 108 | 4d10 (22) | 4d6 (14) | 2 |
| 5 | 3 | 2 | 13 | +4 | 108 | 4d10 (22) | 4d6 (14) | 2 |
| 6 | 4 | 2 | 14 | +5 | 123 | 5d10 (27.5) | 5d6 (17.5) | 2 |
| 7 | 5 | 3 | 15 | +6 | 138 | 6d10 (33) | 6d6 (21) | 3 |
| 8 | 6 | 3 | 15 | +6 | 153 | 7d10 (38.5) | 7d6 (24.5) | 3 |
| 9 | 6 | 3 | 15 | +6 | 153 | 7d10 (38.5) | 7d6 (24.5) | 3 |
| 10 | 7 | 3 | 15 | +6 | 168 | 8d10 (44) | 8d6 (28) | 3 |
| 11 | 8 | 3 | 16 | +7 | 183 | 9d10 (49.5) | 9d6 (31.5) | 3 |
| 12 | 9 | 4 | 16 | +7 | 198 | 10d10 (55) | 10d6 (35) | 4 |
| 13 | 9 | 4 | 16 | +7 | 198 | 10d10 (55) | 10d6 (35) | 4 |
| 14 | 10 | 4 | 16 | +7 | 213 | 11d10 (60.5) | 11d6 (38.5) | 4 |
| 15 | 11 | 4 | 17 | +8 | 228 | 12d10 (66) | 12d6 (42) | 4 |
| 16 | 12 | 4 | 17 | +8 | 243 | 13d10 (71.5) | 13d6 (45.5) | 4 |
| 17 | 12 | 4 | 17 | +8 | 243 | 13d10 (71.5) | 13d6 (45.5) | 4 |
| 18 | 13 | 5 | 18 | +8 | 258 | 14d10 (77) | 14d6 (49) | 5 |
| 19 | 14 | 5 | 18 | +8 | 273 | 15d10 (82.5) | 15d6 (52.5) | 5 |
| 20 | 15 | 5 | 18 | +8 | 288 | 16d10 (88) | 16d6 (56) | 5 |
---
## Deadly (M=1.0)
| Lvl | CR | PB | DC | ATK | HP (сред) | DMG_s (сред) | DMG_a (сред) | INIT |
|-----|----|----|----|-----|-----------|--------------|--------------|------|
| 1 | 1 | 2 | 13 | +3 | 78 | 2d10 (11) | 2d6 (7) | 2 |
| 2 | 2 | 2 | 13 | +3 | 93 | 3d10 (16.5) | 3d6 (10.5) | 2 |
| 3 | 3 | 2 | 13 | +4 | 108 | 4d10 (22) | 4d6 (14) | 2 |
| 4 | 4 | 2 | 14 | +5 | 123 | 5d10 (27.5) | 5d6 (17.5) | 2 |
| 5 | 5 | 3 | 15 | +6 | 138 | 6d10 (33) | 6d6 (21) | 3 |
| 6 | 6 | 3 | 15 | +6 | 153 | 7d10 (38.5) | 7d6 (24.5) | 3 |
| 7 | 7 | 3 | 15 | +6 | 168 | 8d10 (44) | 8d6 (28) | 3 |
| 8 | 8 | 3 | 16 | +7 | 183 | 9d10 (49.5) | 9d6 (31.5) | 3 |
| 9 | 9 | 4 | 16 | +7 | 198 | 10d10 (55) | 10d6 (35) | 4 |
| 10 | 10 | 4 | 16 | +7 | 213 | 11d10 (60.5) | 11d6 (38.5) | 4 |
| 11 | 11 | 4 | 17 | +8 | 228 | 12d10 (66) | 12d6 (42) | 4 |
| 12 | 12 | 4 | 17 | +8 | 243 | 13d10 (71.5) | 13d6 (45.5) | 4 |
| 13 | 13 | 5 | 18 | +8 | 258 | 14d10 (77) | 14d6 (49) | 5 |
| 14 | 14 | 5 | 18 | +8 | 273 | 15d10 (82.5) | 15d6 (52.5) | 5 |
| 15 | 15 | 5 | 18 | +8 | 288 | 16d10 (88) | 16d6 (56) | 5 |
| 16 | 16 | 5 | 18 | +9 | 303 | 17d10 (93.5) | 17d6 (59.5) | 5 |
| 17 | 17 | 6 | 19 | +10 | 318 | 18d10 (99) | 18d6 (63) | 6 |
| 18 | 18 | 6 | 19 | +10 | 333 | 19d10 (104.5) | 19d6 (66.5) | 6 |
| 19 | 19 | 6 | 19 | +10 | 348 | 20d10 (110) | 20d6 (70) | 6 |
| 20 | 20 | 6 | 19 | +10 | 363 | 21d10 (115.5) | 21d6 (73.5) | 6 |
---
Теперь таблицы полны: есть CR, PB, DC, ATK, HP, урон (single и area), инициатива.
Все значения согласованы с вашей таблицей монстров.
Если всё устраивает, приступаю к написанию кода `generate_trap.py`, который будет:
- По уровню и серьёзности определять CR и все характеристики из этих таблиц.
- Генерировать параметры ловушки, включая `visual_clues` и `audible_clues` на основе `environment` и `trap_race`.
- Вычислять `escape_requirements` по правилам.
- Возвращать структурированный Markdown (или JSON) для последующей обработки промптом.
Согласны? Нужны ещё правки?Отлично, таблицы готовы. Переходим к написанию кода. Я реализую `generate_trap.py` согласно согласованным таблицам и логике. Код будет содержать:
- Функции для получения CR, PB, DC, ATK, HP, урона (single/area), инициативы по уровню и серьёзности.
- Определение `trap_race` из environment (если не задана).
- Определение `summon_type` из environment (если не задан).
- Автоматический вывод `escape_requirements`.
- Генерацию `visual_clues` и `audible_clues` на основе trap_race.
- Формирование Markdown-описания.
Начну писать код. После завершения выложу его сюда для проверки.