personaforge/ArchetypeDefinition.cs
Tony Bark 0ae58c67fa Zodiac signs JSON
- Preemptive start on reading JSON files
2025-04-28 12:43:51 -04:00

77 lines
2.3 KiB
C#

namespace PersonaForge;
public class ArchetypeDefinition
{
public string Name { get; set; }
public Dictionary<string, double> TraitBiases { get; set; } = new();
// TODO: Load default archetypes from a file or database
public static List<ArchetypeDefinition> DefaultArchetypes() => new()
{
new ArchetypeDefinition
{
Name = "Grumpy",
TraitBiases = new Dictionary<string, double>
{
{ "Nice", 0.2 },
{ "Playful", 0.4 },
{ "Outgoing", 0.6 },
{ "Neat", 0.7 },
{ "Active", 0.5 }
}
},
new ArchetypeDefinition
{
Name = "Party Animal",
TraitBiases = new Dictionary<string, double>
{
{ "Outgoing", 0.9 },
{ "Playful", 0.8 },
{ "Active", 0.7 },
{ "Nice", 0.5 },
{ "Neat", 0.3 }
}
},
new ArchetypeDefinition
{
Name = "Lazy",
TraitBiases = new Dictionary<string, double>
{
{ "Nice", 0.8 },
{ "Playful", 0.6 },
{ "Outgoing", 0.4 },
{ "Neat", 0.2 },
{ "Active", 0.1 }
}
},
new ArchetypeDefinition
{
Name = "Shy",
TraitBiases = new Dictionary<string, double>
{
{ "Nice", 0.9 },
{ "Playful", 0.7 },
{ "Outgoing", 0.3 },
{ "Neat", 0.5 },
{ "Active", 0.2 }
}
},
new ArchetypeDefinition
{
Name = "Energetic",
TraitBiases = new Dictionary<string, double>
{
{ "Nice", 0.7 },
{ "Playful", 0.6 },
{ "Outgoing", 0.5 },
{ "Neat", 0.4 },
{ "Active", 0.3 }
}
},
new ArchetypeDefinition
{
Name = "Random",
TraitBiases = new()
}
};
}