In this update3
Full notes
Full Streets of Fortuna update
Read the full published notes in a cleaner layout. The original post stays linked below.
Repeated intro
Hey everyone!
What changed
- Gameplay
- Store
- Compatibility
Streets of Fortuna changes
Brent here (lead designer), talking about character generation in a new devlog. You can watch it here:
Our goals with character generation are to:
1 - fill the city, so when you’re walking around, there’s people everywhere and you feel you’re in a simulated world
2 - we need a place for (almost) everyone to live, work, be entertained, etc
Each character needs unique traits and tastes, so they can feel individual, but there also need to be cultures and professions that have similarities so you can recognize the patterns.
Finally, we want those traits and tastes to effect the game world.
How We Generate NPCs
Step 1: generating the road and buildings.
Step 2: we generate Properties (a stall, shopfront, residence, church, etc). We place things inside chunks that are collections (for example, a shopfront could be a bakery, ceramics shop, etc). In some ways, these properties are the most important thing for citizens.
Step 3: we use the selected property to generate the objects inside
Step 4: We use those generated properties to look at who needs to work in them (”professional” npcs, like cooks and cleaners in a tavern). We generate a ‘stub’ NPC for each of those slots. Then, those professional NPCs get assigned to an appropriate residence for their wealth level, according to profession.
Step 5: Then we have a bunch of residence slots leftover to generate unemployed NPCs into (homemakers, nobles, family members).
Step 6: Finally, with all that information, we can generate the schedules for each NPC, for going to their workplace during its opening hours, going to a worship space based on proximity and timing, and going home for the remaining time (to sleep or spend time with their family).
An example of a property layout
But What KIND of NPCs Do We Generate?
NPCs are defined primarily by their:
Culture (as defined in our demographics data): All our cultures are fictional (the big three we’re focusing on now being Latian, Elladan, and Fritingian), loosely based on the reality of Constantinople ~550 AD. Culture is the primary determiner of their clothes, hair, and skin, but also influence everything else to some degree (see below).
Profession, i.e. what skills they have and what they spend most of their working time doing
Traits (personality or physically distinct characteristics)
These all effect some combination of:
How they respond to you in dialogue
What kinds of behaviours they perform, at home or work
How they react to crime
How their owned items generate
Sobriquets (nicknames)
What tastes they’re likely to have
Men of three different cultures
Traits & Tastes
For example, someone with the trait Drunkard tends to own more alcohol (wine), drink more, be more likely to be drunk, visit the tavern more, can have the nickname Soggy, etc.
Another example would be the Greedy trait, which is someone who is very responsive to bribes and has expensive tastes.
Other traits already implemented includes Neat or Disorganized, which changes how their house looks and how likely they are to clean up a mess they see (wherever they are).
NPCs can also have tastes for certain colors or images or animals, which is important to the player because it changes what kinds of gifts they appreciate.
We want you to be able to guess at (or deduce, or somehow discover) the traits and tastes of an NPC, as part of the gameplay. Of course, people with higher wealth level tend to have a higher threshold for gifts they like, and ALL NPCs have a food taste of some kind (chicken or herbaceous or bitter etc), to tie into the cooking and flavor-management gameplay.
Work in progress dialogue screen
Finally, NPC tastes also can effect the name of a business they own, so any favorite colors or animals or substances are likely to be reflected there as a clue.
That’s the basics of NPC generation as it stands, so let us know if you have any more questions!
See you next time! Brent
Source
Changelog.gg summarizes and formats this update. How we read updates.
