feat(engine): persistenza enigmi, inventario strutturato, HP mostri
test / test (push) Has been cancelled
test / test (push) Has been cancelled
Fase 2 del remediation plan: - set_puzzle_state / is_puzzle_solved per enigmi area - update_inventory su character_items con add/remove/equip/list - combat() legge HP da combat_state e persiste danno - dm_cycle inietta campaign_id nei tool che ne hanno bisogno - helpers db: dedup inventario, remove/equip per nome Fase 4 del remediation plan: - test integrazione dm_cycle con LLM mockato (5 test) - test WebSocket handler con mock (4 test) - CI minimo .gitea/workflows/test.yml
This commit is contained in:
1 parent
cb45172717
commit
6b048dc0cc
7 files changed
+386
-18
No files matched your search
@@ -16,13 +16,14 @@ _KNOWN_TOOLS: dict[str, dict[str, str]] = {
|
||||
"damage_die": "dado danno (default d8)",
|
||||
"damage_bonus": "bonus danno (default 0)",
|
||||
"mighty_deed_die": "dado deed guerriero (es. d3)",
|
||||
"monster_id": "id mostro (per PF persistenti)",
|
||||
"armor_type": "none/light/medium/heavy",
|
||||
},
|
||||
"ability_check": {"character_id": "id pg", "dc": "CD prova", "modifier": "bonus/penalità"},
|
||||
"saving_throw": {"character_id": "id pg", "save_type": "Tempra|Riflessi|Volontà", "dc": "CD", "modifier": "bonus/penalità"},
|
||||
"movement": {"distance_m": "metri", "terrain": "normale|difficile|molto difficile"},
|
||||
"spellcasting": {"character_id": "id pg", "spell_name": "nome incantesimo", "spell_check": "valore tiro"},
|
||||
"update_inventory": {"character_id": "id pg", "item": "nome oggetto", "action": "add|remove"},
|
||||
"update_inventory": {"character_id": "id pg", "item": "nome oggetto", "action": "add|remove|equip|unequip|list", "quantity": "quantità (default 1)"},
|
||||
"award_xp": {"character_id": "id pg", "xp": "quantità PE"},
|
||||
"dm_override": {"command": "narrate|set|force", "params": "parametri opzionali"},
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user