generated from nhcarrigan/template
feat: vampire mode chunk 3 - sync/sanitize and initial state
Add initialVampireState() and vampireSpread validation to mirror the goddess mode pattern. Also lint-fix pre-existing style issues across all Chunk 2 vampire data and type files.
This commit is contained in:
@@ -36,7 +36,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
},
|
||||
{
|
||||
bonus: { bloodMultiplier: 1.08, combatMultiplier: 1.05 },
|
||||
cost: { blood: 1_500, ichor: 0, soulShards: 0 },
|
||||
cost: { blood: 1500, ichor: 0, soulShards: 0 },
|
||||
description: "Ground from a warlord's tooth, this fang has seen three centuries of campaigns. Its edge is still perfect.",
|
||||
equipped: false,
|
||||
id: "war_fang",
|
||||
@@ -48,7 +48,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
},
|
||||
{
|
||||
bonus: { bloodMultiplier: 1.12 },
|
||||
cost: { blood: 4_000, ichor: 0, soulShards: 0 },
|
||||
cost: { blood: 4000, ichor: 0, soulShards: 0 },
|
||||
description: "Carved from volcanic obsidian, this fang channels the Keep's stored blood magic into every hunt.",
|
||||
equipped: false,
|
||||
id: "obsidian_fang",
|
||||
@@ -244,7 +244,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
},
|
||||
{
|
||||
bonus: { combatMultiplier: 1.1 },
|
||||
cost: { blood: 1_500, ichor: 0, soulShards: 0 },
|
||||
cost: { blood: 1500, ichor: 0, soulShards: 0 },
|
||||
description: "Cut from volcanic obsidian-fibre and stitched with iron thread. It does not stop blows — it returns them.",
|
||||
equipped: false,
|
||||
id: "obsidian_shroud",
|
||||
@@ -255,8 +255,8 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
type: "shroud",
|
||||
},
|
||||
{
|
||||
bonus: { combatMultiplier: 1.12, bloodMultiplier: 1.05 },
|
||||
cost: { blood: 4_000, ichor: 0, soulShards: 0 },
|
||||
bonus: { bloodMultiplier: 1.05, combatMultiplier: 1.12 },
|
||||
cost: { blood: 4000, ichor: 0, soulShards: 0 },
|
||||
description: "Woven from threads dyed in the Citadel's blood-tanneries. The crimson never fades. Neither does the authority it implies.",
|
||||
equipped: false,
|
||||
id: "crimson_shroud",
|
||||
@@ -267,7 +267,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
type: "shroud",
|
||||
},
|
||||
{
|
||||
bonus: { combatMultiplier: 1.12, bloodMultiplier: 1.08 },
|
||||
bonus: { bloodMultiplier: 1.08, combatMultiplier: 1.12 },
|
||||
cost: { blood: 12_000, ichor: 2, soulShards: 0 },
|
||||
description: "Woven entirely from shadow thread. A skilled observer would say it moves before the wearer does — a less skilled observer would simply not notice the wearer at all.",
|
||||
equipped: false,
|
||||
@@ -279,7 +279,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
type: "shroud",
|
||||
},
|
||||
{
|
||||
bonus: { combatMultiplier: 1.15, bloodMultiplier: 1.08 },
|
||||
bonus: { bloodMultiplier: 1.08, combatMultiplier: 1.15 },
|
||||
cost: { blood: 35_000, ichor: 5, soulShards: 0 },
|
||||
description: "Treated with plague compounds until the fabric has developed its own kind of patience. Wearing it keeps opponents at arm's length, quite literally.",
|
||||
equipped: false,
|
||||
@@ -292,7 +292,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
},
|
||||
// ── Shrouds — Rare ────────────────────────────────────────────────────────
|
||||
{
|
||||
bonus: { combatMultiplier: 1.2, bloodMultiplier: 1.1 },
|
||||
bonus: { bloodMultiplier: 1.1, combatMultiplier: 1.2 },
|
||||
description: "Woven from ashen cloth and cinder-crystal thread. It does not burn. Opponents who try to burn the wearer discover this too late.",
|
||||
equipped: false,
|
||||
id: "ashen_shroud",
|
||||
@@ -303,7 +303,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
type: "shroud",
|
||||
},
|
||||
{
|
||||
bonus: { combatMultiplier: 1.22, bloodMultiplier: 1.1 },
|
||||
bonus: { bloodMultiplier: 1.1, combatMultiplier: 1.22 },
|
||||
description: "Woven from chain-link thread recovered from the Gaol's deepest holding cells. Each link carries a containment glyph that now works against those who attack the wearer.",
|
||||
equipped: false,
|
||||
id: "iron_shroud",
|
||||
@@ -314,7 +314,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
type: "shroud",
|
||||
},
|
||||
{
|
||||
bonus: { combatMultiplier: 1.2, bloodMultiplier: 1.15 },
|
||||
bonus: { bloodMultiplier: 1.15, combatMultiplier: 1.2 },
|
||||
description: "Woven from veil thread and phantom-dust infused silk. It flickers between solid and not quite solid, making it very difficult to land a decisive blow against the wearer.",
|
||||
equipped: false,
|
||||
id: "veil_shroud",
|
||||
@@ -325,7 +325,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
type: "shroud",
|
||||
},
|
||||
{
|
||||
bonus: { combatMultiplier: 1.25, bloodMultiplier: 1.12 },
|
||||
bonus: { bloodMultiplier: 1.12, combatMultiplier: 1.25 },
|
||||
description: "Made from moor peat-treated fabric, this shroud absorbs and dissipates kinetic energy in ways that no one has been able to explain satisfactorily.",
|
||||
equipped: false,
|
||||
id: "moor_shroud",
|
||||
@@ -336,7 +336,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
type: "shroud",
|
||||
},
|
||||
{
|
||||
bonus: { combatMultiplier: 1.28, bloodMultiplier: 1.12 },
|
||||
bonus: { bloodMultiplier: 1.12, combatMultiplier: 1.28 },
|
||||
description: "Woven from drowned silk and sunken stone fibre. The pressure of the depths has been incorporated into every thread — this garment is under constant compression.",
|
||||
equipped: false,
|
||||
id: "sunken_shroud",
|
||||
@@ -347,7 +347,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
type: "shroud",
|
||||
},
|
||||
{
|
||||
bonus: { combatMultiplier: 1.3, bloodMultiplier: 1.15 },
|
||||
bonus: { bloodMultiplier: 1.15, combatMultiplier: 1.3 },
|
||||
description: "Salvaged from the Sanctum's vestry — garments that were once sacred and have since been repurposed, without apology, into something entirely different.",
|
||||
equipped: false,
|
||||
id: "sanctum_shroud",
|
||||
@@ -359,7 +359,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
},
|
||||
// ── Shrouds — Epic ────────────────────────────────────────────────────────
|
||||
{
|
||||
bonus: { combatMultiplier: 1.35, bloodMultiplier: 1.2 },
|
||||
bonus: { bloodMultiplier: 1.2, combatMultiplier: 1.35 },
|
||||
description: "Woven from carrion bone fragments and peak crystal thread. This garment was assembled at altitude, in conditions where most vampires would not survive, by a craftsperson who clearly had opinions about structural integrity.",
|
||||
equipped: false,
|
||||
id: "carrion_shroud",
|
||||
@@ -370,7 +370,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
type: "shroud",
|
||||
},
|
||||
{
|
||||
bonus: { combatMultiplier: 1.4, bloodMultiplier: 1.25 },
|
||||
bonus: { bloodMultiplier: 1.25, combatMultiplier: 1.4 },
|
||||
description: "The Bloodspire's architects would recognise their own work in this garment. It was made from the same crystallised blood-material as the building, and it follows the same impossible logic.",
|
||||
equipped: false,
|
||||
id: "spire_shroud",
|
||||
@@ -381,7 +381,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
type: "shroud",
|
||||
},
|
||||
{
|
||||
bonus: { combatMultiplier: 1.45, bloodMultiplier: 1.3 },
|
||||
bonus: { bloodMultiplier: 1.3, combatMultiplier: 1.45 },
|
||||
description: "Woven from eternity thread and shroud dust, this garment exists slightly out of sync with the present moment. Blows land where the wearer was, not where the wearer is.",
|
||||
equipped: false,
|
||||
id: "eternity_shroud",
|
||||
@@ -392,7 +392,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
type: "shroud",
|
||||
},
|
||||
{
|
||||
bonus: { combatMultiplier: 1.5, bloodMultiplier: 1.3, ichorMultiplier: 1.1 },
|
||||
bonus: { bloodMultiplier: 1.3, combatMultiplier: 1.5, ichorMultiplier: 1.1 },
|
||||
description: "The garment of someone who has been to the edge of the known world and found the edge wanting. It absorbs damage from an existential weariness that precedes the arrival of the blow.",
|
||||
equipped: false,
|
||||
id: "abyss_shroud",
|
||||
@@ -404,7 +404,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
},
|
||||
// ── Shrouds — Legendary ───────────────────────────────────────────────────
|
||||
{
|
||||
bonus: { combatMultiplier: 1.55, bloodMultiplier: 1.4, ichorMultiplier: 1.2 },
|
||||
bonus: { bloodMultiplier: 1.4, combatMultiplier: 1.55, ichorMultiplier: 1.2 },
|
||||
description: "Woven from the Court's most closely held thread — shadow and whisper and silence all at once. To wear this is to become genuinely difficult to locate, let alone fight.",
|
||||
equipped: false,
|
||||
id: "whisper_shroud",
|
||||
@@ -415,7 +415,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
type: "shroud",
|
||||
},
|
||||
{
|
||||
bonus: { combatMultiplier: 1.7, bloodMultiplier: 1.5, ichorMultiplier: 1.3 },
|
||||
bonus: { bloodMultiplier: 1.5, combatMultiplier: 1.7, ichorMultiplier: 1.3 },
|
||||
description: "A shroud woven from the fabric of the Eternal Abyss — the void itself, shaped into something that can be worn. It does not protect the wearer. It convinces the universe not to bother attacking.",
|
||||
equipped: false,
|
||||
id: "eternal_shroud",
|
||||
@@ -427,7 +427,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
},
|
||||
// ── Talismans — Common ────────────────────────────────────────────────────
|
||||
{
|
||||
bonus: { combatMultiplier: 1.06, bloodMultiplier: 1.06 },
|
||||
bonus: { bloodMultiplier: 1.06, combatMultiplier: 1.06 },
|
||||
cost: { blood: 200, ichor: 0, soulShards: 0 },
|
||||
description: "A talisman carved from catacomb bone. Every vampire starts somewhere. Most of them start here.",
|
||||
equipped: false,
|
||||
@@ -452,7 +452,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
},
|
||||
{
|
||||
bonus: { bloodMultiplier: 1.1, combatMultiplier: 1.05 },
|
||||
cost: { blood: 1_500, ichor: 0, soulShards: 0 },
|
||||
cost: { blood: 1500, ichor: 0, soulShards: 0 },
|
||||
description: "Carved from obsidian chip and iron shaving bonded together. The resulting piece is heavier than it looks and radiates a faint warmth.",
|
||||
equipped: false,
|
||||
id: "obsidian_talisman",
|
||||
@@ -464,7 +464,7 @@ export const defaultVampireEquipment: Array<VampireEquipment> = [
|
||||
},
|
||||
{
|
||||
bonus: { bloodMultiplier: 1.12, combatMultiplier: 1.06 },
|
||||
cost: { blood: 4_000, ichor: 0, soulShards: 0 },
|
||||
cost: { blood: 4000, ichor: 0, soulShards: 0 },
|
||||
description: "A talisman carrying the Citadel's seal — the weight of centuries of dynasty compressed into a small, heavy object.",
|
||||
equipped: false,
|
||||
id: "crimson_talisman",
|
||||
|
||||
Reference in New Issue
Block a user