Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Procedurally generated expressions such as "This poet has the skill of a llama."  (Read 2002 times)

Orange-of-Cthulhu

  • Bay Watcher
    • View Profile

The language strings in adventure mode goes stale, because it's the same repetitive sentences uses in all sites. Everybody greats you in the same way "It is good to see you."

The sentences are very good, tít just doesn't work to me that everybody sounds the same.

This could be fixed by adding prodecurally generated expessions that could, I think, pretty easily be made using data from the civ file of the speaker. The sentences are modelled the same with key words being taken from the civ file, this they will be somehwhat different.

The expression should be generated in the beginning of a civ, say in year 30, so it also has a historical value.

Wild animals should be taken from the animals and plants in the biome surrounding the civ's original site.

This, the expressions used by speakers from this civ will then forever onwards reflect the life situation in year 30 of the civ, no matter of situations have drastically changed since. This will generate these interesting cases where you note your dwarves using like zebras in their talking with no zebras around. And in adv mode, you could have fun sort of noticing on the fly that some humans in a southern desert keep mentioning polar bears and other cold biome stuff - if their civ started in a cold plae and then moved to the south.

I think this reflects a lot how language works with a lot of expressions having a long-forgotten root. (Mind you, it would be possible to add new expression to the pool every 50 years a civ existed but I think it would be overkill to bother.)

Examples:

Greeting: "Seeing you is as sweet as a [most common food of civ]. So you get like "Seeing you is as sweet as a plump helmet" and so on.

Overcoming fear: Am I a [race of speaker] or a [most common domestic biird of civ]? I must press on!". Then you get like "Am I a dwarf or a peacock? I Must press on!

Or "I am shaking like the leaves of the [most common tree]. But no! I must press on!"

Or "My heart is frozen as a [most common fish]. I must press on!"

Any book with lists of metaphors and expression will yield a lot of stuff that can be pilfered. Animals, plants, famous people, furniture, rocks, tools it's stuff in the files and it's stuff commonly used to make expressions.

More examples:

"This story was as boring as watching a block of [most common mineral] dry."

"This story made my heart soar like a [most common birn in biome surronding original site of civ]"

"This poet has the skill of a [most common domestic animal]."

"This poet's words was [most valuable mineral found on site]."

- Ideally you would keep the original sentence in use now and also add the procedurally generated expression, so the game-people have more possibilities to express their thought, which should make them sound less like a clone army.

- It's possible to create as many metahpors as you want for any given sentence. There could be 43 different ways of insulting a poet for instance. IDK how many there should be.

- It's possible that some of the game's messages could be procedurally generated an thus reflect the site. In English there is for instance "Has kicked the bucket" which could become "Has kicked the [most numerous tool of site after 1 year]." So instead of always saying "Urist has been found dead" the game would sometimes say, say "Urist has kicked the wheelbarrow." In the same way, many game messages could become proceduralized.

- What I like about this is that people would TALK differently in different sites, and there would be some obvious differences between dwarves, humans and elves. And there would be differences between civs in different biomes, because the expression that used wild animals/plants would be different. The language strings would become a reflection of the world the various people live in.
« Last Edit: October 26, 2021, 08:35:20 pm by Orange-of-Cthulhu »
Logged

delphonso

  • Bay Watcher
  • menaces with spikes of pine
    • View Profile

Although we disagree on the details and method, I definitely think such additions would spice up adventure mode - and are already present in the joke additions in 47.01:

"And the Elf said, "Are you gonna eat that?""

"So anyway, the dwarf and the gray langur..."

Even if this doesn't become site or civ reliant, adding some variety within the already present framework would be appreciated.

PlumpHelmetMan

  • Bay Watcher
  • Try me with sauce...
    • View Profile

Worth noting that there are speech file mods available for the current version to make adventure mode dialogue a bit more flavourful, check them out here: http://dwarffortresswiki.org/index.php/Speech_mods.

Still not as good as procedural generation (+1 on making that a thing), but will hopefully suffice for the time being.
Logged
It's actually pretty terrifying to think about having all of your fat melt off into grease because you started sweating too much.

Orange-of-Cthulhu

  • Bay Watcher
    • View Profile

Although we disagree on the details and method, I definitely think such additions would spice up adventure mode - and are already present in the joke additions in 47.01:

"And the Elf said, "Are you gonna eat that?""

"So anyway, the dwarf and the gray langur..."

Even if this doesn't become site or civ reliant, adding some variety within the already present framework would be appreciated.

If possible I would like to even have it individual-reliant so individuals would talk according to their preferences. So a dwarf that likes dogs would sometimes pick the individual sentence over the site-sentence and the civ-sentence and the gen-sentence and then say "This poem was lovely. It reminded me of a wonderfull dog."

Or the game could pick a bad memory the dwarf has, and then he says "This poem was like having to drink without a proper mug."

If this was possible, you'd see the way you run your fort reflected in the language, so if you messed uo with mugs, many dwarves would compare bad poems to drinking without a proper mug and if you messed up with beds they'd compare bad poems to sleeping without a proper bed instead.

It's a thorny issue how many procedurally generated sentences to introduce. If there's to many you introduce like a cultural barrier between the player and the dwarves. IMO the gen sentences should still be the bulk of it so the player can recognize the game event the dwarf is describing and then because the player knows the context you understand the procedurally generated expression.

Another issue is which kinds of sentences you want to spice up the most and which ones you can leave mostly or all as general ones. I had an example with the game saying "Urist has kicked the wheelbarrow", and this might not be a good place to use procedural expressions as some % of players would not understand it means the dwarf is dead, especially new players. You could read it and think it just means what it literally means and you just go "Erhm whatever!" and don't realize the game is telling you Urist is dead.

So you might want to use the expression for things where it it doesn't really break the flow of the game if some players misunderstands it.

The sentence where a dwarf says "I must press on" in the combat log, well it doesn't matter much if you even read it or not I think, so that's for me a good one to spice up. In adventure mode you have greetings, goodbyes, expressions on opinions on poems, dances, stories, expressions of values at the top of my head.
Logged

betaking

  • Bay Watcher
    • View Profile

there needs to be some mode where you can get a simple translation for intention for the phrase, this might depend on the characters language skills and cultural familiarity though.

something like "this poet has the skills of a llama" [this poet is good] or [this poet has the skills of Iu'Vilmar the llama god of poetry]
Logged

Orange-of-Cthulhu

  • Bay Watcher
    • View Profile

there needs to be some mode where you can get a simple translation for intention for the phrase, this might depend on the characters language skills and cultural familiarity though.

something like "this poet has the skills of a llama" [this poet is good] or [this poet has the skills of Iu'Vilmar the llama god of poetry]

I personally think it would be great if there was an element of the player having small problems understanding the lingo when you travel to a new civ - or in fort mode, the things your visitors or invadors say in the combat log. It would underline that you're playing a fort/character from a certain part of the world, and the other civs are a bit unfamiliar to you.

As long as the misunderstandings don't interfere with essential gameplay I think it's fine. It would be annoying to not understand for instance directions for a quest, but it doesn't matter much if you don't understand that a guy doesn't like a poem.

It would in fact be a bit fun if the player thinks the locals love the player's poems while they actually hate them.

I think also with added standard words you can easily make procedurally generated metaphors for, for instance, being afraid, that people wouldn't misunderstand. This way, you just get the feel of unfamilar lingo, but have no problems understanding the meaning.

Say "I am shaking like a guineafowl. I must flee!". No matter which bird you put in, you'd get what it means, because "I must flee" elaborates the meaning of "I am shaking like a guineafowl."

For important sentences that can go in combat logs, they should probably be very obvious.
Logged

IndigoFenix

  • Bay Watcher
  • All things die, but nothing dies forever.
    • View Profile
    • Boundworlds: A Browser-Based Multiverse Creation and Exploration Game

I think the best way of doing this while maimtaining sanity would be making potential expressions raw-definable.

Animals, plants, and minerals could be given tags describing concepts they are associated with.

The raws could then describe expressions, as well as their context, with blank spaces that could be filled in based on what they are associated with. Even better if those association strings allow the option for free customization (like creature classes).

This would have the benefit of making the world seem bigger and more real, but avoiding the sheer incomprehensible insanity of real-world expressions. It would also allow modders to expand on the system, which is always a plus.

Some association strings could be used for mythgen. In the real world many associations are derived from myth (for example, associating owls with wisdom or snakes with deception), but I think DF expression generation should work the other way around to keep things from growing incomprehensible (like someone describing a person with a "heart of a lion" meaning cowardly because their civ happened to have a creation myth involving a cowardly lion).

Some expressions could have variables that draw from historical figures with particular traits.

Azerty

  • Bay Watcher
    • View Profile

Expressions and proverbs might be part of popular culture and folklore.

And religion and history should aldo have an influence.
Logged
"Just tell me about the bits with the forest-defending part, the sociopath part is pretty normal dwarf behavior."

Orange-of-Cthulhu

  • Bay Watcher
    • View Profile

Expressions and proverbs might be part of popular culture and folklore.

And religion and history should aldo have an influence.

If possible, it would be awesome to have expressions arise at points of history of the site, taken straight from the file.

Example1: A site gets raided by Eddax the hydra. Eddax the hydra then goes into fear-metaphors such as "I am afraid as if Eddax the hydra stood before me."

Example2: A scholar lives at the site and produced a large number of books. His name goes into wisdom-metaphors such as "This story was great, it sounded like Dodok the Scholar was talking."

It could work like:

Define the events than can produce an expression and the expression-type produced: "raiding beas kills more than 5 people: fear expression" or "scholar completes 5th book: wisdom expression.", "craftsperson produces 5th masterwork:expression of competence" and so on.

Then you could either have the expression happen every time such an event occur or have the game roll so the event gets 1/10 of creating an expression - depending on how many of them you want.

It would be super cool if expressions gradually happened in your fort, so that like the engravings, the way they talk would reflect what had happened. Like if you had a visiting scholar than came and wrote a ton of books, and the guy then became an expression. It would be a little memory of what had happened that dwarves mention him years later.
Logged

Orange-of-Cthulhu

  • Bay Watcher
    • View Profile

I think the best way of doing this while maimtaining sanity would be making potential expressions raw-definable.

Animals, plants, and minerals could be given tags describing concepts they are associated with.

The raws could then describe expressions, as well as their context, with blank spaces that could be filled in based on what they are associated with. Even better if those association strings allow the option for free customization (like creature classes).

This would have the benefit of making the world seem bigger and more real, but avoiding the sheer incomprehensible insanity of real-world expressions. It would also allow modders to expand on the system, which is always a plus.

Some association strings could be used for mythgen. In the real world many associations are derived from myth (for example, associating owls with wisdom or snakes with deception), but I think DF expression generation should work the other way around to keep things from growing incomprehensible (like someone describing a person with a "heart of a lion" meaning cowardly because their civ happened to have a creation myth involving a cowardly lion).

Some expressions could have variables that draw from historical figures with particular traits.

As for avoiding incomprehensibility, some expressions could just contain the adjective. So fear expressions contain words like fear or afraid.

If it happened fear became associated with lions it would wind up like "I feel fear! I am afraid like a lion!". And it'd be weird for sure, but I think people would understand it means the speaker is feeling afraid and not brave.

I imagine myself that animal used in expressions for fear/bravery could be selected something like:

fear: small birds: birds below size X at birth (alternatively small animals:anmals below size x while excluding snakes.)

stupidity: domestic animal above size x at birth ("He's dumb as an alpaca!")

bravery: wild predator/agressive animal in the biome above size X at birth.
Logged