Welcome to the Builder Academy

Question Disconnected when entering the MUD

More
03 Aug 2012 21:41 #520 by Vatiken
Your MUD is crashing in AddRecentPlayer() because your character doesn't have a name when it enters into the function. This is evident as the gdb output displays ch=0x0 or NULL. The player's name is set by load_char() in db.c when you enter in your character's name ("linkd" in your case), and in this instance apparently it isn't being loaded. My best guess would be you tried to translate some of the saving/loading functions and something went wrong.

My first step to solving this problem would be to inspect players.c, db.c and the player's file to see if there are any discrepancies with regards to the character's name.

tbaMUD developer/programmer

Please Log in or Create an account to join the conversation.

More
03 Aug 2012 21:59 #521 by linkg
All of your ideas helped, I continue making changes and searching for more problems, however the error persist.

Researching the suggestion of ​​vatiken I found that the line that reads:
#2 0x080e6082 in nanny (d=0xa997970, arg=0xbf8aa424 "linkg") at interpreter.c:1692
Isn't for character's name. Because the word 'linkg' is a password of my test account.
The name of the character is Test, and password is linkg. The error is showing when I just put the password.

Is as if the mud could not identify whether that password is that char's name, or the opposite, if that char's name is that password.

This is confusing me...

I'll keep trying.

Please Log in or Create an account to join the conversation.

More
03 Aug 2012 22:18 #522 by Vatiken

AddRecentPlayer (chname=0x0,
chhost=0xa997974 "189001131226.usr.predialnet.com.br", newplr=0 '\000', cpyplr0 '\000')

Shows that your password has been accepted and the MUD is trying to place the player with no name in the recent player's list. So it has nothing to do with your password, and everything to do with loading the actual player's name. Since it passed the password check, that means it must of successfully loaded that part of the pfile.

tbaMUD developer/programmer

Please Log in or Create an account to join the conversation.

More
08 Aug 2012 17:38 - 08 Aug 2012 17:41 #594 by linkg
The problem was solved by leaving the file players.c in english.

The part which starts with:
Code:
ch->aff_abils = ch->real_abils; /* end char_to_store code */ if (GET_NAME(ch)) fprintf(fl, "Name: %s\n", GET_NAME(ch)); if (GET_PASSWD(ch)) fprintf(fl, "Pass: %s\n", GET_PASSWD(ch)); if (GET_TITLE(ch)) fprintf(fl, "Titl: %s\n", GET_TITLE(ch)); if (ch->player.description && *ch->player.description) { strcpy(buf, ch->player.description); strip_cr(buf); fprintf(fl, "Desc:\n%s~\n", buf);

And others like:
Code:
if (GET_SEX(ch) != PFDEF_SEX) fprintf(fl, "Sex : %d\n", GET_SEX(ch)); if (GET_CLASS(ch) != PFDEF_CLASS) fprintf(fl, "Clas: %d\n", GET_CLASS(ch)); if (GET_LEVEL(ch) != PFDEF_LEVEL) fprintf(fl, "Levl: %d\n", GET_LEVEL(ch)); if (GET_INT(ch) != PFDEF_INT) fprintf(fl, "Int : %d\n", GET_INT(ch)); if (GET_WIS(ch) != PFDEF_WIS) fprintf(fl, "Wis : %d\n", GET_WIS(ch)); if (GET_DEX(ch) != PFDEF_DEX) fprintf(fl, "Dex : %d\n", GET_DEX(ch)); if (GET_CON(ch) != PFDEF_CON) fprintf(fl, "Con : %d\n", GET_CON(ch)); if (GET_CHA(ch) != PFDEF_CHA) fprintf(fl, "Cha : %d\n", GET_CHA(ch));

Give some problems if they are translated.
Is a tip for those with mud in other languages. Not worth translate the file player.c.
Cause players.c saves this information in playerfiles only.
This makes It not so important translation, as these words are not shown to the public.
Last edit: 08 Aug 2012 17:41 by linkg.

Please Log in or Create an account to join the conversation.

More
08 Aug 2012 23:57 #597 by Vatiken
There should be no issue (aside from messing up current pfiles) with translating players.c if you make sure:
1) The saved name("Sex", "Levl", "Titl" etc..) is the same in save_char() and load_char().
2) The translated "name" is no more then 4 characters as anything longer will be cut off by tag_argument().

tbaMUD developer/programmer

Please Log in or Create an account to join the conversation.

More
09 Aug 2012 22:09 #617 by thomas
...and you make sure only to use standard ascii :) no ü here...

Please Log in or Create an account to join the conversation.

Time to create page: 0.291 seconds