Files
fabula-ultima-html/html/135.html
Drew Malzahn c75cd188c1 feat: Add book viewer at /book with shared design system
- Add html/index.html: book viewer with auto-discovering sidebar,
  prev/next navigation, keyboard shortcuts, and URL hash persistence
- Add html/book-page.css: shared stylesheet for all book pages derived
  from fabula-ultima-sheet.css (dark theme, CSS variables, Cinzel/
  Crimson Text fonts, common class styles)
- Add book.js entry point so webpack injects the shared CSS into the
  book viewer; update webpack.config.js for two entry points, split
  CSS chunk, CopyWebpackPlugin for book pages, and /book dev server
  rewrite rule
- Add scripts/strip_watermark.py: removes "Guest Customer (Order
  #52072168)" watermark artifacts from all 210 book pages
- Add scripts/restyle_book.py: strips per-page <style> blocks and
  injects <link rel="stylesheet" href="book-page.css"> into all pages
- Update Justfile deploy to scp -r dist/* for the new /book subtree

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 03:36:35 +00:00

67 lines
3.1 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<link rel="stylesheet" href="book-page.css">
<div class="document-container">
<h1>NEW CLASSIC CHARACTERS</h1>
<!-- ELEMENTAL ACROBAT -->
<h2>ELEMENTAL ACROBAT</h2>
<p class="class-header-info"><strong>Stats:</strong> Dexterity d10, Insight d6, Might d8, Willpower d8</p>
<ul>
<li><strong>Fury (1 level):</strong> Indomitable Spirit</li>
<li><strong>Invoker (3 levels):</strong> Invocation (SL 2), Ripples</li>
<li><strong>Sharpshooter (1 level):</strong> Barrage</li>
</ul>
<div class="equipment-details">
<strong>Equipment:</strong> Giant chakram (custom weapon, (DEX + MIG), thrown, ranged, accurate, defense boost, powerful), combat tunic. <strong>Zenit Cost:</strong> 120 zenit.
</div>
<!-- FLUTIST MONK -->
<h2>FLUTIST MONK</h2>
<p class="class-header-info"><strong>Stats:</strong> Dexterity d6, Insight d8, Might d8, Willpower d10</p>
<ul>
<li><strong>Invoker (3 levels):</strong> Invocation, Wellspring Expansion (SL 2)</li>
<li><strong>Spiritist (2 levels):</strong> Ritual Spiritism, Spiritual Magic (Cleanse)</li>
</ul>
<div class="equipment-details">
<strong>Equipment:</strong> Staff (described as a magic flute!), sage robe. <strong>Zenit Cost:</strong> 270 zenit.
</div>
<!-- FRONTIER RESEARCHER -->
<h2>FRONTIER RESEARCHER</h2>
<p class="class-header-info"><strong>Stats:</strong> Dexterity d8, Insight d10, Might d6, Willpower d8</p>
<ul>
<li><strong>Loremaster (1 level):</strong> Quick Assessment</li>
<li><strong>Merchant (2 levels):</strong> Ive Heard of It!, Winds of Trade</li>
<li><strong>Sharpshooter (2 levels):</strong> Crossfire, Warning Shot</li>
</ul>
<div class="equipment-details">
<strong>Equipment:</strong> Twin pocket pistols (custom weapon, (DEX + INS), firearm, ranged, accurate, quick), travel garb. <strong>Zenit Cost:</strong> 170 zenit.
</div>
<!-- GRINNING VETERAN -->
<h2>GRINNING VETERAN</h2>
<p class="class-header-info"><strong>Stats:</strong> Dexterity d6, Insight d8, Might d10, Willpower d8</p>
<ul>
<li><strong>Gourmet (3 levels):</strong> Cooking, Knife and Fork, Traveling Cook</li>
<li><strong>Guardian (1 level):</strong> Protect</li>
<li><strong>Weaponmaster (1 level):</strong> Bladestorm</li>
</ul>
<div class="equipment-details">
<strong>Equipment:</strong> Waraxe, runic plate. <strong>Zenit Cost:</strong> 70 zenit.
</div>
<!-- KEEPER OF THE SACRED TREE -->
<h2>KEEPER OF THE SACRED TREE</h2>
<p class="class-header-info"><strong>Stats:</strong> Dexterity d6, Insight d6, Might d10, Willpower d10</p>
<ul>
<li><strong>Arcanist (3 levels):</strong> Bind and Summon (Oak), Emergency Arcanum (SL 2)</li>
<li><strong>Invoker (2 levels):</strong> Invocation, Linked Invocation</li>
</ul>
<div class="equipment-details">
<strong>Equipment:</strong> Staff, travel garb. <strong>Zenit Cost:</strong> 370 zenit.
</div>
<!-- Footer/Metadata -->
<footer>
</footer>
</div>