Skip to content

Add JackForge Foundry VTT module for Pathfinder 1e - #1

Draft
DatJavaClass wants to merge 1 commit into
mainfrom
claude/trusting-noether-momz46
Draft

DatJavaClass wants to merge 1 commit into
mainfrom
claude/trusting-noether-momz46

Conversation

@DatJavaClass

Copy link
Copy Markdown
Owner

Summary

Adds a Foundry VTT module under foundry/ that turns JackForge into an in-game tool for Pathfinder 1e.

  • Compatibility: Foundry V12 build 343 minimum (12.343), pf1 system v11+ (the pf1 line that runs on V12).
  • Scope: standard PF1 HP only. No box-out / hit-location mode, no PF2e.
  • The Forge window (ApplicationV2): enter the WarMachine stat line and pick the chassis. The blueprint updates as you type. Forge Actor creates a PF1 NPC in a "JackForge Foundry" folder, and Copy SBC Text copies the SBC importer text.
  • Actor fidelity: a racial Construct class item carries HD, HP, custom BAB, and custom saves. Natural armor is set so AC comes out right, and each attack's attackBonus covers the gap between PF1's own math and the calibrated to-hit. Also adds DR/adamantine (Serric Steel), construct condition immunities, Energy Field temp HP for myrmidons, fly speed for hovering vectors, and token size.
  • No senses: darkvision is not added to actors or to the SBC text.
  • GUI: Iron Kingdoms foundry theme. Soot-and-iron riveted plate, a crimson blueprint panel lit like a lamp, brass fittings, a furnace header with flickering embers, hanging chains, and a CR "furnace heat" gauge. Animations are turned off when the user has reduced motion set.
  • Actors sidebar button works on both V12 (jQuery) and V13 (HTMLElement) hook signatures. A macro API is at game.modules.get("jackforge").api.
  • CI: .github/workflows/foundry.yml runs the engine tests. Publishing a release tagged foundry-vX.Y.Z builds jackforge.zip and attaches it, with module.json, to the release.

Test plan

  • node --test foundry/tests/*.test.mjs: the engine matches the original web engine field for field across every chassis, weight class, hover mode, and several hit-box counts. The README Juggernaut comes out CR 10, HP 143, AC 26, melee +18/+13. The SBC text never contains darkvision.
  • Rendered the real template and app code in headless Chromium with stubbed Foundry globals, at wide and narrow widths, including a myrmidon Energy Field.
  • Checked the actor payload against pf1 v11.11 template.json, the data models, and the bundled Homunculus/Construct compendium entries.
  • Not yet run inside a live Foundry V12 + pf1 world: forge a Juggernaut and confirm the sheet shows AC 26, HP 143, saves +13/+9/+13, and slams +18.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Jitxf35UsUjUtGGyPrrAYY


Generated by Claude Code

Ports the PF1 conversion engine from the web version into a Foundry
module (V12 build 343 minimum, pf1 system v11+). The Forge window
converts a WarMachine stat line live and forges a PF1 NPC actor whose
derived numbers match the calibrated stat block, or copies SBC text.

- Standard PF1 HP only; no box-out/hit-location mode, no PF2e
- No senses attached; darkvision is left off actors and SBC text
- Iron Kingdoms foundry styling: riveted iron plate, crimson blueprint,
  brass fittings, CR furnace gauge
- Node tests check the engine against the web engine for every chassis
- Workflow runs tests and packages jackforge.zip on foundry-v* releases

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Jitxf35UsUjUtGGyPrrAYY
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants