Re: CODE: Races, Clans, Classes, Tribes, languages and a drunkspeech

From: Limratana (
Date: 07/21/96

On Fri, 19 Jul 1996, Eduardo Gutierrez de Oliveira wrote:

> Languages: This would mean that depending on your race and on your tribe 
> you'd speak a different language than the common one. (maybe using speak 
> and say for different things, or appending an l  to all communication 
> commands -lsay, lshout, lholler, etc.- and a flag, where you could toggle 
> the languages you know (language common, language amphibian, for example) 
> to use with the l-commands.
> The thing is thatI'd like to know from implementors and coders how would 
> you implement these, that is, choosing your class until level 5 and then 
> again when level 10 (subclass), choosing your race and begginning the 
> game in some specific area, choosing (an changing) clans while in the 
> game (as long as you have a class already) and how to manage those clans 
> and finally, how to implement languages depending on races.
> I have an idea for the language system, but I need the coder's opinion:
> first idea: To have a parser go through the spoken text and convert it to 
> some language (set by rules about frecuency of vowels and the like and 
> some factor of randomness) so for example, if a troll says 'Hello there' 
> it converts it into 'Grunpfn H'gnhbhjnnn' and it then stores this words 
> in some database so whenever says the phrase again (or one of the words) 
> it sounds exactly the same (it could be very realistic, since you could 
> learn a language this way). This may not be very efficient (hacing huge 
> dictionaries for each language and having the program go through it every 
> time anyones says anything) but I would like to see into this 
> possibility, which, except for the grammatics is almost as real life 
> would be.
> Second idea: To have specific rules for letters and letters pairs or 
> letter triads, so it is parsed every time it is said, but there is no 
> need to keep a dictionary (this one would be more efficient, but by 
> loosing the random factor, words that sound alike in a language would 
> sound alike in another, which is not always true in real life), I like 
> the first idea better.
> Lastly... I found some fun code to make a drunk PC actually speak as a 
> drunk, but it is for MERC muds, i won;t include it here since this is 
> enough spam, if anyone wants it I'll send it over. If the consensus is 
> general I'll send it to the list, so someone can make a port of it and 
> put it in the part where drunkness affects players..:)
> BTW, I know this whole mail may not have been very clear but I just got a 
> cup of coffe and it was *way* overcaffeinated (first time ever I drink 
> instantaneous coffee, I put 4 whole spoonfuls of coffe powder in the cup, 
> you could cut the thing with a knife, if it was sharp enough).
> I am looking for implementation ideas (commands, how to fit it in the 
> whole mud, etc.) as well as coding suggestions, or even whole chunks of 
> code, I haven't startted this yet... but I want to do it..:P
> Greets
> Ed
> Myth

What I'm working on now is your second idea.  Do you know how the spells get
translated to some other language if you are not a spell caster?  The crap
you see when someone casts a spell in the same room with you?  Well you could
do it like that and then make a syllable table for each different 
language which would translate each language differently.  I reccomend 
not making it random.  The only reason you would want to put some random 
letters in the language translation code would be to stop players from 
trying to decipher it.  And since it seems you like them to be able to 
figure out words, you wouldn't want to put that in.  Also, that would get 
crazy saving it all.  In a few weeks, you might have a 1 meg file of made 
up jibberish!  You know how many different things people will say on a 
mud.  And it won't just be things like Hello There.... you will get 
things like Helli Tyrde... someone mispells something and it gets entered 
into your database.  :)  have fun!

This archive was generated by hypermail 2b30 : 12/07/00 PST