Skip to content

sheet-fabula 1.2.0: a battle screen with pictures, and the Atlas classes - #40

Merged
HarryCordewener merged 1 commit into
mainfrom
claude/project-thread-hridd8
Nov 1, 2026
Merged

HarryCordewener merged 1 commit into
mainfrom
claude/project-thread-hridd8

Conversation

@HarryCordewener

Copy link
Copy Markdown
Member

Requested by Grave · project thread

Summary

sheet-fabula 1.2.0

  • +encounter draws a JRPG-style battle screen:
    • a top window with the GM, the turn and the battlefield;
    • the Foes and Party windows, side by side when the client is wide enough and stacked at 80 columns;
    • a commands window for whoever can act now: a character on their turn, or the GM on the foes' turn.
  • HP and MP show as gauge() bars, and > marks whoever can act.
  • The battlefield is rows of four figure()s:
    • a character's IMAGE;
    • a foe's picture, with its text art as the explicit fallback for clients that can't show pictures;
    • anyone with neither is their name in brackets.
  • Foes out of the fight leave the battlefield.
  • +foe/picture <foe>=<address> and +foe/art <foe>=<text> let the GM set a foe's picture and text art. The bestiary +config table gets matching picture and art fields. An address must start with https:// or /.
  • 13 classes added to the class list:
    • High Fantasy Atlas: Chanter, Commander, Dancer, Symbolist
    • Techno Fantasy Atlas: Esper, Mutant, Pilot
    • Natural Fantasy Atlas: Floralist, Gourmet, Invoker, Merchant
    • bonus classes: Ace of Cards, Necromancer
  • What each class's first level gives comes from CrysTools and the Foundry system's compendium. Both are published under the TPL, and they agree.
  • A new either benefit covers the five classes that give +5 HP or MP:
    • +sheet/benefit <class>=hp|mp records the pick as a build-ledger entry (kind benefit).
    • A player picks once; after approval, staff change it.
    • Taking such a class without a pick says so.
  • NOTICE, help (+help encounter screen), README, index and versions are updated.

fabula-wiki 1.2.0

  • The classes page lists the Atlas and bonus classes.
  • The conflicts and other pages mention the battle screen and +sheet/benefit.

Licence

Fabula Ultima Third-Party Tabletop License 1.0, §3, lets a third-party work use class rules, Heroic Skills, basic equipment, Rare Item Qualities and NPC Spells from any official publication. This PR takes only class names and their first-level benefits. It has no skill text and no Atlas bestiary entries; the foes stay this package's own.

Testing

Full play-tests on a local server:

  • playtest.py, 260 steps, 0 failures: character creation, play, approval and encounters. It now also covers the Atlas classes and every +sheet/benefit path:
    • no pick yet;
    • a pick;
    • a pick replaced in place during character creation;
    • a refusal after approval;
    • a staff change recorded as its own entry.
  • conflict.py, 106 steps, 0 failures: conflicts at levels 5, 20 and 45. It now also covers:
    • the commands windows;
    • battlefield names, captions and text art;
    • picture validation, setting and removal;
    • the GM's bars against what players see.

Screenshots from the running server (player view, GM view and a text client) are attached in the project thread, because GitHub has no API for uploading images.


Generated by Claude Code

+encounter draws a JRPG battle screen: a battlefield of figure() slots
(a character's IMAGE, a foe's picture with its text art as the explicit
fallback, else the name in brackets), the Foes and Party windows with
gauge() HP and MP bars, and a commands window for whoever can act now.
+foe/picture and +foe/art set a foe's picture and art; the bestiary gets
picture and art fields.

The class list gains the High, Techno and Natural Fantasy Atlas classes
and the two bonus classes. Five give +5 HP or MP, picked with
+sheet/benefit as a build-ledger entry. fabula-wiki 1.2.0 lists them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Rqqt7UBk8BuWgNT9oDtMm6
@coderabbitai

coderabbitai Bot commented Nov 1, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

  • Run on-demand review

This review includes 13 billable files and costs up to $3.25.

  • Ask an admin to make reviews automatic

Open in CodeRabbit

Reviews can continue after your included limit without a manual trigger. An admin must approve usage-based billing.

Or wait 54 minutes for your next included review.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available. Your 60 included PR review attempts over the past 7 days set your current allowance at 1 review per hour.

Learn how review limits work.

Review configuration:

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: ASSERTIVE
  • Plan: Essentials
  • Run ID: 66b92785-34a2-48e3-95c3-8f7311dce947
Commits

Reviewing files that changed from the base of the PR and between 46c6558 and 292e20b.

Files selected for processing: 13
  • README.md
  • fabula-wiki/NOTICE.md
  • fabula-wiki/package.yaml
  • fabula-wiki/wiki/help/fabula_license_notice.md
  • fabula-wiki/wiki/main/fabula_character_creation.md
  • fabula-wiki/wiki/main/fabula_classes.md
  • fabula-wiki/wiki/main/fabula_conflicts.md
  • fabula-wiki/wiki/main/fabula_on_this_game.md
  • fabula-wiki/wiki/main/fabula_resources_and_levels.md
  • index.yaml
  • sheet-fabula/NOTICE.md
  • sheet-fabula/README.md
  • sheet-fabula/package.yaml
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

@HarryCordewener
HarryCordewener marked this pull request as ready for review November 1, 2026 18:47
@HarryCordewener
HarryCordewener merged commit bf63967 into main Nov 1, 2026
3 checks passed
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