Thien An ctan
  • Joined on 2025-09-27
ctan pushed to main at ctan/pf1e-simulator 2026-09-27 08:42:01 +02:00
f61fc5c61f docs: reorganize documentation structure
ctan pushed to main at ctan/pf1e-simulator 2026-09-26 19:15:48 +02:00
b0bd0b95f4 docs(phase2): record the P5.3 report writer
98985ee6fc feat(phase2): llm report writer (P5.3)
Compare 2 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-09-25 23:30:41 +02:00
c454a67b84 docs(phase2): record the P5.2 few-shot prompts and repair loop
dc890fc8fd feat(phase2): few-shot prompts + bounded repair loop (P5.2)
d4db4f6d33 docs(phase2): record the P5.1 provider client and plan status
42802f7bf5 feat(phase2): OpenAI-compatible provider client (P5.1)
790df17623 docs(phase2): record the P4 robustness measurements and plan status
Compare 27 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-09-21 00:35:18 +02:00
7e4a9f5edf docs(rules): conformance journal round 15 - nonlethal, splash, skills and flight (out of scope -> modeled)
9210a54589 docs(rules): document 3D flight over ground terrain (airborne view: difficult terrain cost 1, cross non-LoS impassable cells, blocks_los still stops flight; elevation climb still applies; LoE/cover/high-ground unchanged) and the deferred 3D line-of-effect/maneuverability with SRD citations (Movement, Position and Distance; Aiming a Spell); map legend + grid.py notes, test count 1981
2ae86ab29f feat(rules): 3D flight over ground terrain - airborne creatures (fly >= land, V4 budget from fly speed) move on Grid.airborne_view: ground difficult terrain costs 1 and cells impassable to walkers (pits, water, rubble, low obstacles) are crossable at cost 1, EXCEPT blocks_los cells (solid barriers, assumed full height) which still stop flight; run/charge/5-foot-step gates and diagonal corner rule follow the same view (flying past a pit is legal, past a wall corner is not); elevation climb cost still applies (step heights, not wall heights - documented); line of effect, cover and high ground use the unchanged real grid so combat geometry is unaffected by flight (SRD Movement, Position and Distance: flying creatures not hampered by difficult terrain, able to avoid most obstacles), 11 tests
1257bb3849 docs(rules): document skill checks, Acrobatics Tumbling and Stealth in README (rule list, observation schema hidden_from, out-of-scope updates, test count 1970)
2c40994610 feat(rules): Stealth + opposed Perception - opt-in hide move action (Stealth d20 + trained class + ACP + size mod vs each enemy Perception with -1/10ft distance; observed creatures cannot be hidden from), per-observer hidden_from state treated as total concealment + unseen-attacker +2/deny-Dex for failed observers, attacking or running/charging breaks stealth, move/5-foot-step/withdraw re-check the opposed roll, observation exposes hidden_from (SRD Stealth/Perception/Skill Checks), 13 tests
Compare 110 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-09-17 23:31:28 +02:00
1a68dfa6db docs(rules): conformance journal rounds 3-4 (22 fix commits) and residual inventory
0c3f5fd907 fix(rules): condition durations scale with caster level (hold person, doom, touch of fatigue, vanish)
Compare 2 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-09-17 23:20:26 +02:00
a144423522 fix(rules): total defense and fighting defensively cannot be combined (SRD Total Defense) - no stacking, second declaration rejected
980d53d80b fix(rules): aid another bonuses expire at the beginning of the aider's next turn, not the beneficiary's (SRD Aid Another)
e253b03ffe fix(rules): restricted charge - a creature limited to a standard action (staggered/disabled, surprise round) can still charge at 1x speed
a5bd3c5a85 fix(rules): total defense denies attacks of opportunity (SRD Total Defense: allowance drops to 0 while the bonus is active)
6d96779ded fix(rules): spear of purity and shard of chaos deliver their SRD 1d8-per-two-levels ranged-touch damage (Will half); alignment gate documented as unmodeled
Compare 101 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-09-12 10:37:31 +02:00
4b4e6f2726 fix(rules): stabilize a dying creature when healed
e8cca954d0 docs(rules): document out-of-scope limitations
1363bb7f06 fix(rules): consume the current turn's swift for an in-turn immediate
dde6bc1f5d fix(rules): restrict nauseated creatures to a single move action
49aa79d612 fix(rules): restrict maneuvers to targets within one size category
Compare 31 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-09-11 14:47:17 +02:00
b3398c16ce feat(observation): expose spell cast time in the snapshot
c5426ffe34 feat(spells): honor spell cast time in the action budget
0997c8d1b5 feat(rules): allow a move action in place of a standard action
e44ec75f2b fix(rules): classify run as a full-round action
Compare 4 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-09-11 13:11:48 +02:00
9c6f5e277e feat(cli): render --transcript output as a table
d6c8f88f77 feat(cli): add --simple-monster-death option to kill monsters at hp <= 0
b7c80babfd fix(rules): enforce the action-economy budget on policy output
a4814b935b fix(rules): apply cover by attacker's best corner for multi-square attackers
9fb1c2d75a fix(rules): apply energy resistance per damage component
Compare 7 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-09-10 23:36:34 +02:00
9aee4f6f6b fix(rules): correct P2/P3 PF1e conformance bugs (flanking, touch, blinded, disabled, death, maneuvers, DR, sneak)
5afe495c4a fix(rules): correct P1 PF1e conformance bugs (area saves, concentration, prone, slots, helpless, nauseated)
1ca5aed758 data(spells): add batch 3 of PC spell list (32 spells)
543da6a931 data(spells): add batch 2 of PC spell list (32 spells)
07e0d83300 data(spells): add batch 1 of PC spell list (32 spells)
Compare 31 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-09-06 18:00:23 +02:00
d2cd6f0702 docs: document enriched observation snapshot and add LLM demo test
bfb8d0a30c feat(combat): expose threat grid and terrain semantics in observation
cfeb28e336 feat(combat): expose per-pair movement and threat info in observation
90c71bbeb0 feat(combat): expose class features and spell data in observation snapshot
f3d874790a feat(combat): expose weapon reference in observation snapshot
Compare 6 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-09-06 12:43:05 +02:00
cd796ecffb docs: document LLM observation contract and expanded action options
e75ab58055 feat(combat): add serializable Observation snapshot and LLMPolicy adapter
7843756de2 feat(combat): expose charge failure reasons via ChargeResult
56c8970d5b feat(combat): expose threatened squares and movement cost fields for LLM policy
9c49f85af8 feat(combat): resolve all natural melee weapons in full_attack
Compare 23 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-09-04 23:02:45 +02:00
83a5250ca6 fix(combat): deed range gating
c5f31c30d1 fix(combat): summon spawns only on passable cells
f4fc66a6ab docs: align README with fixed behavior
0dcb967033 test(combat): pin ScriptedRng transcripts, unique per scenario
6e08df6eb6 feat(combat): class abilities from default_policy
Compare 36 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-09-04 22:57:02 +02:00
9819c3bda9 fix(combat): deed range gating
fc62a19c9e fix(combat): summon spawns only on passable cells
114ec20866 docs: align README with fixed behavior
9ffae1a7a2 test(combat): pin ScriptedRng transcripts, unique per scenario
f155146225 feat(combat): class abilities from default_policy
Compare 35 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-09-04 22:50:08 +02:00
930061e55a fix(combat): deed range gating
412ecb6c86 fix(combat): summon spawns only on passable cells
f01e061a4e docs: align README with fixed behavior
7966cbc916 test(combat): pin ScriptedRng transcripts, unique per scenario
83d37e0f8b feat(combat): class abilities from default_policy
Compare 36 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-08-29 13:38:07 +02:00
2e49aa7293 docs(handoff): add finalize-engine plan for session transfer
52904a0d03 docs(handoff): add session summary for pf1e-simulator transfer
37f07d90a7 chore(data): drop Plot Armor from misty features (non-combat feat)
82148cea1e test(loaders): add unit tests for combatant feat resolution and feature/spell handling
Compare 4 commits »
ctan pushed to main at ctan/pf1e-simulator 2026-08-17 22:55:03 +02:00
36f72dcb37 chore(clean): cleanup .codegraph
ctan pushed to main at ctan/pf1e-simulator 2026-08-17 22:54:08 +02:00
557bb2304a fix(git): fix gitignore for .codegraph
ctan pushed to main at ctan/cao-playbooks 2025-11-25 09:39:01 +01:00
1bed22c5fa Add playbook to apt update
2bec21bcd6 Initial Commit
Compare 2 commits »
ctan pushed to main at ctan/cao-playbooks 2025-11-25 00:15:15 +01:00
1a60d43f44 Add playbook to apt update