Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Self Buff via NPC (5k pa more)

Newbie Spellweaver
Joined
Jan 17, 2024
Messages
24
Reaction score
3
Could you please share your GlogicData.cpp / GlogicData.h file? Also, I'm not sure where to put it.
 
Master Summoner
Joined
Feb 6, 2019
Messages
575
Reaction score
159
Could you please share your GlogicData.cpp / GlogicData.h file? Also, I'm not sure where to put it.
C++:
GLogicData.cpp
Look For:

    float GETEXP_RATE ( int nAttackerLev, int nDefenserLev )
    {
        int    nDiffLev = nDefenserLev - nAttackerLev;
        int nResultIndex = nDiffLev + GLCONST_CHAR::EXPTABLE_RANGE_BASE;

        if ( nResultIndex >= GLCONST_CHAR::EXPTABLE_RANGE )        nResultIndex = GLCONST_CHAR::EXPTABLE_RANGE-1;
        else if ( nResultIndex < 0 )                            nResultIndex = 0;

        return GLCONST_CHAR::fEXP_RATE_TABLE[nResultIndex];
    }

add below:

/*self buff via NPC, DevArt22, 2023/03/18 */
    SNPC_SELFBUFF m_sSelfBuffBAOnly = SNPC_SELFBUFF();

    /*self buff via NPC, DevArt22, 2023/03/18 */
    SNPC_SELFBUFF m_sSelfBuffFull[MAX_NPC_SELFBUFF] =
    {
        SNPC_SELFBUFF(),
        SNPC_SELFBUFF(),
        SNPC_SELFBUFF(),
        SNPC_SELFBUFF(),
        SNPC_SELFBUFF(),
        SNPC_SELFBUFF(),
    };

    /*self buff via NPC, DevArt22, 2023/03/18 */
    SNPC_SELFBUFF m_sSelfBuffFullNoBA[MAX_NPC_SELFBUFF-1] =
    {
        SNPC_SELFBUFF(),
        SNPC_SELFBUFF(),
        SNPC_SELFBUFF(),
        SNPC_SELFBUFF(),
        SNPC_SELFBUFF(),
    };

    /*self buff via NPC, DevArt22, 2023/03/18 */
    WORD    wSelfBuffPayBA = 20;
    WORD    wSelfBuffPayFull = 100;

GLogicDataLoad.cpp
Look For:
        if ( bServer )
        {
            EXP_LOADFILE ( "exptable.charclass" );
        
            EXP_PC_LOADFILE ( "exptable_pc.bin" );
        }
add below:

        /*self buff via NPC, DevArt22, 2023/03/18 */
        cFILE.getflag( "wSelfBuffPayBA", 1, 1, wSelfBuffPayBA );
        cFILE.getflag( "wSelfBuffPayFull", 1, 1, wSelfBuffPayFull );

        /*self buff via NPC, DevArt22, 2023/03/18 */
        SNPC_SELFBUFF sbBAOnly;
        cFILE.getflag( "SELFBUFF_BA_ONLY", 1, 3, sbBAOnly.sidSkill.wMainID );
        cFILE.getflag( "SELFBUFF_BA_ONLY", 2, 3, sbBAOnly.sidSkill.wSubID );
        cFILE.getflag( "SELFBUFF_BA_ONLY", 3, 3, sbBAOnly.wLevel );
        m_sSelfBuffBAOnly = sbBAOnly;

        /*self buff via NPC, DevArt22, 2023/03/18 */
        for ( i=0; i<MAX_NPC_SELFBUFF; ++i )
        {
            SNPC_SELFBUFF sbFB[MAX_NPC_SELFBUFF];
            CString strbuff;
            strbuff.Format ( "SELFBUFF_FULLBUFF_%02d", i );
            cFILE.getflag( strbuff.GetString(), 1, 3, sbFB[i].sidSkill.wMainID );
            cFILE.getflag( strbuff.GetString(), 2, 3, sbFB[i].sidSkill.wSubID );
            cFILE.getflag( strbuff.GetString(), 3, 3, sbFB[i].wLevel );

            m_sSelfBuffFull[i] = sbFB[i];
        }

        /*self buff via NPC, DevArt22, 2023/03/18 */
        for ( i=0; i<MAX_NPC_SELFBUFF-1; ++i )
        {
            SNPC_SELFBUFF sbFBNoBA[MAX_NPC_SELFBUFF-1];
            CString strbuff;
            strbuff.Format ( "SELFBUFF_FULLBUFF_NO_BA_%02d", i );
            cFILE.getflag( strbuff.GetString(), 1, 3, sbFBNoBA[i].sidSkill.wMainID );
            cFILE.getflag( strbuff.GetString(), 2, 3, sbFBNoBA[i].sidSkill.wSubID );
            cFILE.getflag( strbuff.GetString(), 3, 3, sbFBNoBA[i].wLevel );

            m_sSelfBuffFullNoBA[i] = sbFBNoBA[i];
        }

GLogicData.h

Look For:

    DWORD GETEXP_PC ( WORD wLev );

add below:

    /*self buff via NPC, DevArt22, 2023/03/18 */
    struct SNPC_SELFBUFF
    {
        SNATIVEID    sidSkill;
        WORD        wLevel;

        SNPC_SELFBUFF()
            : sidSkill(NATIVEID_NULL())
            , wLevel(0)
        {
        };
    };

    /*self buff via NPC, DevArt22, 2023/03/18 */
    extern SNPC_SELFBUFF        m_sSelfBuffBAOnly;
    extern SNPC_SELFBUFF        m_sSelfBuffFull[MAX_NPC_SELFBUFF];
    extern SNPC_SELFBUFF        m_sSelfBuffFullNoBA[MAX_NPC_SELFBUFF-1];

    /*self buff via NPC, DevArt22, 2023/03/18 */
    extern WORD                    wSelfBuffPayBA;
    extern WORD                    wSelfBuffPayFull;


Default.charclass

//BA Only
SELFBUFF_BA_ONLY            { 14, 14, 8 }

//Full Buffs
SELFBUFF_FULLBUFF_00        { 14, 4, 8 }
SELFBUFF_FULLBUFF_01        { 14, 5, 8 }
SELFBUFF_FULLBUFF_02         { 14, 6, 8 }
SELFBUFF_FULLBUFF_03        { 14, 10, 8 }
SELFBUFF_FULLBUFF_04        { 14, 11, 8 }
SELFBUFF_FULLBUFF_05        { 14, 14, 8 }

//Full Buffs Without BA
SELFBUFF_FULLBUFF_NO_BA_00    { 14, 4, 8 }
SELFBUFF_FULLBUFF_NO_BA_01    { 14, 5, 8 }
SELFBUFF_FULLBUFF_NO_BA_02     { 14, 6, 8 }
SELFBUFF_FULLBUFF_NO_BA_03    { 14, 10, 8 }
SELFBUFF_FULLBUFF_NO_BA_04    { 14, 11, 8 }

wSelfBuffPayBA        1000000
wSelfBuffPayFull    2000000
 
Newbie Spellweaver
Joined
Jun 12, 2014
Messages
85
Reaction score
3
The TS share CPP is complete? someone told me that the ts Share is not complete? anyone can share the cpp miising? TIA
1713585561229 - Self Buff via NPC (5k pa more) - RaGEZONE Forums


1713584529400 - Self Buff via NPC (5k pa more) - RaGEZONE Forums
 

Attachments

You must be registered for see attachments list
Back
Top