[anti-revert] [prot neck advance] [extra income] haha

Results 1 to 7 of 7
  1. #1
    Hardcore Member review000 is offline
    MemberRank
    Mar 2018 Join Date
    104Posts

    big grin [anti-revert] [prot neck advance] [extra income] haha

    https://www.mediafire.com/file/v32ylyz7huuy0p7/juver_shared%2528anti-revert%2529.rar1/file

    KEYWORD to SEARCH ITEM_ANTI_REVERT, EMANTIREVERT

    Desc : Prevent Item From reverting to 0 & termination.

    Idea not mine..
    code added by review000

    Credit to the person who owned this idea thanks :)

    No Hate


  2. #2
    Registered UKnowMeKnow is offline
    MemberRank
    Jan 2021 Join Date
    10Posts

    Re: [anti-revert] [prot neck advance] [extra income] haha

    Quote Originally Posted by review000 View Post
    https://www.mediafire.com/file/v32ylyz7huuy0p7/juver_shared%2528anti-revert%2529.rar1/file

    KEYWORD to SEARCH ITEM_ANTI_REVERT, EMANTIREVERT

    Desc : Prevent Item From reverting to 0 & termination.

    Idea not mine..
    code added by review000

    Credit to the person who owned this idea thanks :)

    No Hate
    this is so wrong and btw you can enable/disable that feature from defaulcharclass

  3. #3
    Hardcore Member review000 is offline
    MemberRank
    Mar 2018 Join Date
    104Posts

    Re: [anti-revert] [prot neck advance] [extra income] haha

    i did not declare anything in defaultcharclass :D

  4. #4
    Soon enough~ lars is offline
    True MemberRank
    Feb 2016 Join Date
    #include "XX.h"Location
    217Posts

    Re: [anti-revert] [prot neck advance] [extra income] haha

    Nice idea. But upon reviewing the code, seems like it is missing some important line of code that needs to be added.

    Hint: emANTIREVERT == EMANTIREVERT_USE at GLCharInvenMsg.cpp
    (this is not the missing code, but rather connected to this) Correct me if I am wrong.

    #2: DOGRINDING (does not support 6 args; so add 1 which you probably know by now)
    #3: BOOL bSucceeded = DOGRINDING (connected above)

    Either way, thanks for the share.
    Last edited by lars; 28-03-21 at 03:56 AM. Reason: Additional Hints
    This ain't real.

  5. #5
    Member Reyadh17 is offline
    MemberRank
    Apr 2020 Join Date
    36Posts

    Re: [anti-revert] [prot neck advance] [extra income] haha

    extra trash file!

  6. #6
    Account Upgraded | Title Enabled! caspian0 is online now
    True MemberRank
    Jul 2012 Join Date
    1,303Posts

    Re: [anti-revert] [prot neck advance] [extra income] haha

    Not good for players

  7. #7
    c++ CNDev is offline
    Alpha MaleRank
    Oct 2010 Join Date
    1,676Posts

    Re: [anti-revert] [prot neck advance] [extra income] haha

    Here is some minor share, you can create fine burr, luxury protection or any item refine without revert (rollback)

    GLogicEx.h
    BOOL DOGRINDING(SITEMCUSTOM &sCusItem,
    const SITEM *pHold,
    bool &bRESET,
    bool &bTERMINATE,
    bool &bNOFAIL, //add nofailups
    bool &bNOREVERT, //add norevert
    EMANTIDISAPPEAR &emANTIDISAPPEAR );
    GLogixExPC.cpp

    BOOL GLCHARLOGIC::DOGRINDING(SITEMCUSTOM &sCusItem,
    const SITEM *pHold,
    bool &_bRESET,
    bool &_bTERMINATE,
    bool &_bNOFAIL, //add nofailups
    bool &_bNOREVERT, //add norevert
    EMANTIDISAPPEAR &emANTIDISAPPEAR )
    {
    bool bSUCCEED(false);
    _bRESET = false;
    _bTERMINATE = false;

    const EMGRINDING_TYPE emGRINDING = pHold->sGrindingOp.emTYPE;

    BYTE cGRADE = sCusItem.GETGRADE(emGRINDING);

    if (emGRINDING == EMGRINDING_DAMAGE || emGRINDING == EMGRINDING_DEFENSE)
    {
    if (cGRADE >= GLCONST_CHAR::wGRADE_MAX) return FALSE;
    }
    else
    {
    if (cGRADE >= GLCONST_CHAR::wGRADE_MAX_REGI) return FALSE;
    }
    if ( cGRADE >= GRADE_NORMAL && !_bNOFAIL ) //add nofailups
    {
    float fRATE = GLCONST_CHAR::fGRADE_RATE[cGRADE];
    BOOL bOK = RANDOM_GEN(fRATE);
    if (!bOK)
    {
    //add norevert
    if (!_bNOREVERT)
    {
    float fRESET = GLCONST_CHAR::fGRADE_RESET_RATE[cGRADE];
    bOK = RANDOM_GEN(fRESET);
    if (bOK)
    {
    _bRESET = true;
    sCusItem.ResetGrind(emGRINDING);
    bool bTER = GLCONST_CHAR::bENCHANT_TERMINATE_ITEM && (emGRINDING == EMGRINDING_DAMAGE || emGRINDING == EMGRINDING_DEFENSE);
    if (bTER)
    {
    float fTERMINATE = GLCONST_CHAR::fGRADE_TERMINATE_RATE[cGRADE];
    bOK = RANDOM_GEN(fTERMINATE);
    if (bOK)
    {
    if (emANTIDISAPPEAR == EMANTIDISAPPEAR_ON)
    {
    emANTIDISAPPEAR = EMANTIDISAPPEAR_USE;
    }
    else
    {
    _bTERMINATE = true;
    }
    }
    }
    }
    }
    return FALSE;
    }
    }
    switch (pHold->sGrindingOp.emTYPE)
    {
    case EMGRINDING_DAMAGE: sCusItem.cDAMAGE++; break;
    case EMGRINDING_DEFENSE: sCusItem.cDEFENSE++; break;
    case EMGRINDING_RESIST_FIRE: sCusItem.cRESIST_FIRE++; break;
    case EMGRINDING_RESIST_ICE: sCusItem.cRESIST_ICE++; break;
    case EMGRINDING_RESIST_ELEC: sCusItem.cRESIST_ELEC++; break;
    case EMGRINDING_RESIST_POISON: sCusItem.cRESIST_POISON++; break;
    case EMGRINDING_RESIST_SPIRIT: sCusItem.cRESIST_SPIRIT++; break;
    };

    return TRUE;
    }
    GLCharInvenMsg.cpp

    HRESULT GLChar::MsgReqInvenGrinding ( NET_MSG_GENERIC* nmg )

    bool bNoRevert = pHold->sBasicOp.IsNoRevert(); //add norevert

    BOOL bSucceeded = DOGRINDING ( pInvenItem->sItemCustom, pHold, bRESET, bTERMINATE, bNoFail, bNoRevert, emANTIDISAPPEAR ); //add norevert
    GLItem.h
    bool IsCoolTime() { return ( dwCoolTime != 0 ); }
    bool IsNoRevert() { return(dwFlags&ITEM_NO_REVERT) != NULL; } //add norevert
    GLItemDef.h
    ITEM_NO_REVERT = 0x8000, //add norevert
    ItemSuit.cpp
    SetWin_Check(this, IDC_CHECK_NOREVERT, m_pDummyItem->sBasicOp.dwFlags&ITEM_NO_REVERT); //add norevert

    SetCheck_Flags(GetWin_Check(this, IDC_CHECK_NOREVERT), m_pDummyItem->sBasicOp.dwFlags, ITEM_NO_REVERT);//add norevert
    Never been interested.



Advertisement