Type aliases
AgeName
AgeName: "elderly" | "settled adult" | "young adult" | "child"
Alignments
Alignments: "Lawful Good" | "Neutral Good" | "Chaotic Good" | "Lawful Neutral" | "Neutral" | "Chaotic Neutral" | "Lawful Evil" | "Chaotic Evil" | "Neutral Evil"
AlignmentsAbbreviated
AlignmentsAbbreviated: "LG" | "NG" | "CG" | "LN" | "N" | "CN" | "CE" | "NE" | "LE"
BackgroundName
BackgroundName: "acolyte" | "criminal" | "folk hero" | "noble" | "sage" | "soldier" | "charlatan" | "entertainer" | "guild artisan" | "gladiator" | "hermit" | "knight" | "outlander" | "pirate" | "sailor" | "urchin" | "commoner" | "merchant" | "child" | "peasant"
Biome
Biome: "temperate" | "tropical" | "arid" | "polar"
ClassName
ClassName: "barbarian" | "bard" | "cleric" | "druid" | "fighter" | "monk" | "paladin" | "ranger" | "rogue" | "sorcerer" | "warlock" | "wizard"
ClericDomains
ClericDomains: "arcana" | "death" | "forge" | "grave" | "knowledge" | "life" | "light" | "nature" | "order" | "peace" | "tempest" | "trickery" | "twilight" | "war"
CurrencyAbbreviated
CurrencyAbbreviated: "cp" | "sp" | "gp" | "ep" | "pp"
CurrencyFull
CurrencyFull: "copper" | "silver" | "gold" | "electrum" | "platinum"
DeepReadonly
Deep
Readonly<T>: T extends ReadonlyPrimitive ? T : T extends infer U[] ? ReadonlyArray<DeepReadonly<U>> : T extends Map<infer K, infer V> ? ReadonlyMap<DeepReadonly<K>, DeepReadonly<V>> : T extends Set<infer M> ? ReadonlySet<DeepReadonly<M>> : Readonly<T>
Type parameters
DeityStatus
DeityStatus: "alive" | "imprisoned" | "dormant" | "dead" | "uncertain"
EconomicIdeology
EconomicIdeology: "feudalism" | "capitalism" | "syndicalism" | "communism" | "primitivism"
FactionResource
FactionResource: keyof typeof factionData.resources.types
FactionType
FactionType: keyof typeof factionData.types
FifthEditionAbbr
FifthEditionAbbr: "AcInc" | "DMG" | "EGtW" | "ERLW" | "EEPC" | "GGtR" | "RotF" | "LR" | "MM" | "MOoT" | "MToF" | "OGA" | "PHB" | "SCAG" | "TCoE" | "VGtM" | "WGtE" | "XGtE"
GenderName
GenderName: "man" | "woman"
KeysMatching
KeysMatching<T, V>: {[ K in keyof T]: T[K] extends V ? K : never }[keyof T]
Type parameters
LifestyleStandardName
LifestyleStandardName: "aristocratic" | "wealthy" | "comfortable" | "modest" | "poor" | "squalid" | "wretched"
MaterialTypes
Material
Types: keyof typeof types
PantheonTypes
PantheonTypes: "greek" | "norse"
PartialRecord
PartialRecord<T, V>: Partial<Record<T, V>>
Type parameters
PoliticalIdeology
PoliticalIdeology: "autocracy" | "meritocracy" | "democracy" | "kleptocracy" | "magocracy" | "militocracy" | "oligarchy" | "sophocracy" | "theocracy" | "technocracy"
PoliticalSource
PoliticalSource: keyof typeof townData.politicalSource
ProfessionSector
ProfessionSector: "family" | "adventuring" | "agriculture" | "government and law" | "science" | "craftsmanship" | "hospitality" | "mining" | "construction" | "arts" | "business" | "communication" | "transportation" | "religion" | "magic" | "military" | "crime" | "communications" | "outcast" | "unemployed" | "self employed" | "caregiver" | "naval"
ProfessionType
ProfessionType: "" | "family" | "dndClass" | "labourer" | "recreation" | "profession" | "business"
RaceName
RaceName: "dragonborn" | "dwarf" | "elf" | "gnome" | "half-elf" | "halfling" | "half-orc" | "human" | "tiefling" | "goblin" | "orc"
ReligionStrength
ReligionStrength: "fanatical true believer" | "unshakingly devoted believer" | "conspicuously faithful believer" | "outspoken believer" | "quiet true believer" | "casual observer" | "open-minded seeker" | "cautious listener" | "critical student" | "outspoken cynic" | "broken heretic"
RoadMaterialType
RoadMaterialType: "dirt" | "gravel" | "pavement" | "brick"
RoadType
RoadType: "street" | "lane" | "road" | "square" | "way" | "crescent" | "close" | "wynd" | "row" | "dyke" | "avenue" | "alley" | "drive" | "boulevard" | "plaza" | "track" | "trail"
RollArray
RollArray: [number, ...unknown[]][]
RollData
Roll
Data<T>: {readonly [ P in keyof T["roll"]]?: RollArray }
Type parameters
Seasons
Seasons: "spring" | "summer" | "autumn" | "winter"
SocialClassName
SocialClassName: "indentured servitude" | "paupery" | "peasantry" | "commoner" | "nobility" | "aristocracy"
SystemType
SystemType: "5e" | "Pathfinder" | "Pathfinder 2e" | "Dungeon World" | "GURPS"
ThresholdTable
ThresholdTable<T>: [number, T][]
Type parameters
TownType
TownType: "hamlet" | "village" | "town" | "city"
Vices
Vices
: keyof typeof traits["viceKey"]
Virtues
Virtues
: keyof typeof traits["virtueKey"]
WeightRecord
WeightRecord<T>: {[ P in T]: number }
Type parameters
WizardSchools
WizardSchools: "Bladesinging" | "Chronurgy" | "Graviturgy" | "Order of the Scribes" | "School of Abjuration" | "School of Conjuration" | "School of Divination" | "School of Enchantment" | "School of Evocation" | "School of Illusion" | "School of Necromancy" | "School of Transmutation" | "War Magic"
WorldType
WorldType: "earth" | "fr" | "gn"
Variables
Const alchemistData
alchemistData: AlchemistData = ...
Const articles
articles: { find: (word: string) => undefined | string; output: (word: string, upper?: boolean) => string; override: (article: string, word: string, caseSensitive?: boolean) => undefined | "cannot add article override -> invalid word" | "cannot add article override -> invalid article, must be \"a\" or \"an\"" } = ...
Type declaration
-
find: (word: string) => undefined | string
-
- (word: string): undefined | string
-
Parameters
Returns undefined | string
-
output: (word: string, upper?: boolean) => string
-
- (word: string, upper?: boolean): string
-
Parameters
-
word: string
-
Optional upper: boolean
Returns string
-
override: (article: string, word: string, caseSensitive?: boolean) => undefined | "cannot add article override -> invalid word" | "cannot add article override -> invalid article, must be \"a\" or \"an\""
-
- (article: string, word: string, caseSensitive?: boolean): undefined | "cannot add article override -> invalid word" | "cannot add article override -> invalid article, must be \"a\" or \"an\""
-
Parameters
-
article: string
-
word: string
-
Optional caseSensitive: boolean
Returns undefined | "cannot add article override -> invalid word" | "cannot add article override -> invalid article, must be \"a\" or \"an\""
Const bodyParts
bodyParts: { arms: { descriptions: string[] }; head: { chin: string[]; ears: string[]; eyes: string[]; hair: string[]; misc: string[]; mouth: string[]; nose: string[] }; legs: { descriptions: string[] }; torso: { descriptions: string[] } } = ...
Type declaration
-
arms: { descriptions: string[] }
-
head: { chin: string[]; ears: string[]; eyes: string[]; hair: string[]; misc: string[]; mouth: string[]; nose: string[] }
-
chin: string[]
-
ears: string[]
-
eyes: string[]
-
hair: string[]
-
misc: string[]
-
mouth: string[]
-
nose: string[]
-
legs: { descriptions: string[] }
-
torso: { descriptions: string[] }
Const books
books: Books = ...
Const colours
colours: Record<ColourName, ColourData> = ...
Const economicPairs
economicPairs: Readonly<{ capitalist: "capitalism"; communist: "communism"; feudalist: "feudalism"; primitivist: "primitivism"; syndicalist: "syndicalism" }> = ...
Const factionData
factionData: FactionData = ...
Const factionSliders
factionSliders: Record<"influence" | "reputation" | "age" | "size" | "stability" | "resources" | "joiningFee" | "leaderBribes" | "leaderCompetence", FactionSlider> = ...
Const familyRelationships
family
Relationships: { inverse: (npc: NPC, key: string) => string; nouns: Record<string, string>; verbose: (key: string) => string } = ...
Type declaration
-
inverse: (npc: NPC, key: string) => string
-
- (npc: NPC, key: string): string
-
Parameters
Returns string
-
nouns: Record<string, string>
-
verbose: (key: string) => string
-
-
Parameters
Returns string
Const flora
flora: { flower: { bush: string[]; stemP: string[]; stemS: string[] }; fruit: { fruitP: string[]; fruitS: string[]; tree: string[] }; tree: { typeArticle: string[]; typeS: string[] }; vegetable: { vegetableP: string[]; vegetableS: string[] } } = ...
Type declaration
-
flower: { bush: string[]; stemP: string[]; stemS: string[] }
-
bush: string[]
-
stemP: string[]
-
stemS: string[]
-
fruit: { fruitP: string[]; fruitS: string[]; tree: string[] }
-
fruitP: string[]
-
fruitS: string[]
-
tree: string[]
-
tree: { typeArticle: string[]; typeS: string[] }
-
typeArticle: string[]
-
typeS: string[]
-
vegetable: { vegetableP: string[]; vegetableS: string[] }
-
vegetableP: string[]
-
vegetableS: string[]
Const genderData
genderData: { man: { boygirl: "boy"; childNoun: "son"; domTitle: "Master"; godgoddess: "god"; guygirl: "guy"; heshe: "he"; himher: "him"; himherself: "himself"; hisher: "his"; hisherself: "hisself"; malefemale: "male"; manwoman: "man"; marriageNoun: "husband"; menwomen: "men"; niblingNoun: "nephew"; niblingReciprocalNoun: "uncle"; oppositeGender: "woman"; parentNoun: "father"; siblingNoun: "brother"; title: "Mr" }; woman: { boygirl: "girl"; childNoun: "daughter"; domTitle: "Mistress"; godgoddess: "goddess"; guygirl: "girl"; heshe: "she"; himher: "her"; himherself: "herself"; hisher: "her"; hisherself: "herself"; malefemale: "female"; manwoman: "woman"; marriageNoun: "wife"; menwomen: "women"; niblingNoun: "niece"; niblingReciprocalNoun: "aunt"; oppositeGender: "man"; parentNoun: "mother"; siblingNoun: "sister"; title: "Ms" } } = ...
Type declaration
-
man: { boygirl: "boy"; childNoun: "son"; domTitle: "Master"; godgoddess: "god"; guygirl: "guy"; heshe: "he"; himher: "him"; himherself: "himself"; hisher: "his"; hisherself: "hisself"; malefemale: "male"; manwoman: "man"; marriageNoun: "husband"; menwomen: "men"; niblingNoun: "nephew"; niblingReciprocalNoun: "uncle"; oppositeGender: "woman"; parentNoun: "father"; siblingNoun: "brother"; title: "Mr" }
-
boygirl: "boy"
-
childNoun: "son"
-
domTitle: "Master"
-
godgoddess: "god"
-
guygirl: "guy"
-
heshe: "he"
-
himher: "him"
-
himherself: "himself"
-
hisher: "his"
-
hisherself: "hisself"
-
malefemale: "male"
-
manwoman: "man"
-
marriageNoun: "husband"
-
menwomen: "men"
-
niblingNoun: "nephew"
-
niblingReciprocalNoun: "uncle"
-
oppositeGender: "woman"
-
parentNoun: "father"
-
siblingNoun: "brother"
-
title: "Mr"
-
woman: { boygirl: "girl"; childNoun: "daughter"; domTitle: "Mistress"; godgoddess: "goddess"; guygirl: "girl"; heshe: "she"; himher: "her"; himherself: "herself"; hisher: "her"; hisherself: "herself"; malefemale: "female"; manwoman: "woman"; marriageNoun: "wife"; menwomen: "women"; niblingNoun: "niece"; niblingReciprocalNoun: "aunt"; oppositeGender: "man"; parentNoun: "mother"; siblingNoun: "sister"; title: "Ms" }
-
boygirl: "girl"
-
childNoun: "daughter"
-
domTitle: "Mistress"
-
godgoddess: "goddess"
-
guygirl: "girl"
-
heshe: "she"
-
himher: "her"
-
himherself: "herself"
-
hisher: "her"
-
hisherself: "herself"
-
malefemale: "female"
-
manwoman: "woman"
-
marriageNoun: "wife"
-
menwomen: "women"
-
niblingNoun: "niece"
-
niblingReciprocalNoun: "aunt"
-
oppositeGender: "man"
-
parentNoun: "mother"
-
siblingNoun: "sister"
-
title: "Ms"
Const generalStore
general
Store: { crud: string[]; get: { customers: ({ base: undefined; relationshipDescription: string; relationships: { associatedNPC: { reciprocalRelationship: string; relationship: string }; building: { reciprocalRelationship: string; relationship: string } }; description: any } | { base: { profession: string }; relationshipDescription: string; relationships: { associatedNPC: { reciprocalRelationship: string; relationship: string }; building: { reciprocalRelationship: string; relationship: string } }; description: any })[]; note: any; priceTalk: any; say: any; shopkeepNote: any }; goods: { cleaning supplies: string[]; fabrics: string[]; food staples: string[]; luxuries: string[]; tools: string[] }; idle: string[]; rollData: { activity: { description: string; hasRolls: boolean; preceding: string }; cleanliness: { description: string; preceding: string; rolls: ThresholdTable<string> }; expertise: { description: string; isHidden: boolean; preceding: string; rolls: ThresholdTable<string> }; magic: { description: string; hasRolls: boolean; preceding: string }; priceModifier: { description: string; hasRolls: boolean; preceding: string }; reputation: { description: string; hasRolls: boolean; preceding: string }; size: { description: string; preceding: string; rolls: ThresholdTable<string> }; wealth: { description: string; preceding: string; rolls: ThresholdTable<string> } } } = ...
Type declaration
-
crud: string[]
-
get: { customers: ({ base: undefined; relationshipDescription: string; relationships: { associatedNPC: { reciprocalRelationship: string; relationship: string }; building: { reciprocalRelationship: string; relationship: string } }; description: any } | { base: { profession: string }; relationshipDescription: string; relationships: { associatedNPC: { reciprocalRelationship: string; relationship: string }; building: { reciprocalRelationship: string; relationship: string } }; description: any })[]; note: any; priceTalk: any; say: any; shopkeepNote: any }
-
customers: ({ base: undefined; relationshipDescription: string; relationships: { associatedNPC: { reciprocalRelationship: string; relationship: string }; building: { reciprocalRelationship: string; relationship: string } }; description: any } | { base: { profession: string }; relationshipDescription: string; relationships: { associatedNPC: { reciprocalRelationship: string; relationship: string }; building: { reciprocalRelationship: string; relationship: string } }; description: any })[]
-
note: function
-
Parameters
Returns string
-
priceTalk: function
- priceTalk(generalStore: GeneralStore): { priceModifier: number; priceTalk: string; wealth: number }[]
-
Parameters
Returns { priceModifier: number; priceTalk: string; wealth: number }[]
-
say: function
-
Parameters
Returns string
-
shopkeepNote: function
-
Parameters
Returns string
-
goods: { cleaning supplies: string[]; fabrics: string[]; food staples: string[]; luxuries: string[]; tools: string[] }
-
cleaning supplies: string[]
-
fabrics: string[]
-
food staples: string[]
-
luxuries: string[]
-
tools: string[]
-
idle: string[]
-
rollData: { activity: { description: string; hasRolls: boolean; preceding: string }; cleanliness: { description: string; preceding: string; rolls: ThresholdTable<string> }; expertise: { description: string; isHidden: boolean; preceding: string; rolls: ThresholdTable<string> }; magic: { description: string; hasRolls: boolean; preceding: string }; priceModifier: { description: string; hasRolls: boolean; preceding: string }; reputation: { description: string; hasRolls: boolean; preceding: string }; size: { description: string; preceding: string; rolls: ThresholdTable<string> }; wealth: { description: string; preceding: string; rolls: ThresholdTable<string> } }
-
activity: { description: string; hasRolls: boolean; preceding: string }
-
description: string
-
hasRolls: boolean
-
preceding: string
-
cleanliness: { description: string; preceding: string; rolls: ThresholdTable<string> }
-
description: string
-
preceding: string
-
-
expertise: { description: string; isHidden: boolean; preceding: string; rolls: ThresholdTable<string> }
-
description: string
-
isHidden: boolean
-
preceding: string
-
-
magic: { description: string; hasRolls: boolean; preceding: string }
-
description: string
-
hasRolls: boolean
-
preceding: string
-
priceModifier: { description: string; hasRolls: boolean; preceding: string }
-
description: string
-
hasRolls: boolean
-
preceding: string
-
reputation: { description: string; hasRolls: boolean; preceding: string }
-
description: string
-
hasRolls: boolean
-
preceding: string
-
size: { description: string; preceding: string; rolls: ThresholdTable<string> }
-
description: string
-
preceding: string
-
-
wealth: { description: string; preceding: string; rolls: ThresholdTable<string> }
-
description: string
-
preceding: string
-
Const guardhouseData
guardhouse
Data: { evidenceLocker: { items: { function: any }[] }; get: { customers: ({ base: { profession: string; professionSector: undefined }; relationshipDescription: string; relationships: { associatedNPC: { relationship: string }; building: { reciprocalRelationship: string; relationship: string } }; description: any } | { base: { profession: undefined; professionSector: string }; relationshipDescription: string; relationships: { associatedNPC: { relationship: string }; building: { reciprocalRelationship: string; relationship: string } }; description: any })[]; event: (town: Town, guardhouse: Guardhouse) => { function: any }[]; holdingCell: { base?: undefined | Partial<NPC>; reason: string }[]; officeDescription: (guardhouse: Guardhouse) => { description: string; size: number; wealth: number }[]; officeItems: string[] }; name: { adjective: string[]; wordNoun: string[] }; notableFeature: { exclusions?: any; function: any }[]; rollData: { activity: { description: string; hasRolls: boolean; preceding: string }; cleanliness: { description: string; preceding: string; rolls: ThresholdTable<string> }; expertise: { description: string; preceding: string; rolls: ThresholdTable<string> }; magic: { description: string; hasRolls: boolean; preceding: string }; reputation: { description: string; hasRolls: boolean; preceding: string }; size: { description: string; preceding: string; rolls: ThresholdTable<string> }; wealth: { description: string; preceding: string; rolls: ThresholdTable<string> } } } = ...
Type declaration
-
evidenceLocker: { items: { function: any }[] }
-
items: { function: any }[]
-
get: { customers: ({ base: { profession: string; professionSector: undefined }; relationshipDescription: string; relationships: { associatedNPC: { relationship: string }; building: { reciprocalRelationship: string; relationship: string } }; description: any } | { base: { profession: undefined; professionSector: string }; relationshipDescription: string; relationships: { associatedNPC: { relationship: string }; building: { reciprocalRelationship: string; relationship: string } }; description: any })[]; event: (town: Town, guardhouse: Guardhouse) => { function: any }[]; holdingCell: { base?: undefined | Partial<NPC>; reason: string }[]; officeDescription: (guardhouse: Guardhouse) => { description: string; size: number; wealth: number }[]; officeItems: string[] }
-
customers: ({ base: { profession: string; professionSector: undefined }; relationshipDescription: string; relationships: { associatedNPC: { relationship: string }; building: { reciprocalRelationship: string; relationship: string } }; description: any } | { base: { profession: undefined; professionSector: string }; relationshipDescription: string; relationships: { associatedNPC: { relationship: string }; building: { reciprocalRelationship: string; relationship: string } }; description: any })[]
-
event: (town: Town, guardhouse: Guardhouse) => { function: any }[]
-
-
Parameters
Returns { function: any }[]
-
holdingCell: { base?: undefined | Partial<NPC>; reason: string }[]
-
officeDescription: (guardhouse: Guardhouse) => { description: string; size: number; wealth: number }[]
-
- (guardhouse: Guardhouse): { description: string; size: number; wealth: number }[]
-
Parameters
Returns { description: string; size: number; wealth: number }[]
-
officeItems: string[]
-
name: { adjective: string[]; wordNoun: string[] }
-
adjective: string[]
-
wordNoun: string[]
-
notableFeature: { exclusions?: any; function: any }[]
-
rollData: { activity: { description: string; hasRolls: boolean; preceding: string }; cleanliness: { description: string; preceding: string; rolls: ThresholdTable<string> }; expertise: { description: string; preceding: string; rolls: ThresholdTable<string> }; magic: { description: string; hasRolls: boolean; preceding: string }; reputation: { description: string; hasRolls: boolean; preceding: string }; size: { description: string; preceding: string; rolls: ThresholdTable<string> }; wealth: { description: string; preceding: string; rolls: ThresholdTable<string> } }
-
activity: { description: string; hasRolls: boolean; preceding: string }
-
description: string
-
hasRolls: boolean
-
preceding: string
-
cleanliness: { description: string; preceding: string; rolls: ThresholdTable<string> }
-
description: string
-
preceding: string
-
-
expertise: { description: string; preceding: string; rolls: ThresholdTable<string> }
-
description: string
-
preceding: string
-
-
magic: { description: string; hasRolls: boolean; preceding: string }
-
description: string
-
hasRolls: boolean
-
preceding: string
-
reputation: { description: string; hasRolls: boolean; preceding: string }
-
description: string
-
hasRolls: boolean
-
preceding: string
-
size: { description: string; preceding: string; rolls: ThresholdTable<string> }
-
description: string
-
preceding: string
-
-
wealth: { description: string; preceding: string; rolls: ThresholdTable<string> }
-
description: string
-
preceding: string
-
Const inventory
inventory: (FoodItem | MiscItem)[] = ...
Const market
market: MarketData = ...
Const matchFirst
matchFirst: { equalTo: <T>(value: number, map: Record<number, T>, defaultValue?: T) => undefined | T; largerThan: <T>(value: number, map: Record<number, T>, defaultValue?: T) => undefined | T; largerThanOrEqualTo: <T>(value: number, map: Record<number, T>, defaultValue?: T) => undefined | T; notEqualTo: <T>(value: number, map: Record<number, T>, defaultValue?: T) => undefined | T; smallerThan: <T>(value: number, map: Record<number, T>, defaultValue?: T) => undefined | T; smallerThanOrEqualTo: <T>(value: number, map: Record<number, T>, defaultValue?: T) => undefined | T } = ...
Type declaration
-
equalTo: <T>(value: number, map: Record<number, T>, defaultValue?: T) => undefined | T
-
- <T>(value: number, map: Record<number, T>, defaultValue?: T): undefined | T
-
Type parameters
Parameters
-
value: number
-
map: Record<number, T>
-
Optional defaultValue: T
Returns undefined | T
-
largerThan: <T>(value: number, map: Record<number, T>, defaultValue?: T) => undefined | T
-
- <T>(value: number, map: Record<number, T>, defaultValue?: T): undefined | T
-
Type parameters
Parameters
-
value: number
-
map: Record<number, T>
-
Optional defaultValue: T
Returns undefined | T
-
largerThanOrEqualTo: <T>(value: number, map: Record<number, T>, defaultValue?: T) => undefined | T
-
- <T>(value: number, map: Record<number, T>, defaultValue?: T): undefined | T
-
Type parameters
Parameters
-
value: number
-
map: Record<number, T>
-
Optional defaultValue: T
Returns undefined | T
-
notEqualTo: <T>(value: number, map: Record<number, T>, defaultValue?: T) => undefined | T
-
- <T>(value: number, map: Record<number, T>, defaultValue?: T): undefined | T
-
Type parameters
Parameters
-
value: number
-
map: Record<number, T>
-
Optional defaultValue: T
Returns undefined | T
-
smallerThan: <T>(value: number, map: Record<number, T>, defaultValue?: T) => undefined | T
-
- <T>(value: number, map: Record<number, T>, defaultValue?: T): undefined | T
-
Type parameters
Parameters
-
value: number
-
map: Record<number, T>
-
Optional defaultValue: T
Returns undefined | T
-
smallerThanOrEqualTo: <T>(value: number, map: Record<number, T>, defaultValue?: T) => undefined | T
-
- <T>(value: number, map: Record<number, T>, defaultValue?: T): undefined | T
-
Type parameters
Parameters
-
value: number
-
map: Record<number, T>
-
Optional defaultValue: T
Returns undefined | T
Const medal
medal: { create: (base?: Partial<Medal>) => Medal } = ...
Type declaration
-
create: (base?: Partial<Medal>) => Medal
-
- (base?: Partial<Medal>): Medal
-
Parameters
-
Optional base: Partial<Medal>
Returns Medal
Const newspaper
newspaper: string[] = ...
Const patreonCharacters
patreonCharacters: { Brugo Gul'Moth: { age: string; ageYears: number; background: string; backgroundOrigin: string; beard: string; calmTrait: string; eyes: string; familyUnit: string; firstName: string; gender: string; hairColour: string; hairType: string; hasClass: boolean; height: string; heightInches: number; idle: string[]; inventory: string; isThrowaway: boolean; lastName: string; name: string; note: string; parentalLineage: string; physicalTrait: string; profession: string; professionOrigin: string; race: string; scar: string; stressTrait: string; trait: string; vocalPattern: string; weight: string; weightPounds: number }; Galder Fendt: { age: string; ageYears: number; background: string; beard: string; calmTrait: string; eyes: string; firstName: string; gender: string; hairColour: string; hasClass: boolean; height: string; heightInches: number; idle: never[]; isThrowaway: boolean; lastName: string; name: string; note: string; physicalTrait: string; profession: string; race: string; scar: string; stressTrait: string; trait: string; vocalPattern: string; weight: string }; Tylien Birchbottom: { age: string; ageYears: number; background: string; backgroundOrigin: string; calmTrait: string; firstName: string; gender: string; greeting: string[]; hairColour: string; hairType: string; hasClass: boolean; height: string; heightInches: number; idle: string[]; isThrowaway: boolean; lastName: string; note: string; owner: string; physicalTrait: string; profession: string; professionOrigin: string; race: string; scar: string; stressTrait: string; trait: string; vocalPattern: string; weight: string } } = ...
Type declaration
-
Brugo Gul'Moth: { age: string; ageYears: number; background: string; backgroundOrigin: string; beard: string; calmTrait: string; eyes: string; familyUnit: string; firstName: string; gender: string; hairColour: string; hairType: string; hasClass: boolean; height: string; heightInches: number; idle: string[]; inventory: string; isThrowaway: boolean; lastName: string; name: string; note: string; parentalLineage: string; physicalTrait: string; profession: string; professionOrigin: string; race: string; scar: string; stressTrait: string; trait: string; vocalPattern: string; weight: string; weightPounds: number }
-
age: string
-
ageYears: number
-
background: string
-
backgroundOrigin: string
-
beard: string
-
calmTrait: string
-
eyes: string
-
familyUnit: string
-
firstName: string
-
gender: string
-
hairColour: string
-
hairType: string
-
hasClass: boolean
-
height: string
-
heightInches: number
-
idle: string[]
-
inventory: string
-
isThrowaway: boolean
-
lastName: string
-
name: string
-
note: string
-
parentalLineage: string
-
physicalTrait: string
-
profession: string
-
professionOrigin: string
-
race: string
-
scar: string
-
stressTrait: string
-
trait: string
-
vocalPattern: string
-
weight: string
-
weightPounds: number
-
Galder Fendt: { age: string; ageYears: number; background: string; beard: string; calmTrait: string; eyes: string; firstName: string; gender: string; hairColour: string; hasClass: boolean; height: string; heightInches: number; idle: never[]; isThrowaway: boolean; lastName: string; name: string; note: string; physicalTrait: string; profession: string; race: string; scar: string; stressTrait: string; trait: string; vocalPattern: string; weight: string }
-
age: string
-
ageYears: number
-
background: string
-
beard: string
-
calmTrait: string
-
eyes: string
-
firstName: string
-
gender: string
-
hairColour: string
-
hasClass: boolean
-
height: string
-
heightInches: number
-
idle: never[]
-
isThrowaway: boolean
-
lastName: string
-
name: string
-
note: string
-
physicalTrait: string
-
profession: string
-
race: string
-
scar: string
-
stressTrait: string
-
trait: string
-
vocalPattern: string
-
weight: string
-
Tylien Birchbottom: { age: string; ageYears: number; background: string; backgroundOrigin: string; calmTrait: string; firstName: string; gender: string; greeting: string[]; hairColour: string; hairType: string; hasClass: boolean; height: string; heightInches: number; idle: string[]; isThrowaway: boolean; lastName: string; note: string; owner: string; physicalTrait: string; profession: string; professionOrigin: string; race: string; scar: string; stressTrait: string; trait: string; vocalPattern: string; weight: string }
-
age: string
-
ageYears: number
-
background: string
-
backgroundOrigin: string
-
calmTrait: string
-
firstName: string
-
gender: string
-
greeting: string[]
-
hairColour: string
-
hairType: string
-
hasClass: boolean
-
height: string
-
heightInches: number
-
idle: string[]
-
isThrowaway: boolean
-
lastName: string
-
note: string
-
owner: string
-
physicalTrait: string
-
profession: string
-
professionOrigin: string
-
race: string
-
scar: string
-
stressTrait: string
-
trait: string
-
vocalPattern: string
-
weight: string
Const personalityTraits
personalityTraits: Record<string, Traits> = ...
Const politicalIdeologyPairs
politicalIdeologyPairs: Readonly<{ autocratic: "autocracy"; democratic: "democracy"; kleptocratic: "kleptocracy"; magocratic: "magocracy"; meritocratic: "meritocracy"; militocratic: "militocracy"; oligarchic: "oligarchy"; sophocratic: "sophocracy"; technocratic: "technocracy"; theocratic: "theocracy" }> = ...
Const professionTraits
professionTraits: Record<"merchant" | "blacksmith" | "bartender" | "politician", ProfessionTraits> = ...
Const raceTraits
race
Traits: Record<RaceName, RaceTrait> = ...
Const religion
religion: ReligionData = ...
Const roads
roads
: { assign
: (town
: Town, building
?: Building) => Road; create
: (town
: Town, opts
?: Partial<Road>) => Road; features
: string[]; get
: { features
: any }; material
: { types
: Record<RoadMaterialType, RoadMaterial>; exclusions
: any; get
: any }; name
: { type
: Record<RoadType, RoadData>; create
: any }; namesakes
: { reason
: any }; precedingText
: { default
: any; isTheRoad
: any }; width
: { capacity
: number[][]; largeRoads
: string[]; rolls
: ThresholdTable<string>; getCapacity
: any } } = ...
Type declaration
-
assign: (town: Town, building?: Building) => Road
-
create: (town: Town, opts?: Partial<Road>) => Road
-
-
Parameters
-
-
Optional opts: Partial<Road>
-
features: string[]
-
get: { features: any }
-
features: function
-
Parameters
Returns string
-
material: { types: Record<RoadMaterialType, RoadMaterial>; exclusions: any; get: any }
-
-
exclusions: function
-
Parameters
Returns boolean
-
get: function
-
name: { type: Record<RoadType, RoadData>; create: any }
-
-
create: function
- create(town: Town): RoadOwnership
-
Parameters
Returns RoadOwnership
-
namesakes: { reason: any }
-
reason: function
-
Parameters
Returns string
-
precedingText: { default: any; isTheRoad: any }
-
default: function
-
Parameters
Returns string
-
isTheRoad: function
- isTheRoad(town: Town, road: Road, overrides?: { after: string[]; pre: string[] }): string
-
Parameters
-
-
-
Optional overrides: { after: string[]; pre: string[] }
-
after: string[]
-
pre: string[]
Returns string
-
width: { capacity: number[][]; largeRoads: string[]; rolls: ThresholdTable<string>; getCapacity: any }
-
capacity: number[][]
-
largeRoads: string[]
-
-
getCapacity: function
- getCapacity(road: Road): number
-
Parameters
Returns number
Const socialClass
socialClass: Record<string, SocialClass> = ...
Const structureData
structure
Data: { colour: string[]; material: { rollData: { wealth: { rolls: ThresholdTable<string> } }; types: Record<string, MaterialType> }; rollData: { size: { rolls: ThresholdTable<string> } }; roof: { colour: string[]; rollData: { wealth: { rolls: ThresholdTable<string> } }; types: Record<string, RoofType> } } = ...
Const townData
townData: TownData = ...
Const traits
traits: { viceKey: { arbitrary: string; cowardly: string; cruel: string; deceitful: string; indulgent: string; lazy: string; lustful: string; proud: string; reckless: string; selfish: string; suspicious: string; vengeful: string; worldly: string }; virtueKey: { chaste: string; energetic: string; forgiving: string; generous: string; honest: string; just: string; merciful: string; modest: string; pious: string; prudent: string; temperate: string; trusting: string; valorous: string } } = ...
Type declaration
-
viceKey: { arbitrary: string; cowardly: string; cruel: string; deceitful: string; indulgent: string; lazy: string; lustful: string; proud: string; reckless: string; selfish: string; suspicious: string; vengeful: string; worldly: string }
-
arbitrary: string
-
cowardly: string
-
cruel: string
-
deceitful: string
-
indulgent: string
-
lazy: string
-
lustful: string
-
proud: string
-
reckless: string
-
selfish: string
-
suspicious: string
-
vengeful: string
-
worldly: string
-
virtueKey: { chaste: string; energetic: string; forgiving: string; generous: string; honest: string; just: string; merciful: string; modest: string; pious: string; prudent: string; temperate: string; trusting: string; valorous: string }
-
chaste: string
-
energetic: string
-
forgiving: string
-
generous: string
-
honest: string
-
just: string
-
merciful: string
-
modest: string
-
pious: string
-
prudent: string
-
temperate: string
-
trusting: string
-
valorous: string
Const treasureMap
treasureMap: { create: (base?: Partial<TreasureMap>) => TreasureMap } = ...
Type declaration
-
create: (base?: Partial<TreasureMap>) => TreasureMap
-
- (base?: Partial<TreasureMap>): TreasureMap
-
Parameters
-
Optional base: Partial<TreasureMap>
Returns TreasureMap
Const urlData
urlData: UrlData = ...
Const weather
weather
: { cloudIntensityDescriptors
: { extremely overcast
: string[]; heavy clouds
: string[]; light clouds
: string[]; medium clouds
: string[]; none
: string[]; overcast
: string[]; thick clouds
: string[] }; precipitationDescriptors
: { drizzle
: string[]; heavy fog
: string[]; heavy rain
: string[]; heavy snow
: string[]; light fog
: string[]; light rain
: string[]; light snow
: string[]; medium fog
: string[]; medium snow
: string[]; no precipitation
: string[]; rain
: string[]; thunderstorm
: string[] }; precipitationIntensity
: { 1
: { cloud
: any; freezing
: any; raining
: any }; 2
: { cloud
: any; freezing
: any; raining
: any }; 3
: { cloud
: any; freezing
: any; raining
: any }; 4
: { cloud
: any; freezing
: any; raining
: any } }; precipitationLevel
: { 1
: (weather
: Weather) => boolean; 2
: (weather
: Weather) => boolean; 3
: (weather
: Weather) => boolean; 4
: (weather
: Weather) => boolean; 5
: (weather
: Weather) => boolean }; temperatureDescriptors
: ThresholdTable<string> } = ...
Type declaration
-
cloudIntensityDescriptors: { extremely overcast: string[]; heavy clouds: string[]; light clouds: string[]; medium clouds: string[]; none: string[]; overcast: string[]; thick clouds: string[] }
-
extremely overcast: string[]
-
heavy clouds: string[]
-
light clouds: string[]
-
medium clouds: string[]
-
none: string[]
-
overcast: string[]
-
thick clouds: string[]
-
precipitationDescriptors: { drizzle: string[]; heavy fog: string[]; heavy rain: string[]; heavy snow: string[]; light fog: string[]; light rain: string[]; light snow: string[]; medium fog: string[]; medium snow: string[]; no precipitation: string[]; rain: string[]; thunderstorm: string[] }
-
drizzle: string[]
-
heavy fog: string[]
-
heavy rain: string[]
-
heavy snow: string[]
-
light fog: string[]
-
light rain: string[]
-
light snow: string[]
-
medium fog: string[]
-
medium snow: string[]
-
no precipitation: string[]
-
rain: string[]
-
thunderstorm: string[]
-
precipitationIntensity: { 1: { cloud: any; freezing: any; raining: any }; 2: { cloud: any; freezing: any; raining: any }; 3: { cloud: any; freezing: any; raining: any }; 4: { cloud: any; freezing: any; raining: any } }
-
1: { cloud: any; freezing: any; raining: any }
-
cloud: function
-
freezing: function
-
raining: function
-
2: { cloud: any; freezing: any; raining: any }
-
cloud: function
-
freezing: function
-
raining: function
-
3: { cloud: any; freezing: any; raining: any }
-
cloud: function
-
freezing: function
-
raining: function
-
4: { cloud: any; freezing: any; raining: any }
-
cloud: function
-
freezing: function
-
raining: function
-
precipitationLevel: { 1: (weather: Weather) => boolean; 2: (weather: Weather) => boolean; 3: (weather: Weather) => boolean; 4: (weather: Weather) => boolean; 5: (weather: Weather) => boolean }
-
1: (weather: Weather) => boolean
-
-
Parameters
Returns boolean
-
2: (weather: Weather) => boolean
-
-
Parameters
Returns boolean
-
3: (weather: Weather) => boolean
-
-
Parameters
Returns boolean
-
4: (weather: Weather) => boolean
-
-
Parameters
Returns boolean
-
5: (weather: Weather) => boolean
-
-
Parameters
Returns boolean
-
temperatureDescriptors: ThresholdTable<string>
Returns the keys from
T
whose property types match the typeV
.