Better Language Scrambling?
Posted: Tue Feb 21, 2012 10:46 pm
I should preface this by saying that I can barely script, let alone code, and have absolutely no sense of the resources (either manhours to implement or server toll) that might be required. My second idea will unequivocally be easier in both arenas, but that's not going to stop me from voicing the first.
Ideally, it would be nice to have a small dictionary implemented (the length of a pocket dictionary, perhaps a few thousand words?), with each word arbitrarily weighted against skill level; instead of random scrambling, words would only be scrambled if their weight fell higher than the listening character's skill level. Articles and prepositions might be weighted at inept or amateur (thus allowing (likely erroneous) contextual interpretation), while more complex words or concepts might require adept/expert-level knowledge of the language to understand. To avoid the need for too many fallbacks and contingencies, misspelled words might always be scrambled (for characters less than master/grandmaster), and rationalized IC as "local dialects."
It seems a little silly when, as a Journeyman listener, a word as common as "Greetings" gets scrambled to "Ergetjlgu," just because it fell on the wrong side of a coin toss.
The second, much easier but much less interesting, implementation of this idea is to simply weight each word on the fly based on the number of characters in the word. Okay, "greetings" might still be scrambled, but with a few exceptions, there's a moderate correlation in the English language between the length of a word and its complexity. I might not expect a Novice speaker to know what "denouement" means, but "Come here!" probably shouldn't be scrambled for anybody but the most Inept students.
This might be a bit "fluffy" (i.e. not adding much to coded gameplay), but I think it'd make some RP (read: eavesdropping ) more interesting.
EDIT: Looking back over my logs, it appears scrambling already goes by word length, as anything under five characters is coming out fine, and five-letter words are translated about half the time. So, my second suggestion's kind of pointless.
Still, I think the first one (running speech through a dictionary) would be fun. If it's viable (i.e. wouldn't take a negative toll on server response time), I'd be willing to compile and weight a (plain-text, would still need parsing) dictionary to ease up on manhours required.
Ideally, it would be nice to have a small dictionary implemented (the length of a pocket dictionary, perhaps a few thousand words?), with each word arbitrarily weighted against skill level; instead of random scrambling, words would only be scrambled if their weight fell higher than the listening character's skill level. Articles and prepositions might be weighted at inept or amateur (thus allowing (likely erroneous) contextual interpretation), while more complex words or concepts might require adept/expert-level knowledge of the language to understand. To avoid the need for too many fallbacks and contingencies, misspelled words might always be scrambled (for characters less than master/grandmaster), and rationalized IC as "local dialects."
It seems a little silly when, as a Journeyman listener, a word as common as "Greetings" gets scrambled to "Ergetjlgu," just because it fell on the wrong side of a coin toss.
The second, much easier but much less interesting, implementation of this idea is to simply weight each word on the fly based on the number of characters in the word. Okay, "greetings" might still be scrambled, but with a few exceptions, there's a moderate correlation in the English language between the length of a word and its complexity. I might not expect a Novice speaker to know what "denouement" means, but "Come here!" probably shouldn't be scrambled for anybody but the most Inept students.
This might be a bit "fluffy" (i.e. not adding much to coded gameplay), but I think it'd make some RP (read: eavesdropping ) more interesting.
EDIT: Looking back over my logs, it appears scrambling already goes by word length, as anything under five characters is coming out fine, and five-letter words are translated about half the time. So, my second suggestion's kind of pointless.
Still, I think the first one (running speech through a dictionary) would be fun. If it's viable (i.e. wouldn't take a negative toll on server response time), I'd be willing to compile and weight a (plain-text, would still need parsing) dictionary to ease up on manhours required.