feat(observation): expose spell cast time in the snapshot
The per-spell Observation dict gains the additive cast_time key: the registry spell's budget code on a hit, "standard" on a miss (mirroring the engine's resolver fallback), so an LLM policy can schedule casts against the action budget it sees reported back. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
@@ -4574,6 +4574,7 @@ class CombatEngine:
|
||||
"half_on_save": False,
|
||||
"save_negates": False,
|
||||
"area": None,
|
||||
"cast_time": "standard",
|
||||
}
|
||||
half_on_save = _spell_half_on_save(spell)
|
||||
return {
|
||||
@@ -4587,6 +4588,7 @@ class CombatEngine:
|
||||
"half_on_save": half_on_save,
|
||||
"save_negates": spell.save != "none" and not half_on_save,
|
||||
"area": _spell_area_dict(spell),
|
||||
"cast_time": spell.cast_time,
|
||||
}
|
||||
|
||||
def _cast_spell(
|
||||
|
||||
Reference in New Issue
Block a user