Skip to content

Commit

Permalink
SI faction entity generation
Browse files Browse the repository at this point in the history
Fixes: #436
  • Loading branch information
zkat committed Jul 21, 2024
1 parent 388e936 commit 88adf84
Showing 1 changed file with 144 additions and 0 deletions.
144 changes: 144 additions & 0 deletions src/entity/specs.ts
Original file line number Diff line number Diff line change
Expand Up @@ -511,4 +511,148 @@ export const ENTITIES: Record<string, EntityDescriptor<EntitySpec>> = {
},
},
},
siSociety: {
label: "Faction: Society",
collectionId: "oracle_collection:sundered_isles/faction/society",
nameGen: (ent) =>
`The ${ent.name_culture[0]?.simpleResult ? ent.name_culture[0]?.simpleResult + " " : ""}${ent.name_theme_aspect[0]?.simpleResult ? ent.name_theme_aspect[0]?.simpleResult + " " : ""}${ent.name_theme_persona[0]?.simpleResult ? ent.name_theme_persona[0]?.simpleResult + " " : ""}${ent.name_identity[0]?.simpleResult ?? ""}`,
spec: {
name_culture: {
id: "oracle_rollable:sundered_isles/faction/name/culture",
},
name_identity: {
id: "oracle_rollable:sundered_isles/faction/name/identity_society",
},
name_theme_type: {
id: "oracle_rollable:sundered_isles/faction/name/themes/type",
definesAttribute: {
order: 1,
mechanism: AttributeMechanism.ParseId,
},
},
name_theme_aspect: {
id: "oracle_rollable:sundered_isles/faction/name/themes/{{name_theme_type}}/aspect",
},
name_theme_persona: {
id: "oracle_rollable:sundered_isles/faction/name/themes/{{name_theme_type}}/persona",
},
chronicles: {
id: "oracle_rollable:sundered_isles/faction/society/chronicles",
},
overseers: {
id: "oracle_rollable:sundered_isles/faction/society/overseers",
},
touchstones: {
id: "oracle_rollable:sundered_isles/faction/society/touchstones",
},
cursed_aspects: {
id: "oracle_rollable:sundered_isles/faction/cursed/aspects",
},
},
},
siOrganization: {
label: "Faction: Organization",
collectionId: "oracle_collection:sundered_isles/faction/organization",
nameGen: (ent) =>
`The ${ent.name_culture[0]?.simpleResult ? ent.name_culture[0]?.simpleResult + " " : ""}${ent.name_theme_aspect[0]?.simpleResult ? ent.name_theme_aspect[0]?.simpleResult + " " : ""}${ent.name_theme_persona[0]?.simpleResult ? ent.name_theme_persona[0]?.simpleResult + " " : ""}${ent.name_identity[0]?.simpleResult ?? ""}`,
spec: {
name_culture: {
id: "oracle_rollable:sundered_isles/faction/name/culture",
},
name_identity: {
id: "oracle_rollable:sundered_isles/faction/name/identity_organization",
},
name_theme_type: {
id: "oracle_rollable:sundered_isles/faction/name/themes/type",
definesAttribute: {
order: 1,
mechanism: AttributeMechanism.ParseId,
},
},
name_theme_aspect: {
id: "oracle_rollable:sundered_isles/faction/name/themes/{{name_theme_type}}/aspect",
},
name_theme_persona: {
id: "oracle_rollable:sundered_isles/faction/name/themes/{{name_theme_type}}/persona",
},
type: {
id: "oracle_rollable:sundered_isles/faction/organization/type",
},
methods: {
id: "oracle_rollable:sundered_isles/faction/organization/methods",
},
secrets: {
id: "oracle_rollable:sundered_isles/faction/organization/secrets",
},
cursed_aspects: {
id: "oracle_rollable:sundered_isles/faction/cursed/aspects",
},
},
},
siEmpire: {
label: "Faction: Empire",
collectionId: "oracle_collection:sundered_isles/faction/empire",
nameGen: (ent) =>
`The ${ent.name_culture[0]?.simpleResult ? ent.name_culture[0]?.simpleResult + " " : ""}${ent.name_theme_aspect[0]?.simpleResult ? ent.name_theme_aspect[0]?.simpleResult + " " : ""}${ent.name_theme_persona[0]?.simpleResult ? ent.name_theme_persona[0]?.simpleResult + " " : ""}${ent.name_identity[0]?.simpleResult ?? ""}`,
spec: {
name_culture: {
id: "oracle_rollable:sundered_isles/faction/name/culture",
},
name_identity: {
id: "oracle_rollable:sundered_isles/faction/name/identity_empire",
},
name_theme_type: {
id: "oracle_rollable:sundered_isles/faction/name/themes/type",
definesAttribute: {
order: 1,
mechanism: AttributeMechanism.ParseId,
},
},
name_theme_aspect: {
id: "oracle_rollable:sundered_isles/faction/name/themes/{{name_theme_type}}/aspect",
},
name_theme_persona: {
id: "oracle_rollable:sundered_isles/faction/name/themes/{{name_theme_type}}/persona",
},
leadership: {
id: "oracle_rollable:sundered_isles/faction/empire/leadership",
},
tactics: {
id: "oracle_rollable:sundered_isles/faction/empire/tactics",
},
vulnerabilities: {
id: "oracle_rollable:sundered_isles/faction/empire/vulnerabilities",
},
cursed_aspects: {
id: "oracle_rollable:sundered_isles/faction/cursed/aspects",
},
},
},
siCursed: {
label: "Faction: Cursed Faction",
collectionId: "oracle_collection:sundered_isles/faction/cursed",
nameGen: (ent) =>
`The ${ent.name_culture[0]?.simpleResult ? ent.name_culture[0]?.simpleResult + " " : ""}${ent.name_theme_aspect[0]?.simpleResult ? ent.name_theme_aspect[0]?.simpleResult + " " : ""}${ent.name_theme_persona[0]?.simpleResult ? ent.name_theme_persona[0]?.simpleResult + " " : ""}`,
spec: {
name_culture: {
id: "oracle_rollable:sundered_isles/faction/name/culture",
},
name_theme_type: {
id: "oracle_rollable:sundered_isles/faction/name/themes/type",
definesAttribute: {
order: 1,
mechanism: AttributeMechanism.ParseId,
},
},
name_theme_aspect: {
id: "oracle_rollable:sundered_isles/faction/name/themes/{{name_theme_type}}/aspect",
},
role: {
id: "oracle_rollable:sundered_isles/faction/cursed/role",
},
aspects: {
id: "oracle_rollable:sundered_isles/faction/cursed/aspects",
},
},
},
};

0 comments on commit 88adf84

Please sign in to comment.