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

From: Eduardo Gutierrez de Oliveira (
Date: 07/19/96

Hello there, here is a quiz for both coders and imps (not necesarily the 

I want to implement in my Mud the following:

Classes (Already There, more like professions or careers). I would like 
to make this so you would have to choose your class when you are five 
levels (or 25 years old) and then again at level 10 you could pick 
another class, a subclass (or at 50 years), you'd of course be more 
proficient in your primary class.

Races: So you can be of a specific race, start in a specific area and 
speak an specific language.

Tribes: This is something I want to implement but I am not sure what I 
want (I am thinking if this would be the same as clans)

Clans: This would be more like Clubs... You'd defend your clan above 
anything (but your tribe maybe) and your clan would have rules and 

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



Eduardo Gutierrez de Oliveira        
Administrador de Internet                            Internet Administrator
Proveedor de Servicio Internet                    Internet Service Provider
                                CIATEQ, A.C.
 Centro de Investigacion y Asistencia Tecnica del Estado de Queretaro, A.C.

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