Town-colored homes, split diagonally for mixed-culture households
Shelters now wear their town's culture color on the map (North cool-blue, South green, West gold, East red), dimmed by wear; granaries stay green, ruins dark. And bonds can now cross town lines: usually you pair within your own people (that's who you're near), but a wanderer who warms to someone from another town shacks up across cultures - the first quiet thread of contact between two peoples. When two towns share a roof, the house is drawn split diagonally, half each culture, visible across the map. Mechanics: buildings track their top-two resident home-towns (recomputed with occupancy, throttled to every 30 ticks since it's map-only); the bonding rule dropped its same-town requirement. A 240-day run produced 126 bonds, 40 of them cross-town (East+North, West+South, all combos), with populations still balanced - inter-cultural contact without destabilizing the towns. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -99,6 +99,13 @@ public class Building
|
||||
/// whole population per building (that was the sim's O(n²) hot spot).</summary>
|
||||
public int Occupancy;
|
||||
|
||||
/// <summary>The two most-represented home-towns among this shelter's
|
||||
/// current sleepers — for the map's household coloring. When two towns
|
||||
/// share a roof (someone shacked up across cultures), the house is drawn
|
||||
/// split. Recomputed with Occupancy each tick.</summary>
|
||||
public string ResidentTownA = "";
|
||||
public string ResidentTownB = "";
|
||||
|
||||
public int RestCapacity =>
|
||||
Kind == BuildingKind.Shelter && IsComplete && !IsRuined ? 3 + Modules : 0;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user