Hedgerow Hall

by Hedgemistress
Hedgerow Hall
Serious role-playing-oriented game world, with animals.
ID:1811903
 


Here's one scene screencapped from two perspectives. The Squirrel is speaking Esquirrel, the Rabbit is speaking Lapin. Neither of them understands the other's language.

While language barriers might seem like an impediment to roleplay, there is a common tongue. Each character gets a choice of being fluent in either the common tongue or their own animal language, and has an appreciable starting skill level in the other, with fluency in the common tongue being the default.

Once factions are added to the game, each faction will have its own common tongue.

The communication keys are clustered around the right side of the keyboard. The "say" command is bound to the quotation mark key, while [ and ] can be used to cycle through your languages in either direction and \ pops up a menu listing them (useful for polyglots). The / key is the macro for emote. Emotes appear as text sandwiched between asterisks that pop up over your character, quickly moving down to a position just below your feet. So if you emote "laughs out loud", the on-screen text output appears as "*laughs out loud*".

All speech and emotes are also copied to the text scroll to the left of the screen, for easier review.

(Note that the text box is sized to hold multiple lines of text even if you're only speaking a single line. Down the road I'd like to make it resize, but I class that as glitz, not necessary to make the game complete.)
Nice work, I have a similar language system in DBG.

Do you think it would be advantageous to transfer across the punctuation, though? For example, frame 1 the squirrel is exclaiming something and frame 3 the rabbit thinks they're trying to ask them something, even though the tone/body language may not suggest that.
Not really, no. From a game design standpoint, it is important that the two versions have the same character count so that the messages can finish at the same time, so the "mistranslator" generates a message of about the same length and then pads it with random exclamation and/or question marks at the end.

From a realism standpoint, things like body language and inflection aren't necessarily as universally readable across cultural divides as we might expect. People who aren't fluent in a language can't even reliably make out the stops between words, much less tell where a sentence breaks.
Whoa, this is so weird. I was thinking about this exact problem today in a completely unrelated context; it came about when I was thinking about 'Game of Thrones' and how they developed actual fake languages for their various regions (what a pain in the ass!)

Is your model all-or-nothing or do you have a concept of partial fluency? I assume the latter since you talked about skill level, although I'd be curious how you plan to implement that. It seems to me that someone who is minimally fluent might be able to make out the shortest words and the rest would be jumbled. Similarly, when they attempt to speak in their secondary language, only the shortest words would come across to the fluent user. That could make for some interesting situations and C-3PO type translator animals would be a real commodity!
As of right now, partial fluency only exists in the sense that if you're not fully fluent then skill checks are made when you try to communicate in (or hear someone speaking in) a language. So rather than hearing one word out of the garble, you'll get whole sentences out of a conversation.

Down the road I would like to give the "mistranslator" the capability of giving you some words out of a sentence/paragraph without the others. However, it is important that all versions of the message are the same exact length (because they display one character at a time, and the rate at which they do can be used to throttle spam). In order to keep things simple, right now it matches the length of the message, not the length of individual words.

Making it match words by length will require a slightly more intelligent algorithm and slightly more "seeds" to put in it.

I say slightly more intelligent because it's not full languages. There's no reason I couldn't give each animal language a set of words of varying common lengths, give it the ability to form compounds, and then use a few stock sounds (like "ch" in Esquirrel) to pad words out to the necessary length.

I could keep things from getting too complicated by only making two or three intermediate translations, with the words left in clear based on length, as you suggested.
This makes me realise something I messed up, people in real life learn langugages word by word, but I've got it set it up so each person listening (say they know a language to 25%) then gets 25% of the letters in the message translated.

But really it should be translating whole groups of letters that they're picking out, so 25% of all words would be translated. The original thought was to capture the whole "did they just say bam or ban" feeling you can get when trying to pick out words in a new language, but seems like it's more of an edge case than what it should be based on.

Edit:
Just had an interesting thought to encompass both of the above: 25% of all words in the message translate, and (100% - 25%) 75% of (translated) words are chosen to have 1 or more letters changed to a similar sounding letter. Kind of a 'Lost in translation' at lower levels deal.
Language is one of the harder things to simulate accurately, but this gets into one of the things that I think about often in the area of the philosophy of game design, which is the extent to which you want to simulate the reality of something versus emulate the feel of it. To make a perfect model of anything, you would also have to perfectly model everything that goes into it, which means to have a perfect language simulator you would have to model a lot more than linguistics... but a perfect model of anything can obviate the reasons why you would have a model. For example: maps don't contain every detail of the territory they describe, because we need them to fit in our hands.

TL;DR - whatever language system a game uses, it needs to work as a game more than it needs to work as a language.
Yeah, it's a really complex, interesting problem for sure! Like many people, I was one of those idiots who took five years of another language (Spanish) but never really learned it. So when I hear Spanish, I can sort of translate 50% of the words and figure it out, but that's only if people are speaking slowly and clearly. If they are speaking normally, as in conversation, all bets are off! It's not obvious how to make that come across in a simulation, since people just "speak" as fast as they type.
In response to Tom
Tom wrote:
So when I hear Spanish, I can sort of translate 50% of the words and figure it out, but that's only if people are speaking slowly and clearly.

So you're saying a system should have better chance of translating; If, you, type, like, this? Haha kinda funny, kinda cool to think about.
Well, actually, the difficulty of speaking/listening checks in my system is based on the length of the message. So if you stick to short sentences of short words, you do have a better chance of being understood.
Nice one yeah that's a good alternative.
To throw my two cents in: what about similarities in regional or even racial languages? Rabbits and Chipmunks, being forest/ground creatures, may have developed language from similar roots allowing rough understanding to evolve - probably influenced by intelligence and experience, or even forced necessity.

My recent focus on learning Danish (now that I am in Denmark pretty much permanently) got me thinking in this vein. After moving to Europe I quickly noticed similarities not only with English but with regionally connected countries:

"Thanks" translates to:
"Tak" (Danish),
"Tack" (Swedish),
"Takk" (Norwegian),
"Takk" (Icelandic) in Scandanavia, with
"Kiitos" (Finnish) screwing up that relative logic.

Greetings follow a similar construct:
"Hello" becomes
"Hej" (Danish),
"Hallå" (Swedish),
"Hallo" (Norwegian),
"Hello" (Icelandic), and
"Hei" (Finnish).

"Bite me" becomes
"Bide mig" (Danish),
"Bit mig" (Swedish),
"Bit meg" (Norwegian),
"Bíta mig" (Icelandic) and
"Pure minua" for Finnish.

More complex sentences convolute the problem, of course, but still contain enough similarities that if you have even the most basic of understanding of a host language, other regional languages can be deciphered:

"May I have some food?" becomes
"Må jeg have noget mad?" (Danish),
"Får jag ha lite mat?" (Swedish),
"Kan jeg få litt mat?" (Norwegian),
"Má ég hafa mat?" (Icelandic), and
"Saisinko ruokaa" (Finnish) screwing the logic up again. :)

I am ignoring the fact that vocal Danish sounds waaay different than it's written language. The sentence above phonetically sounds like "Maa yieh hay-ve noet mal?" (d's and g's are "soft" letters...but I digress).

So perhaps with some transposed consonants (just to make game play interesting but not completely puzzling), the Squirrel/Rabbit dialog above might contain enough similarity to still allow some level of rudimentary understanding.
..or just go with the common tongue concept. yeah, in retrospect, that is *a lot* simpler to implement. :D