Refactor org web platform and remove legacy code
All checks were successful
Build Org Website / build (push) Successful in 39s
All checks were successful
Build Org Website / build (push) Successful in 39s
This commit is contained in:
@@ -114,7 +114,7 @@
|
||||
<section><h2>Study</h2><a href="/posts/career/career-list.html">Career</a> · <a href="/home/status.html">Competency status</a></section>
|
||||
<section><h2>Kitchen</h2><a href="/blogs/blogs-list.html">Blogs</a> · <a href="/tags/review.html">Weekly reviews</a></section>
|
||||
<section><h2>Workshop</h2><a href="/home/services.html">Services</a> · <a href="/home/wird-tracker.html">Wird tracker</a> · <a href="/home/backlog.html">Backlog</a></section>
|
||||
<section><h2>Playroom</h2><a href="/play/play.html">Play</a> · <a href="/play/rpg.html">The Archive World</a></section>
|
||||
<section><h2>Playroom</h2><a href="/play/play.html">Play</a> · <a href="/play/rpg.html">Rescue Princess Lima</a></section>
|
||||
<section><h2>Attic</h2><a href="/lima/index.html">Lima archive</a> · <a href="/blogs/blogs-list.html">Older writing</a></section>
|
||||
<section><h2>Garden</h2><a href="/home/notes.html">Notes wall</a> · <a href="/home/categories.html">Categories</a> · <a href="/sitemap.html">Sitemap</a></section>
|
||||
</div>
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
<a href="/play/terminal.html" data-kind="Story" data-desc="Explore a tiny command-line adventure hidden in the archive."><span>06</span><strong>Archive Terminal</strong></a>
|
||||
<a href="/play/study.html" data-kind="Timer" data-desc="Run a focus timer that grows a little desk scene as time passes."><span>07</span><strong>Study Lamp</strong></a>
|
||||
<a href="/play/sigil.html" data-kind="Maker" data-desc="Generate a small personal sigil from initials, colors, and motto."><span>08</span><strong>Sigil Press</strong></a>
|
||||
<a href="/play/rpg.html" data-kind="RPG world" data-desc="Walk through the website as Archive Town, discover eight landmarks, and travel through its living sections."><span>09</span><strong>The Archive World</strong></a>
|
||||
<a href="/play/rpg.html" data-kind="Fantasy RPG" data-desc="Cross a broken kingdom, defeat the fortress guardians, and rescue Princess Lima."><span>09</span><strong>Rescue Princess Lima</strong></a>
|
||||
<a href="/play/the-rain-index.html" data-kind="Artifact" data-desc="Handle impossible paper rooms, type forgotten words, and let a rainy archive file you back."><span>10</span><strong>The Rain Index</strong></a>
|
||||
<a href="/play/house.html" data-kind="Living archive" data-desc="Wander through a lived-in house where every room opens another part of the archive."><span>11</span><strong>The House of Pages</strong></a>
|
||||
</nav>
|
||||
|
||||
241
play/rpg.org
Executable file → Normal file
241
play/rpg.org
Executable file → Normal file
@@ -1,153 +1,112 @@
|
||||
#+TITLE: The Archive World
|
||||
#+OPTIONS: num:nil title:nil toc:nil
|
||||
#+TITLE: Rescue Princess Lima
|
||||
#+OPTIONS: num:nil title:nil toc:nil html-preamble:nil html-postamble:nil
|
||||
#+NO_SIDENOTES: t
|
||||
#+DATE: <2026-07-29 Wed>
|
||||
#+DATE: <2026-07-30 Thu>
|
||||
|
||||
#+BEGIN_EXPORT html
|
||||
<main class="play-root play-page archive-world" data-play-page="archive-world">
|
||||
<a class="play-back" href="/play/play.html">Back to Play</a>
|
||||
<!-- RPG-STANDALONE-START -->
|
||||
<main class="lima-rpg" data-princess-lima-rpg aria-label="Rescue Princess Lima role-playing game">
|
||||
<a class="lima-exit" href="/">Exit to Website</a>
|
||||
|
||||
<header class="play-page-head archive-world__heading">
|
||||
<p class="play-kicker">09 / Role Playing World</p>
|
||||
<h1>The Archive World</h1>
|
||||
<p>A complete story-forward RPG about names, memories, and the connections that give an archive meaning.</p>
|
||||
</header>
|
||||
<div id="princess-lima-game" class="lima-rpg__game" data-lima-game tabindex="0" role="application"
|
||||
aria-label="Rescue Princess Lima. Move with WASD or arrow keys. Attack with Space. Interact with E or Enter. Use a healing tonic with Q. Pause with Escape.">
|
||||
</div>
|
||||
|
||||
<section class="archive-world__shell" data-world-shell aria-labelledby="archive-world-title">
|
||||
<div class="archive-world__hud">
|
||||
<div class="rpg-hud__identity">
|
||||
<span>Traveler</span>
|
||||
<strong data-world-player>New arrival</strong>
|
||||
<small data-world-level>Lv 1</small>
|
||||
</div>
|
||||
<div class="rpg-hud__health">
|
||||
<span>Health <strong data-world-health-text>100 / 100</strong></span>
|
||||
<div class="rpg-meter" aria-hidden="true"><i data-world-health-bar style="width:100%"></i></div>
|
||||
</div>
|
||||
<div class="rpg-hud__sigils">
|
||||
<span>Archive Sigils</span>
|
||||
<strong data-world-sigil-count>0 / 8</strong>
|
||||
</div>
|
||||
<div class="rpg-hud__item">
|
||||
<span>Selected item</span>
|
||||
<strong data-world-selected-item>Ink Vial ×2</strong>
|
||||
</div>
|
||||
<div class="rpg-hud__actions">
|
||||
<button type="button" data-world-quests>Quests</button>
|
||||
<button type="button" data-world-inventory>Inventory</button>
|
||||
<button type="button" data-world-journal-open>Journal</button>
|
||||
<button type="button" data-world-sound>Sound: muted</button>
|
||||
<button type="button" data-world-fullscreen aria-pressed="false">Fullscreen</button>
|
||||
<button type="button" data-world-reset>Menu</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="rpg-objective" aria-live="polite">
|
||||
<span>Main objective</span>
|
||||
<strong data-world-objective>Speak with Gatekeeper Orin at the Town Gate.</strong>
|
||||
</div>
|
||||
<p class="archive-world__badge" data-world-badge hidden>Archive Cartographer · all eight landmarks discovered</p>
|
||||
|
||||
<h2 id="archive-world-title" class="visually-hidden">Archive World role-playing game</h2>
|
||||
<div class="archive-world__stage">
|
||||
<div
|
||||
id="archive-world-game"
|
||||
class="archive-world__game"
|
||||
tabindex="0"
|
||||
role="application"
|
||||
aria-label="The Archive World. Move with arrow keys or WASD, attack with Space, interact with E or Enter, use an item with Q, and open the menu with Escape."
|
||||
>
|
||||
<p class="archive-world__loading">Opening the Archive Town gate…</p>
|
||||
</div>
|
||||
|
||||
<div class="rpg-boss" data-world-boss hidden aria-live="polite">
|
||||
<span data-world-boss-name>The Redactor</span>
|
||||
<div class="rpg-meter rpg-meter--boss"><i data-world-boss-bar style="width:100%"></i></div>
|
||||
</div>
|
||||
|
||||
<div class="archive-world__overlay" data-world-overlay hidden>
|
||||
<section class="archive-world__panel" data-world-panel role="dialog" aria-modal="true" aria-labelledby="archive-world-panel-title">
|
||||
<header>
|
||||
<div>
|
||||
<p class="play-kicker" data-world-panel-eyebrow>Archive</p>
|
||||
<h2 id="archive-world-panel-title" data-world-panel-title>Traveler’s folio</h2>
|
||||
</div>
|
||||
<button type="button" data-world-panel-close aria-label="Close panel">×</button>
|
||||
</header>
|
||||
<div class="archive-world__panel-body" data-world-panel-body></div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="archive-world__controls" aria-label="Touch game controls">
|
||||
<div class="archive-world__dpad">
|
||||
<button type="button" data-world-move="up" aria-label="Move up">↑</button>
|
||||
<button type="button" data-world-move="left" aria-label="Move left">←</button>
|
||||
<button type="button" data-world-move="down" aria-label="Move down">↓</button>
|
||||
<button type="button" data-world-move="right" aria-label="Move right">→</button>
|
||||
</div>
|
||||
<div class="archive-world__action-pad">
|
||||
<button type="button" data-world-attack>Attack</button>
|
||||
<button type="button" data-world-interact>Explore</button>
|
||||
<button type="button" data-world-item>Item</button>
|
||||
<button type="button" data-world-menu>Menu</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="archive-world__prompt" data-world-prompt>Follow the paths, signs, and warm window light.</p>
|
||||
<p class="archive-world__status" data-world-status aria-live="polite">
|
||||
Choose your traveler to enter Archive Town.
|
||||
</p>
|
||||
<p class="archive-world__instructions">
|
||||
Move: WASD/arrows · Attack: Space · Explore: E/Enter · Use item: Q · Cycle item: Tab · Pause: Escape.
|
||||
Audio begins muted and remains optional.
|
||||
</p>
|
||||
<section class="lima-rpg__loading" data-lima-loading aria-live="polite">
|
||||
<strong>Preparing the road to Lima…</strong>
|
||||
<span>Loading local maps, characters, and sounds.</span>
|
||||
</section>
|
||||
|
||||
<dialog class="archive-world__dialog archive-world__setup" data-world-setup>
|
||||
<form data-world-setup-form>
|
||||
<p class="play-kicker">New traveler</p>
|
||||
<h2>Who has arrived?</h2>
|
||||
<p>The Town Gate is losing names. Yours has held long enough for the Living Bookmark to find you.</p>
|
||||
<label>
|
||||
Traveler name
|
||||
<input name="name" type="text" minlength="1" maxlength="20" autocomplete="nickname" required />
|
||||
</label>
|
||||
<fieldset>
|
||||
<legend>Traveller coat</legend>
|
||||
<label><input type="radio" name="palette" value="brass" checked /> <span class="palette-swatch palette-swatch--brass"></span> Brass</label>
|
||||
<label><input type="radio" name="palette" value="moss" /> <span class="palette-swatch palette-swatch--moss"></span> Moss</label>
|
||||
<label><input type="radio" name="palette" value="berry" /> <span class="palette-swatch palette-swatch--berry"></span> Berry</label>
|
||||
</fieldset>
|
||||
<p class="archive-world__error" data-world-setup-error aria-live="polite"></p>
|
||||
<button type="submit">Enter the world</button>
|
||||
</form>
|
||||
</dialog>
|
||||
|
||||
<details class="archive-world__directory">
|
||||
<summary>Plain directory of Archive Town</summary>
|
||||
<p>This directory remains usable if JavaScript, Canvas, Phaser, or optional game assets are unavailable.</p>
|
||||
<div class="archive-world__directory-grid">
|
||||
<section><h2>Town Gate</h2><a href="/">Home</a> · <a href="/recently-updated.html">Recently updated</a> · <a href="/home/contact.html">Contact</a></section>
|
||||
<section><h2>Grand Library</h2><a href="/posts/posts-list.html">Posts</a> · <a href="/home/categories.html">Categories</a> · <a href="/posts/posts-intro.html">Introduction</a></section>
|
||||
<section><h2>Guild Study</h2><a href="/posts/career/career-list.html">Career</a> · <a href="/home/status.html">Competency status</a> · <a href="/posts/career/probation-objectives.html">Objectives</a></section>
|
||||
<section><h2>Kitchen Inn</h2><a href="/blogs/blogs-list.html">Blogs</a> · <a href="/tags/review.html">Weekly reviews</a> · <a href="/blogs/blogs-intro.html">Introduction</a></section>
|
||||
<section><h2>Workshop</h2><a href="/home/services.html">Services</a> · <a href="/home/wird-tracker.html">Wird tracker</a> · <a href="/home/countdown.html">Countdowns</a> · <a href="/home/backlog.html">Backlog</a></section>
|
||||
<section><h2>Playroom</h2><a href="/play/play.html">Play</a> · <a href="/play/the-rain-index.html">Rain Index</a> · <a href="/play/house.html">House of Pages</a></section>
|
||||
<section><h2>Lima Museum</h2><a href="/lima/index.html">Lima</a> · <a href="/blogs/2025/2025-list.html">Older writing</a> · <a href="/play/memory.html">Memory Cabinet</a></section>
|
||||
<section><h2>Notes Garden</h2><a href="/home/notes.html">Notes wall</a> · <a href="/home/categories.html">Categories</a> · <a href="/recently-updated.html">Recently updated</a> · <a href="/sitemap.html">Sitemap</a></section>
|
||||
<section class="lima-main-menu" data-lima-menu hidden aria-labelledby="lima-game-title">
|
||||
<p class="lima-main-menu__eyebrow">A four-chapter fantasy adventure</p>
|
||||
<h1 id="lima-game-title">Rescue<br />Princess Lima</h1>
|
||||
<p class="lima-main-menu__tagline">The princess has been taken beyond the mountains. Help a wounded village, cross the wild roads, and enter the Fortress of Shadows.</p>
|
||||
<div class="lima-menu-stack">
|
||||
<button type="button" class="lima-primary" data-lima-new>New Game</button>
|
||||
<button type="button" data-lima-continue disabled>Continue</button>
|
||||
<button type="button" data-lima-credits>Credits</button>
|
||||
<a class="lima-button-link" href="/">Exit to Website</a>
|
||||
</div>
|
||||
</details>
|
||||
</section>
|
||||
|
||||
<noscript><p class="archive-world__noscript">The RPG needs JavaScript, but every destination remains available in the plain directory above.</p></noscript>
|
||||
<section class="lima-setup" data-lima-setup hidden aria-labelledby="lima-setup-title">
|
||||
<form data-lima-setup-form>
|
||||
<p class="lima-main-menu__eyebrow">New Game</p>
|
||||
<h2 id="lima-setup-title">Name the traveller</h2>
|
||||
<label>Traveller name <input type="text" name="name" minlength="1" maxlength="20" autocomplete="nickname" required /></label>
|
||||
<fieldset>
|
||||
<legend>Travel cloak</legend>
|
||||
<label><input type="radio" name="appearance" value="azure" checked /> Azure</label>
|
||||
<label><input type="radio" name="appearance" value="ember" /> Ember</label>
|
||||
<label><input type="radio" name="appearance" value="pine" /> Pine</label>
|
||||
</fieldset>
|
||||
<p class="lima-setup__error" data-lima-setup-error aria-live="polite"></p>
|
||||
<button type="submit" class="lima-primary">Begin Chapter One</button>
|
||||
<button type="button" data-lima-setup-cancel>Back</button>
|
||||
</form>
|
||||
</section>
|
||||
|
||||
<section class="lima-hud" data-lima-hud hidden aria-label="Game status">
|
||||
<div><span>Traveller</span><strong data-lima-player>Traveller</strong><span data-lima-chapter>Chapter 1</span></div>
|
||||
<div><span>Health</span><strong data-lima-health>100 / 100</strong><div class="lima-hud__healthbar" aria-hidden="true"><i></i></div></div>
|
||||
<div class="lima-hud__objective"><span data-lima-region>Broken Village</span><strong data-lima-objective>Speak with Elder Corin.</strong></div>
|
||||
<div class="lima-hud__actions">
|
||||
<button type="button" data-lima-quests aria-label="Quest log">Quests</button>
|
||||
<button type="button" data-lima-inventory aria-label="Inventory" data-lima-tonics>Tonic ×2</button>
|
||||
<button type="button" data-lima-sound>Sound Muted</button>
|
||||
<button type="button" data-lima-fullscreen aria-pressed="false">Fullscreen</button>
|
||||
<button type="button" data-lima-pause>Menu</button>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="lima-boss" data-lima-boss hidden aria-live="polite">
|
||||
<strong data-lima-boss-name>Guardian</strong>
|
||||
<div class="lima-boss__bar" aria-hidden="true"><i></i></div>
|
||||
</section>
|
||||
|
||||
<div class="lima-status-stack" data-lima-status-stack hidden>
|
||||
<p class="lima-prompt" data-lima-prompt>Move with WASD or arrow keys.</p>
|
||||
<p class="lima-status" data-lima-status aria-live="polite">Audio begins muted. Press Sound to enable it.</p>
|
||||
</div>
|
||||
|
||||
<div class="lima-touch" data-lima-touch hidden aria-label="Touch controls">
|
||||
<div class="lima-dpad">
|
||||
<button type="button" data-lima-move="up" aria-label="Move up">↑</button>
|
||||
<button type="button" data-lima-move="left" aria-label="Move left">←</button>
|
||||
<button type="button" data-lima-move="down" aria-label="Move down">↓</button>
|
||||
<button type="button" data-lima-move="right" aria-label="Move right">→</button>
|
||||
</div>
|
||||
<div class="lima-actions">
|
||||
<button type="button" data-lima-attack>Attack</button>
|
||||
<button type="button" data-lima-interact>Interact</button>
|
||||
<button type="button" data-lima-item>Item</button>
|
||||
<button type="button" data-lima-pause>Menu</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="lima-overlay" data-lima-overlay hidden>
|
||||
<section class="lima-panel" data-lima-panel role="dialog" aria-modal="true" aria-labelledby="lima-panel-title">
|
||||
<header>
|
||||
<div><p class="lima-panel__eyebrow">Rescue Princess Lima</p><h2 id="lima-panel-title" data-lima-panel-title>Menu</h2></div>
|
||||
<button type="button" data-lima-panel-close aria-label="Close">×</button>
|
||||
</header>
|
||||
<div class="lima-panel__body" data-lima-panel-body></div>
|
||||
</section>
|
||||
</div>
|
||||
|
||||
<noscript>
|
||||
<section class="lima-rpg__loading"><strong>JavaScript is required for this game.</strong><a href="/">Exit to Website</a></section>
|
||||
</noscript>
|
||||
</main>
|
||||
|
||||
<script src="/assets/scripts/vendor/phaser-4.1.0.min.js?v=archive-world-2.1.2" defer></script>
|
||||
<script src="/assets/scripts/pages/archive-world-data.js?v=archive-world-2.1.2" defer></script>
|
||||
<script src="/assets/scripts/pages/archive-world-state.js?v=archive-world-2.1.2" defer></script>
|
||||
<script src="/assets/scripts/pages/archive-world-systems.js?v=archive-world-2.1.2" defer></script>
|
||||
<script src="/assets/scripts/pages/archive-world-audio.js?v=archive-world-2.1.2" defer></script>
|
||||
<script src="/assets/scripts/pages/archive-world-ui.js?v=archive-world-2.1.2" defer></script>
|
||||
<script src="/assets/scripts/pages/archive-world-scenes.js?v=archive-world-2.1.2" defer></script>
|
||||
<script src="/assets/scripts/pages/archive-world.js?v=archive-world-2.1.2" defer></script>
|
||||
<link rel="stylesheet" href="/assets/styles/pages/princess-lima-rpg.css?v=princess-lima-1.0.1" />
|
||||
<script src="/assets/scripts/vendor/phaser-4.1.0.min.js?v=princess-lima-1.0.1" defer></script>
|
||||
<script src="/assets/scripts/pages/princess-lima-data.js?v=princess-lima-1.0.1" defer></script>
|
||||
<script src="/assets/scripts/pages/princess-lima-state.js?v=princess-lima-1.0.1" defer></script>
|
||||
<script src="/assets/scripts/pages/princess-lima-systems.js?v=princess-lima-1.0.1" defer></script>
|
||||
<script src="/assets/scripts/pages/princess-lima-audio.js?v=princess-lima-1.0.1" defer></script>
|
||||
<script src="/assets/scripts/pages/princess-lima-ui.js?v=princess-lima-1.0.1" defer></script>
|
||||
<script src="/assets/scripts/pages/princess-lima-scenes.js?v=princess-lima-1.0.1" defer></script>
|
||||
<script src="/assets/scripts/pages/princess-lima-game.js?v=princess-lima-1.0.1" defer></script>
|
||||
<!-- RPG-STANDALONE-END -->
|
||||
#+END_EXPORT
|
||||
|
||||
Reference in New Issue
Block a user