Go Back   EQEmulator Home > EQEmulator Forums > Support > Support::Windows Servers

Support::Windows Servers Support forum for Windows EQEMu users.

Reply
 
Thread Tools Display Modes
  #1  
Old 09-07-2014, 06:49 PM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default Starting Languages

I know I can set a players language skill with #setlanguage, but where are these default values stored at? I have dug through the database and unless I am overlooking it, I cannot find it. I could always do it through a Perl script when a person logs on, but that may be major overkill. I am wanting Thieves Cant set at 100 for all new rogues.
Reply With Quote
  #2  
Old 09-07-2014, 07:00 PM
Kingly_Krab
Administrator
 
Join Date: May 2013
Location: United States
Posts: 1,593
Default

Client.cpp (Client::SetRacialLanguages):
Code:
void Client::SetRacialLanguages( PlayerProfile_Struct *pp )
{
    switch( pp->race )
    {
    case BARBARIAN:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_BARBARIAN] = 100;
            break;
        }
    case DARK_ELF:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_DARK_ELVISH] = 100;
            pp->languages[LANG_DARK_SPEECH] = 100;
            pp->languages[LANG_ELDER_ELVISH] = 100;
            pp->languages[LANG_ELVISH] = 25;
            break;
        }
    case DWARF:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_DWARVISH] = 100;
            pp->languages[LANG_GNOMISH] = 25;
            break;
        }
    case ERUDITE:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_ERUDIAN] = 100;
            break;
        }
    case FROGLOK:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_FROGLOK] = 100;
            pp->languages[LANG_TROLL] = 25;
            break;
        }
    case GNOME:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_DWARVISH] = 25;
            pp->languages[LANG_GNOMISH] = 100;
            break;
        }
    case HALF_ELF:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_ELVISH] = 100;
            break;
        }
    case HALFLING:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_HALFLING] = 100;
            break;
        }
    case HIGH_ELF:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_DARK_ELVISH] = 25;
            pp->languages[LANG_ELDER_ELVISH] = 25;
            pp->languages[LANG_ELVISH] = 100;
            break;
        }
    case HUMAN:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            break;
        }
    case IKSAR:
        {
            pp->languages[LANG_COMMON_TONGUE] = 95;
            pp->languages[LANG_DARK_SPEECH] = 100;
            pp->languages[LANG_LIZARDMAN] = 100;
            break;
        }
    case OGRE:
        {
            pp->languages[LANG_COMMON_TONGUE] = 95;
            pp->languages[LANG_DARK_SPEECH] = 100;
            pp->languages[LANG_OGRE] = 100;
            break;
        }
    case TROLL:
        {
            pp->languages[LANG_COMMON_TONGUE] = 95;
            pp->languages[LANG_DARK_SPEECH] = 100;
            pp->languages[LANG_TROLL] = 100;
            break;
        }
    case WOOD_ELF:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_ELVISH] = 100;
            break;
        }
    case VAHSHIR:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_COMBINE_TONGUE] = 100;
            pp->languages[LANG_ERUDIAN] = 25;
            pp->languages[LANG_VAH_SHIR] = 100;
            break;
        }
    case DRAKKIN:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_ELDER_DRAGON] = 100;
            pp->languages[LANG_DRAGON] = 100;
            break;
        }
    }
}
Reply With Quote
  #3  
Old 09-07-2014, 07:06 PM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

I saw that, but that looks like races. Are the classes in the same struct?
Reply With Quote
  #4  
Old 09-07-2014, 07:07 PM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

And if so, we need something like.....

Code:
 case ROGUE:
        {
            pp->languages[LANG_THIEVES_CANT] = 100;
            break;
Reply With Quote
  #5  
Old 09-07-2014, 07:11 PM
Kingly_Krab
Administrator
 
Join Date: May 2013
Location: United States
Posts: 1,593
Default

I guess you could do a switch on pp->class_, as that switch is pp->race and would never pull that case ROGUE correctly.

Maybe something like this?:
Code:
void Client::SetRacialLanguages( PlayerProfile_Struct *pp )
{
    switch( pp->race )
    {
    case BARBARIAN:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_BARBARIAN] = 100;
            break;
        }
    case DARK_ELF:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_DARK_ELVISH] = 100;
            pp->languages[LANG_DARK_SPEECH] = 100;
            pp->languages[LANG_ELDER_ELVISH] = 100;
            pp->languages[LANG_ELVISH] = 25;
            break;
        }
    case DWARF:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_DWARVISH] = 100;
            pp->languages[LANG_GNOMISH] = 25;
            break;
        }
    case ERUDITE:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_ERUDIAN] = 100;
            break;
        }
    case FROGLOK:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_FROGLOK] = 100;
            pp->languages[LANG_TROLL] = 25;
            break;
        }
    case GNOME:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_DWARVISH] = 25;
            pp->languages[LANG_GNOMISH] = 100;
            break;
        }
    case HALF_ELF:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_ELVISH] = 100;
            break;
        }
    case HALFLING:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_HALFLING] = 100;
            break;
        }
    case HIGH_ELF:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_DARK_ELVISH] = 25;
            pp->languages[LANG_ELDER_ELVISH] = 25;
            pp->languages[LANG_ELVISH] = 100;
            break;
        }
    case HUMAN:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            break;
        }
    case IKSAR:
        {
            pp->languages[LANG_COMMON_TONGUE] = 95;
            pp->languages[LANG_DARK_SPEECH] = 100;
            pp->languages[LANG_LIZARDMAN] = 100;
            break;
        }
    case OGRE:
        {
            pp->languages[LANG_COMMON_TONGUE] = 95;
            pp->languages[LANG_DARK_SPEECH] = 100;
            pp->languages[LANG_OGRE] = 100;
            break;
        }
    case TROLL:
        {
            pp->languages[LANG_COMMON_TONGUE] = 95;
            pp->languages[LANG_DARK_SPEECH] = 100;
            pp->languages[LANG_TROLL] = 100;
            break;
        }
    case WOOD_ELF:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_ELVISH] = 100;
            break;
        }
    case VAHSHIR:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_COMBINE_TONGUE] = 100;
            pp->languages[LANG_ERUDIAN] = 25;
            pp->languages[LANG_VAH_SHIR] = 100;
            break;
        }
    case DRAKKIN:
        {
            pp->languages[LANG_COMMON_TONGUE] = 100;
            pp->languages[LANG_ELDER_DRAGON] = 100;
            pp->languages[LANG_DRAGON] = 100;
            break;
        }
    }
    switch (pp->class_) {
        case ROGUE: {
            pp->languages[LANG_THIEVES_CANT] = 100;
            break;
        }
        default: {
            pp->languages[LANG_THIEVES_CANT] = 0;
            break;
        }
    }
}
Reply With Quote
  #6  
Old 09-07-2014, 07:15 PM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

I just wanted to let you guys know. I am going to fix it for us just in the global script.
Reply With Quote
  #7  
Old 09-07-2014, 07:17 PM
Kingly_Krab
Administrator
 
Join Date: May 2013
Location: United States
Posts: 1,593
Default

Okay, that works, too.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 11:32 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3