From e0553eebbf5ef48cc8215100e9fff2064bcdb697 Mon Sep 17 00:00:00 2001
From: Eric Woodward
Date: Mon, 18 Mar 2024 16:42:46 -0400
Subject: [PATCH] rules updates
add dread wurm and werebeasts
fix backlink for magic items
update rules for + abilities
---
package.json | 2 +-
src/assets/fragments/bestiary/werebeast.md | 13 ++++++
src/layouts/partials/backLink.ejs | 11 ++---
src/layouts/partials/rulesHeader.ejs | 2 +-
src/pages/bestiary/dread-wurm.md | 28 ++++++++++++
src/pages/bestiary/werebeasts/index.md | 41 +++++++++++++++++
src/pages/bestiary/werebeasts/weretiger.md | 45 +++++++++++++++++++
src/pages/bestiary/werebeasts/werewolf.md | 45 +++++++++++++++++++
.../feathers-of-ferrnym/bird-feather.md | 23 ++++++++++
.../feathers-of-ferrnym/boat-feather.md | 21 +++++++++
.../magic-items/feathers-of-ferrnym/index.md | 21 +++++++++
.../feathers-of-ferrnym/tree-feather.md | 13 ++++++
.../feathers-of-ferrnym/whip-feather.md | 24 ++++++++++
src/pages/magic-items/flaming-sword.md | 8 ++--
src/pages/magic-items/index.md | 2 +
.../magic-items/ring-of-animal-control.md | 19 ++++++++
.../magic-items/ring-of-eldritch-blasting.md | 2 +-
src/pages/magic-items/rod-of-parrying.md | 14 ++++++
src/pages/rules/basics.md | 2 +-
src/pages/rules/equipment/fantasy.md | 2 +-
src/pages/rules/index.md | 3 +-
src/pages/rules/magic.md | 6 +++
22 files changed, 332 insertions(+), 15 deletions(-)
create mode 100644 src/assets/fragments/bestiary/werebeast.md
create mode 100644 src/pages/bestiary/dread-wurm.md
create mode 100644 src/pages/bestiary/werebeasts/index.md
create mode 100644 src/pages/bestiary/werebeasts/weretiger.md
create mode 100644 src/pages/bestiary/werebeasts/werewolf.md
create mode 100644 src/pages/magic-items/feathers-of-ferrnym/bird-feather.md
create mode 100644 src/pages/magic-items/feathers-of-ferrnym/boat-feather.md
create mode 100644 src/pages/magic-items/feathers-of-ferrnym/index.md
create mode 100644 src/pages/magic-items/feathers-of-ferrnym/tree-feather.md
create mode 100644 src/pages/magic-items/feathers-of-ferrnym/whip-feather.md
create mode 100644 src/pages/magic-items/ring-of-animal-control.md
create mode 100644 src/pages/magic-items/rod-of-parrying.md
diff --git a/package.json b/package.json
index 811cc8e..343ffd8 100755
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "planar-vagabond",
- "version": "0.14.0",
+ "version": "0.14.1",
"description": "",
"main": "index.js",
"scripts": {
diff --git a/src/assets/fragments/bestiary/werebeast.md b/src/assets/fragments/bestiary/werebeast.md
new file mode 100644
index 0000000..53c94df
--- /dev/null
+++ b/src/assets/fragments/bestiary/werebeast.md
@@ -0,0 +1,13 @@
+- Humanoid form usually retains some characteristics from their animal form.
+- While in animal form, immune to mundane, non-silver weapons.
+- While in animal form, can only speak with animals of that type.
+- Cannot where armor, as it limits their ability to shapeshift.
+- May summon 1d2 animals associated with their animal form from the surrounding area.
+ - Animals arrive in 1d4 rounds.
+- When hit with wolfsbane, must **Save vs Poison** or flee, as with the [Scare spell](/spells/calm.html#scare).
+- When killed in animal form, reverts to humanoid form.
+- Some animals can smell werebeasts, and are afraid of them.
+- When a humanoid loses more than 1/2 of their max hit points from the natural attacks of a werebeast (ex: bite or claw), they must **Save vs Poison** or become infected with therianthropy.
+
+ - The disease takes 2d12 days to full infect, with signs of infection appearing halfway through.
+ - Humanoids become the same type of werebeasts (and typically run by the referee).
diff --git a/src/layouts/partials/backLink.ejs b/src/layouts/partials/backLink.ejs
index f330dd4..c6a25aa 100644
--- a/src/layouts/partials/backLink.ejs
+++ b/src/layouts/partials/backLink.ejs
@@ -16,7 +16,8 @@ var titlesBySection = {
near: "Near Planes",
transcendental: "Transcendental Planes",
},
-unlistedSections = ['main'];
+unlistedSections = ['main'],
+fixedSection = page?.section?.replace(/\s+/, '-');
%>
<% if (page.subsection && page.path && !page.path.endsWith(`${page.subsection}/index.html`)) { %>
@@ -31,11 +32,11 @@ unlistedSections = ['main'];
The latest version of this license can always be found at <%=site.uri%>/<%=page.path.replace('/index.html', '/')%>.
-<% } else if (page.section && !unlistedSections.includes(page.section) && page.path &&
- !(page.path === `${page.section}/index.html` || page.path.endsWith(`/${page.section}/index.html`))) { -%>
+<% } else if (fixedSection && !unlistedSections.includes(fixedSection) && page.path &&
+ !(page.path === `${fixedSection}/index.html` || page.path.endsWith(`/${fixedSection}/index.html`))) { -%>
<% } -%>
diff --git a/src/layouts/partials/rulesHeader.ejs b/src/layouts/partials/rulesHeader.ejs
index 71ccd34..119bf36 100644
--- a/src/layouts/partials/rulesHeader.ejs
+++ b/src/layouts/partials/rulesHeader.ejs
@@ -35,7 +35,7 @@ var title = (page.title ?? '').replace('HOSR ', '');