Initial commit: Theriapolis baseline at port/godot branch point

Captures the pre-Godot-port state of the codebase. This is the rollback
anchor for the Godot port (M0 of theriapolis-rpg-implementation-plan-godot-port.md).
All Phase 0 through Phase 6.5 work is included; Phase 7 is in flight.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Christopher Wiebe
2026-04-30 20:40:51 -07:00
commit b451f83174
525 changed files with 75786 additions and 0 deletions
@@ -0,0 +1,71 @@
{
"id": "millhaven",
"kind": "preset",
"anchor": "Millhaven",
"buildings": [
{
"template": "magistrate",
"offset": [-12, -12],
"role_overrides": {
"magistrate": "millhaven.magistrate",
"constable": "millhaven.constable_fenn"
}
},
{
"template": "inn_medium",
"offset": [-2, 0],
"role_overrides": {
"innkeeper": "millhaven.innkeeper",
"barfly": "millhaven.lacroix"
}
},
{
"template": "shop_general",
"offset": [10, -2],
"role_overrides": {
"shopkeeper": "millhaven.general_store_keeper"
}
},
{
"template": "shop_smithy",
"offset": [12, 8],
"role_overrides": {
"smith": "millhaven.smith"
}
},
{
"template": "shop_alchemist",
"offset": [-12, 6],
"role_overrides": {
"alchemist": "millhaven.alchemist"
}
},
{
"template": "house_medium",
"offset": [-2, 12],
"role_overrides": {
"resident": "millhaven.grandmother_asha"
}
},
{
"template": "house_medium",
"offset": [6, 12]
},
{
"template": "house_small",
"offset": [-12, -2]
},
{
"template": "house_small",
"offset": [-6, 8]
},
{
"template": "granary",
"offset": [12, -10]
},
{
"template": "well",
"offset": [3, -3]
}
]
}
@@ -0,0 +1,14 @@
{
"id": "procedural_tier1",
"kind": "procedural",
"tier": 1,
"category_weights": {
"inn": 0.10,
"shop": 0.30,
"house": 0.40,
"civic": 0.10,
"infrastructure": 0.10
},
"target_building_count": 14,
"plaza_radius_tiles": 24
}
@@ -0,0 +1,14 @@
{
"id": "procedural_tier2",
"kind": "procedural",
"tier": 2,
"category_weights": {
"inn": 0.10,
"shop": 0.30,
"house": 0.45,
"civic": 0.05,
"infrastructure": 0.10
},
"target_building_count": 12,
"plaza_radius_tiles": 22
}
@@ -0,0 +1,13 @@
{
"id": "procedural_tier3",
"kind": "procedural",
"tier": 3,
"category_weights": {
"inn": 0.12,
"shop": 0.30,
"house": 0.50,
"infrastructure": 0.08
},
"target_building_count": 8,
"plaza_radius_tiles": 16
}
@@ -0,0 +1,13 @@
{
"id": "procedural_tier4",
"kind": "procedural",
"tier": 4,
"category_weights": {
"inn": 0.15,
"shop": 0.20,
"house": 0.55,
"infrastructure": 0.10
},
"target_building_count": 5,
"plaza_radius_tiles": 12
}
@@ -0,0 +1,11 @@
{
"id": "procedural_tier5",
"kind": "procedural",
"tier": 5,
"category_weights": {
"house": 0.70,
"infrastructure": 0.30
},
"target_building_count": 3,
"plaza_radius_tiles": 8
}
@@ -0,0 +1,55 @@
{
"id": "thornfield",
"kind": "preset",
"anchor": "Thornfield",
"buildings": [
{
"template": "magistrate",
"offset": [-15, -15],
"role_overrides": {
"magistrate": "thornfield.magistrate"
}
},
{
"template": "inn_medium",
"offset": [4, -10],
"role_overrides": {
"innkeeper": "thornfield.innkeeper"
}
},
{
"template": "shop_alchemist",
"offset": [-12, 4],
"role_overrides": {
"alchemist": "thornfield.dr_venn"
}
},
{
"template": "shop_general",
"offset": [10, 6],
"role_overrides": {
"shopkeeper": "thornfield.general_store_keeper"
}
},
{
"template": "shop_smithy",
"offset": [-3, 14]
},
{
"template": "house_medium",
"offset": [12, -2]
},
{
"template": "house_medium",
"offset": [-15, 14]
},
{
"template": "house_medium",
"offset": [4, 6]
},
{
"template": "house_small",
"offset": [14, 14]
}
]
}