From 0ae58c67fa5787f4d22333b4b3340eca9dea4a9c Mon Sep 17 00:00:00 2001 From: Tony Bark Date: Mon, 28 Apr 2025 12:43:51 -0400 Subject: [PATCH] Zodiac signs JSON - Preemptive start on reading JSON files --- ...lityArchetype.cs => ArchetypeDefinition.cs | 16 +-- README.md | 9 +- Zodiac.json | 122 ++++++++++++++++++ 3 files changed, 135 insertions(+), 12 deletions(-) rename PersonalityArchetype.cs => ArchetypeDefinition.cs (86%) create mode 100644 Zodiac.json diff --git a/PersonalityArchetype.cs b/ArchetypeDefinition.cs similarity index 86% rename from PersonalityArchetype.cs rename to ArchetypeDefinition.cs index 6f1ceee..725cc50 100644 --- a/PersonalityArchetype.cs +++ b/ArchetypeDefinition.cs @@ -1,14 +1,14 @@ namespace PersonaForge; -public class Archetypes +public class ArchetypeDefinition { public string Name { get; set; } public Dictionary TraitBiases { get; set; } = new(); // TODO: Load default archetypes from a file or database - public static List DefaultArchetypes() => new() + public static List DefaultArchetypes() => new() { - new Archetypes + new ArchetypeDefinition { Name = "Grumpy", TraitBiases = new Dictionary @@ -20,7 +20,7 @@ public class Archetypes { "Active", 0.5 } } }, - new Archetypes + new ArchetypeDefinition { Name = "Party Animal", TraitBiases = new Dictionary @@ -32,7 +32,7 @@ public class Archetypes { "Neat", 0.3 } } }, - new Archetypes + new ArchetypeDefinition { Name = "Lazy", TraitBiases = new Dictionary @@ -44,7 +44,7 @@ public class Archetypes { "Active", 0.1 } } }, - new Archetypes + new ArchetypeDefinition { Name = "Shy", TraitBiases = new Dictionary @@ -56,7 +56,7 @@ public class Archetypes { "Active", 0.2 } } }, - new Archetypes + new ArchetypeDefinition { Name = "Energetic", TraitBiases = new Dictionary @@ -68,7 +68,7 @@ public class Archetypes { "Active", 0.3 } } }, - new Archetypes + new ArchetypeDefinition { Name = "Random", TraitBiases = new() diff --git a/README.md b/README.md index 1dd58cf..3098d97 100644 --- a/README.md +++ b/README.md @@ -24,6 +24,11 @@ Because The Sims 2 doesn’t have traits in the same way later installments do, | v1.0 | Stable "Release" version with documentation | πŸ”œ | | v1.x | Profile import/load from JSON | πŸ”œ | +## πŸ“Œ Stretch Goals + +- [ ] Import The Sims' Zodiac signs +- [x] Cross-platform dotnet tool. (e.g. `dotnet tool install`) + ## 🧩 Tech Stack - .NET 8.0 @@ -65,10 +70,6 @@ personaforge --name "Max Casey" --archetype "Party Animal" (--export) - No UI. (Maybe a fork) - No CAS-style tool. -## πŸ“Œ Stretch Goals - -- Cross-platform dotnet tool. (e.g. `dotnet tool install`) - ## πŸ—“οΈ Update Cycle | Type | Frequency | Notes | diff --git a/Zodiac.json b/Zodiac.json new file mode 100644 index 0000000..60fa426 --- /dev/null +++ b/Zodiac.json @@ -0,0 +1,122 @@ +[ + { + "Name": "Aries", + "TraitBiases": { + "Outgoing": 8.0, + "Playful": 3.0, + "Active": 7.0, + "Nice": 3.0, + "Neat": 4.0 + } + }, + { + "Name": "Taurus", + "TraitBiases": { + "Outgoing": 4.0, + "Playful": 4.0, + "Active": 4.0, + "Nice": 7.0, + "Neat": 6.0 + } + }, + { + "Name": "Gemini", + "TraitBiases": { + "Outgoing": 7.0, + "Playful": 7.0, + "Active": 4.0, + "Nice": 3.0, + "Neat": 4.0 + } + }, + { + "Name": "Cancer", + "TraitBiases": { + "Outgoing": 4.0, + "Playful": 3.0, + "Active": 4.0, + "Nice": 8.0, + "Neat": 6.0 + } + }, + { + "Name": "Leo", + "TraitBiases": { + "Outgoing": 8.0, + "Playful": 7.0, + "Active": 4.0, + "Nice": 2.0, + "Neat": 4.0 + } + }, + { + "Name": "Virgo", + "TraitBiases": { + "Outgoing": 2.0, + "Playful": 2.0, + "Active": 4.0, + "Nice": 8.0, + "Neat": 9.0 + } + }, + { + "Name": "Libra", + "TraitBiases": { + "Outgoing": 8.0, + "Playful": 6.0, + "Active": 4.0, + "Nice": 5.0, + "Neat": 2.0 + } + }, + { + "Name": "Scorpio", + "TraitBiases": { + "Outgoing": 5.0, + "Playful": 2.0, + "Active": 8.0, + "Nice": 4.0, + "Neat": 6.0 + } + }, + { + "Name": "Sagittarius", + "TraitBiases": { + "Outgoing": 7.0, + "Playful": 7.0, + "Active": 7.0, + "Nice": 2.0, + "Neat": 2.0 + } + }, + { + "Name": "Capricorn", + "TraitBiases": { + "Outgoing": 3.0, + "Playful": 2.0, + "Active": 6.0, + "Nice": 7.0, + "Neat": 7.0 + } + }, + { + "Name": "Aquarius", + "TraitBiases": { + "Outgoing": 6.0, + "Playful": 7.0, + "Active": 4.0, + "Nice": 5.0, + "Neat": 3.0 + } + }, + { + "Name": "Pisces", + "TraitBiases": { + "Outgoing": 4.0, + "Playful": 8.0, + "Active": 4.0, + "Nice": 5.0, + "Neat": 4.0 + } + } +]