feat: Multiple book improvements
- Format spell tables like they are in the book - Add permalinks to headers - Formatting - Book-wide search
This commit is contained in:
@@ -18,17 +18,26 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<td>Minor</td>
|
<td>Minor</td>
|
||||||
<td>5</td>
|
<td>5</td>
|
||||||
<td>Enemy commanders, unique and infamous monsters, and antagonists causing trouble in small settlements.</td>
|
<td>
|
||||||
|
Enemy commanders, unique and infamous monsters, and antagonists causing
|
||||||
|
trouble in small settlements.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Major</td>
|
<td>Major</td>
|
||||||
<td>10</td>
|
<td>10</td>
|
||||||
<td>Tyrants, powerful mages, legendary creatures, and entities that threaten entire countries.</td>
|
<td>
|
||||||
|
Tyrants, powerful mages, legendary creatures, and entities that threaten
|
||||||
|
entire countries.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Supreme</td>
|
<td>Supreme</td>
|
||||||
<td>15</td>
|
<td>15</td>
|
||||||
<td>Archdemons, immortal entities, and alien deities bent on destruction or domination.</td>
|
<td>
|
||||||
|
Archdemons, immortal entities, and alien deities bent on destruction or
|
||||||
|
domination.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -44,25 +53,33 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Escape</td>
|
<td>Escape</td>
|
||||||
<td>A Villain may spend 1 Ultima Point to safely leave the scene — the Game Master describes how they do so,
|
<td>
|
||||||
perhaps leaving a few henchmen behind to "keep the heroes company".</td>
|
A Villain may spend 1 Ultima Point to safely leave the scene — the Game
|
||||||
|
Master describes how they do so, perhaps leaving a few henchmen behind
|
||||||
|
to "keep the heroes company".
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Invoke Trait</td>
|
<td>Invoke Trait</td>
|
||||||
<td>After performing a Check, a Villain may spend 1 Ultima Point to invoke one of their Traits and reroll one or
|
<td>
|
||||||
both dice (this follows the same rules seen on <a href="/books/core/#page-46">page 46</a>).</td>
|
After performing a Check, a Villain may spend 1 Ultima Point to invoke
|
||||||
|
one of their Traits and reroll one or both dice (this follows the same
|
||||||
|
rules seen on <a href="/books/core/#page-46">page 46</a>).
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Recovery</td>
|
<td>Recovery</td>
|
||||||
<td>A Villain may use an action and spend 1 Ultima Point to recover from all status effects and also recover 50
|
<td>
|
||||||
Mind Points.</td>
|
A Villain may use an action and spend 1 Ultima Point to recover from all
|
||||||
|
status effects and also recover 50 Mind Points.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<p>
|
<p>
|
||||||
While Player Characters can gain Fabula Points in several ways, Villains
|
While Player Characters can gain Fabula Points in several ways, Villains
|
||||||
cannot recharge their Ultima Points — in a way, they represent the Villain's
|
cannot recharge their Ultima Points — in a way, they represent the Villain's
|
||||||
determination and will to pursue their objectives. A Villain with no
|
determination and will to pursue their objectives. A Villain with no remaining
|
||||||
remaining Ultima Points is no longer a Villain and becomes equivalent to any
|
Ultima Points is no longer a Villain and becomes equivalent to any other NPC;
|
||||||
other NPC; alternatively, they may choose to escalate (see next page).
|
alternatively, they may choose to escalate (see next page).
|
||||||
</p>
|
</p>
|
||||||
@@ -1,22 +1,20 @@
|
|||||||
<h2>SHOULD THIS VILLAIN ESCALATE?</h2>
|
<h2>SHOULD THIS VILLAIN ESCALATE?</h2>
|
||||||
<p>
|
<p>
|
||||||
When choosing whether a Villain will escalate, the Game Master should
|
When choosing whether a Villain will escalate, the Game Master should consider
|
||||||
consider the antagonist's importance within the story, their personality,
|
the antagonist's importance within the story, their personality, and the way
|
||||||
and the way the heroes chose to confront them: a Villain's escalation shows
|
the heroes chose to confront them: a Villain's escalation shows that the
|
||||||
that the heroes might win a conflict but still make the situation worse.
|
heroes might win a conflict but still make the situation worse.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
Most of the time it's best to simply let a Villain be defeated: maybe their
|
Most of the time it's best to simply let a Villain be defeated: maybe their
|
||||||
resolve is broken, maybe they even realized they were wrong and will turn
|
resolve is broken, maybe they even realized they were wrong and will turn into
|
||||||
into an ally.
|
an ally.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
Escalating your Villains sparingly will make them more memorable and also
|
Escalating your Villains sparingly will make them more memorable and also
|
||||||
ensure that Players feel like their actions have an impact on the world.
|
ensure that Players feel like their actions have an impact on the world.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>In general, you should only have two to four escalations per campaign.</p>
|
||||||
In general, you should only have two to four escalations per campaign.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h2>VILLAIN AND FABULA POINTS</h2>
|
<h2>VILLAIN AND FABULA POINTS</h2>
|
||||||
<p>
|
<p>
|
||||||
@@ -26,28 +24,28 @@
|
|||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
<strong>Multiple identities.</strong> If a Villain has more than one
|
<strong>Multiple identities.</strong> If a Villain has more than one
|
||||||
identity, the heroes only receive Fabula Points when they appear using
|
identity, the heroes only receive Fabula Points when they appear using their
|
||||||
their "antagonist persona". Once the deception is exposed, however, they
|
"antagonist persona". Once the deception is exposed, however, they will
|
||||||
will begin awarding Fabula Points every time they appear on a scene,
|
begin awarding Fabula Points every time they appear on a scene, whether
|
||||||
whether disguised or else.
|
disguised or else.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<strong>Multiple Villains.</strong> If two or more Villains appear during
|
<strong>Multiple Villains.</strong> If two or more Villains appear during
|
||||||
the same scene, each Player Character will gain 1 Fabula Point per
|
the same scene, each Player Character will gain 1 Fabula Point per Villain,
|
||||||
Villain, up to a maximum of 3 Fabula Points per Player Character earned
|
up to a maximum of 3 Fabula Points per Player Character earned this way
|
||||||
this way during the same scene.
|
during the same scene.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<strong>Back-to-back scenes with Villains.</strong> If a Villain's
|
<strong>Back-to-back scenes with Villains.</strong> If a Villain's presence
|
||||||
presence extends for several consecutive scenes, the Player Characters
|
extends for several consecutive scenes, the Player Characters only gain 1
|
||||||
only gain 1 Fabula Point at the beginning, and no additional Fabula Points
|
Fabula Point at the beginning, and no additional Fabula Points for the
|
||||||
for the following scenes.
|
following scenes.
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>
|
<p>
|
||||||
Whenever the heroes are running low on Fabula Points, the Game Master should
|
Whenever the heroes are running low on Fabula Points, the Game Master should
|
||||||
run a Game Master scene and show a Villain in action — this is a great way
|
run a Game Master scene and show a Villain in action — this is a great way to
|
||||||
to push the story forward while also giving the heroes a bit more "fuel".
|
push the story forward while also giving the heroes a bit more "fuel".
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<blockquote>
|
<blockquote>
|
||||||
|
|||||||
@@ -1,89 +1,95 @@
|
|||||||
<h1>ELEMENTALIST SPELLS</h1>
|
<h2>Elementalist Spells</h2>
|
||||||
<h2>SPELL</h2>
|
<table>
|
||||||
<div class="spell-entry">
|
<thead>
|
||||||
<h3>Elemental Shroud</h3>
|
<tr>
|
||||||
<p><strong>Cost:</strong> 5</p>
|
<th>Name</th>
|
||||||
<p><strong>Targets:</strong> T</p>
|
<th>Cost</th>
|
||||||
<p><strong>Duration:</strong> Up to three creatures</p>
|
<th>Targets</th>
|
||||||
<p><strong>Action:</strong> Scene</p>
|
<th>Duration</th>
|
||||||
<p>
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>Elemental Shroud</td>
|
||||||
|
<td>5 x T</td>
|
||||||
|
<td>Up to three creatures</td>
|
||||||
|
<td>scene</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
You weave magical energy and protect the targets from the fury of the
|
You weave magical energy and protect the targets from the fury of the
|
||||||
elements.
|
elements. Choose a damage type: air, bolt, earth, fire or ice. Until
|
||||||
</p>
|
this spell ends, each target gains Resistance against the chosen damage
|
||||||
<p>
|
type.
|
||||||
Choose a damage type: air, bolt, earth, fire or ice. Until this spell ends,
|
</td>
|
||||||
each target gains Resistance against the chosen damage type.
|
</tr>
|
||||||
</p>
|
<tr>
|
||||||
</div>
|
<td>Elemental Weapon</td>
|
||||||
<div class="spell-entry">
|
<td>10</td>
|
||||||
<h3>Elemental Weapon</h3>
|
<td>One weapon</td>
|
||||||
<p><strong>Cost:</strong> 10</p>
|
<td>Scene</td>
|
||||||
<p><strong>Targets:</strong> One weapon</p>
|
</tr>
|
||||||
<p><strong>Duration:</strong> Scene</p>
|
<tr>
|
||||||
<p>
|
<td colspan="4">
|
||||||
You imbue a weapon with elemental energy. Choose a damage type: air, bolt,
|
You imbue a weapon with elemental energy. Choose a damage type: air,
|
||||||
earth, fire, or ice. Until this spell ends, all damage dealt by the weapon
|
bolt, earth, fire, or ice. Until this spell ends, all damage dealt by
|
||||||
becomes of the chosen damage type.
|
the weapon becomes of the chosen damage type. If you have that weapon
|
||||||
</p>
|
equipped while you cast this spell, you may perform a free attack with
|
||||||
<ul>
|
it as part of the same action. This spell can only be cast on a weapon
|
||||||
<li>
|
equipped by a willing creature.
|
||||||
If you have that weapon equipped while you cast this spell, you may
|
</td>
|
||||||
perform a free attack with it as part of the same action.
|
</tr>
|
||||||
</li>
|
<tr>
|
||||||
<li>
|
<td>Flare</td>
|
||||||
This spell can only be cast on a weapon equipped by a willing creature.
|
<td>20</td>
|
||||||
</li>
|
<td>One creature</td>
|
||||||
</ul>
|
<td>Instantaneous</td>
|
||||||
</div>
|
</tr>
|
||||||
<div class="spell-entry">
|
<tr>
|
||||||
<h3>Flare</h3>
|
<td colspan="4">
|
||||||
<p><strong>Cost:</strong> rr 20</p>
|
You channel a single ray of fire towards your foe, its temperature so
|
||||||
<p><strong>Targets:</strong> One creature</p>
|
high that it will pierce through most defenses. The target suffers【 HR
|
||||||
<p><strong>Duration:</strong> Instantaneous</p>
|
+ 25】 fire damage. Damage dealt by this spell ignores Resistances.
|
||||||
<p>
|
</td>
|
||||||
You channel a single ray of fire towards your foe, its temperature so high
|
</tr>
|
||||||
that it will pierce through most defenses. The target suffers
|
<tr>
|
||||||
<strong>【HR + 25】</strong> fire damage.
|
<td>Fulgur</td>
|
||||||
</p>
|
<td>10 x T</td>
|
||||||
<p>Damage dealt by this spell ignores Resistances.</p>
|
<td>Up to three creatures</td>
|
||||||
</div>
|
<td>Instantaneous</td>
|
||||||
<div class="spell-entry">
|
</tr>
|
||||||
<h3>Fulgur</h3>
|
<tr>
|
||||||
<p><strong>Cost:</strong> rr 10</p>
|
<td colspan="4">
|
||||||
<p><strong>Targets:</strong> × T</p>
|
|
||||||
<p><strong>Duration:</strong> Up to three creatures</p>
|
|
||||||
<p><strong>Action:</strong> Instantaneous</p>
|
|
||||||
<p>
|
|
||||||
You weave electricity into a wave of crackling bolts. Each target hit by
|
You weave electricity into a wave of crackling bolts. Each target hit by
|
||||||
this spell suffers <strong>【HR + 15】</strong> bolt damage.
|
this spell suffers 【HR + 15】 bolt damage. Opportunity: Each target hit
|
||||||
</p>
|
by this spell suffers dazed.
|
||||||
<p class="opportunity">
|
</td>
|
||||||
<strong>Opportunity:</strong> Each target hit by this spell suffers dazed.
|
</tr>
|
||||||
</p>
|
<tr>
|
||||||
</div>
|
<td>Glacies</td>
|
||||||
<div class="spell-entry">
|
<td>10 x T</td>
|
||||||
<h3>Glacies</h3>
|
<td>Up to three creatures</td>
|
||||||
<p><strong>Cost:</strong> rr 10</p>
|
<td>Instantaneous</td>
|
||||||
<p><strong>Targets:</strong> × T</p>
|
</tr>
|
||||||
<p><strong>Duration:</strong> Up to three creatures</p>
|
<tr>
|
||||||
<p><strong>Action:</strong> Instantaneous</p>
|
<td colspan="4">
|
||||||
<p>
|
|
||||||
You coat your foes under a thick layer of frost. Each target hit by this
|
You coat your foes under a thick layer of frost. Each target hit by this
|
||||||
spell suffers <strong>【HR + 15】</strong> ice damage.
|
spell suffers【 HR + 15】 ice damage. Opportunity: Each target hit by
|
||||||
</p>
|
this spell suffers slow.
|
||||||
<p class="opportunity">
|
</td>
|
||||||
<strong>Opportunity:</strong> Each target hit by this spell suffers slow.
|
</tr>
|
||||||
</p>
|
<tr>
|
||||||
</div>
|
<td>Iceberg</td>
|
||||||
<div class="spell-entry">
|
<td>20</td>
|
||||||
<h3>Iceberg</h3>
|
<td>One creature</td>
|
||||||
<p><strong>Cost:</strong> rr 20</p>
|
<td>Instantaneous</td>
|
||||||
<p><strong>Targets:</strong> One creature</p>
|
</tr>
|
||||||
<p><strong>Duration:</strong> Instantaneous</p>
|
<tr>
|
||||||
<p>
|
<td colspan="4">
|
||||||
A pillar of ice magic envelops your foe, suddenly dropping their body
|
A pillar of ice magic envelops your foe, suddenly dropping their body
|
||||||
temperature to a critical level. The target suffers
|
temperature to a critical level. The target suffers【 HR + 25】 ice
|
||||||
<strong>【HR + 25】</strong> ice damage.
|
damage. Damage dealt by this spell ignores Resistances.
|
||||||
</p>
|
</td>
|
||||||
<p>Damage dealt by this spell ignores Resistances.</p>
|
</tr>
|
||||||
</div>
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|||||||
@@ -1,91 +1,97 @@
|
|||||||
<div>
|
<h2>Elementalist Spells (Cont.)</h2>
|
||||||
<h2>Spell Catalogue</h2>
|
|
||||||
<section>
|
<table>
|
||||||
<h3>Ignis</h3>
|
<thead>
|
||||||
<p>
|
<tr>
|
||||||
<strong>Metadata:</strong> rr 10 × T | Up to three creatures |
|
<th>Name</th>
|
||||||
Instantaneous
|
<th>Cost</th>
|
||||||
</p>
|
<th>Targets</th>
|
||||||
<p>
|
<th>Duration</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>Ignis</td>
|
||||||
|
<td>10 x T</td>
|
||||||
|
<td>Up to three creatures</td>
|
||||||
|
<td>Instantaneous</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
You unleash a searing barrage against your foes, conjuring flames out of
|
You unleash a searing barrage against your foes, conjuring flames out of
|
||||||
thin air. Each target hit by this spell suffers
|
thin air. Each target hit by this spell suffers【 HR + 15】 fire damage.
|
||||||
<strong>【HR + 15】 fire damage</strong>.
|
Opportunity: Each target hit by this spell suffers shaken.
|
||||||
</p>
|
</td>
|
||||||
<p><em>Opportunity:</em> Each target hit by this spell suffers shaken.</p>
|
</tr>
|
||||||
</section>
|
<tr>
|
||||||
<section>
|
<td>Soaring Strike</td>
|
||||||
<h3>Soaring Strike</h3>
|
<td>10</td>
|
||||||
<p><strong>Metadata:</strong> 10 | Self | Instantaneous</p>
|
<td>Self</td>
|
||||||
<p>
|
<td>Instantaneous</td>
|
||||||
The wind carries your strikes across the battlefield. You may immediately
|
</tr>
|
||||||
perform a free attack with a melee weapon you have equipped. This attack
|
<tr>
|
||||||
may target creatures that can only be targeted by ranged attacks.
|
<td colspan="4">
|
||||||
</p>
|
The wind carries your strikes across the battlefield. You may
|
||||||
<ul>
|
immediately perform a free attack with a melee weapon you have equipped.
|
||||||
<li>
|
This attack may target creatures that can only be targeted by ranged
|
||||||
If you used a weapon belonging to the brawling or spear Category for
|
attacks. If you used a weapon belonging to the brawling or spear
|
||||||
this attack, it deals 5 extra damage.
|
Category for this attack, it deals 5 extra damage. If you hit a flying
|
||||||
</li>
|
target with this attack, you may force them to land immediately.
|
||||||
<li>
|
</td>
|
||||||
If you hit a flying target with this attack, you may force them to land
|
</tr>
|
||||||
immediately.
|
<tr>
|
||||||
</li>
|
<td>Terra</td>
|
||||||
</ul>
|
<td>10 x T</td>
|
||||||
</section>
|
<td>Up to three creatures</td>
|
||||||
<section>
|
<td>Instantaneous</td>
|
||||||
<h3>Terra</h3>
|
</tr>
|
||||||
<p>
|
<tr>
|
||||||
<strong>Metadata:</strong> rr 10 × T | Up to three creatures |
|
<td colspan="4">
|
||||||
Instantaneous
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
Spires of jagged rock erupt from the ground beneath your foes, closing
|
Spires of jagged rock erupt from the ground beneath your foes, closing
|
||||||
around them. Each target hit by this spell suffers
|
around them. Each target hit by this spell suffers【 HR + 15】 earth
|
||||||
<strong>【HR + 15】 earth damage</strong>. This spell cannot target
|
damage. This spell cannot target creatures who are flying, floating,
|
||||||
creatures who are flying, floating, falling, or otherwise in mid-air.
|
falling, or otherwise in mid-air. Opportunity: Each target hit by this
|
||||||
</p>
|
spell performs one fewer action on their next turn (to a minimum of 0
|
||||||
<p>
|
actions).
|
||||||
<em>Opportunity:</em> Each target hit by this spell performs one fewer
|
</td>
|
||||||
action on their next turn (to a minimum of 0 actions).
|
</tr>
|
||||||
</p>
|
<tr>
|
||||||
</section>
|
<td>Thunderbolt</td>
|
||||||
<section>
|
<td>20</td>
|
||||||
<h3>Thunderbolt</h3>
|
<td>One creature</td>
|
||||||
<p><strong>Metadata:</strong> rr 20 | One creature | Instantaneous</p>
|
<td>Instantaneous</td>
|
||||||
<p>
|
</tr>
|
||||||
You send lightning striking at your foe. The target suffers
|
<tr>
|
||||||
<strong>【HR + 25】 bolt damage</strong>.
|
<td colspan="4">
|
||||||
</p>
|
You send lightning striking at your foe. The target suffers【 HR + 25】
|
||||||
<p>Damage dealt by this spell ignores Resistances.</p>
|
bolt damage. Damage dealt by this spell ignores Resistances.
|
||||||
</section>
|
</td>
|
||||||
<section>
|
</tr>
|
||||||
<h3>Ventus</h3>
|
<tr>
|
||||||
<p>
|
<td>Ventus</td>
|
||||||
<strong>Metadata:</strong> rr 10 × T | Up to three creatures |
|
<td>10 x T</td>
|
||||||
Instantaneous
|
<td>One creature</td>
|
||||||
</p>
|
<td>Instantaneosu</td>
|
||||||
<p>
|
</tr>
|
||||||
You summon the power of winds against your enemy. Each target hit by this
|
<tr>
|
||||||
spell suffers <strong>【HR + 15】 air damage</strong>.
|
<td colspan="4">
|
||||||
</p>
|
You summon the power of winds against your enemy. Each target hit by
|
||||||
<p>
|
this spell suffers【 HR + 15】 air damage. Opportunity: Each flying
|
||||||
<em>Opportunity:</em> Each flying target hit by this spell is forced to
|
target hit by this spell is forced to land immediately.
|
||||||
land immediately.
|
</td>
|
||||||
</p>
|
</tr>
|
||||||
</section>
|
<tr>
|
||||||
<section>
|
<td>Vortex</td>
|
||||||
<h3>Vortex</h3>
|
<td>10</td>
|
||||||
<p><strong>Metadata:</strong> 10 | Self | Scene</p>
|
<td>Self</td>
|
||||||
<p>
|
<td>Scene</td>
|
||||||
A roaring gale surrounds you, blowing away arrows and bullets. Until this
|
</tr>
|
||||||
spell ends, you gain a +2 bonus to your Defense against ranged attacks.
|
<tr>
|
||||||
</p>
|
<td colspan="4">
|
||||||
</section>
|
A roaring gale surrounds you, blowing away arrows and bullets. Until
|
||||||
<aside>
|
this spell ends, you gain a +2 bonus to your Defense against ranged
|
||||||
<h4>Notes</h4>
|
attacks.
|
||||||
<p>
|
</td>
|
||||||
<strong>cc</strong> Spells marked with <code>rr</code> are offensive
|
</tr>
|
||||||
spells and require Magic Checks!
|
</tbody>
|
||||||
</p>
|
</table>
|
||||||
</aside>
|
|
||||||
</div>
|
|
||||||
|
|||||||
@@ -1,98 +1,112 @@
|
|||||||
<h1>Spell List</h1>
|
<h2>Entropist Spells</h2>
|
||||||
<section>
|
<table>
|
||||||
<h2>Acceleration</h2>
|
<thead>
|
||||||
<p>
|
<tr>
|
||||||
<strong>Cost:</strong> 20 | <strong>Type:</strong> One creature |
|
<th>Name</th>
|
||||||
<strong>Scene:</strong>
|
<th>Cost</th>
|
||||||
</p>
|
<th>Targets</th>
|
||||||
<p>
|
<th>Duration</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>Acceleration</td>
|
||||||
|
<td>20</td>
|
||||||
|
<td>One creature</td>
|
||||||
|
<td>Scene</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
You bend the fabric of time. Until this spell ends, the target gains the
|
You bend the fabric of time. Until this spell ends, the target gains the
|
||||||
ability to perform a single additional action during each of their turns.
|
ability to perform a single additional action during each of their
|
||||||
Once the target has performed a total of two additional actions granted by
|
turns. Once the target has performed a total of two additional actions
|
||||||
this spell, this spell ends.
|
granted by this spell, this spell ends.
|
||||||
</p>
|
</td>
|
||||||
</section>
|
</tr>
|
||||||
<section>
|
<tr>
|
||||||
<h2>Anomaly</h2>
|
<td>Anomaly</td>
|
||||||
<p>
|
<td>20</td>
|
||||||
<strong>Cost:</strong> 20 | <strong>Type:</strong> One creature |
|
<td>One creature</td>
|
||||||
<strong>Scene:</strong>
|
<td>Scene</td>
|
||||||
</p>
|
</tr>
|
||||||
<p>
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
You alter the very nature of your target. Until this spell ends, if the
|
You alter the very nature of your target. Until this spell ends, if the
|
||||||
target would suffer damage of a type they Absorb or are Immune to, they are
|
target would suffer damage of a type they Absorb or are Immune to, they
|
||||||
instead treated as if they were Vulnerable to that damage type. Once that
|
are instead treated as if they were Vulnerable to that damage type. Once
|
||||||
happens, this spell ends.
|
that happens, this spell ends.
|
||||||
</p>
|
</td>
|
||||||
</section>
|
</tr>
|
||||||
<section>
|
<tr>
|
||||||
<h2>Dark Weapon</h2>
|
<td>Dark Weapon</td>
|
||||||
<p>
|
<td>10</td>
|
||||||
<strong>Cost:</strong> 10 | <strong>Type:</strong> One equipped weapon |
|
<td>One equipped weapon</td>
|
||||||
<strong>Scene:</strong>
|
<td>Scene</td>
|
||||||
</p>
|
</tr>
|
||||||
<p>
|
<tr>
|
||||||
You imbue a weapon with dark energy. Until this spell ends, all damage dealt
|
<td colspan="4">
|
||||||
by the weapon becomes of the dark type. If you have that weapon equipped
|
You imbue a weapon with dark energy. Until this spell ends, all damage
|
||||||
while you cast this spell, you may perform a free attack with it as part of
|
dealt by the weapon becomes of the dark type. If you have that weapon
|
||||||
the same action.
|
equipped while you cast this spell, you may perform a free attack with
|
||||||
</p>
|
it as part of the same action. This spell can only be cast on a weapon
|
||||||
<p class="restrictions">
|
equipped by a willing creature.
|
||||||
<em
|
</td>
|
||||||
>This spell can only be cast on a weapon equipped by a willing
|
</tr>
|
||||||
creature.</em
|
<tr>
|
||||||
>
|
<td>Dispel</td>
|
||||||
</p>
|
<td>10</td>
|
||||||
</section>
|
<td>One creature</td>
|
||||||
<section>
|
<td>Instantaneous</td>
|
||||||
<h2>Dispel</h2>
|
</tr>
|
||||||
<p>
|
<tr>
|
||||||
<strong>Cost:</strong> 10 | <strong>Type:</strong> One creature |
|
<td colspan="4">
|
||||||
<strong>Instantaneous:</strong>
|
You release a wave of negative energy and cleanse all magic from a
|
||||||
</p>
|
creature. If the target is affected by one or more spells with a
|
||||||
<p>
|
duration of Scene, they are no longer affected by any of those spells
|
||||||
You release a wave of negative energy and cleanse all magic from a creature.
|
instead.
|
||||||
If the target is affected by one or more spells with a duration of Scene,
|
</td>
|
||||||
they are no longer affected by any of those spells instead.
|
</tr>
|
||||||
</p>
|
<tr>
|
||||||
</section>
|
<td>Divination</td>
|
||||||
<section>
|
<td>10</td>
|
||||||
<h2>Divination</h2>
|
<td>Self</td>
|
||||||
<p>
|
<td>Scene</td>
|
||||||
<strong>Cost:</strong> 10 | <strong>Type:</strong> Self |
|
</tr>
|
||||||
<strong>Scene:</strong>
|
<tr>
|
||||||
</p>
|
<td colspan="4">
|
||||||
<p>
|
You glimpse briefly into the future. Until this spell ends, after a
|
||||||
You glimpse briefly into the future. Until this spell ends, after a creature
|
creature you can see performs a Check, if it was not a fumble nor a
|
||||||
you can see performs a Check, if it was not a fumble nor a critical success,
|
critical success, you may force that creature to reroll both dice. Once
|
||||||
you may force that creature to reroll both dice. Once you have forced two
|
you have forced two rerolls this way, this spell ends.
|
||||||
rerolls this way, this spell ends.
|
</td>
|
||||||
</p>
|
</tr>
|
||||||
</section>
|
<tr>
|
||||||
<section>
|
<td>Drain Spirit</td>
|
||||||
<h2>Drain Spirit</h2>
|
<td>5</td>
|
||||||
<p>
|
<td>One creature</td>
|
||||||
<strong>Cost:</strong> 5 | <strong>Type:</strong> One creature |
|
<td>Instantaneous</td>
|
||||||
<strong>Instantaneous:</strong>
|
</tr>
|
||||||
</p>
|
<tr>
|
||||||
<p>
|
<td colspan="4">
|
||||||
You consume a creature's psyche. The target loses 【HR + 15】 Mind Points.
|
You consume a creature's psyche. The target loses【 HR + 15】 Mind
|
||||||
Then, you recover an amount of Mind Points equal to half the Mind Points
|
Points. Then, you recover an amount of Mind Points equal to half the
|
||||||
loss they suffered (if the loss was reduced to 0 in some way, you recover
|
Mind Points loss they suffered (if the loss was reduced to 0 in some
|
||||||
none).
|
way, you recover none).
|
||||||
</p>
|
</td>
|
||||||
</section>
|
</tr>
|
||||||
<section>
|
<tr>
|
||||||
<h2>Drain Vigor</h2>
|
<td>Drain Vigor</td>
|
||||||
<p>
|
<td>10</td>
|
||||||
<strong>Cost:</strong> 10 | <strong>Type:</strong> One creature |
|
<td>One creature</td>
|
||||||
<strong>Instantaneous:</strong>
|
<td>Instantaneous</td>
|
||||||
</p>
|
</tr>
|
||||||
<p>
|
<tr>
|
||||||
You steal another creature's life force. The target suffers 【HR + 15 】
|
<td colspan="4">
|
||||||
dark damage. Then, you recover an amount of Hit Points equal to half the Hit
|
You steal another creature's life force. The target suffers【 HR + 15】
|
||||||
Points loss they suffered (if the loss was reduced to 0 in some way, you
|
dark damage. Then, you recover an amount of Hit Points equal to half the
|
||||||
recover none).
|
Hit Points loss they suffered (if the loss was reduced to 0 in some way,
|
||||||
</p>
|
you recover none).
|
||||||
</section>
|
</td>
|
||||||
<aside class="collection-info"><h3>Entropist Spells</h3></aside>
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|||||||
@@ -1,75 +1,102 @@
|
|||||||
<h2>Gamble up to 20</h2>
|
<h2>Entropist Spells (Cont.)</h2>
|
||||||
<p><strong>Type:</strong> Special</p>
|
<table>
|
||||||
<p><strong>Target:</strong> Instantaneous</p>
|
<thead>
|
||||||
<p class="duration">
|
<tr>
|
||||||
You summon a vortex of chaotic energy. Roll your current Willpower die once
|
<th>Name</th>
|
||||||
for every 10 Mind Points spent while casting this spell, then keep the single
|
<th>Cost</th>
|
||||||
die you prefer: the number on that die determines the effects of this spell.
|
<th>Targets</th>
|
||||||
</p>
|
<th>Duration</th>
|
||||||
<ol>
|
</tr>
|
||||||
<li>
|
</thead>
|
||||||
<strong>1:</strong> You lose half of your current Hit Points and half of
|
<tbody>
|
||||||
your current Mind Points.
|
<tr>
|
||||||
</li>
|
<td>Gamble</td>
|
||||||
<li>
|
<td>Up to 20</td>
|
||||||
<strong>2-3:</strong> Each creature present on the scene, including
|
<td>Special</td>
|
||||||
yourself, suffers poisoned.
|
<td>Scene</td>
|
||||||
</li>
|
</tr>
|
||||||
<li>
|
<tr>
|
||||||
<strong>4-6:</strong> Each creature present on the scene, including
|
<td colspan="4">
|
||||||
yourself, suffers slow.
|
You summon a vortex of chaotic energy. Roll your current Willpower die
|
||||||
</li>
|
once for every 10 Mind Points spent while casting this spell, then keep
|
||||||
<li>
|
the single die you prefer: the number on that die determines the effects
|
||||||
<strong>7-8:</strong> Choose up to three creatures you can see: each of them
|
of this spell.
|
||||||
recovers 50 Hit Points and also recovers from all status effects.
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<strong>9+:</strong> Choose any number of creatures you can see: each of
|
|
||||||
them suffers 30 damage. The damage type is determined randomly by rolling a
|
|
||||||
d6:
|
|
||||||
</li>
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>1. air</li>
|
<li>
|
||||||
<li>2. bolt</li>
|
1) You lose half of your current Hit Points and half of your current
|
||||||
<li>3. dark</li>
|
Mind Points.
|
||||||
<li>4. earth</li>
|
</li>
|
||||||
<li>5. fire</li>
|
<li>
|
||||||
<li>6. poison</li>
|
2-3) Each creature present on the scene, including yourself, suffers
|
||||||
|
poisoned.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
4-6) Each creature present on the scene, including yourself, suffers
|
||||||
|
slow.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
7-8) Choose up to three creatures you can see: each of them recovers
|
||||||
|
50 Hit Points and also recovers from all status effects.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
9+) Choose any number of creatures you can see: each of them suffers
|
||||||
|
30 damage. The damage type is determined randomly by rolling a d6:
|
||||||
|
1. air 2. bolt 3. dark 4. earth 5. fire 6. poison
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</ol>
|
</td>
|
||||||
<h2>Mirror 10</h2>
|
</tr>
|
||||||
<p><strong>Type:</strong> One creature</p>
|
<tr>
|
||||||
<p><strong>Scene Duration:</strong> Until this spell ends</p>
|
<td>Mirror</td>
|
||||||
<p>
|
<td>10</td>
|
||||||
You twist the laws of magic. Until this spell ends, if an offensive spell is
|
<td>One creature</td>
|
||||||
cast on the target, the creature who cast that offensive spell will be
|
<td>Scene</td>
|
||||||
targeted in their stead (any other targets of the offensive spell will be
|
</tr>
|
||||||
targeted as normal). Once that happens, this spell ends.
|
<tr>
|
||||||
</p>
|
<td colspan="4">
|
||||||
<h2>Omega rr 20</h2>
|
You twist the laws of magic. Until this spell ends, if an offensive (r)
|
||||||
<p><strong>Type:</strong> One creature</p>
|
spell is cast on the target, the creature who cast that offensive spell
|
||||||
<p><strong>Duration:</strong> Instantaneous</p>
|
will be targeted in their stead (any other targets of the offensive
|
||||||
<p>
|
spell will be targeted as normal). Once that happens, this spell ends.
|
||||||
You invoke doom on your foe, turning strength into frailty. The target loses
|
</td>
|
||||||
an amount of Hit Points equal to
|
</tr>
|
||||||
<code>【20 + half the target's level】</code>.
|
<tr>
|
||||||
</p>
|
<td>Omega</td>
|
||||||
<h2>Stop rr 10</h2>
|
<td>20</td>
|
||||||
<p><strong>Type:</strong> One creature</p>
|
<td>One creature</td>
|
||||||
<p><strong>Duration:</strong> Instantaneous</p>
|
<td>Instantaneous</td>
|
||||||
<p>
|
</tr>
|
||||||
You trap a foe inside a circle of altered time and space. The target will
|
<tr>
|
||||||
perform one fewer action on their next turn (to a minimum of 0 actions).
|
<td colspan="4">
|
||||||
</p>
|
You invoke doom on your foe, turning strength into frailty. The target
|
||||||
<h2>Umbra rr 10 × T</h2>
|
loses an amount of Hit Points equal to【 20 + half the target's level】
|
||||||
<p><strong>Type:</strong> Up to three creatures</p>
|
</td>
|
||||||
<p><strong>Duration:</strong> Instantaneous</p>
|
</tr>
|
||||||
<p>
|
<tr>
|
||||||
A storm of dark energy turns matter into ash. Each target hit by this spell
|
<td>Stop</td>
|
||||||
suffers <code>【HR + 15】</code> dark damage.
|
<td>10</td>
|
||||||
</p>
|
<td>One creature</td>
|
||||||
<p><em>Opportunity:</em> Each target hit by this spell suffers weak.</p>
|
<td>Instantaneous</td>
|
||||||
<h3>Notes</h3>
|
</tr>
|
||||||
<ul>
|
<tr>
|
||||||
<li>Spells marked with rr are offensive spells and require Magic Checks!</li>
|
<td colspan="4">
|
||||||
</ul>
|
You trap a foe inside a circle of altered time and space. The target
|
||||||
|
will perform one fewer action on their next turn (to a minimum of 0
|
||||||
|
actions).
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Umbra</td>
|
||||||
|
<td>10 x T</td>
|
||||||
|
<td>Up to three creatures</td>
|
||||||
|
<td>Scene</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
A storm of dark energy turns matter into ash. Each target hit by this
|
||||||
|
spell suffers 【HR + 15】 dark damage. Opportunity: Each target hit by
|
||||||
|
this spell suffers weak.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
<em> This page is intentionally left blank. </em>
|
||||||
|
|||||||
@@ -1,20 +1,20 @@
|
|||||||
<h1>Spiritist</h1>
|
<h1>Spiritist</h1>
|
||||||
<section>
|
<p><strong>ALSO:</strong> Healer, Priest, Witch</p>
|
||||||
<h2>Related Terms</h2>
|
|
||||||
<p><strong>ALSO:</strong> Healer, Priest, Witch</p>
|
<h3>Definition</h3>
|
||||||
<div class="motto-block"><em>"Show me the truths of your heart."</em></div>
|
|
||||||
<h3>Definition</h3>
|
<p>
|
||||||
<p>
|
Spiritists have developed a powerful connection with the raw aspects of soul:
|
||||||
Spiritists have developed a powerful connection with the raw aspects of
|
emotion, energy, life, and death. They wield power both miraculous and
|
||||||
soul: emotion, energy, life, and death. They wield power both miraculous and
|
|
||||||
frightening, and are quite often affiliated with cults or religions.
|
frightening, and are quite often affiliated with cults or religions.
|
||||||
</p>
|
</p>
|
||||||
</section>
|
|
||||||
<section class="further-details">
|
<h3>Nature of Abilities</h3>
|
||||||
<h3>Nature of Abilities</h3>
|
|
||||||
<p>
|
<p>
|
||||||
Several worlds see the powers of Spiritism as gifts from a deity or proof
|
Several worlds see the powers of Spiritism as gifts from a deity or proof that
|
||||||
that a person's heart is pure; however, there is no definite proof of these
|
a person's heart is pure; however, there is no definite proof of these
|
||||||
abilities coming from anything but discipline, empathy, and focus.
|
abilities coming from anything but discipline, empathy, and focus.
|
||||||
</p>
|
</p>
|
||||||
</section>
|
|
||||||
|
<blockquote>Show me the truths of your heart.</blockquote>
|
||||||
|
|||||||
@@ -1,14 +1,17 @@
|
|||||||
<h1>SPIRITIST BENEFITS AND SKILLS</h1>
|
<h2>SPIRITIST BENEFITS AND SKILLS</h2>
|
||||||
<h2>Free Benefits</h2>
|
|
||||||
|
<h3>Free Benefits:</h3>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>Permanently increase your maximum Mind Points by 5.</li>
|
<li>Permanently increase your maximum Mind Points by 5.</li>
|
||||||
<li>
|
<li>
|
||||||
You may perform Rituals whose effects fall within the Ritualism discipline.
|
You may perform Rituals whose effects fall within the Ritualism discipline.
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<hr />
|
|
||||||
<h2>SPIRITIST SKILLS</h2>
|
<h3>SPIRITIST SKILLS</h3>
|
||||||
<h3>HEALING POWER (çç2)</h3>
|
|
||||||
|
<h4>HEALING POWER</h4>
|
||||||
<p>
|
<p>
|
||||||
When you cast a spell that targets one or more allies, if you have an arcane
|
When you cast a spell that targets one or more allies, if you have an arcane
|
||||||
weapon equipped, you may have each of those allies recover an amount of Hit
|
weapon equipped, you may have each of those allies recover an amount of Hit
|
||||||
@@ -16,25 +19,29 @@
|
|||||||
<strong>【SL, multiplied by the number of Bonds you have】</strong>. This
|
<strong>【SL, multiplied by the number of Bonds you have】</strong>. This
|
||||||
healing is separate from any healing caused by the effects of the spell.
|
healing is separate from any healing caused by the effects of the spell.
|
||||||
</p>
|
</p>
|
||||||
<h3>RITUAL SPIRITISM</h3>
|
|
||||||
|
<h4>RITUAL SPIRITISM</h4>
|
||||||
<p>
|
<p>
|
||||||
You may perform Rituals whose effects fall within the Spiritism discipline.
|
You may perform Rituals whose effects fall within the Spiritism discipline.
|
||||||
Spiritism Rituals use <strong>【INS + WLP】</strong> for the Magic Check.
|
Spiritism Rituals use <strong>【INS + WLP】</strong> for the Magic Check.
|
||||||
</p>
|
</p>
|
||||||
<h3>SPIRITUAL MAGIC (çç10)</h3>
|
|
||||||
|
<h4>SPIRITUAL MAGIC (çç10)</h4>
|
||||||
<p>
|
<p>
|
||||||
Each time you acquire this Skill, learn one Spiritist spell (see next two
|
Each time you acquire this Skill, learn one Spiritist spell (see next two
|
||||||
pages). Offensive Spiritist spells use <strong>【INS + WLP】</strong> for the
|
pages). Offensive Spiritist spells use <strong>【INS + WLP】</strong> for the
|
||||||
Magic Check.
|
Magic Check.
|
||||||
</p>
|
</p>
|
||||||
<h3>SUPPORT MAGIC</h3>
|
|
||||||
|
<h4>SUPPORT MAGIC</h4>
|
||||||
<p>
|
<p>
|
||||||
When you cast a spell that targets one or more allies, if you have an arcane
|
When you cast a spell that targets one or more allies, if you have an arcane
|
||||||
weapon equipped, you may choose one of those allies you have a Bond towards.
|
weapon equipped, you may choose one of those allies you have a Bond towards.
|
||||||
If you do, that ally gains a bonus to the next Check they perform during the
|
If you do, that ally gains a bonus to the next Check they perform during the
|
||||||
current scene; this bonus is equal to the strength of your Bond towards them.
|
current scene; this bonus is equal to the strength of your Bond towards them.
|
||||||
</p>
|
</p>
|
||||||
<h3>VISMAGUS</h3>
|
|
||||||
|
<h4>VISMAGUS</h4>
|
||||||
<p>
|
<p>
|
||||||
When you cast a spell, if you don't have enough Mind Points to pay for its
|
When you cast a spell, if you don't have enough Mind Points to pay for its
|
||||||
total cost, you may choose to spend twice as many Hit Points instead. You
|
total cost, you may choose to spend twice as many Hit Points instead. You
|
||||||
@@ -42,7 +49,7 @@
|
|||||||
cast this way would cause you to recover Hit Points, you instead recover no
|
cast this way would cause you to recover Hit Points, you instead recover no
|
||||||
Hit Points (the spell functions normally on any other target).
|
Hit Points (the spell functions normally on any other target).
|
||||||
</p>
|
</p>
|
||||||
<hr />
|
|
||||||
<h2>Background Prompts</h2>
|
<h2>Background Prompts</h2>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
@@ -58,4 +65,5 @@
|
|||||||
</li>
|
</li>
|
||||||
<li>What does your magic look like?</li>
|
<li>What does your magic look like?</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>Show me the truths of your heart.</p>
|
|
||||||
|
<blockquote>Show me the truths of your heart.</blockquote>
|
||||||
|
|||||||
@@ -1,63 +1,95 @@
|
|||||||
<h1>SPIRITIST SPELLS</h1>
|
<h2>Spiritist Spells</h2>
|
||||||
<h2>Aura</h2>
|
<table>
|
||||||
<p>
|
<thead>
|
||||||
<strong>Cost:</strong> 5 × T | <strong>Targets:</strong> Up to three creatures
|
<tr>
|
||||||
| <strong>Duration:</strong> Scene
|
<th>Name</th>
|
||||||
</p>
|
<th>Cost</th>
|
||||||
<p>
|
<th>Targets</th>
|
||||||
You project your soul outside your body and direct it to surround the targets,
|
<th>Duration</th>
|
||||||
shielding them from dangerous magic. Until this spell ends, each target may
|
</tr>
|
||||||
treat their Magic Defense as being equal to 12 against any effects that target
|
</thead>
|
||||||
it (they are still free to use their normal Defense score if higher than 12).
|
<tbody>
|
||||||
</p>
|
<tr>
|
||||||
<h2>Awaken</h2>
|
<td>Aura</td>
|
||||||
<p>
|
<td>5 x T</td>
|
||||||
<strong>Cost:</strong> 20 | <strong>Targets:</strong> One creature |
|
<td>Up to three creatures</td>
|
||||||
<strong>Duration:</strong> Scene
|
<td>scene</td>
|
||||||
</p>
|
</tr>
|
||||||
<p>
|
<tr>
|
||||||
You allow a creature to focus their vital energy into accomplishing what they
|
<td colspan="4">
|
||||||
previously could not. Choose one Attribute: Dexterity, Insight, Might, or
|
You project your soul outside your body and direct it to surround the
|
||||||
Willpower. Until this spell ends, the target treats the chosen Attribute as if
|
targets, shielding them from dangerous magic. Until this spell ends,
|
||||||
it were one die size higher (up to a maximum of d12).
|
each target may treat their Magic Defense as being equal to 12 against
|
||||||
</p>
|
any effects that target it (they are still free to use their normal
|
||||||
<h2>Barrier</h2>
|
Defense score if higher than 12).
|
||||||
<p>
|
</td>
|
||||||
<strong>Cost:</strong> 5 × T | <strong>Targets:</strong> Up to three creatures
|
</tr>
|
||||||
| <strong>Duration:</strong> Scene
|
<tr>
|
||||||
</p>
|
<td>Awaken</td>
|
||||||
<p>
|
<td>20</td>
|
||||||
You project your soul outside your body and weave it into a barrier to protect
|
<td>One creature</td>
|
||||||
the targets from attacks. Until this spell ends, each target may treat their
|
<td>scene</td>
|
||||||
Defense as being equal to 12 against any effects that target it (they are
|
</tr>
|
||||||
still free to use their normal Defense score if higher than 12).
|
<tr>
|
||||||
</p>
|
<td colspan="4">
|
||||||
<h2>Cleanse</h2>
|
You allow a creature to focus their vital energy into accomplishing what
|
||||||
<p>
|
they previously could not. Choose one Attribute: Dexterity, Insight,
|
||||||
<strong>Cost:</strong> 5 × T | <strong>Targets:</strong> Up to three creatures
|
Might, or Willpower. Until this spell ends, the target treats the chosen
|
||||||
| <strong>Duration:</strong> Instantaneous
|
Attribute as if it were one die size higher (up to a maximum of d12).
|
||||||
</p>
|
</td>
|
||||||
<p>
|
</tr>
|
||||||
You strengthen and purify the soul energy coursing through your companions.
|
<tr>
|
||||||
Each target recovers from all status effects.
|
<td>Barrier</td>
|
||||||
</p>
|
<td>5 x T</td>
|
||||||
<h2>Enrage</h2>
|
<td>Up to three creatures</td>
|
||||||
<p>
|
<td>scene</td>
|
||||||
<strong>Cost:</strong> rr 10 | <strong>Targets:</strong> One creature |
|
</tr>
|
||||||
<strong>Duration:</strong> Instantaneous
|
<tr>
|
||||||
</p>
|
<td colspan="4">
|
||||||
<p>
|
You project your soul outside your body and weave it into a barrier to
|
||||||
You cause a creature to lose any semblance of temper and act brazenly. The
|
protect the targets from attacks. Until this spell ends, each target may
|
||||||
target suffers enraged and cannot perform the Guard or Spell actions during
|
treat their Defense as being equal to 12 against any effects that target
|
||||||
their next turn.
|
it (they are still free to use their normal Defense score if higher than
|
||||||
</p>
|
12).
|
||||||
<h2>Hallucination</h2>
|
</td>
|
||||||
<p>
|
</tr>
|
||||||
<strong>Cost:</strong> rr 5 × T | <strong>Targets:</strong> Up to three
|
<tr>
|
||||||
creatures | <strong>Duration:</strong> Instantaneous
|
<td>Cleanse</td>
|
||||||
</p>
|
<td>5 x T</td>
|
||||||
<p>
|
<td>Up to three creatures</td>
|
||||||
You alter the senses of your enemies, causing them to experience bizarre or
|
<td>Instantaneous</td>
|
||||||
frightening hallucinations. Choose dazed or shaken: you inflict the chosen
|
</tr>
|
||||||
status effect on each target hit by this spell.
|
<tr>
|
||||||
</p>
|
<td colspan="4">
|
||||||
|
You strengthen and purify the soul energy coursing through your
|
||||||
|
companions. Each target recovers from all status effects.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Enrage</td>
|
||||||
|
<td>rr 10</td>
|
||||||
|
<td>One creature</td>
|
||||||
|
<td>Instantaneous</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
You cause a creature to lose any semblance of temper and act brazenly.
|
||||||
|
The target suffers enraged and cannot perform the Guard or Spell actions
|
||||||
|
during their next turn.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Hallucination</td>
|
||||||
|
<td>rr 5 x T</td>
|
||||||
|
<td>Up to three creatures</td>
|
||||||
|
<td>Instantaneous</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
You alter the senses of your enemies, causing them to experience bizarre
|
||||||
|
or frightening hallucinations. Choose dazed or shaken: you inflict the
|
||||||
|
chosen status effect on each target hit by this spell.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|||||||
@@ -0,0 +1,95 @@
|
|||||||
|
<h2>Spiritist Spells (Cont.)</h2>
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Name</th>
|
||||||
|
<th>Cost</th>
|
||||||
|
<th>Targets</th>
|
||||||
|
<th>Duration</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>Heal</td>
|
||||||
|
<td>10 x T</td>
|
||||||
|
<td>Up to three creatures</td>
|
||||||
|
<td>Instantaneous</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
You invigorate your companions, soothing their pain and healing their
|
||||||
|
fatigue. Each target recovers 40 Hit Points. This amount increases to 50
|
||||||
|
Hit Points if you are level 20 or higher, or to 60 Hit Points if you are
|
||||||
|
level 40 or higher.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Lux</td>
|
||||||
|
<td>10 x T</td>
|
||||||
|
<td>Up to three creatures</td>
|
||||||
|
<td>Instantaneous</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
You focus your inner energy into a barrage of blinding soul rays. Each
|
||||||
|
target hit by this spell suffers【 HR + 15】 light damage. Opportunity:
|
||||||
|
Each target hit by this spell suffers dazed.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Mercy</td>
|
||||||
|
<td>20</td>
|
||||||
|
<td>One creature</td>
|
||||||
|
<td>Scene</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
You strengthen the heart of a creature against suffering and despair.
|
||||||
|
Until this spell ends, if the target would be reduced to 0 Hit Points,
|
||||||
|
they are instead left standing with exactly 1 Hit Point. Once that
|
||||||
|
happens, this spell ends.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Reinforce</td>
|
||||||
|
<td>5 x T</td>
|
||||||
|
<td>Up to three creatures</td>
|
||||||
|
<td>Scene</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
You protect the targets from attacks that would corrupt their body and
|
||||||
|
spirit. Choose dazed, enraged, poisoned, shaken, slow, or weak. Until
|
||||||
|
this spell ends, each target becomes immune to the chosen status effect.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Soul Weapon</td>
|
||||||
|
<td>10</td>
|
||||||
|
<td>One equipped weapon</td>
|
||||||
|
<td>Scene</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
You imbue a weapon with the cleansing energy of your spirit. Until this
|
||||||
|
spell ends, all damage dealt by the weapon becomes of the light type. If
|
||||||
|
you have that weapon equipped while you cast this spell, you may perform
|
||||||
|
a free attack with it as part of the same action. This spell can only be
|
||||||
|
cast on a weapon equipped by a willing creature.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Torpor</td>
|
||||||
|
<td>5 x T</td>
|
||||||
|
<td>Up to three creatures</td>
|
||||||
|
<td>Instantaneous</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
You smother the soul energy coursing through the bodies of your foes,
|
||||||
|
hindering their movements. Choose slow or weak: you inflict the chosen
|
||||||
|
status effect on each target hit by this spell.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|||||||
@@ -41,7 +41,6 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
<td class="icon" rowspan="2">🗡️</td>
|
<td class="icon" rowspan="2">🗡️</td>
|
||||||
<td><b>Blessed Mace</b></td>
|
<td><b>Blessed Mace</b></td>
|
||||||
@@ -72,8 +71,11 @@
|
|||||||
<td>【HR + 6】light</td>
|
<td>【HR + 6】light</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ You gain a +2 bonus to Magic Checks against <b>demons</b>, as well as a
|
<td colspan="4">
|
||||||
<b>+2</b> bonus to Opposed Checks against <b>demons</b>.</td>
|
Two-handed ◆ Melee ◆ You gain a +2 bonus to Magic Checks against
|
||||||
|
<b>demons</b>, as well as a <b>+2</b> bonus to Opposed Checks against
|
||||||
|
<b>demons</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -84,7 +86,9 @@
|
|||||||
<td>【HR + 2】physical</td>
|
<td>【HR + 2】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ You gain a +1 bonus to your Magic Checks.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ You gain a +1 bonus to your Magic Checks.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -95,8 +99,10 @@
|
|||||||
<td>【HR + 6】dark</td>
|
<td>【HR + 6】dark</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Whenever you hit one or more creatures with this weapon, each of them loses
|
<td colspan="4">
|
||||||
10 Mind Points.</td>
|
Two-handed ◆ Melee ◆ Whenever you hit one or more creatures with this
|
||||||
|
weapon, each of them loses 10 Mind Points.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -107,8 +113,10 @@
|
|||||||
<td>【HR + 6】air</td>
|
<td>【HR + 6】air</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ When you hit one or more creatures with this weapon, you may recover 5 Hit
|
<td colspan="4">
|
||||||
Points.</td>
|
One-handed ◆ Melee ◆ When you hit one or more creatures with this
|
||||||
|
weapon, you may recover 5 Hit Points.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -119,8 +127,10 @@
|
|||||||
<td>【HR + 6】physical</td>
|
<td>【HR + 6】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Spells you cast whose effects restore Hit Points will restore 5 extra Hit
|
<td colspan="4">
|
||||||
Points.</td>
|
Two-handed ◆ Melee ◆ Spells you cast whose effects restore Hit Points
|
||||||
|
will restore 5 extra Hit Points.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -131,8 +141,10 @@
|
|||||||
<td>【HR + 6】dark</td>
|
<td>【HR + 6】dark</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ When you hit one or more creatures with an offensive (⚡) spell, each of them
|
<td colspan="4">
|
||||||
suffers <b>shaken</b>.</td>
|
Two-handed ◆ Melee ◆ When you hit one or more creatures with an
|
||||||
|
offensive (⚡) spell, each of them suffers <b>shaken</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -143,7 +155,9 @@
|
|||||||
<td>【HR + 6】physical</td>
|
<td>【HR + 6】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Spells you cast deal 5 extra damage.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Spells you cast deal 5 extra damage.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -154,9 +168,10 @@
|
|||||||
<td>【HR + 10】poison</td>
|
<td>【HR + 10】poison</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ When you hit one or more creatures with an offensive (⚡) spell, each of them
|
<td colspan="4">
|
||||||
suffers <b>poisoned</b>.</td>
|
Two-handed ◆ Melee ◆ When you hit one or more creatures with an
|
||||||
|
offensive (⚡) spell, each of them suffers <b>poisoned</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -47,7 +47,6 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
<td class="icon" rowspan="2">🗡️</td>
|
<td class="icon" rowspan="2">🗡️</td>
|
||||||
<td><b>Hand Crossbow</b></td>
|
<td><b>Hand Crossbow</b></td>
|
||||||
@@ -78,7 +77,9 @@
|
|||||||
<td>【HR + 12】physical</td>
|
<td>【HR + 12】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Ranged ◆ Damage dealt by this weapon ignores Resistances.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Ranged ◆ Damage dealt by this weapon ignores Resistances.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -89,7 +90,9 @@
|
|||||||
<td>【HR + 8】air</td>
|
<td>【HR + 8】air</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Ranged ◆ You are immune to <b>shaken</b>.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Ranged ◆ You are immune to <b>shaken</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -100,7 +103,9 @@
|
|||||||
<td>【HR + 8】bolt</td>
|
<td>【HR + 8】bolt</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Ranged ◆ You have Resistance to <b>bolt</b> damage.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Ranged ◆ You have Resistance to <b>bolt</b> damage.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -111,8 +116,10 @@
|
|||||||
<td>【HR + 8】fire</td>
|
<td>【HR + 8】fire</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Ranged ◆ When you reduce a creature to 0 Hit Points with this weapon, you may
|
<td colspan="4">
|
||||||
immediately recover 2 Inventory Points.</td>
|
Two-handed ◆ Ranged ◆ When you reduce a creature to 0 Hit Points with
|
||||||
|
this weapon, you may immediately recover 2 Inventory Points.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -123,7 +130,9 @@
|
|||||||
<td>【HR + 12】physical</td>
|
<td>【HR + 12】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Ranged ◆ Attacks with this weapon have <b>multi (2)</b>.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Ranged ◆ Attacks with this weapon have <b>multi (2)</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -134,8 +143,10 @@
|
|||||||
<td>【HR + 12】earth</td>
|
<td>【HR + 12】earth</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Ranged ◆ When you hit a flying target with this weapon, you may force that target to
|
<td colspan="4">
|
||||||
land immediately.</td>
|
Two-handed ◆ Ranged ◆ When you hit a flying target with this weapon, you
|
||||||
|
may force that target to land immediately.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -146,8 +157,11 @@
|
|||||||
<td>【HR + 12】ice</td>
|
<td>【HR + 12】ice</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Ranged ◆ When you hit one or more creatures with this weapon, if you have at least
|
<td colspan="4">
|
||||||
one <b>Bond</b> of <b>inferiority</b>, you may recover 5 MP.</td>
|
Two-handed ◆ Ranged ◆ When you hit one or more creatures with this
|
||||||
|
weapon, if you have at least one <b>Bond</b> of <b>inferiority</b>, you
|
||||||
|
may recover 5 MP.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -158,7 +172,10 @@
|
|||||||
<td>【HR + 12】poison</td>
|
<td>【HR + 12】poison</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Ranged ◆ Each target hit by this weapon suffers <b>slow</b>.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Ranged ◆ Each target hit by this weapon suffers
|
||||||
|
<b>slow</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -169,8 +186,9 @@
|
|||||||
<td>【HR + 12】light</td>
|
<td>【HR + 12】light</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Ranged ◆ You have Immunity to <b>dark</b> damage.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Ranged ◆ You have Immunity to <b>dark</b> damage.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8" />
|
||||||
<title>Sample Rare Brawling Weapons</title>
|
<title>Sample Rare Brawling Weapons</title>
|
||||||
<style>
|
<style>
|
||||||
table {
|
table {
|
||||||
@@ -49,7 +49,6 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
<td class="icon" rowspan="2">🗡️</td>
|
<td class="icon" rowspan="2">🗡️</td>
|
||||||
<td><b>Nekode</b></td>
|
<td><b>Nekode</b></td>
|
||||||
@@ -69,7 +68,9 @@
|
|||||||
<td>【HR + 6】dark</td>
|
<td>【HR + 6】dark</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Attacks with this weapon target Magic Defense.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Attacks with this weapon target Magic Defense.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -80,7 +81,9 @@
|
|||||||
<td>【HR + 6】ice</td>
|
<td>【HR + 6】ice</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ You are immune to <b>enraged</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ You are immune to <b>enraged</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -102,7 +105,9 @@
|
|||||||
<td>【HR + 6】fire</td>
|
<td>【HR + 6】fire</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ You have Resistance to <b>fire</b> damage.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ You have Resistance to <b>fire</b> damage.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -113,7 +118,9 @@
|
|||||||
<td>【HR + 6】light</td>
|
<td>【HR + 6】light</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ You gain a +1 bonus to Magic Defense.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ You gain a +1 bonus to Magic Defense.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -124,7 +131,10 @@
|
|||||||
<td>【HR + 6】physical</td>
|
<td>【HR + 6】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ You have Resistance to <b>dark</b> and <b>poison</b> damage.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ You have Resistance to <b>dark</b> and
|
||||||
|
<b>poison</b> damage.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -135,7 +145,9 @@
|
|||||||
<td>【HR + 6】bolt</td>
|
<td>【HR + 6】bolt</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Attacks with this weapon have <b>multi (2)</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Attacks with this weapon have <b>multi (2)</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -146,7 +158,9 @@
|
|||||||
<td>【HR + 10】physical</td>
|
<td>【HR + 10】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>slow</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>slow</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -157,7 +171,10 @@
|
|||||||
<td>【HR + 10】earth</td>
|
<td>【HR + 10】earth</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>dazed</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Each target hit by this weapon suffers
|
||||||
|
<b>dazed</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -168,7 +185,10 @@
|
|||||||
<td>【HR + 6】physical</td>
|
<td>【HR + 6】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>poisoned</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Each target hit by this weapon suffers
|
||||||
|
<b>poisoned</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -179,8 +199,9 @@
|
|||||||
<td>【HR + 10】light</td>
|
<td>【HR + 10】light</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Damage dealt by this weapon ignores Immunities.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Damage dealt by this weapon ignores Immunities.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -47,7 +47,6 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
<td class="icon" rowspan="2">🗡️</td>
|
<td class="icon" rowspan="2">🗡️</td>
|
||||||
<td><b>Latrodectus</b></td>
|
<td><b>Latrodectus</b></td>
|
||||||
@@ -67,7 +66,9 @@
|
|||||||
<td>【HR + 4】light</td>
|
<td>【HR + 4】light</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Deals 5 extra damage to <b>demons</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Deals 5 extra damage to <b>demons</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -78,7 +79,9 @@
|
|||||||
<td>【HR + 4】physical</td>
|
<td>【HR + 4】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Damage dealt by this weapon ignores Resistances.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Damage dealt by this weapon ignores Resistances.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -100,9 +103,12 @@
|
|||||||
<td>【HR + 4】dark</td>
|
<td>【HR + 4】dark</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ When you hit a creature with this weapon, if the attack had a
|
<td colspan="4">
|
||||||
<b>single</b> target, you may choose a single spell with a <b>duration</b> of Scene affecting the target
|
One-handed ◆ Melee ◆ When you hit a creature with this weapon, if the
|
||||||
and end its effects on that creature.</td>
|
attack had a <b>single</b> target, you may choose a single spell with a
|
||||||
|
<b>duration</b> of Scene affecting the target and end its effects on
|
||||||
|
that creature.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -113,7 +119,10 @@
|
|||||||
<td>【HR + 4】physical</td>
|
<td>【HR + 4】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Deals 5 extra damage to targets who are in <b>Crisis</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Deals 5 extra damage to targets who are in
|
||||||
|
<b>Crisis</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -124,8 +133,10 @@
|
|||||||
<td>【HR + 8】physical</td>
|
<td>【HR + 8】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ When you hit one or more creatures with this weapon, you may recover 5
|
<td colspan="4">
|
||||||
Hit Points.</td>
|
One-handed ◆ Melee ◆ When you hit one or more creatures with this
|
||||||
|
weapon, you may recover 5 Hit Points.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -136,7 +147,10 @@
|
|||||||
<td>【HR + 4】physical</td>
|
<td>【HR + 4】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>shaken</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Each target hit by this weapon suffers
|
||||||
|
<b>shaken</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -147,7 +161,9 @@
|
|||||||
<td>【HR + 8】ice</td>
|
<td>【HR + 8】ice</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>weak</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>weak</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -158,7 +174,9 @@
|
|||||||
<td>【HR + 4】physical</td>
|
<td>【HR + 4】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Attacks with this weapon have <b>multi (3)</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Attacks with this weapon have <b>multi (3)</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -169,8 +187,10 @@
|
|||||||
<td>【HR + 8】fire</td>
|
<td>【HR + 8】fire</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>enraged</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Each target hit by this weapon suffers
|
||||||
|
<b>enraged</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -47,7 +47,6 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
<td class="icon" rowspan="2">🗡️</td>
|
<td class="icon" rowspan="2">🗡️</td>
|
||||||
<td><b>Revolver</b> <span class="rare">◆</span></td>
|
<td><b>Revolver</b> <span class="rare">◆</span></td>
|
||||||
@@ -78,7 +77,9 @@
|
|||||||
<td>【HR + 8】physical</td>
|
<td>【HR + 8】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Ranged ◆ Attacks with this weapon target Magic Defense.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Ranged ◆ Attacks with this weapon target Magic Defense.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -89,7 +90,9 @@
|
|||||||
<td>【HR + 8】physical</td>
|
<td>【HR + 8】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Ranged ◆ Deals 5 extra damage to <b>constructs</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Ranged ◆ Deals 5 extra damage to <b>constructs</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -100,8 +103,10 @@
|
|||||||
<td>【HR + 8】physical</td>
|
<td>【HR + 8】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Ranged ◆ Deals 5 extra damage to targets you have a <b>Bond</b> of <b>hatred</b>
|
<td colspan="4">
|
||||||
towards.</td>
|
One-handed ◆ Ranged ◆ Deals 5 extra damage to targets you have a
|
||||||
|
<b>Bond</b> of <b>hatred</b> towards.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -134,8 +139,10 @@
|
|||||||
<td>【HR + 8】poison</td>
|
<td>【HR + 8】poison</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Ranged ◆ Potions you create with your Inventory Points deal 5 extra damage and
|
<td colspan="4">
|
||||||
restore 5 extra Hit Points.</td>
|
Two-handed ◆ Ranged ◆ Potions you create with your Inventory Points deal
|
||||||
|
5 extra damage and restore 5 extra Hit Points.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -146,7 +153,9 @@
|
|||||||
<td>【HR + 16】fire</td>
|
<td>【HR + 16】fire</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Ranged ◆ Attacks with this weapon have <b>multi (2)</b>.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Ranged ◆ Attacks with this weapon have <b>multi (2)</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -157,7 +166,10 @@
|
|||||||
<td>【HR + 8】ice</td>
|
<td>【HR + 8】ice</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Ranged ◆ Each target hit by this weapon suffers <b>slow</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Ranged ◆ Each target hit by this weapon suffers
|
||||||
|
<b>slow</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -168,9 +180,10 @@
|
|||||||
<td>【HR + 12】air</td>
|
<td>【HR + 12】air</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Ranged ◆ Deals extra damage equal to the difference between your current and maximum
|
<td colspan="4">
|
||||||
<b>Inventory Points</b>.</td>
|
Two-handed ◆ Ranged ◆ Deals extra damage equal to the difference between
|
||||||
|
your current and maximum <b>Inventory Points</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -47,7 +47,6 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
<td class="icon" rowspan="2">🗡️</td>
|
<td class="icon" rowspan="2">🗡️</td>
|
||||||
<td><b>Old Whip</b></td>
|
<td><b>Old Whip</b></td>
|
||||||
@@ -56,7 +55,10 @@
|
|||||||
<td>【HR + 8】physical</td>
|
<td>【HR + 8】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Deals 5 extra damage to <b>beasts</b> and <b>monsters</b>.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Deals 5 extra damage to <b>beasts</b> and
|
||||||
|
<b>monsters</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -78,9 +80,12 @@
|
|||||||
<td>【HR + 8】physical</td>
|
<td>【HR + 8】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Damage dealt by this weapon reduces the target's <b>Mind Points</b> instead
|
<td colspan="4">
|
||||||
of their <b>Hit Points</b>. If the target's Mind Points reach 0, any excess damage is applied to their Hit
|
Two-handed ◆ Melee ◆ Damage dealt by this weapon reduces the target's
|
||||||
Points as normal.</td>
|
<b>Mind Points</b> instead of their <b>Hit Points</b>. If the target's
|
||||||
|
Mind Points reach 0, any excess damage is applied to their Hit Points as
|
||||||
|
normal.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -91,7 +96,9 @@
|
|||||||
<td>【HR + 8】physical</td>
|
<td>【HR + 8】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ You have Resistance to <b>fire</b> damage.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ You have Resistance to <b>fire</b> damage.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -113,8 +120,10 @@
|
|||||||
<td>【HR + 8】fire</td>
|
<td>【HR + 8】fire</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ You gain a +2 bonus to Accuracy Checks and Magic Checks against
|
<td colspan="4">
|
||||||
<b>enraged</b> targets.</td>
|
One-handed ◆ Melee ◆ You gain a +2 bonus to Accuracy Checks and Magic
|
||||||
|
Checks against <b>enraged</b> targets.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -125,7 +134,9 @@
|
|||||||
<td>【HR + 12】physical</td>
|
<td>【HR + 12】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Attacks with this weapon have <b>multi (2)</b>.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Attacks with this weapon have <b>multi (2)</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -136,7 +147,9 @@
|
|||||||
<td>【HR + 12】physical</td>
|
<td>【HR + 12】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ You have Resistance to <b>physical</b> damage.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ You have Resistance to <b>physical</b> damage.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -147,7 +160,9 @@
|
|||||||
<td>【HR + 8】physical</td>
|
<td>【HR + 8】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>slow</b>.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>slow</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -158,7 +173,9 @@
|
|||||||
<td>【HR + 12】dark</td>
|
<td>【HR + 12】dark</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Attacks with this weapon have <b>multi (3)</b>.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Attacks with this weapon have <b>multi (3)</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -169,8 +186,10 @@
|
|||||||
<td>【HR + 12】physical</td>
|
<td>【HR + 12】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ You have Immunity to <b>dark</b> and <b>light</b> damage.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ You have Immunity to <b>dark</b> and
|
||||||
|
<b>light</b> damage.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -46,7 +46,6 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
<td class="icon" rowspan="2">🗡️</td>
|
<td class="icon" rowspan="2">🗡️</td>
|
||||||
<td><b>Bardiche</b> <span class="rare">◆</span></td>
|
<td><b>Bardiche</b> <span class="rare">◆</span></td>
|
||||||
@@ -66,7 +65,9 @@
|
|||||||
<td>【HR + 6】physical</td>
|
<td>【HR + 6】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Deals 5 extra damage to <b>constructs</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Deals 5 extra damage to <b>constructs</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -77,7 +78,9 @@
|
|||||||
<td>【HR + 10】physical</td>
|
<td>【HR + 10】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Deals 5 extra damage to <b>monsters</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Deals 5 extra damage to <b>monsters</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -88,7 +91,9 @@
|
|||||||
<td>【HR + 14】poison</td>
|
<td>【HR + 14】poison</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Deals 5 extra damage to <b>humanoids</b>.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Deals 5 extra damage to <b>humanoids</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -99,7 +104,10 @@
|
|||||||
<td>【HR + 10】physical</td>
|
<td>【HR + 10】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Deals 5 extra damage to <b>beasts</b> and <b>plants</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Deals 5 extra damage to <b>beasts</b> and
|
||||||
|
<b>plants</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -121,7 +129,9 @@
|
|||||||
<td>【HR + 14】light</td>
|
<td>【HR + 14】light</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Attacks with this weapon have <b>multi (2)</b>.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Attacks with this weapon have <b>multi (2)</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -132,7 +142,9 @@
|
|||||||
<td>【HR + 14】earth</td>
|
<td>【HR + 14】earth</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>slow</b>.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>slow</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -143,7 +155,10 @@
|
|||||||
<td>【HR + 10】bolt</td>
|
<td>【HR + 10】bolt</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>dazed</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Each target hit by this weapon suffers
|
||||||
|
<b>dazed</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -154,7 +169,9 @@
|
|||||||
<td>【HR + 18】fire</td>
|
<td>【HR + 18】fire</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ You have Immunity to <b>fire</b> damage.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ You have Immunity to <b>fire</b> damage.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -165,7 +182,10 @@
|
|||||||
<td>【HR + 18】dark</td>
|
<td>【HR + 18】dark</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>enraged</b>.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Each target hit by this weapon suffers
|
||||||
|
<b>enraged</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -176,8 +196,9 @@
|
|||||||
<td>【HR + 18】ice</td>
|
<td>【HR + 18】ice</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ You gain a +1 bonus to Defense and Magic Defense.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ You gain a +1 bonus to Defense and Magic Defense.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -34,7 +34,6 @@
|
|||||||
.rare {
|
.rare {
|
||||||
color: #c0392b;
|
color: #c0392b;
|
||||||
}
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
@@ -47,7 +46,6 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
<td class="icon" rowspan="2">🗡️</td>
|
<td class="icon" rowspan="2">🗡️</td>
|
||||||
<td><b>Dragontongue</b> <span class="rare">◆</span></td>
|
<td><b>Dragontongue</b> <span class="rare">◆</span></td>
|
||||||
@@ -56,7 +54,9 @@
|
|||||||
<td>【HR + 12】fire</td>
|
<td>【HR + 12】fire</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Attacks with this weapon target Magic Defense.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Attacks with this weapon target Magic Defense.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -67,7 +67,9 @@
|
|||||||
<td>【HR + 8】physical</td>
|
<td>【HR + 8】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Deals 1 extra damage per status effect you have.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Deals 1 extra damage per status effect you have.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -78,7 +80,9 @@
|
|||||||
<td>【HR + 16】physical</td>
|
<td>【HR + 16】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Damage dealt by this weapon ignores Resistances.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Damage dealt by this weapon ignores Resistances.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -100,7 +104,9 @@
|
|||||||
<td>【HR + 12】ice</td>
|
<td>【HR + 12】ice</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ You have Resistance to <b>ice</b> damage.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ You have Resistance to <b>ice</b> damage.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -111,8 +117,10 @@
|
|||||||
<td>【HR + 12】earth</td>
|
<td>【HR + 12】earth</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ As long as you have at least three <b>Bonds</b> of <b>loyalty</b> or
|
<td colspan="4">
|
||||||
<b>affection</b>, you gain a +1 bonus to Defense and Magic Defense.
|
Two-handed ◆ Melee ◆ As long as you have at least three <b>Bonds</b> of
|
||||||
|
<b>loyalty</b> or <b>affection</b>, you gain a +1 bonus to Defense and
|
||||||
|
Magic Defense.
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
@@ -124,8 +132,10 @@
|
|||||||
<td>【HR + 12】dark</td>
|
<td>【HR + 12】dark</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ When you hit one or more creatures with this weapon, you may recover 10
|
<td colspan="4">
|
||||||
Mind Points.</td>
|
Two-handed ◆ Melee ◆ When you hit one or more creatures with this
|
||||||
|
weapon, you may recover 10 Mind Points.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -136,8 +146,11 @@
|
|||||||
<td>【HR + 12】physical</td>
|
<td>【HR + 12】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ If you roll a <b>critical success</b> on an Accuracy Check with this
|
<td colspan="4">
|
||||||
weapon, you may spend that <b>opportunity</b> to deal 10 extra damage.</td>
|
Two-handed ◆ Melee ◆ If you roll a <b>critical success</b> on an
|
||||||
|
Accuracy Check with this weapon, you may spend that
|
||||||
|
<b>opportunity</b> to deal 10 extra damage.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -148,7 +161,9 @@
|
|||||||
<td>【HR + 16】physical</td>
|
<td>【HR + 16】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>weak</b>.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Each target hit by this weapon suffers <b>weak</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -170,8 +185,10 @@
|
|||||||
<td>【HR + 16】light</td>
|
<td>【HR + 16】light</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ You have Immunity to <b>fire</b> and <b>ice</b> damage.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ You have Immunity to <b>fire</b> and
|
||||||
|
<b>ice</b> damage.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -47,7 +47,6 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
<td class="icon" rowspan="2">🗡️</td>
|
<td class="icon" rowspan="2">🗡️</td>
|
||||||
<td><b>Zweihänder</b> <span class="rare">◆</span></td>
|
<td><b>Zweihänder</b> <span class="rare">◆</span></td>
|
||||||
@@ -67,7 +66,9 @@
|
|||||||
<td>【HR + 10】ice</td>
|
<td>【HR + 10】ice</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Attacks with this weapon target Magic Defense.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Attacks with this weapon target Magic Defense.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -89,7 +90,9 @@
|
|||||||
<td>【HR + 6】physical</td>
|
<td>【HR + 6】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ You are immune to <b>enraged</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ You are immune to <b>enraged</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -111,7 +114,9 @@
|
|||||||
<td>【HR + 6】dark</td>
|
<td>【HR + 6】dark</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Deals 5 extra damage if you are in <b>Crisis</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Deals 5 extra damage if you are in <b>Crisis</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -122,7 +127,9 @@
|
|||||||
<td>【HR + 10】physical</td>
|
<td>【HR + 10】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ This weapon can target <b>flying</b> creatures.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ This weapon can target <b>flying</b> creatures.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -144,7 +151,10 @@
|
|||||||
<td>【HR + 10】physical</td>
|
<td>【HR + 10】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Deals 2 extra damage for each <b>Class</b> you have mastered.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Deals 2 extra damage for each <b>Class</b> you have
|
||||||
|
mastered.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -155,7 +165,9 @@
|
|||||||
<td>【HR + 10】poison</td>
|
<td>【HR + 10】poison</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Melee ◆ Deals 5 extra damage to <b>weak</b> targets.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Melee ◆ Deals 5 extra damage to <b>weak</b> targets.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -166,7 +178,9 @@
|
|||||||
<td>【HR + 14】air</td>
|
<td>【HR + 14】air</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ Attacks with this weapon have <b>multi (2)</b>.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ Attacks with this weapon have <b>multi (2)</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -177,8 +191,9 @@
|
|||||||
<td>【HR + 10】light</td>
|
<td>【HR + 10】light</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">Two-handed ◆ Melee ◆ You are immune to all status effects.</td>
|
<td colspan="4">
|
||||||
|
Two-handed ◆ Melee ◆ You are immune to all status effects.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -43,7 +43,6 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
<td class="icon" rowspan="2">🗡️</td>
|
<td class="icon" rowspan="2">🗡️</td>
|
||||||
<td><b>Crescent Edge</b></td>
|
<td><b>Crescent Edge</b></td>
|
||||||
@@ -52,7 +51,9 @@
|
|||||||
<td>【HR + 4】light</td>
|
<td>【HR + 4】light</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Ranged ◆ Attacks with this weapon target Magic Defense.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Ranged ◆ Attacks with this weapon target Magic Defense.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -85,7 +86,10 @@
|
|||||||
<td>【HR + 4】physical</td>
|
<td>【HR + 4】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Ranged ◆ Deals 5 extra damage to <b>beasts</b> and <b>monsters</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Ranged ◆ Deals 5 extra damage to <b>beasts</b> and
|
||||||
|
<b>monsters</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -96,7 +100,9 @@
|
|||||||
<td>【HR + 8】air</td>
|
<td>【HR + 8】air</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Ranged ◆ Damage dealt by this weapon ignores Resistances.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Ranged ◆ Damage dealt by this weapon ignores Resistances.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -107,7 +113,9 @@
|
|||||||
<td>【HR + 8】physical</td>
|
<td>【HR + 8】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Ranged ◆ You are immune to <b>poisoned</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Ranged ◆ You are immune to <b>poisoned</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -118,7 +126,9 @@
|
|||||||
<td>【HR + 4】ice</td>
|
<td>【HR + 4】ice</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Ranged ◆ You have Resistance to <b>ice</b> damage.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Ranged ◆ You have Resistance to <b>ice</b> damage.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -129,7 +139,9 @@
|
|||||||
<td>【HR + 4】earth</td>
|
<td>【HR + 4】earth</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Ranged ◆ You have Resistance to <b>dark</b> damage.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Ranged ◆ You have Resistance to <b>dark</b> damage.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -140,7 +152,9 @@
|
|||||||
<td>【HR + 4】physical</td>
|
<td>【HR + 4】physical</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Ranged ◆ Attacks with this weapon have <b>multi (2)</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Ranged ◆ Attacks with this weapon have <b>multi (2)</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -151,7 +165,10 @@
|
|||||||
<td>【HR + 8】bolt</td>
|
<td>【HR + 8】bolt</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Ranged ◆ Each target hit by this weapon suffers <b>shaken</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Ranged ◆ Each target hit by this weapon suffers
|
||||||
|
<b>shaken</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -162,7 +179,9 @@
|
|||||||
<td>【HR + 4】dark</td>
|
<td>【HR + 4】dark</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Ranged ◆ You gain a +1 bonus to Defense and Magic Defense.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Ranged ◆ You gain a +1 bonus to Defense and Magic Defense.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr class="main">
|
<tr class="main">
|
||||||
@@ -173,8 +192,10 @@
|
|||||||
<td>【HR + 4】poison</td>
|
<td>【HR + 4】poison</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="desc">
|
<tr class="desc">
|
||||||
<td colspan="4">One-handed ◆ Ranged ◆ Each target hit by this weapon suffers <b>poisoned</b>.</td>
|
<td colspan="4">
|
||||||
|
One-handed ◆ Ranged ◆ Each target hit by this weapon suffers
|
||||||
|
<b>poisoned</b>.
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -11,29 +11,45 @@
|
|||||||
<li><a href="/books/core/#page-30">Scenes</a> <span>30</span></li>
|
<li><a href="/books/core/#page-30">Scenes</a> <span>30</span></li>
|
||||||
<li><a href="/books/core/#page-31">Interlude Scenes</a> <span>31</span></li>
|
<li><a href="/books/core/#page-31">Interlude Scenes</a> <span>31</span></li>
|
||||||
<li><a href="/books/core/#page-31">Game Master Scenes</a> <span>31</span></li>
|
<li><a href="/books/core/#page-31">Game Master Scenes</a> <span>31</span></li>
|
||||||
<li><a href="/books/core/#page-32">Sessions and Campaigns</a> <span>32</span></li>
|
<li>
|
||||||
|
<a href="/books/core/#page-32">Sessions and Campaigns</a> <span>32</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-33">Important Rules</a> <span>33</span></li>
|
<li><a href="/books/core/#page-33">Important Rules</a> <span>33</span></li>
|
||||||
<li><a href="/books/core/#page-34">Anatomy of a Character</a> <span>34</span></li>
|
<li>
|
||||||
|
<a href="/books/core/#page-34">Anatomy of a Character</a> <span>34</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-38">Checks</a> <span>38</span></li>
|
<li><a href="/books/core/#page-38">Checks</a> <span>38</span></li>
|
||||||
<li><a href="/books/core/#page-40">Critical Success</a> <span>40</span></li>
|
<li><a href="/books/core/#page-40">Critical Success</a> <span>40</span></li>
|
||||||
<li><a href="/books/core/#page-40">Fumble</a> <span>40</span></li>
|
<li><a href="/books/core/#page-40">Fumble</a> <span>40</span></li>
|
||||||
<li><a href="/books/core/#page-41">Opportunities</a> <span>41</span></li>
|
<li><a href="/books/core/#page-41">Opportunities</a> <span>41</span></li>
|
||||||
<li><a href="/books/core/#page-42">Performing an Attribute Check</a> <span>42</span></li>
|
<li>
|
||||||
|
<a href="/books/core/#page-42">Performing an Attribute Check</a>
|
||||||
|
<span>42</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-43">Difficulty Levels</a> <span>43</span></li>
|
<li><a href="/books/core/#page-43">Difficulty Levels</a> <span>43</span></li>
|
||||||
<li><a href="/books/core/#page-46">Invoking a Trait</a> <span>46</span></li>
|
<li><a href="/books/core/#page-46">Invoking a Trait</a> <span>46</span></li>
|
||||||
<li><a href="/books/core/#page-47">Invoking a Bond</a> <span>47</span></li>
|
<li><a href="/books/core/#page-47">Invoking a Bond</a> <span>47</span></li>
|
||||||
<li><a href="/books/core/#page-48">Opposed Checks</a> <span>48</span></li>
|
<li><a href="/books/core/#page-48">Opposed Checks</a> <span>48</span></li>
|
||||||
<li><a href="/books/core/#page-49">Open Checks</a> <span>49</span></li>
|
<li><a href="/books/core/#page-49">Open Checks</a> <span>49</span></li>
|
||||||
<li><a href="/books/core/#page-49">Situational Modifiers</a> <span>49</span></li>
|
<li>
|
||||||
|
<a href="/books/core/#page-49">Situational Modifiers</a> <span>49</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-50">Group Checks</a> <span>50</span></li>
|
<li><a href="/books/core/#page-50">Group Checks</a> <span>50</span></li>
|
||||||
<li><a href="/books/core/#page-51">Frequently Used Checks</a> <span>51</span></li>
|
<li>
|
||||||
|
<a href="/books/core/#page-51">Frequently Used Checks</a> <span>51</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-52">Clocks</a> <span>52</span></li>
|
<li><a href="/books/core/#page-52">Clocks</a> <span>52</span></li>
|
||||||
<li><a href="/books/core/#page-56">Bonds</a> <span>56</span></li>
|
<li><a href="/books/core/#page-56">Bonds</a> <span>56</span></li>
|
||||||
<li><a href="/books/core/#page-58">Conflict Scenes</a> <span>58</span></li>
|
<li><a href="/books/core/#page-58">Conflict Scenes</a> <span>58</span></li>
|
||||||
<li><a href="/books/core/#page-58">The Structure of a Conflict</a> <span>58</span></li>
|
<li>
|
||||||
|
<a href="/books/core/#page-58">The Structure of a Conflict</a>
|
||||||
|
<span>58</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-61">Initiative</a> <span>61</span></li>
|
<li><a href="/books/core/#page-61">Initiative</a> <span>61</span></li>
|
||||||
<li><a href="/books/core/#page-62">Rounds and Turns</a> <span>62</span></li>
|
<li><a href="/books/core/#page-62">Rounds and Turns</a> <span>62</span></li>
|
||||||
<li><a href="/books/core/#page-64">Space and Distances</a> <span>64</span></li>
|
<li>
|
||||||
|
<a href="/books/core/#page-64">Space and Distances</a> <span>64</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-66">Actions</a> <span>66</span></li>
|
<li><a href="/books/core/#page-66">Actions</a> <span>66</span></li>
|
||||||
<li><a href="/books/core/#page-68">Attack</a> <span>68</span></li>
|
<li><a href="/books/core/#page-68">Attack</a> <span>68</span></li>
|
||||||
<li><a href="/books/core/#page-70">Equipment</a> <span>70</span></li>
|
<li><a href="/books/core/#page-70">Equipment</a> <span>70</span></li>
|
||||||
@@ -46,8 +62,13 @@
|
|||||||
<li><a href="/books/core/#page-76">Skill</a> <span>76</span></li>
|
<li><a href="/books/core/#page-76">Skill</a> <span>76</span></li>
|
||||||
<li><a href="/books/core/#page-76">Teamwork</a> <span>76</span></li>
|
<li><a href="/books/core/#page-76">Teamwork</a> <span>76</span></li>
|
||||||
<li><a href="/books/core/#page-78">Sample Goal Clocks</a> <span>78</span></li>
|
<li><a href="/books/core/#page-78">Sample Goal Clocks</a> <span>78</span></li>
|
||||||
<li><a href="/books/core/#page-82">Optional Conflict Rules</a> <span>82</span></li>
|
<li>
|
||||||
<li><a href="/books/core/#page-84">Hit Points and Mind Points</a> <span>84</span></li>
|
<a href="/books/core/#page-82">Optional Conflict Rules</a> <span>82</span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/books/core/#page-84">Hit Points and Mind Points</a>
|
||||||
|
<span>84</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-86">0 Hit Points</a> <span>86</span></li>
|
<li><a href="/books/core/#page-86">0 Hit Points</a> <span>86</span></li>
|
||||||
<li><a href="/books/core/#page-88">Sacrifice</a> <span>88</span></li>
|
<li><a href="/books/core/#page-88">Sacrifice</a> <span>88</span></li>
|
||||||
<li><a href="/books/core/#page-89">Surrendering</a> <span>89</span></li>
|
<li><a href="/books/core/#page-89">Surrendering</a> <span>89</span></li>
|
||||||
@@ -61,7 +82,9 @@
|
|||||||
<li><a href="/books/core/#page-101">Ultima Points</a> <span>101</span></li>
|
<li><a href="/books/core/#page-101">Ultima Points</a> <span>101</span></li>
|
||||||
<li><a href="/books/core/#page-102">Escalation</a> <span>102</span></li>
|
<li><a href="/books/core/#page-102">Escalation</a> <span>102</span></li>
|
||||||
<li><a href="/books/core/#page-104">Inventory Points</a> <span>104</span></li>
|
<li><a href="/books/core/#page-104">Inventory Points</a> <span>104</span></li>
|
||||||
<li><a href="/books/core/#page-106">Journeys and Travels</a> <span>106</span></li>
|
<li>
|
||||||
|
<a href="/books/core/#page-106">Journeys and Travels</a> <span>106</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-108">Dangers</a> <span>108</span></li>
|
<li><a href="/books/core/#page-108">Dangers</a> <span>108</span></li>
|
||||||
<li><a href="/books/core/#page-109">Discoveries</a> <span>109</span></li>
|
<li><a href="/books/core/#page-109">Discoveries</a> <span>109</span></li>
|
||||||
<li><a href="/books/core/#page-110">Dungeons</a> <span>110</span></li>
|
<li><a href="/books/core/#page-110">Dungeons</a> <span>110</span></li>
|
||||||
|
|||||||
@@ -1,11 +1,21 @@
|
|||||||
<ul>
|
<ul>
|
||||||
<li><a href="/books/core/#page-120">Rituals during Conflicts</a> <span>120</span></li>
|
<li>
|
||||||
<li><a href="/books/core/#page-122">Economy and Items</a> <span>122</span></li>
|
<a href="/books/core/#page-120">Rituals during Conflicts</a>
|
||||||
<li><a href="/books/core/#page-124">Services and Transports</a> <span>124</span></li>
|
<span>120</span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/books/core/#page-122">Economy and Items</a> <span>122</span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/books/core/#page-124">Services and Transports</a> <span>124</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-126">Equipment</a> <span>126</span></li>
|
<li><a href="/books/core/#page-126">Equipment</a> <span>126</span></li>
|
||||||
<li><a href="/books/core/#page-126">Martial Items</a> <span>126</span></li>
|
<li><a href="/books/core/#page-126">Martial Items</a> <span>126</span></li>
|
||||||
<li><a href="/books/core/#page-130">Basic Weapons</a> <span>130</span></li>
|
<li><a href="/books/core/#page-130">Basic Weapons</a> <span>130</span></li>
|
||||||
<li><a href="/books/core/#page-132">Basic Armors and Shields</a> <span>132</span></li>
|
<li>
|
||||||
|
<a href="/books/core/#page-132">Basic Armors and Shields</a>
|
||||||
|
<span>132</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-134">Projects</a> <span>134</span></li>
|
<li><a href="/books/core/#page-134">Projects</a> <span>134</span></li>
|
||||||
<li><a href="/books/core/#page-140">Group Dynamics</a> <span>140</span></li>
|
<li><a href="/books/core/#page-140">Group Dynamics</a> <span>140</span></li>
|
||||||
</ul>
|
</ul>
|
||||||
@@ -15,8 +25,12 @@
|
|||||||
<li><a href="/books/core/#page-146">Before You Start</a> <span>146</span></li>
|
<li><a href="/books/core/#page-146">Before You Start</a> <span>146</span></li>
|
||||||
<li><a href="/books/core/#page-148">World Creation</a> <span>148</span></li>
|
<li><a href="/books/core/#page-148">World Creation</a> <span>148</span></li>
|
||||||
<li><a href="/books/core/#page-152">Group Creation</a> <span>152</span></li>
|
<li><a href="/books/core/#page-152">Group Creation</a> <span>152</span></li>
|
||||||
<li><a href="/books/core/#page-154">Character Creation</a> <span>154</span></li>
|
<li>
|
||||||
<li><a href="/books/core/#page-172">Classic Characters</a> <span>172</span></li>
|
<a href="/books/core/#page-154">Character Creation</a> <span>154</span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/books/core/#page-172">Classic Characters</a> <span>172</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-176">Arcanist</a> <span>176</span></li>
|
<li><a href="/books/core/#page-176">Arcanist</a> <span>176</span></li>
|
||||||
<li><a href="/books/core/#page-182">Chimerist</a> <span>182</span></li>
|
<li><a href="/books/core/#page-182">Chimerist</a> <span>182</span></li>
|
||||||
<li><a href="/books/core/#page-184">Darkblade</a> <span>184</span></li>
|
<li><a href="/books/core/#page-184">Darkblade</a> <span>184</span></li>
|
||||||
@@ -33,32 +47,60 @@
|
|||||||
<li><a href="/books/core/#page-216">Wayfarer</a> <span>216</span></li>
|
<li><a href="/books/core/#page-216">Wayfarer</a> <span>216</span></li>
|
||||||
<li><a href="/books/core/#page-218">Weaponmaster</a> <span>218</span></li>
|
<li><a href="/books/core/#page-218">Weaponmaster</a> <span>218</span></li>
|
||||||
<li><a href="/books/core/#page-220">Prologues</a> <span>220</span></li>
|
<li><a href="/books/core/#page-220">Prologues</a> <span>220</span></li>
|
||||||
<li><a href="/books/core/#page-226">Experience and Levels</a> <span>226</span></li>
|
<li>
|
||||||
<li><a href="/books/core/#page-229">Creating High Level PCs</a> <span>229</span></li>
|
<a href="/books/core/#page-226">Experience and Levels</a> <span>226</span>
|
||||||
<li><a href="/books/core/#page-230">Optional Advancement Rules</a> <span>230</span></li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/books/core/#page-229">Creating High Level PCs</a> <span>229</span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/books/core/#page-230">Optional Advancement Rules</a>
|
||||||
|
<span>230</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-232">Heroic Skills</a> <span>232</span></li>
|
<li><a href="/books/core/#page-232">Heroic Skills</a> <span>232</span></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<h2>4. GAME MASTER</h2>
|
<h2>4. GAME MASTER</h2>
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="/books/core/#page-244">The Game Master's Role</a> <span>244</span></li>
|
<li>
|
||||||
<li><a href="/books/core/#page-248">Character Classes</a> <span>248</span></li>
|
<a href="/books/core/#page-244">The Game Master's Role</a> <span>244</span>
|
||||||
<li><a href="/books/core/#page-254">The Art of Villains</a> <span>254</span></li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/books/core/#page-248">Character Classes</a> <span>248</span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/books/core/#page-254">The Art of Villains</a> <span>254</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-258">Dungeons</a> <span>258</span></li>
|
<li><a href="/books/core/#page-258">Dungeons</a> <span>258</span></li>
|
||||||
<li><a href="/books/core/#page-264">Rewards</a> <span>264</span></li>
|
<li><a href="/books/core/#page-264">Rewards</a> <span>264</span></li>
|
||||||
<li><a href="/books/core/#page-266">Designing Rare Items</a> <span>266</span></li>
|
<li>
|
||||||
<li><a href="/books/core/#page-268">Designing Rare Weapons</a> <span>268</span></li>
|
<a href="/books/core/#page-266">Designing Rare Items</a> <span>266</span>
|
||||||
<li><a href="/books/core/#page-280">Designing Rare Armors and Shields</a> <span>280</span></li>
|
</li>
|
||||||
<li><a href="/books/core/#page-284">Designing Accessories</a> <span>284</span></li>
|
<li>
|
||||||
|
<a href="/books/core/#page-268">Designing Rare Weapons</a> <span>268</span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/books/core/#page-280">Designing Rare Armors and Shields</a>
|
||||||
|
<span>280</span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/books/core/#page-284">Designing Accessories</a> <span>284</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-288">Artifacts</a> <span>288</span></li>
|
<li><a href="/books/core/#page-288">Artifacts</a> <span>288</span></li>
|
||||||
<li><a href="/books/core/#page-292">Designing Battles</a> <span>292</span></li>
|
<li>
|
||||||
<li><a href="/books/core/#page-295">Elites and Champions</a> <span>295</span></li>
|
<a href="/books/core/#page-292">Designing Battles</a> <span>292</span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="/books/core/#page-295">Elites and Champions</a> <span>295</span>
|
||||||
|
</li>
|
||||||
<li><a href="/books/core/#page-300">Boss Battles</a> <span>300</span></li>
|
<li><a href="/books/core/#page-300">Boss Battles</a> <span>300</span></li>
|
||||||
<li><a href="/books/core/#page-300">Designing NPCs</a> <span>300</span></li>
|
<li><a href="/books/core/#page-300">Designing NPCs</a> <span>300</span></li>
|
||||||
<li><a href="/books/core/#page-304">NPC Species</a> <span>304</span></li>
|
<li><a href="/books/core/#page-304">NPC Species</a> <span>304</span></li>
|
||||||
<li><a href="/books/core/#page-306">NPC Skills</a> <span>306</span></li>
|
<li><a href="/books/core/#page-306">NPC Skills</a> <span>306</span></li>
|
||||||
<li><a href="/books/core/#page-310">NPC Spells</a> <span>310</span></li>
|
<li><a href="/books/core/#page-310">NPC Spells</a> <span>310</span></li>
|
||||||
<li><a href="/books/core/#page-312">Sample Boss Designs</a> <span>312</span></li>
|
<li>
|
||||||
|
<a href="/books/core/#page-312">Sample Boss Designs</a> <span>312</span>
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<h2>5. BESTIARY</h2>
|
<h2>5. BESTIARY</h2>
|
||||||
|
|||||||
27417
books/core/index.html
27417
books/core/index.html
File diff suppressed because it is too large
Load Diff
@@ -205,3 +205,160 @@ li.active .page-num {
|
|||||||
padding-bottom: 0.8em;
|
padding-bottom: 0.8em;
|
||||||
margin-bottom: 1.4em;
|
margin-bottom: 1.4em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ── Search modal ── */
|
||||||
|
.search-overlay {
|
||||||
|
position: fixed;
|
||||||
|
inset: 0;
|
||||||
|
background: rgba(0, 0, 0, 0.55);
|
||||||
|
z-index: 1000;
|
||||||
|
display: flex;
|
||||||
|
align-items: flex-start;
|
||||||
|
justify-content: center;
|
||||||
|
padding-top: 10vh;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-modal {
|
||||||
|
width: 580px;
|
||||||
|
max-width: calc(100vw - 40px);
|
||||||
|
max-height: 70vh;
|
||||||
|
background: var(--surface2);
|
||||||
|
border: 1px solid var(--border-bright);
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-input {
|
||||||
|
width: 100%;
|
||||||
|
padding: 14px 16px;
|
||||||
|
background: var(--surface);
|
||||||
|
border: none;
|
||||||
|
border-bottom: 1px solid var(--border-bright);
|
||||||
|
color: var(--text);
|
||||||
|
font-family: var(--font-body);
|
||||||
|
font-size: 1rem;
|
||||||
|
outline: none;
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-input::placeholder { color: var(--text-dim); }
|
||||||
|
|
||||||
|
.search-results {
|
||||||
|
overflow-y: auto;
|
||||||
|
flex: 1;
|
||||||
|
list-style: none;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-result {
|
||||||
|
padding: 10px 16px;
|
||||||
|
border-bottom: 1px solid var(--border);
|
||||||
|
cursor: pointer;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
gap: 3px;
|
||||||
|
transition: background 0.1s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-result:last-child { border-bottom: none; }
|
||||||
|
|
||||||
|
.search-result:hover,
|
||||||
|
.search-result.active { background: var(--surface3); }
|
||||||
|
|
||||||
|
.search-result-meta {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: baseline;
|
||||||
|
gap: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-result-heading {
|
||||||
|
font-family: var(--font-display);
|
||||||
|
font-size: 0.7rem;
|
||||||
|
letter-spacing: 0.08em;
|
||||||
|
color: var(--teal);
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
min-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-result-page {
|
||||||
|
font-family: var(--font-mono);
|
||||||
|
font-size: 0.7rem;
|
||||||
|
color: var(--text-dim);
|
||||||
|
white-space: nowrap;
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-result-snippet {
|
||||||
|
font-size: 0.85rem;
|
||||||
|
color: var(--text-dim);
|
||||||
|
line-height: 1.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-result-snippet mark {
|
||||||
|
background: none;
|
||||||
|
color: var(--gold);
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-empty {
|
||||||
|
padding: 24px 16px;
|
||||||
|
text-align: center;
|
||||||
|
color: var(--text-dim);
|
||||||
|
font-family: var(--font-mono);
|
||||||
|
font-size: 0.8rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-footer {
|
||||||
|
display: flex;
|
||||||
|
gap: 16px;
|
||||||
|
padding: 7px 14px;
|
||||||
|
border-top: 1px solid var(--border);
|
||||||
|
background: var(--surface3);
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-footer span {
|
||||||
|
font-family: var(--font-mono);
|
||||||
|
font-size: 0.68rem;
|
||||||
|
color: var(--text-dim);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ── Heading permalink buttons ── */
|
||||||
|
.page-section h1,
|
||||||
|
.page-section h2,
|
||||||
|
.page-section h3 {
|
||||||
|
position: relative;
|
||||||
|
scroll-margin-top: 60px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.heading-link {
|
||||||
|
position: absolute;
|
||||||
|
left: -24px;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
background: none;
|
||||||
|
border: none;
|
||||||
|
cursor: pointer;
|
||||||
|
color: var(--text-dim);
|
||||||
|
font-family: var(--font-mono);
|
||||||
|
font-size: 17px;
|
||||||
|
padding: 2px 4px;
|
||||||
|
line-height: 1;
|
||||||
|
transition: color 0.15s;
|
||||||
|
user-select: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* h1 has padding-bottom: 0.3em — shift button up so it centers with the text line, not the full box */
|
||||||
|
.page-section h1 > .heading-link {
|
||||||
|
top: calc(50% - 5px);
|
||||||
|
}
|
||||||
|
|
||||||
|
.heading-link:hover,
|
||||||
|
.heading-link--copied {
|
||||||
|
color: var(--teal);
|
||||||
|
}
|
||||||
|
|||||||
49
scripts/spells-to-html.js
Normal file
49
scripts/spells-to-html.js
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
#!/usr/bin/env node
|
||||||
|
|
||||||
|
const fs = require('node:fs')
|
||||||
|
const path = require('node:path')
|
||||||
|
const { parse } = require('yaml')
|
||||||
|
|
||||||
|
const ymlPath = path.join(__dirname, "..", "data", "spells.yml");
|
||||||
|
const data = parse(fs.readFileSync(ymlPath, "utf8"));
|
||||||
|
|
||||||
|
const columns = ["name", "cost", "targets", "duration"];
|
||||||
|
|
||||||
|
const myEscape = (s) =>
|
||||||
|
String(s ?? "")
|
||||||
|
.replace(/&/g, "&")
|
||||||
|
.replace(/</g, "<")
|
||||||
|
.replace(/>/g, ">");
|
||||||
|
|
||||||
|
const generateTable = (spells, class_) => {
|
||||||
|
const rows = spells
|
||||||
|
.filter((elem) => elem.class === class_)
|
||||||
|
.map(
|
||||||
|
(spell) =>
|
||||||
|
` <tr>\n${columns.map((col) => ` <td>${myEscape(spell[col])}</td>`).join("\n")}\n </tr><tr><td colspan="4">${spell["description"]}</td></tr>`,
|
||||||
|
)
|
||||||
|
.join("\n");
|
||||||
|
|
||||||
|
const headers = columns
|
||||||
|
.map((col) => ` <th>${col.charAt(0).toUpperCase() + col.slice(1)}</th>`)
|
||||||
|
.join("\n");
|
||||||
|
|
||||||
|
return `<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
${headers}
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
${rows}
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
`;
|
||||||
|
};
|
||||||
|
|
||||||
|
["arcanist", "chimerist", "elementalist", "entropist", "spiritist"].forEach(
|
||||||
|
(class_) => {
|
||||||
|
process.stdout.write(`<h2>${class_} Spells</h2>\n`)
|
||||||
|
process.stdout.write(generateTable(data.spells, class_));
|
||||||
|
},
|
||||||
|
);
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
import React, { useState, useEffect, useRef, useCallback, useMemo } from 'react';
|
import React, { useState, useEffect, useRef, useCallback, useMemo } from 'react';
|
||||||
|
import SearchModal, { SearchEntry } from './SearchModal';
|
||||||
|
|
||||||
interface BookIndexProps {
|
interface BookIndexProps {
|
||||||
title: string;
|
title: string;
|
||||||
@@ -6,10 +7,63 @@ interface BookIndexProps {
|
|||||||
pages: BookPage[];
|
pages: BookPage[];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function slugify(text: string): string {
|
||||||
|
return text
|
||||||
|
.toLowerCase()
|
||||||
|
.replace(/[^\w\s-]/g, '')
|
||||||
|
.replace(/\s+/g, '-')
|
||||||
|
.replace(/-+/g, '-')
|
||||||
|
.trim();
|
||||||
|
}
|
||||||
|
|
||||||
export default function BookIndex({ title, logoText, pages }: BookIndexProps) {
|
export default function BookIndex({ title, logoText, pages }: BookIndexProps) {
|
||||||
const pageNums = useMemo(() => pages.map(p => p.n), [pages]);
|
const pageNums = useMemo(() => pages.map(p => p.n), [pages]);
|
||||||
const total = pageNums.length;
|
const total = pageNums.length;
|
||||||
|
|
||||||
|
// Single DOMParser pass per page: build search index then inject permalink buttons.
|
||||||
|
// Both outputs are stable memos so React's dangerouslySetInnerHTML diffing never
|
||||||
|
// strips the injected buttons on re-render.
|
||||||
|
const { processedPages, searchIndex } = useMemo(() => {
|
||||||
|
const parser = new DOMParser();
|
||||||
|
const slugCount: Record<string, number> = {};
|
||||||
|
const searchIndex: SearchEntry[] = [];
|
||||||
|
|
||||||
|
const processedPages = pages.map(({ n, content }) => {
|
||||||
|
const doc = parser.parseFromString(content, 'text/html');
|
||||||
|
|
||||||
|
// 1. Index text blocks before mutation so heading textContent has no '#' noise
|
||||||
|
let currentHeading = '';
|
||||||
|
doc.body.querySelectorAll('h1, h2, h3, p, li, blockquote, td').forEach(el => {
|
||||||
|
if (/^H[1-3]$/.test(el.tagName)) {
|
||||||
|
currentHeading = el.textContent?.trim() || '';
|
||||||
|
} else {
|
||||||
|
const text = el.textContent?.trim() || '';
|
||||||
|
if (text.length > 20) {
|
||||||
|
searchIndex.push({ pageNum: n, headingContext: currentHeading, text });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// 2. Add IDs and permalink buttons to headings
|
||||||
|
doc.querySelectorAll('h1, h2, h3').forEach(heading => {
|
||||||
|
const baseSlug = slugify(heading.textContent || '');
|
||||||
|
if (!baseSlug) return;
|
||||||
|
slugCount[baseSlug] = (slugCount[baseSlug] || 0) + 1;
|
||||||
|
const id = slugCount[baseSlug] === 1 ? baseSlug : `${baseSlug}-${slugCount[baseSlug] - 1}`;
|
||||||
|
heading.id = id;
|
||||||
|
const btn = doc.createElement('button');
|
||||||
|
btn.className = 'heading-link';
|
||||||
|
btn.setAttribute('aria-label', 'Copy permalink');
|
||||||
|
btn.textContent = '#';
|
||||||
|
heading.insertBefore(btn, heading.firstChild);
|
||||||
|
});
|
||||||
|
|
||||||
|
return { n, content: doc.body.innerHTML };
|
||||||
|
});
|
||||||
|
|
||||||
|
return { processedPages, searchIndex };
|
||||||
|
}, [pages]);
|
||||||
|
|
||||||
const [currentIdx, setCurrentIdx] = useState(() => {
|
const [currentIdx, setCurrentIdx] = useState(() => {
|
||||||
const m = window.location.hash.match(/^#page-(\d+)$/);
|
const m = window.location.hash.match(/^#page-(\d+)$/);
|
||||||
if (m) {
|
if (m) {
|
||||||
@@ -19,6 +73,8 @@ export default function BookIndex({ title, logoText, pages }: BookIndexProps) {
|
|||||||
return 0;
|
return 0;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const [isSearchOpen, setIsSearchOpen] = useState(false);
|
||||||
|
|
||||||
const contentRef = useRef<HTMLDivElement>(null);
|
const contentRef = useRef<HTMLDivElement>(null);
|
||||||
|
|
||||||
const goTo = useCallback((n: number, smooth: boolean, push: boolean) => {
|
const goTo = useCallback((n: number, smooth: boolean, push: boolean) => {
|
||||||
@@ -66,9 +122,15 @@ export default function BookIndex({ title, logoText, pages }: BookIndexProps) {
|
|||||||
return () => container.removeEventListener('scroll', handleScroll);
|
return () => container.removeEventListener('scroll', handleScroll);
|
||||||
}, [pageNums]);
|
}, [pageNums]);
|
||||||
|
|
||||||
// Keyboard navigation
|
// Keyboard navigation (page-level) and search shortcut
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const handleKeyDown = (e: KeyboardEvent) => {
|
const handleKeyDown = (e: KeyboardEvent) => {
|
||||||
|
// Ctrl+K / Ctrl+F → open search
|
||||||
|
if ((e.ctrlKey || e.metaKey) && (e.key === 'k' || e.key === 'f')) {
|
||||||
|
e.preventDefault();
|
||||||
|
setIsSearchOpen(true);
|
||||||
|
return;
|
||||||
|
}
|
||||||
const tag = (e.target as HTMLElement).tagName;
|
const tag = (e.target as HTMLElement).tagName;
|
||||||
if (tag === 'INPUT' || tag === 'TEXTAREA') return;
|
if (tag === 'INPUT' || tag === 'TEXTAREA') return;
|
||||||
setCurrentIdx(prev => {
|
setCurrentIdx(prev => {
|
||||||
@@ -88,16 +150,61 @@ export default function BookIndex({ title, logoText, pages }: BookIndexProps) {
|
|||||||
// Browser back/forward
|
// Browser back/forward
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const handlePopState = () => {
|
const handlePopState = () => {
|
||||||
const m = location.hash.match(/^#page-(\d+)$/);
|
const hash = location.hash.slice(1);
|
||||||
if (m) {
|
const pageM = hash.match(/^page-(\d+)$/);
|
||||||
const n = parseInt(m[1], 10);
|
if (pageM) {
|
||||||
|
const n = parseInt(pageM[1], 10);
|
||||||
if (pageNums.includes(n)) goTo(n, false, false);
|
if (pageNums.includes(n)) goTo(n, false, false);
|
||||||
|
} else if (hash) {
|
||||||
|
const target = document.getElementById(hash);
|
||||||
|
if (target) target.scrollIntoView({ behavior: 'smooth', block: 'start' });
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
window.addEventListener('popstate', handlePopState);
|
window.addEventListener('popstate', handlePopState);
|
||||||
return () => window.removeEventListener('popstate', handlePopState);
|
return () => window.removeEventListener('popstate', handlePopState);
|
||||||
}, [goTo, pageNums]);
|
}, [goTo, pageNums]);
|
||||||
|
|
||||||
|
// Event delegation for heading permalink buttons
|
||||||
|
useEffect(() => {
|
||||||
|
const container = contentRef.current;
|
||||||
|
if (!container) return;
|
||||||
|
const handleClick = (e: MouseEvent) => {
|
||||||
|
const btn = (e.target as Element).closest('.heading-link') as HTMLButtonElement | null;
|
||||||
|
if (!btn) return;
|
||||||
|
const id = btn.closest('h1, h2, h3')?.id;
|
||||||
|
if (!id) return;
|
||||||
|
e.preventDefault();
|
||||||
|
const url = `${window.location.origin}${window.location.pathname}#${id}`;
|
||||||
|
history.pushState(null, '', `#${id}`);
|
||||||
|
navigator.clipboard.writeText(url).catch(() => {
|
||||||
|
const ta = document.createElement('textarea');
|
||||||
|
ta.value = url;
|
||||||
|
document.body.appendChild(ta);
|
||||||
|
ta.select();
|
||||||
|
document.execCommand('copy');
|
||||||
|
document.body.removeChild(ta);
|
||||||
|
});
|
||||||
|
const prev = btn.textContent!;
|
||||||
|
btn.textContent = '✓';
|
||||||
|
btn.classList.add('heading-link--copied');
|
||||||
|
setTimeout(() => {
|
||||||
|
btn.textContent = prev;
|
||||||
|
btn.classList.remove('heading-link--copied');
|
||||||
|
}, 1500);
|
||||||
|
};
|
||||||
|
container.addEventListener('click', handleClick);
|
||||||
|
return () => container.removeEventListener('click', handleClick);
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
// Scroll to heading hash on initial load
|
||||||
|
useEffect(() => {
|
||||||
|
const hash = window.location.hash.slice(1);
|
||||||
|
if (hash && !/^page-\d+$/.test(hash)) {
|
||||||
|
const target = document.getElementById(hash);
|
||||||
|
if (target) target.scrollIntoView({ behavior: 'instant', block: 'start' });
|
||||||
|
}
|
||||||
|
}, []); // eslint-disable-line react-hooks/exhaustive-deps
|
||||||
|
|
||||||
const currentPage = pageNums[currentIdx];
|
const currentPage = pageNums[currentIdx];
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@@ -105,6 +212,9 @@ export default function BookIndex({ title, logoText, pages }: BookIndexProps) {
|
|||||||
<header>
|
<header>
|
||||||
<div className="logo">{logoText}</div>
|
<div className="logo">{logoText}</div>
|
||||||
<div className="toolbar">
|
<div className="toolbar">
|
||||||
|
<button className="tab" onClick={() => setIsSearchOpen(true)} title="Search (Ctrl+K)">
|
||||||
|
Search
|
||||||
|
</button>
|
||||||
<span id="page-indicator">{currentIdx + 1} / {total}</span>
|
<span id="page-indicator">{currentIdx + 1} / {total}</span>
|
||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
@@ -153,7 +263,7 @@ export default function BookIndex({ title, logoText, pages }: BookIndexProps) {
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div id="content" ref={contentRef}>
|
<div id="content" ref={contentRef}>
|
||||||
{pages.map(({ n, content }) => (
|
{processedPages.map(({ n, content }) => (
|
||||||
<section
|
<section
|
||||||
key={n}
|
key={n}
|
||||||
id={`page-${n}`}
|
id={`page-${n}`}
|
||||||
@@ -164,6 +274,14 @@ export default function BookIndex({ title, logoText, pages }: BookIndexProps) {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
{isSearchOpen && (
|
||||||
|
<SearchModal
|
||||||
|
searchIndex={searchIndex}
|
||||||
|
onNavigate={n => goTo(n, false, true)}
|
||||||
|
onClose={() => setIsSearchOpen(false)}
|
||||||
|
/>
|
||||||
|
)}
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
128
src/SearchModal.tsx
Normal file
128
src/SearchModal.tsx
Normal file
@@ -0,0 +1,128 @@
|
|||||||
|
import React, { useState, useEffect, useRef, useMemo, useCallback } from 'react';
|
||||||
|
|
||||||
|
export interface SearchEntry {
|
||||||
|
pageNum: number;
|
||||||
|
headingContext: string;
|
||||||
|
text: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface Props {
|
||||||
|
searchIndex: SearchEntry[];
|
||||||
|
onNavigate: (pageNum: number) => void;
|
||||||
|
onClose: () => void;
|
||||||
|
}
|
||||||
|
|
||||||
|
function escapeHtml(s: string): string {
|
||||||
|
return s.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>');
|
||||||
|
}
|
||||||
|
|
||||||
|
function buildSnippetHtml(text: string, q: string): string {
|
||||||
|
const lo = text.toLowerCase();
|
||||||
|
const idx = lo.indexOf(q);
|
||||||
|
if (idx === -1) return escapeHtml(text.slice(0, 140)) + (text.length > 140 ? '…' : '');
|
||||||
|
const r = 65;
|
||||||
|
const s = Math.max(0, idx - r);
|
||||||
|
const e = Math.min(text.length, idx + q.length + r);
|
||||||
|
return (
|
||||||
|
(s > 0 ? '…' : '') +
|
||||||
|
escapeHtml(text.slice(s, idx)) +
|
||||||
|
`<mark>${escapeHtml(text.slice(idx, idx + q.length))}</mark>` +
|
||||||
|
escapeHtml(text.slice(idx + q.length, e)) +
|
||||||
|
(e < text.length ? '…' : '')
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
export default function SearchModal({ searchIndex, onNavigate, onClose }: Props) {
|
||||||
|
const [query, setQuery] = useState('');
|
||||||
|
const [activeIdx, setActiveIdx] = useState(0);
|
||||||
|
const inputRef = useRef<HTMLInputElement>(null);
|
||||||
|
const listRef = useRef<HTMLUListElement>(null);
|
||||||
|
|
||||||
|
useEffect(() => { inputRef.current?.focus(); }, []);
|
||||||
|
|
||||||
|
const results = useMemo(() => {
|
||||||
|
const q = query.trim().toLowerCase();
|
||||||
|
if (q.length < 2) return [];
|
||||||
|
const seen: Record<number, number> = {};
|
||||||
|
const out: { pageNum: number; headingContext: string; snippetHtml: string }[] = [];
|
||||||
|
for (const entry of searchIndex) {
|
||||||
|
if (out.length >= 40) break;
|
||||||
|
const hitText = entry.text.toLowerCase().includes(q);
|
||||||
|
const hitHeading = entry.headingContext.toLowerCase().includes(q);
|
||||||
|
if (!hitText && !hitHeading) continue;
|
||||||
|
const count = seen[entry.pageNum] ?? 0;
|
||||||
|
if (count >= 2) continue;
|
||||||
|
seen[entry.pageNum] = count + 1;
|
||||||
|
out.push({
|
||||||
|
pageNum: entry.pageNum,
|
||||||
|
headingContext: entry.headingContext,
|
||||||
|
snippetHtml: buildSnippetHtml(hitText ? entry.text : entry.headingContext, q),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
return out;
|
||||||
|
}, [query, searchIndex]);
|
||||||
|
|
||||||
|
useEffect(() => { setActiveIdx(0); }, [results]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
const el = listRef.current?.children[activeIdx] as HTMLElement | undefined;
|
||||||
|
el?.scrollIntoView({ block: 'nearest' });
|
||||||
|
}, [activeIdx]);
|
||||||
|
|
||||||
|
const go = useCallback((pageNum: number) => {
|
||||||
|
onNavigate(pageNum);
|
||||||
|
onClose();
|
||||||
|
}, [onNavigate, onClose]);
|
||||||
|
|
||||||
|
const handleKeyDown = (e: React.KeyboardEvent) => {
|
||||||
|
if (e.key === 'Escape') { onClose(); return; }
|
||||||
|
if (e.key === 'ArrowDown') { e.preventDefault(); setActiveIdx(i => Math.min(i + 1, results.length - 1)); }
|
||||||
|
if (e.key === 'ArrowUp') { e.preventDefault(); setActiveIdx(i => Math.max(i - 1, 0)); }
|
||||||
|
if (e.key === 'Enter' && results[activeIdx]) go(results[activeIdx].pageNum);
|
||||||
|
};
|
||||||
|
|
||||||
|
const q = query.trim();
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div className="search-overlay" onClick={onClose}>
|
||||||
|
<div className="search-modal" onClick={e => e.stopPropagation()}>
|
||||||
|
<input
|
||||||
|
ref={inputRef}
|
||||||
|
className="search-input"
|
||||||
|
type="text"
|
||||||
|
placeholder="Search the rulebook…"
|
||||||
|
value={query}
|
||||||
|
onChange={e => setQuery(e.target.value)}
|
||||||
|
onKeyDown={handleKeyDown}
|
||||||
|
/>
|
||||||
|
{q.length < 2 ? (
|
||||||
|
<div className="search-empty">Type at least 2 characters</div>
|
||||||
|
) : results.length === 0 ? (
|
||||||
|
<div className="search-empty">No results for “{q}”</div>
|
||||||
|
) : (
|
||||||
|
<ul className="search-results" ref={listRef}>
|
||||||
|
{results.map((r, i) => (
|
||||||
|
<li
|
||||||
|
key={i}
|
||||||
|
className={`search-result${i === activeIdx ? ' active' : ''}`}
|
||||||
|
onClick={() => go(r.pageNum)}
|
||||||
|
onMouseEnter={() => setActiveIdx(i)}
|
||||||
|
>
|
||||||
|
<div className="search-result-meta">
|
||||||
|
<span className="search-result-heading">{r.headingContext || '—'}</span>
|
||||||
|
<span className="search-result-page">p.{r.pageNum}</span>
|
||||||
|
</div>
|
||||||
|
<div className="search-result-snippet" dangerouslySetInnerHTML={{ __html: r.snippetHtml }} />
|
||||||
|
</li>
|
||||||
|
))}
|
||||||
|
</ul>
|
||||||
|
)}
|
||||||
|
<div className="search-footer">
|
||||||
|
<span>↑↓ navigate</span>
|
||||||
|
<span>↵ go to page</span>
|
||||||
|
<span>esc close</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -85,6 +85,25 @@ module.exports = (env, argv) => {
|
|||||||
...(isProd
|
...(isProd
|
||||||
? [new MiniCssExtractPlugin({ filename: "[name].[contenthash].css" })]
|
? [new MiniCssExtractPlugin({ filename: "[name].[contenthash].css" })]
|
||||||
: []),
|
: []),
|
||||||
|
// Register book HTML source files as compilation dependencies so webpack
|
||||||
|
// watches them in dev mode and triggers a rebuild when they change.
|
||||||
|
{
|
||||||
|
apply(compiler) {
|
||||||
|
compiler.hooks.afterCompile.tap("WatchBookPages", (compilation) => {
|
||||||
|
const bookDirs = [
|
||||||
|
path.resolve(__dirname, "books/core"),
|
||||||
|
path.resolve(__dirname, "books/natural-fantasy-atlas"),
|
||||||
|
];
|
||||||
|
for (const dir of bookDirs) {
|
||||||
|
try {
|
||||||
|
fs.readdirSync(dir)
|
||||||
|
.filter(f => f.endsWith(".html") && f !== "index.html")
|
||||||
|
.forEach(f => compilation.fileDependencies.add(path.join(dir, f)));
|
||||||
|
} catch (_) {}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
},
|
||||||
new HtmlWebpackPlugin({
|
new HtmlWebpackPlugin({
|
||||||
template: "./src/fabula-ultima-sheet.html",
|
template: "./src/fabula-ultima-sheet.html",
|
||||||
filename: "index.html",
|
filename: "index.html",
|
||||||
@@ -92,7 +111,7 @@ module.exports = (env, argv) => {
|
|||||||
scriptLoading: "blocking",
|
scriptLoading: "blocking",
|
||||||
}),
|
}),
|
||||||
new HtmlWebpackPlugin({
|
new HtmlWebpackPlugin({
|
||||||
templateContent: bookTemplate(
|
templateContent: () => bookTemplate(
|
||||||
"Fabula Ultima - Core Rulebook",
|
"Fabula Ultima - Core Rulebook",
|
||||||
"Core Rules",
|
"Core Rules",
|
||||||
"./books/core"
|
"./books/core"
|
||||||
@@ -102,7 +121,7 @@ module.exports = (env, argv) => {
|
|||||||
scriptLoading: "blocking",
|
scriptLoading: "blocking",
|
||||||
}),
|
}),
|
||||||
new HtmlWebpackPlugin({
|
new HtmlWebpackPlugin({
|
||||||
templateContent: bookTemplate(
|
templateContent: () => bookTemplate(
|
||||||
"Fabula Ultima - Natural Fantasy Atlas",
|
"Fabula Ultima - Natural Fantasy Atlas",
|
||||||
"Natural Fantasy Atlas",
|
"Natural Fantasy Atlas",
|
||||||
"./books/natural-fantasy-atlas"
|
"./books/natural-fantasy-atlas"
|
||||||
|
|||||||
Reference in New Issue
Block a user