Jump to content

xP3NG3Rx

Honorable Member
  • Posts

    855
  • Joined

  • Days Won

    402
  • Feedback

    100%

Everything posted by xP3NG3Rx

  1. Server\game\src\shop.cpp > "int CShop::Buy(LPCHARACTER ch, BYTE pos)" Search and replace this: if (IsPCShop()) { if (!pkSelectedItem) { sys_log(0, "Shop::Buy : Critical: This user seems to be a hacker : invalid pcshop item : BuyerPID:%d SellerPID:%d", ch->GetPlayerID(), m_pkPC->GetPlayerID()); return false; } if ((pkSelectedItem->GetOwner() != m_pkPC)) { sys_log(0, "Shop::Buy : Critical: This user seems to be a hacker : invalid pcshop item : BuyerPID:%d SellerPID:%d", ch->GetPlayerID(), m_pkPC->GetPlayerID()); return false; } } With this: if (IsPCShop()) { if (!pkSelectedItem) { sys_log(0, "Shop::Buy1 : Critical: This user seems to be a hacker : invalid pcshop item : BuyerPID:%d SellerPID:%d", ch->GetPlayerID(), m_pkPC->GetPlayerID()); return SHOP_SUBHEADER_GC_SOLDOUT; } if ((pkSelectedItem->GetOwner() != m_pkPC)) { sys_log(0, "Shop::Buy2 : Critical: This user seems to be a hacker : invalid pcshop item : BuyerPID:%d SellerPID:%d", ch->GetPlayerID(), m_pkPC->GetPlayerID()); return SHOP_SUBHEADER_GC_SOLDOUT; } } You could remove the sys_log about hacker thing because it not necessary.
  2. Paste your item proto, only the two costume scrolls.
  3. There is the right place, but the client part is wrong, it does not send the packet to use item on item because ignore it. As you can see on the picture it cannot handle the scroll as usable item on another item.
  4. Here is a diff, check with your uiInventory.py file. [Hidden Content]
  5. With this will work properly. function say_title_center(msg,r,g,b) local _color if (r and g and b) == nil then _color = color256(255, 230, 186) else _color = color256(r, g, b) end raw_script(string.format("[TEXT_HORIZONTAL_ALIGN_CENTER]%s%s%s[/TEXT_HORIZONTAL_ALIGN_CENTER][ENTER]", _color, msg, color256(196, 196, 196))) end
  6. Hmm, yes, I forgot the GameLib> ItemData.cpp, sorry and I'll edit the download with this: const char* CItemData::GetUseTypeString() const { if (GetType() != CItemData::ITEM_TYPE_USE) return "NOT_USE_TYPE"; switch (GetSubType()) { case USE_TUNING: return DEF_STR(USE_TUNING); case USE_DETACHMENT: return DEF_STR(USE_DETACHMENT); case USE_CLEAN_SOCKET: return DEF_STR(USE_CLEAN_SOCKET); case USE_CHANGE_ATTRIBUTE: return DEF_STR(USE_CHANGE_ATTRIBUTE); case USE_ADD_ATTRIBUTE: return DEF_STR(USE_ADD_ATTRIBUTE); case USE_ADD_ATTRIBUTE2: return DEF_STR(USE_ADD_ATTRIBUTE2); case USE_ADD_ACCESSORY_SOCKET: return DEF_STR(USE_ADD_ACCESSORY_SOCKET); case USE_PUT_INTO_ACCESSORY_SOCKET: return DEF_STR(USE_PUT_INTO_ACCESSORY_SOCKET); case USE_PUT_INTO_BELT_SOCKET: return DEF_STR(USE_PUT_INTO_BELT_SOCKET); case USE_PUT_INTO_RING_SOCKET: return DEF_STR(USE_PUT_INTO_RING_SOCKET); case USE_CHANGE_COSTUME_ATTR: return DEF_STR(USE_CHANGE_COSTUME_ATTR); case USE_RESET_COSTUME_ATTR: return DEF_STR(USE_RESET_COSTUME_ATTR); } return "USE_UNKNOWN_TYPE"; }
  7. @alin2894: What do you mean under "not work"? Could you explani it, please? What happens when you put the reset to an item? - Just because me works properly.
  8. You can align the lines to center with this script from 2008(bin_r23166 I have no prior bin :3): raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]") Just the reset function is unimplemented in the original src. I'm thinking for this: raw_script("[/TEXT_HORIZONTAL_ALIGN_CENTER]")
  9. Here it is: Mega.nz
  10. #nosupport #noreply #nopm #doityourself Here is mine with new use subtypes, Official like: Mega.nz #Edit: I will not edit the download but here is a little fix, about ymir's fail: Search these lines in uiInventory.py: if player.GetItemAttribute(dstSlotPos, i) != 0: And replace with: if player.GetItemAttribute(dstSlotPos, i)[0] != 0: Why? Easy, because the player.GetItemAttribute give back 2 values as always in standard case (0, 0) which is a tuple, the comparison is return true every times.
  11. Forget the release mode, use DEBUG or DISTRIBUTE only. The source was written for these modes, I mean: #if(n)def _DEBUG #if(n)def _DISTRIBUTE
  12. It is a good idea, thank you. I made for different empires, npc/gm, pvp mode and for party . The pvp mode is already exists in the client.
  13. Those wrong animations are removed from the client, but those were in the patch_easter1 pack. d:\ymir work\pc2\sura\horse\wait.gr2 d:\ymir work\pc2\sura\horse\wait_1.gr2 d:\ymir work\pc2\sura\horse\wait_2.gr2 Hihihi :D
  14. I patched the files manual with 4-5KB/s(32kbps) download speed, so... All in one the last update is 49,9MB, this was not 1-2 minutes
  15. Here is an unpacked patch from official client. There are the new pets by name: Eweriel and Ramblue (lamb_pet) metin2_patch_pet1 >> m2_15.5.5_20224 => Metin2 Download
  16. That is a good idea against the public "python pickup-bot"
  17. These files are coming from last update. metin2_patch_etc metin2_patch_party metin2_patch_pet1 metin2_patch_ramadan_costume Download (Metin2 Download) Password:
  18. Of course because the "dstSlotPos" variable is None in some cases and not int. Replace that line in "def refresh(self,dstSlotPos,srcSlotPos):" with this: try: attrSlot = [player.GetItemAttribute(dstSlotPos, i) for i in xrange(player.ATTRIBUTE_SLOT_MAX_NUM)] except TypeError: return
  19. ​Yes I have Mega.co.nz - Baby huashin Mega.co.nz - 2 Half moon(red and blue)
  20. The new update is not containing the new pets yet, so no problem Here are the old and the new crclist files, there you can see the modified files: Old New I think the new login packet has got a new data in byte probably(last used slot).
  21. Major Lazer Lean On (feat. M0 & DJ Snake) Feder - Goodbye ft Lyse (Original Mix)
  22. Omi - Cheerleader (Felix Jaehn Remix) Redfoo - New Thang
  23. Here it is: tkmt2-inf-package-old-not-actual.arc - 154 KB This client is sucks xD
  24. @AfterLife, Ol' Dirty Bastard ft. Kelis - Got Your Money Calvin Harris ft. Example - We'll Be Coming Back
  25. The first code is the Alpha.
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.