3.2 KiB
I Want To Heal — Thor healer roguelike
Playable low-poly third-person combat vertical slice for AYN Thor's dual displays.
Offline-first frontend includes three timestamped save slots, optional account sync, local/online overwrite controls, Hunter Profile statistics, boss collection logs, Settings, and PvE/PvP mode entry points.
Run
pnpm install
pnpm dev
The development server listens on 0.0.0.0:4173.
TrueNAS deployment
The production preview server uses the existing deployment address and port:
- Public URL:
https://iwanttoheal.phenomrom.com - Host/container port:
4173 - App directory:
/mnt/usbssds/apps/iwanttoheal/app
Copy the repository into the app directory, then deploy compose.yaml. The old
app's db:init step is intentionally omitted because this game has no database.
The existing reverse proxy can keep forwarding the public hostname to port
4173.
Publish updates to Gitea
The repository target is:
https://git.whoagland.com/phenom/i-want-to-heal-mmo.git
Publish a checked update from the main branch:
pnpm publish:gitea -- --message "Describe the update"
The script installs locked dependencies, builds, runs tests, commits all project
changes, and pushes main. If the TrueNAS app directory is mounted locally, it
also performs a fast-forward-only pull. Otherwise it prints the clone/pull command
to run on TrueNAS before restarting the app. The pull refuses to run when the
TrueNAS checkout still points at the old game's repository; move or archive that
checkout and clone the new repository first.
Preview checks without changing Git or TrueNAS:
pnpm publish:gitea -- --dry-run
Gitea credentials must come from Git's credential manager or an SSH remote. Do not store access tokens in this repository.
Controls
WASD/ left stick: moveQandE/ D-pad: cycle party target1–6: cast Smite, Renew, Shield, Purify, Radiance, Flash Heal- Gamepad:
X,Y,B,A,LB,RBmap to those abilities M: tactical mapI: inventory and item tooltipEnter/ Start: begin or reset encounter
Touch controls on lower display support party targeting, ability casting, map, and inventory.
Prototype scope
- Five-member AI party with Disc Priest healer
- Animated Druid healer, Knight tank, Ranger, Rogue, and Mage party models
- One animated boss: Bulldrome, using the Bull model at 180% of its original prototype scale
- Telegraph, charge, 0.75-second knockdown, and return-to-tank behavior
- Three-charge cycle into a five-second stack marker and 300-damage shared pounce
- Tank pressure, party-wide Cinder Nova, dispellable Ember Brand
- Full cooldown, mana, healing-over-time, shield absorption, and victory/defeat simulation
- True display ratios: 1920×1080 top and 1240×1080 bottom
- Android layout targets: approximately 960×540 CSS pixels top and 620×540 CSS pixels bottom
- Lower-screen typography scales against its own container, never the main page viewport
Current build is browser-based for fast iteration. Shipping to separate physical Thor displays needs an Android host that presents the game viewport and tactical React surface on distinct display contexts.