Fux Bug Zen CGItemGetRequest for 97D

Results 1 to 3 of 3
  1. #1
    Enthusiast ProuseR15 is offline
    MemberRank
    Mar 2015 Join Date
    United StatesLocation
    43Posts

    Fux Bug Zen CGItemGetRequest for 97D

    Hello to all of RZ, I would like someone to help me solve the zen bug of version 0.96.04 since Webzen usually did not add the maximum zen option so you have to add it to the source, the protocol that I'm trying to modify is the CGItemGetRequest, but I have a big problem is that when I grab anything from the floor I crashed the GS, I was testing what I did wrong and apparently it is the MapItem files, MapClass .. if someone has these files working in the 97D would be very helpful if I could share them, if someone is willing to help send me a message to the private, and explained in detail


  2. #2
    Valued Member webmonkey is offline
    MemberRank
    Jul 2005 Join Date
    125Posts

    Re: Fux Bug Zen CGItemGetRequest for 97D

    Quote Originally Posted by ProuseR15 View Post
    Hello to all of RZ, I would like someone to help me solve the zen bug of version 0.96.04 since Webzen usually did not add the maximum zen option so you have to add it to the source, the protocol that I'm trying to modify is the CGItemGetRequest, but I have a big problem is that when I grab anything from the floor I crashed the GS, I was testing what I did wrong and apparently it is the MapItem files, MapClass .. if someone has these files working in the 97D would be very helpful if I could share them, if someone is willing to help send me a message to the private, and explained in detail
    just hook the function and do a previous check, you can use the structs that have been published everywhere to make life easier for you.

  3. #3
    Enthusiast ProuseR15 is offline
    MemberRank
    Mar 2015 Join Date
    United StatesLocation
    43Posts

    Re: Fux Bug Zen CGItemGetRequest for 97D

    Quote Originally Posted by webmonkey View Post
    just hook the function and do a previous check, you can use the structs that have been published everywhere to make life easier for you.
    friend, I already hook the function:

    Library.MakeHook((DWORD)&CGRequestRecv.CGItemGetRequest,0x00401479);
    And also locate the offset:
    #define CGItemGetRequestRecv ((void(*)(PMSG_ITEMGETREQUEST * lpMsg, int aIndex)) 0x00418740)
    I currently have the CGItemGetRequest.cpp in this way:

    void CRequestRecv::CGItemGetRequest(PMSG_ITEMGETREQUEST * lpMsg, int aIndex){ LPOBJ lpObj = &gObj[aIndex]; int item_num, map_num; CMapItem * lpItem; lpItem = &MapC[map_num].m_cItem[item_num]; item_num = MAKE_NUMBERW(lpMsg->NumberH, lpMsg->NumberL); map_num = lpObj->MapNumber; if ( lpItem->m_Type == ITEMGET(14,15) ) { LogAddTD("Si es zen 1"); } else if( MapC[map_num].ItemGive(aIndex, item_num, false) == TRUE ) { LogAddTD("Obtuvo un item 2 "); } if ( !gObjCheckMaxZen(aIndex, iAddZen)) { LogAddTD("Verifico el zen %d",iAddZen); } LogAddTD("No verifica nada"); CGItemGetRequestRecv(lpMsg,aIndex); return;}
    And my problem is that I'm looking for is: &MapC[map_num].m_cItem[item_num]
    Since reviewing other sources, especially the decompilation made by Deathway, GS 1.00.18, and the function makes a pointer to a class of MapClass and MapItem files, try to adapt all those files to this version but nothing that works for me, just I put this in the CGItemGetRequest:if (lpItem-> m_Type == ITEMGET (14,15)){LogAddTD ("If it's zen 1");}And the GameServer crashed
    Last edited by ProuseR15; 10-05-18 at 01:37 AM. Reason: Add quote



Advertisement