• Unfortunately, we have experienced significant hard drive damage that requires urgent maintenance and rebuilding. The forum will be a state of read only until we install our new drives and rebuild all the configurations needed. Please follow our Facebook page for updates, we will be back up shortly! (The forum could go offline at any given time due to the nature of the failed drives whilst awaiting the upgrades.) When you see an Incapsula error, you know we are in the process of migration.

EP9 Same as Bubu Shared

Junior Spellweaver
Joined
Apr 12, 2020
Messages
101
Reaction score
13
This is also what i am suspecting for agentserver shutting down, my server is smooth now. But i will update

Yes im using that features,.
Its good to know that your server is running smoothly, btw is your server using 4gb ram or more?
 
Newbie Spellweaver
Joined
Mar 23, 2018
Messages
62
Reaction score
26
Its good to know that your server is running smoothly, btw is your server using 4gb ram or more?

give some hint how to fix this man. how to show it?

1693048794912 - EP9 Same as Bubu Shared - RaGEZONE Forums
 
Junior Spellweaver
Joined
Apr 12, 2020
Messages
101
Reaction score
13
EDIT: Done Fixing by myself



Thank you for not responding Ragezone :bird: :bird: :bird:

Dont be mad, please be kind. I too also dont know how to fix that. We also have a lot of problems, and that doesnt mean you can get the answer asap in this forum. You have to be patient my friend.
 
Newbie Spellweaver
Joined
Mar 23, 2018
Messages
62
Reaction score
26
Dont be mad, please be kind. I too also dont know how to fix that. We also have a lot of problems, and that doesnt mean you can get the answer asap in this forum. You have to be patient my friend.
No i'm not mad. i understand. and thank you its so challenging. :reeeee::reeeee::reeeee:

Actually, this source has a lot of bugs, and since this is converted from 2003 to 2008, you need to modify some proper data type conversion to fix those bugs, and you should thank Eugene for converting this to 2008, You can now easily adopt the GS engine, just like this one that I converted.
thank you
 
Last edited:
Newbie Spellweaver
Joined
Mar 23, 2018
Messages
62
Reaction score
26
Junior Spellweaver
Joined
Mar 23, 2020
Messages
122
Reaction score
19
Any idea what's causing this error? I already installed the two SP1. I'm using GS's RanThirdParty.
 

Attachments

  • image_2023-08-28_132620057 - EP9 Same as Bubu Shared - RaGEZONE Forums
    image_2023-08-28_132620057.png
    9.8 KB · Views: 58
Junior Spellweaver
Joined
Apr 12, 2020
Messages
101
Reaction score
13
did you guys fix your guild ranking? mine still not showing. T_T
I think you need to change back to the original lg-7 global ranking and hook up the lg7.dll

Any idea what's causing this error? I already installed the two SP1. I'm using GS's RanThirdParty.
you forgot to add a semicolon on where you modified a file. ;
 
Newbie Spellweaver
Joined
Dec 17, 2011
Messages
92
Reaction score
15
1693278893533 - EP9 Same as Bubu Shared - RaGEZONE Forums
1693278965658 - EP9 Same as Bubu Shared - RaGEZONE Forums


as you can see in the 1st image when I hover my mouse to + in head crush it show the description of the next level and requirement
( it will show only 1st set of skill headcrush below )

in the 2nd image the 2nd set of skill ( red box ) when I hover my mouse into + .. it doesn't show the description

please help me where I can fix this.. I tried in the GUI and no luck
 
Newbie Spellweaver
Joined
Mar 23, 2018
Messages
62
Reaction score
26
View attachment 240928View attachment 240929

as you can see in the 1st image when I hover my mouse to + in head crush it show the description of the next level and requirement
( it will show only 1st set of skill headcrush below )

in the 2nd image the 2nd set of skill ( red box ) when I hover my mouse into + .. it doesn't show the description

please help me where I can fix this.. I tried in the GUI and no luck

Check on source code under: UISkillInfoLoader.cpp


Find this code and compare to your end, It should be like this:


C++:
        if ( pCharSkill )    //    ¹è¿î ½ºÅ³ÀÏ °æ¿ì¿¡...
        {
            BOOL bADDED = FALSE;
            for( int nImpact=0; nImpact<SKILL::MAX_IMPACT; ++nImpact )
            {
                if ( sAPPLY.sImpacts[nImpact].emADDON != EMIMPACTA_NONE )
                {
                    WORD wLevel = pCharSkill->wLevel;
                    if ( bNextLevel ) wLevel = pCharSkill->wLevel + 1;

                    const float fADDON_VAR = sAPPLY.sImpacts[nImpact].fADDON_VAR[wLevel];
                    if ( 0 != fADDON_VAR )
                    {
                        if ( !bADDED )
                        {
                            AddTextNoSplit(ID2GAMEWORD("SKILL_CATEGORY", 5),NS_UITEXTCOLOR::LIGHTSKYBLUE);
                            bADDED = TRUE;
                        }
                       
                        float fADDON_VAR_SCALE = fADDON_VAR * COMMENT::IMPACT_ADDON_SCALE[sAPPLY.sImpacts[nImpact].emADDON];

                        if ( COMMENT::IsIMPACT_ADDON_PER(sAPPLY.sImpacts[nImpact].emADDON) )
                        {
                            strText.Format ( "%s:%2.2f%%", COMMENT::IMPACT_ADDON[sAPPLY.sImpacts[nImpact].emADDON].c_str(), fADDON_VAR_SCALE );
                        }
                        else
                        {
                            strText.Format ( "%s:%2.2f", COMMENT::IMPACT_ADDON[sAPPLY.sImpacts[nImpact].emADDON].c_str(), fADDON_VAR_SCALE );
                        }

                        AddTextNoSplit(strText, NS_UITEXTCOLOR::PRIVATE );
                    }
                }
            }
           
        }

        //    Ư¼öÈ¿°ú
        if ( pCharSkill )    //    ¹è¿î ½ºÅ³ÀÏ °æ¿ì¿¡...
        {
            WORD wLevel = pCharSkill->wLevel;
            if ( bNextLevel ) wLevel = pCharSkill->wLevel + 1;

            BOOL bADDED = FALSE;
            for( int nSpec=0; nSpec<SKILL::MAX_SPEC; ++nSpec )
            {
                const SKILL::SSPEC& sSPEC = sAPPLY.sSpecs[nSpec].sSPEC[wLevel];

                if ( sAPPLY.sSpecs[nSpec].emSPEC != EMSPECA_NULL )
                {
                    if ( sAPPLY.sSpecs[nSpec].emSPEC == EMSPECA_PROHIBIT_POTION ) continue;

                    if ( !bADDED )
                    {
                        AddTextNoSplit(ID2GAMEWORD("SKILL_CATEGORY", 6),NS_UITEXTCOLOR::LIGHTSKYBLUE);
                        bADDED = TRUE;
                    }

                    strText.Format ( "%s:%s", ID2GAMEWORD("SKILL_SPEC_TYPE", 0), COMMENT::SPEC_ADDON[sAPPLY.sSpecs[nSpec].emSPEC].c_str() );
                    AddTextNoSplit(strText, NS_UITEXTCOLOR::PRIVATE );

                    strText.Empty();
                    CString strTemp;

                    if ( sAPPLY.sSpecs[nSpec].emSPEC == EMSPECA_NONBLOW || sAPPLY.sSpecs[nSpec].emSPEC == EMSPECA_RECBLOW )
                    {
                        if ( sSPEC.dwFLAG & DIS_NUMB )
                        {
                            strTemp.Format ( "%s ", COMMENT::BLOW[EMBLOW_NUMB].c_str() );
                            strText += strTemp;
                        }
                        if ( sSPEC.dwFLAG & DIS_STUN )
                        {
                            strTemp.Format ( "%s ", COMMENT::BLOW[EMBLOW_STUN].c_str() );
                            strText += strTemp;
                        }
                        if ( sSPEC.dwFLAG & DIS_STONE )
                        {
                            strTemp.Format ( "%s ", COMMENT::BLOW[EMBLOW_STONE].c_str() );
                            strText += strTemp;
                        }
                        if ( sSPEC.dwFLAG & DIS_BURN )
                        {
                            strTemp.Format ( "%s ", COMMENT::BLOW[EMBLOW_BURN].c_str() );
                            strText += strTemp;
                        }
                        if ( sSPEC.dwFLAG & DIS_FROZEN )
                        {
                            strTemp.Format ( "%s ", COMMENT::BLOW[EMBLOW_FROZEN].c_str() );
                            strText += strTemp;
                        }
                        if ( sSPEC.dwFLAG & DIS_MAD )
                        {
                            strTemp.Format ( "%s ", COMMENT::BLOW[EMBLOW_MAD].c_str() );
                            strText += strTemp;
                        }
                        if ( sSPEC.dwFLAG & DIS_POISON )
                        {
                            strTemp.Format ( "%s ", COMMENT::BLOW[EMBLOW_POISON].c_str() );
                            strText += strTemp;
                        }
                        if ( sSPEC.dwFLAG & DIS_CURSE )
                        {
                            strTemp.Format ( "%s ", COMMENT::BLOW[EMBLOW_CURSE].c_str() );
                            strText += strTemp;
                        }
                    }
                    // ¹ßµ¿ ½ºÅ³
                    else if ( sAPPLY.sSpecs[nSpec].emSPEC == EMSPECA_DEFENSE_SKILL_ACTIVE )
                    {
                        GLSKILL* pSkillTemp = GLSkillMan::GetInstance().GetData( sSPEC.dwNativeID );
                        if ( pSkillTemp )
                        {
                            strTemp.Format ( "%s Lv%d", pSkillTemp->GetName(),sSPEC.dwFLAG );
                            strText += strTemp;
                        }
                    }
                    /*debuff skill logic, Juver, 2017/06/10 */
                    else if ( sAPPLY.sSpecs[nSpec].emSPEC == EMSPECA_BUFF_REMOVE )
                    {
                        strTemp.Format ( "%s", COMMENT::SKILL_ACTION_TYPE[sSPEC.dwFLAG].c_str() );
                        strText += strTemp;
                    }

                    if ( strText.GetLength () )
                    {
                        AddTextNoSplit(strText, NS_UITEXTCOLOR::PRIVATE );
                    }

                    // Ư¼öÈ¿°ú°¡ ¾øÀ½ À϶§´Â ȸ鿡 º¸¿©ÁÖÁö ¾Êµµ·Ï Àӽà ¼öÁ¤~
                    // Ư¼öÈ¿°ú°¡ ¾øÀ½ À϶§´Â Åø¿¡¼ Á÷Á¢ °ª¿¡ 0À» ³Öµµ·Ï ¹Ù²Ù´Â°Ô ÁÁ´Ù ( ÁØÇõ )
                    if ( 0 != sSPEC.fVAR1 )
                    {
                        if( COMMENT::SPEC_ADDON_VAR1[EMSPECA_NULL] != COMMENT::SPEC_ADDON_VAR1[sAPPLY.sSpecs[nSpec].emSPEC] )
                        {
                            float fVAR1_SCALE = sSPEC.fVAR1 * COMMENT::SPEC_ADDON_VAR1_SCALE[sAPPLY.sSpecs[nSpec].emSPEC];

                            if ( COMMENT::IsSPEC_ADDON1_PER(sAPPLY.sSpecs[nSpec].emSPEC) )
                                strText.Format ( "%s:%2.2f%%", COMMENT::SPEC_ADDON_VAR1[sAPPLY.sSpecs[nSpec].emSPEC].c_str(), fVAR1_SCALE );
                            else
                                strText.Format ( "%s:%2.2f", COMMENT::SPEC_ADDON_VAR1[sAPPLY.sSpecs[nSpec].emSPEC].c_str(), fVAR1_SCALE );

                            AddTextNoSplit(strText, NS_UITEXTCOLOR::PRIVATE );
                        }
                    }

                    if ( 0 != sSPEC.fVAR2 )
                    {
                        if( COMMENT::SPEC_ADDON_VAR2[EMSPECA_NULL] != COMMENT::SPEC_ADDON_VAR2[sAPPLY.sSpecs[nSpec].emSPEC] )
                        {
                            float fVAR2_SCALE = sSPEC.fVAR2 * COMMENT::SPEC_ADDON_VAR2_SCALE[sAPPLY.sSpecs[nSpec].emSPEC];

                            if ( COMMENT::IsSPEC_ADDON2_PER(sAPPLY.sSpecs[nSpec].emSPEC) )
                                strText.Format ( "%s:%2.1f%%", COMMENT::SPEC_ADDON_VAR2[sAPPLY.sSpecs[nSpec].emSPEC].c_str(), fVAR2_SCALE );
                            else
                                strText.Format ( "%s:%2.1f", COMMENT::SPEC_ADDON_VAR2[sAPPLY.sSpecs[nSpec].emSPEC].c_str(), fVAR2_SCALE );

                            AddTextNoSplit(strText, NS_UITEXTCOLOR::PRIVATE );
                        }
                    }              
                }
            }
           
        }

        BOOL bNOT_LEARN = wDispLevel==0;

        //    ¿ä±¸Ä¡ Á¤º¸
        if ( (!bMaster && bNextLevel) || bNOT_LEARN )
        {
            AddTextNoSplit(ID2GAMEWORD("SKILL_CATEGORY", 7),NS_UITEXTCOLOR::LIGHTSKYBLUE);

            WORD wNextLevel = wDispLevel;
            GLCharacter* const pCharacter = GLGaeaClient::GetInstance().GetCharacter();
            SKILL::SLEARN& sLEARN = pSkill->m_sLEARN;
            SKILL::SLEARN_LVL& sLVL = sLEARN.sLVL_STEP[wNextLevel];          

       
            //    1. ¿ä±¸º¸À¯½ºÅ³
            SNATIVEID NeedSkillID = pSkill->m_sLEARN.sSKILL;          
            if ( NeedSkillID != NATIVEID_NULL() )
            {
                BOOL bVALID = FALSE;
                BOOL bNeedSkillLevel = FALSE;

                CString strNeedSkillName;
                CString strNeedSkillLevel;

                PGLSKILL pNeedSkill = GLSkillMan::GetInstance().GetData ( NeedSkillID.wMainID, NeedSkillID.wSubID );
                if( pNeedSkill ) strNeedSkillName.Format("%s:%s", ID2GAMEWORD( "SKILL_ADVANCED_INFO", 0), pNeedSkill->GetName() );
                bVALID = pCharacter->ISLEARNED_SKILL ( NeedSkillID );          

                //    2. ¿ä±¸º¸À¯½ºÅ³·¹º§
                if ( 0 < sLVL.dwSKILL_LVL )
                {
                    strNeedSkillLevel.Format("%s:%d",ID2GAMEWORD( "SKILL_ADVANCED_INFO", 1), (sLVL.dwSKILL_LVL + 1) );
                    bNeedSkillLevel = TRUE;

                    SCHARDATA2::SKILL_MAP& map = pCharacter->m_ExpSkills;              
                    SCHARDATA2::SKILL_MAP_ITER iter = map.find ( NeedSkillID.dwID );
                    if ( iter != map.end() )
                    {
                        SCHARSKILL& rCharSkill = (*iter).second;

                        //    »ö Á¶Àý
                        bVALID = rCharSkill.wLevel >= sLVL.dwSKILL_LVL;                      
                    }
                }

                AddTextNoSplit(strNeedSkillName,NS_UITEXTCONTROL::GetEvaluateColor ( bVALID ));

                if ( bNeedSkillLevel )
                    AddTextNoSplit(strNeedSkillLevel, NS_UITEXTCONTROL::GetEvaluateColor ( bVALID ) );
            }

            //    3. ¿ä±¸°æÇèÄ¡
            if ( 0 < sLVL.dwSKP )
            {
                strText.Format("%s:%d",ID2GAMEWORD( "SKILL_ADVANCED_INFO", 2), sLVL.dwSKP);              
                AddTextNoSplit(strText, NS_UITEXTCONTROL::GetEvaluateColor ( pCharacter->m_dwSkillPoint >= sLVL.dwSKP ) );
            }

            //    4. ¿ä±¸·¹º§
            if ( 0 < sLVL.dwLEVEL )
            {
                strText.Format("%s:%d",ID2GAMEWORD( "SKILL_ADVANCED_INFO", 3), sLVL.dwLEVEL);
                AddTextNoSplit(strText, NS_UITEXTCONTROL::GetEvaluateColor ( pCharacter->GETLEVEL () >= int(sLVL.dwLEVEL) ) );
            }

            //    Á¶°Ç - ¾Ï±¤
            //BOOL bValue = TRUE;
            //strText.Format ( "%s", COMMENT::BRIGHT[sLEARN.emBRIGHT].c_str() );
            //if ( sLEARN.emBRIGHT != BRIGHT_BOTH )
            //{
            //    if ( pCharacter->GETBRIGHT() != sLEARN.emBRIGHT )
            //    {
            //        bValue = FALSE;
            //    }
            //}
            //AddTextNoSplit ( strText, NS_UITEXTCONTROL::GetEvaluateColor ( bValue ) );


            //    Stats
            //    1. ¿ä±¸Èû
            if ( 0 < sLVL.sSTATS.wPow )
            {
                strText.Format("%s:%d",ID2GAMEWORD( "SKILL_ADVANCED_INFO_STATS", 0), sLVL.sSTATS.wPow);
                AddTextNoSplit(strText, NS_UITEXTCONTROL::GetEvaluateColor ( pCharacter->m_sSUMSTATS.wPow >= sLVL.sSTATS.wPow ) );
            }

            //    2. ¿ä±¸Ã¼·Â
            if ( 0 < sLVL.sSTATS.wStr )
            {
                strText.Format("%s:%d",ID2GAMEWORD( "SKILL_ADVANCED_INFO_STATS", 1), sLVL.sSTATS.wStr);
                AddTextNoSplit(strText, NS_UITEXTCONTROL::GetEvaluateColor ( pCharacter->m_sSUMSTATS.wStr >= sLVL.sSTATS.wStr ) );
            }

            //    3. ¿ä±¸Á¤½Å
            if ( 0 < sLVL.sSTATS.wSpi )
            {
                strText.Format("%s:%d",ID2GAMEWORD( "SKILL_ADVANCED_INFO_STATS", 2), sLVL.sSTATS.wSpi);
                AddTextNoSplit(strText, NS_UITEXTCONTROL::GetEvaluateColor ( pCharacter->m_sSUMSTATS.wSpi >= sLVL.sSTATS.wSpi ));
            }

            //    4. ¿ä±¸¹Îø
            if ( 0 < sLVL.sSTATS.wDex )
            {
                strText.Format("%s:%d",ID2GAMEWORD( "SKILL_ADVANCED_INFO_STATS", 3), sLVL.sSTATS.wDex);
                AddTextNoSplit(strText, NS_UITEXTCONTROL::GetEvaluateColor ( pCharacter->m_sSUMSTATS.wDex >= sLVL.sSTATS.wDex ) );
            }

            //    5. ¿ä±¸Áö·Â
            if ( 0 < sLVL.sSTATS.wInt )
            {
                strText.Format("%s:%d",ID2GAMEWORD( "SKILL_ADVANCED_INFO_STATS", 4), sLVL.sSTATS.wInt);
                AddTextNoSplit(strText, NS_UITEXTCONTROL::GetEvaluateColor ( pCharacter->m_sSUMSTATS.wInt >= sLVL.sSTATS.wInt ) );
            }

            //    6. ¿ä±¸±Ù·Â
            if ( 0 < sLVL.sSTATS.wSta )
            {
                strText.Format("%s:%d",ID2GAMEWORD( "SKILL_ADVANCED_INFO_STATS", 5), sLVL.sSTATS.wSta);
                AddTextNoSplit(strText, NS_UITEXTCONTROL::GetEvaluateColor ( pCharacter->m_sSUMSTATS.wPow >= sLVL.sSTATS.wSta ) );
            }
        }

        if ( bNextLevel ) return ;

        //    °£´ÜÇÑ ¼³¸í
        if( !pSkill->GetDesc() )    return;

        int StrLength = static_cast<int>( strlen( pSkill->GetDesc() ) );
        if ( StrLength )
        {
            AddTextNoSplit ( ID2GAMEWORD ( "SKILL_CATEGORY", 8 ), NS_UITEXTCOLOR::LIGHTSKYBLUE );
           
            AddTextLongestLineSplit ( pSkill->GetDesc(), NS_UITEXTCOLOR::DEFAULT );
        }
    }


    void LOAD ( const SNATIVEID& sNativeID, const BOOL bNextLevel )
    {
        if ( sNativeID != NATIVEID_NULL() )
        {
            BOOL bUPDATE = FALSE;
            if (( bNextLevel != m_bNextLevel_BEFORE_FRAME ) ||
                ( sNativeID != m_sNativeIDBack) )
            {          
                bUPDATE = TRUE;
            }

            if ( bUPDATE )
            {
                PGLSKILL pSkill = GLSkillMan::GetInstance().GetData ( sNativeID.wMainID, sNativeID.wSubID );
                if ( pSkill )    //    ½ºÅ³ÀÌ Á¸ÀçÇÒ °æ¿ì
                {
                    RemoveAllInfo ();

                    SCHARSKILL* pCharSkill = GLGaeaClient::GetInstance().GetCharacter()->GETLEARNED_SKILL ( sNativeID );                  
                    LOAD ( pSkill, pCharSkill, bNextLevel );
                }

                m_sNativeIDBack = sNativeID;
                m_bNextLevel_BEFORE_FRAME = bNextLevel;
            }      
        }
    }
};



Give thanks, if it works on your side :kirby: :kirby: :kirby:
 
Back
Top