CI: add rust/ build+test workflow
All checks were successful
build / build-test (push) Successful in 39s

This commit is contained in:
Jan-Peter von Hunnius 2026-09-01 06:25:01 +02:00
parent 1da6aa35a0
commit 9cd8e2f717
27 changed files with 5774 additions and 8 deletions

134
data/adventures/zones.json Normal file
View file

@ -0,0 +1,134 @@
[
{
"id": "skara_brae_streets",
"name": "Skara Brae Streets",
"min_level": 1,
"max_level": 2,
"nerve_cost": 3,
"description": "The darkened streets of Skara Brae are dangerous. Thugs and vermin lurk in every shadow.",
"encounters": [
{ "enemy_id": "thief", "weight": 4 },
{ "enemy_id": "kobold", "weight": 3 },
{ "enemy_id": "orc", "weight": 3 },
{ "enemy_id": "mad_dog", "weight": 2 },
{ "enemy_id": "wolf", "weight": 2 },
{ "enemy_id": "skeleton", "weight": 2 },
{ "enemy_id": "spider", "weight": 3 }
]
},
{
"id": "cellar",
"name": "The Cellar",
"min_level": 1,
"max_level": 2,
"nerve_cost": 5,
"description": "Beneath the Scarlet Bard tavern, a cellar teems with rats and creeping things.",
"encounters": [
{ "enemy_id": "kobold", "weight": 4 },
{ "enemy_id": "skeleton", "weight": 3 },
{ "enemy_id": "zombie", "weight": 2 },
{ "enemy_id": "spider", "weight": 3 },
{ "enemy_id": "gnome", "weight": 2 },
{ "enemy_id": "barbarian", "weight": 1 }
]
},
{
"id": "sewers_1",
"name": "Sewers — Upper",
"min_level": 2,
"max_level": 3,
"nerve_cost": 7,
"description": "The upper sewers wind beneath Skara Brae. Kobolds and half-orcs have claimed these tunnels.",
"encounters": [
{ "enemy_id": "half_orc", "weight": 4 },
{ "enemy_id": "hobgoblin", "weight": 3 },
{ "enemy_id": "mercenary", "weight": 3 },
{ "enemy_id": "swordsman", "weight": 3 },
{ "enemy_id": "zombie", "weight": 2 },
{ "enemy_id": "kobold", "weight": 2 }
]
},
{
"id": "sewers_2",
"name": "Sewers — Deep",
"min_level": 3,
"max_level": 4,
"nerve_cost": 10,
"description": "Deeper in the sewers, the water runs black and dangerous creatures gather.",
"encounters": [
{ "enemy_id": "conjurer_lv1", "weight": 2 },
{ "enemy_id": "magician_lv1", "weight": 2 },
{ "enemy_id": "werewolf", "weight": 3 },
{ "enemy_id": "ogre", "weight": 3 },
{ "enemy_id": "wight", "weight": 2 },
{ "enemy_id": "assassin", "weight": 2 },
{ "enemy_id": "jade_monk", "weight": 1 }
]
},
{
"id": "catacombs",
"name": "The Catacombs",
"min_level": 4,
"max_level": 5,
"nerve_cost": 12,
"description": "Ancient burial chambers where the dead stir and dark magic lingers.",
"encounters": [
{ "enemy_id": "wraith", "weight": 3 },
{ "enemy_id": "shadow", "weight": 3 },
{ "enemy_id": "berserker", "weight": 3 },
{ "enemy_id": "ogre_magician", "weight": 2 },
{ "enemy_id": "hydra", "weight": 1 },
{ "enemy_id": "stone_giant", "weight": 1 },
{ "enemy_id": "blue_dragon", "weight": 1 }
]
},
{
"id": "harkyns_castle",
"name": "Harkyn's Castle",
"min_level": 5,
"max_level": 7,
"nerve_cost": 15,
"description": "The dread Lord Harkyn's fortress. Powerful undead and elite guards patrol these halls.",
"encounters": [
{ "enemy_id": "vampire", "weight": 3 },
{ "enemy_id": "spectre", "weight": 3 },
{ "enemy_id": "lesser_demon", "weight": 2 },
{ "enemy_id": "red_dragon", "weight": 1 },
{ "enemy_id": "demon", "weight": 2 },
{ "enemy_id": "beholder", "weight": 1 },
{ "enemy_id": "titan", "weight": 1 }
]
},
{
"id": "kylearans_tower",
"name": "Kylearan's Tower",
"min_level": 7,
"max_level": 8,
"nerve_cost": 18,
"description": "The mad archmage Kylearan guards the final approach to Mangar. His tower is a gauntlet of summoned horrors.",
"encounters": [
{ "enemy_id": "master_wizard", "weight": 3 },
{ "enemy_id": "greater_demon", "weight": 2 },
{ "enemy_id": "vampire_lord", "weight": 2 },
{ "enemy_id": "jabberwock", "weight": 1 },
{ "enemy_id": "storm_giant", "weight": 2 },
{ "enemy_id": "soul_sucker", "weight": 2 }
]
},
{
"id": "mangars_tower",
"name": "Mangar's Tower",
"min_level": 9,
"max_level": 10,
"nerve_cost": 25,
"description": "The seat of Mangar the Dark's power. The most terrifying creatures in all of Skara Brae await within.",
"encounters": [
{ "enemy_id": "balrog", "weight": 3 },
{ "enemy_id": "black_dragon", "weight": 2 },
{ "enemy_id": "lich", "weight": 2 },
{ "enemy_id": "archmage", "weight": 3 },
{ "enemy_id": "demon_lord", "weight": 2 },
{ "enemy_id": "mangar", "weight": 1 }
]
}
]