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!

[Split Source] BTG Information

Newbie Spellweaver
Joined
May 24, 2024
Messages
9
Reaction score
10
1716855583486 - [Split Source] BTG Information - RaGEZONE Forums


These modification is already in Asura Ran Source, I just split them so we have a backup.
Credits to the owner :cash:
In dxincommand.cpp find:
Code:
#if !defined(_RELEASED)
            if( expGain_Rate > 10.0f ) expGain_Rate = 10.0f;
            if( itemGain_Rate > 10.0f ) itemGain_Rate = 10.0f;
#endif

Replace with this code:
Code:
            if( expGain_Rate > 99.0f ) expGain_Rate = 99.0f;
            if( itemGain_Rate > 3.0f ) itemGain_Rate = 3.0f;
In GLChar.cpp Find:
Code:
NetMsg.loginTime = m_sEventTime.loginTime;

Add this code below:
Code:
            NetMsg.expGain_Rate = sEventState.fExpGainRate;
            NetMsg.itemGain_Rate = sEventState.fItemGainRate;

In GLCharacterMsg.cpp Find:
Code:
m_RemainBusterTime = m_EventBusterTime;

Add this code below:
Code:
            m_fBtgExpRate    = pNetMsg->expGain_Rate;
            m_fBtgItemRate    = pNetMsg->itemGain_Rate;

In GLCharData.h Find:
Code:
int                    m_EventBusterTime;

Add this code below:
Code:
    float                m_fBtgExpRate;
    float                m_fBtgItemRate;

In GLCharData.h Find:
Code:
, m_dwVPoints(0)

Add this code below:
Code:
        , m_fBtgExpRate(0.0f)
        , m_fBtgItemRate(0.0f)

In GLContrlServerMsg.h replace this code:
Code:
    struct  SNET_GM_LIMIT_EVENT_APPLY_START
    {
        NET_MSG_GENERIC nmg;
        __time64_t loginTime;   // ·Î±×ÀÎ ½Ã°£À̳ª À̺¥Æ® ½ÃÀ۽à ½Ã°£

        SNET_GM_LIMIT_EVENT_APPLY_START() :
                                    loginTime( 0 )
        {
            nmg.dwSize = sizeof(*this);
            nmg.nType = NET_MSG_GM_LIMIT_EVENT_APPLY_START;
            GASSERT(nmg.dwSize<=NET_DATA_BUFSIZE);
        }
    };

Into this code:
Code:
    struct  SNET_GM_LIMIT_EVENT_APPLY_START
    {
        NET_MSG_GENERIC nmg;
        __time64_t loginTime;   // ·Î±×ÀÎ ½Ã°£À̳ª À̺¥Æ® ½ÃÀ۽à ½Ã°£

      
        float expGain_Rate;
        float itemGain_Rate;

        SNET_GM_LIMIT_EVENT_APPLY_START()
            : loginTime( 0 )
           
            , expGain_Rate(0.0f)
            , itemGain_Rate(0.0f)
        {
            nmg.dwSize = sizeof(*this);
            nmg.nType = NET_MSG_GM_LIMIT_EVENT_APPLY_START;
            GASSERT(nmg.dwSize<=NET_DATA_BUFSIZE);
        }
    };

In BonusTimeGauge.cpp replace this code:
Code:
void CBonusTimeGauge::Update ( int x, int y, BYTE LB, BYTE MB, BYTE RB, int nScroll, float fElapsedTime, BOOL bFirstControl )
{
    if ( !IsVisible () ) return ;

    CUIGroup::Update ( x, y, LB, MB, RB, nScroll, fElapsedTime, bFirstControl );

    if ( m_bCharging )
    {     
        const GLCHARLOGIC& sCharData = GLGaeaClient::GetInstance().GetCharacterLogic ();
        SetTimeCharge( sCharData.m_EventStartTime - sCharData.m_RemainEventTime, sCharData.m_EventStartTime );
      
    }
    else
    { 
        const GLCHARLOGIC& sCharData = GLGaeaClient::GetInstance().GetCharacterLogic ();
        SetTimeConsume( sCharData.m_RemainBusterTime, sCharData.m_EventBusterTime );
    }

    if ( CHECK_MOUSE_IN ( GetMessageEx () ) )
    {
        if ( CInnerInterface::GetInstance().BEGIN_COMMON_LINEINFO_MULTI() )
        {
            CInnerInterface::GetInstance().ADD_COMMON_LINEINFO_MULTI( ID2GAMEINTEXT("BONUS_TIME_MESSAGE",0), NS_UITEXTCOLOR::WHITE  );
            CInnerInterface::GetInstance().ADD_COMMON_LINEINFO_MULTI( ID2GAMEINTEXT("BONUS_TIME_MESSAGE",1), NS_UITEXTCOLOR::WHITE  );
            CInnerInterface::GetInstance().END_COMMON_LINEINFO_MULTI();
        }
    }
}

To this code:
Code:
void CBonusTimeGauge::Update ( int x, int y, BYTE LB, BYTE MB, BYTE RB, int nScroll, float fElapsedTime, BOOL bFirstControl )
{
    if ( !IsVisible () ) return ;

    CUIGroup::Update ( x, y, LB, MB, RB, nScroll, fElapsedTime, bFirstControl );

   
    CString strMsg;
    if ( m_bCharging )
    {     
        const GLCHARLOGIC& sCharData = GLGaeaClient::GetInstance().GetCharacterLogic ();
        SetTimeCharge( sCharData.m_EventStartTime - sCharData.m_RemainEventTime, sCharData.m_EventStartTime );
      
       
        strMsg.Format( ID2GAMEINTEXT("BONUS_TIME_MESSAGE",2), sCharData.m_fBtgExpRate, sCharData.m_fBtgItemRate, sCharData.m_RemainEventTime/60, sCharData.m_RemainEventTime%60);
    }
    else
    { 
        const GLCHARLOGIC& sCharData = GLGaeaClient::GetInstance().GetCharacterLogic ();
        SetTimeConsume( sCharData.m_RemainBusterTime, sCharData.m_EventBusterTime );

       
        strMsg.Format( ID2GAMEINTEXT("BONUS_TIME_MESSAGE",2), sCharData.m_fBtgExpRate, sCharData.m_fBtgItemRate,
            (DWORD)sCharData.m_RemainBusterTime/60, (DWORD)sCharData.m_RemainBusterTime%60);
    }

    if ( CHECK_MOUSE_IN ( GetMessageEx () ) )
    {
        if ( CInnerInterface::GetInstance().BEGIN_COMMON_LINEINFO_MULTI() )
        {
            const GLCHARLOGIC& sCharData = GLGaeaClient::GetInstance().GetCharacterLogic ();

            CInnerInterface::GetInstance().ADD_COMMON_LINEINFO_MULTI( strMsg, NS_UITEXTCOLOR::WHITE  );

            CInnerInterface::GetInstance().ADD_COMMON_LINEINFO_MULTI( ID2GAMEINTEXT("BONUS_TIME_MESSAGE",0), NS_UITEXTCOLOR::WHITE  );
            CInnerInterface::GetInstance().ADD_COMMON_LINEINFO_MULTI( ID2GAMEINTEXT("BONUS_TIME_MESSAGE",1), NS_UITEXTCOLOR::WHITE  );
            CInnerInterface::GetInstance().END_COMMON_LINEINFO_MULTI();
        }
    }
}
 

Attachments

You must be registered for see attachments list
Last edited:
Junior Spellweaver
Joined
Feb 28, 2014
Messages
126
Reaction score
14
View attachment 261146

These modification is already in Asura Ran Source, I just split them so we have a backup.
Credits to the owner :cash:
In dxincommand.cpp find:
Code:
#if !defined(_RELEASED)
            if( expGain_Rate > 10.0f ) expGain_Rate = 10.0f;
            if( itemGain_Rate > 10.0f ) itemGain_Rate = 10.0f;
#endif

Replace with this code:
Code:
            if( expGain_Rate > 99.0f ) expGain_Rate = 99.0f;
            if( itemGain_Rate > 3.0f ) itemGain_Rate = 3.0f;
In GLChar.cpp Find:
Code:
NetMsg.loginTime = m_sEventTime.loginTime;

Add this code below:
Code:
            NetMsg.expGain_Rate = sEventState.fExpGainRate;
            NetMsg.itemGain_Rate = sEventState.fItemGainRate;

In GLCharacterMsg.cpp Find:
Code:
m_RemainBusterTime = m_EventBusterTime;

Add this code below:
Code:
            m_fBtgExpRate    = pNetMsg->expGain_Rate;
            m_fBtgItemRate    = pNetMsg->itemGain_Rate;

In GLCharData.h Find:
Code:
int                    m_EventBusterTime;

Add this code below:
Code:
    float                m_fBtgExpRate;
    float                m_fBtgItemRate;

In GLCharData.h Find:
Code:
, m_dwVPoints(0)

Add this code below:
Code:
        , m_fBtgExpRate(0.0f)
        , m_fBtgItemRate(0.0f)

In GLContrlServerMsg.h replace this code:
Code:
    struct  SNET_GM_LIMIT_EVENT_APPLY_START
    {
        NET_MSG_GENERIC nmg;
        __time64_t loginTime;   // ·Î±×ÀÎ ½Ã°£À̳ª À̺¥Æ® ½ÃÀ۽à ½Ã°£

        SNET_GM_LIMIT_EVENT_APPLY_START() :
                                    loginTime( 0 )
        {
            nmg.dwSize = sizeof(*this);
            nmg.nType = NET_MSG_GM_LIMIT_EVENT_APPLY_START;
            GASSERT(nmg.dwSize<=NET_DATA_BUFSIZE);
        }
    };

Into this code:
Code:
    struct  SNET_GM_LIMIT_EVENT_APPLY_START
    {
        NET_MSG_GENERIC nmg;
        __time64_t loginTime;   // ·Î±×ÀÎ ½Ã°£À̳ª À̺¥Æ® ½ÃÀ۽à ½Ã°£

     
        float expGain_Rate;
        float itemGain_Rate;

        SNET_GM_LIMIT_EVENT_APPLY_START()
            : loginTime( 0 )
          
            , expGain_Rate(0.0f)
            , itemGain_Rate(0.0f)
        {
            nmg.dwSize = sizeof(*this);
            nmg.nType = NET_MSG_GM_LIMIT_EVENT_APPLY_START;
            GASSERT(nmg.dwSize<=NET_DATA_BUFSIZE);
        }
    };

In BonusTimeGauge.cpp replace this code:
Code:
void CBonusTimeGauge::Update ( int x, int y, BYTE LB, BYTE MB, BYTE RB, int nScroll, float fElapsedTime, BOOL bFirstControl )
{
    if ( !IsVisible () ) return ;

    CUIGroup::Update ( x, y, LB, MB, RB, nScroll, fElapsedTime, bFirstControl );

    if ( m_bCharging )
    {    
        const GLCHARLOGIC& sCharData = GLGaeaClient::GetInstance().GetCharacterLogic ();
        SetTimeCharge( sCharData.m_EventStartTime - sCharData.m_RemainEventTime, sCharData.m_EventStartTime );
     
    }
    else
    {
        const GLCHARLOGIC& sCharData = GLGaeaClient::GetInstance().GetCharacterLogic ();
        SetTimeConsume( sCharData.m_RemainBusterTime, sCharData.m_EventBusterTime );
    }

    if ( CHECK_MOUSE_IN ( GetMessageEx () ) )
    {
        if ( CInnerInterface::GetInstance().BEGIN_COMMON_LINEINFO_MULTI() )
        {
            CInnerInterface::GetInstance().ADD_COMMON_LINEINFO_MULTI( ID2GAMEINTEXT("BONUS_TIME_MESSAGE",0), NS_UITEXTCOLOR::WHITE  );
            CInnerInterface::GetInstance().ADD_COMMON_LINEINFO_MULTI( ID2GAMEINTEXT("BONUS_TIME_MESSAGE",1), NS_UITEXTCOLOR::WHITE  );
            CInnerInterface::GetInstance().END_COMMON_LINEINFO_MULTI();
        }
    }
}

To this code:
Code:
void CBonusTimeGauge::Update ( int x, int y, BYTE LB, BYTE MB, BYTE RB, int nScroll, float fElapsedTime, BOOL bFirstControl )
{
    if ( !IsVisible () ) return ;

    CUIGroup::Update ( x, y, LB, MB, RB, nScroll, fElapsedTime, bFirstControl );

  
    CString strMsg;
    if ( m_bCharging )
    {    
        const GLCHARLOGIC& sCharData = GLGaeaClient::GetInstance().GetCharacterLogic ();
        SetTimeCharge( sCharData.m_EventStartTime - sCharData.m_RemainEventTime, sCharData.m_EventStartTime );
     
      
        strMsg.Format( ID2GAMEINTEXT("BONUS_TIME_MESSAGE",2), sCharData.m_fBtgExpRate, sCharData.m_fBtgItemRate, sCharData.m_RemainEventTime/60, sCharData.m_RemainEventTime%60);
    }
    else
    {
        const GLCHARLOGIC& sCharData = GLGaeaClient::GetInstance().GetCharacterLogic ();
        SetTimeConsume( sCharData.m_RemainBusterTime, sCharData.m_EventBusterTime );

      
        strMsg.Format( ID2GAMEINTEXT("BONUS_TIME_MESSAGE",2), sCharData.m_fBtgExpRate, sCharData.m_fBtgItemRate,
            (DWORD)sCharData.m_RemainBusterTime/60, (DWORD)sCharData.m_RemainBusterTime%60);
    }

    if ( CHECK_MOUSE_IN ( GetMessageEx () ) )
    {
        if ( CInnerInterface::GetInstance().BEGIN_COMMON_LINEINFO_MULTI() )
        {
            const GLCHARLOGIC& sCharData = GLGaeaClient::GetInstance().GetCharacterLogic ();

            CInnerInterface::GetInstance().ADD_COMMON_LINEINFO_MULTI( strMsg, NS_UITEXTCOLOR::WHITE  );

            CInnerInterface::GetInstance().ADD_COMMON_LINEINFO_MULTI( ID2GAMEINTEXT("BONUS_TIME_MESSAGE",0), NS_UITEXTCOLOR::WHITE  );
            CInnerInterface::GetInstance().ADD_COMMON_LINEINFO_MULTI( ID2GAMEINTEXT("BONUS_TIME_MESSAGE",1), NS_UITEXTCOLOR::WHITE  );
            CInnerInterface::GetInstance().END_COMMON_LINEINFO_MULTI();
        }
    }
}
Thank you for this, informative
 
Junior Spellweaver
Joined
Apr 2, 2019
Messages
148
Reaction score
32
Is this the same like this one?
1717122097679 - [Split Source] BTG Information - RaGEZONE Forums
 

Attachments

You must be registered for see attachments list
Back
Top