-
Posts
53 -
Joined
-
Last visited
-
Feedback
0%
Content Type
Forums
Store
Third Party - Providers Directory
Feature Plan
Release Notes
Docs
Events
Posts posted by P1nGu1n
-
-
not solve
bump.error is not from shop offline !!!
-
-
Spoiler
Hello M2Dev
i have one big problem about one crash.
if somebody know how i can fix this , please say me in pm or reply with skype/discord id for contact
i pay for this fix (how much you want) . Please , just if you know fix.
item_manager.cpp
void ITEM_MANAGER::DelayedSave(LPITEM item) { if (item->GetID() != 0) m_set_pkItemForDelayedSave.insert(item); } void ITEM_MANAGER::FlushDelayedSave(LPITEM item) { TR1_NS::unordered_set<LPITEM>::iterator it = m_set_pkItemForDelayedSave.find(item); if (it == m_set_pkItemForDelayedSave.end()) { return; } m_set_pkItemForDelayedSave.erase(it); SaveSingleItem(item); } void ITEM_MANAGER::SaveSingleItem(LPITEM item) { if(!item) { sys_err("item from SaveSingleItem is NULL!!!"); //return; } //if(!item->GetID()) // return; if (!item->GetOwner()) //if (!item->GetOwner() || !item->GetCount()) { DWORD dwID = item->GetID(); DWORD dwOwnerID = item->GetLastOwnerPID(); db_clientdesc->DBPacketHeader(HEADER_GD_ITEM_DESTROY, 0, sizeof(DWORD) + sizeof(DWORD)); db_clientdesc->Packet(&dwID, sizeof(DWORD)); db_clientdesc->Packet(&dwOwnerID, sizeof(DWORD)); sys_log(1, "ITEM_DELETE %s:%u", item->GetName(), dwID); return; } sys_log(1, "ITEM_SAVE %s:%d in %s window %d", item->GetName(), item->GetID(), item->GetOwner()->GetName(), item->GetWindow()); TPlayerItem t; t.id = item->GetID(); t.window = item->GetWindow(); t.pos = t.window == EQUIPMENT ? item->GetCell() - INVENTORY_MAX_NUM : item->GetCell(); t.count = item->GetCount(); t.vnum = item->GetOriginalVnum(); #ifdef TRANSMUTE_SYSTEM t.look = item->GetLook(); #endif t.owner = (t.window == SAFEBOX || t.window == MALL) ? item->GetOwner()->GetDesc()->GetAccountTable().id : item->GetOwner()->GetPlayerID(); thecore_memcpy(t.alSockets, item->GetSockets(), sizeof(t.alSockets)); thecore_memcpy(t.aAttr, item->GetAttributes(), sizeof(t.aAttr)); db_clientdesc->DBPacketHeader(HEADER_GD_ITEM_SAVE, 0, sizeof(TPlayerItem)); db_clientdesc->Packet(&t, sizeof(TPlayerItem)); } void ITEM_MANAGER::Update() { TR1_NS::unordered_set<LPITEM>::iterator it = m_set_pkItemForDelayedSave.begin(); TR1_NS::unordered_set<LPITEM>::iterator this_it; while (it != m_set_pkItemForDelayedSave.end()) { this_it = it++; LPITEM item = *this_it; // SLOW_QUERY 플래그가 있는 것은 종료시에만 저장한다. if (item->GetOwner() && IS_SET(item->GetFlag(), ITEM_FLAG_SLOW_QUERY)) continue; SaveSingleItem(item); m_set_pkItemForDelayedSave.erase(this_it); } } void ITEM_MANAGER::RemoveItem(LPITEM item, const char * c_pszReason) { LPCHARACTER o; if ((o = item->GetOwner())) { #ifdef __NEW_PET_SYSTEM_SCALING__ if(item->GetVnum() >= 53041 && item->GetVnum() <= 53048 && o) { CScalingPetSystem* petsys = o->GetScalingPetSystem(); if(petsys->GetScalingPetActor()) { petsys->Unsummon(); } } #endif char szHint[64]; snprintf(szHint, sizeof(szHint), "%s %u ", item->GetName(), item->GetCount()); LogManager::instance().ItemLog(o, item, c_pszReason ? c_pszReason : "REMOVE", szHint); if (item->GetWindow() == MALL || item->GetWindow() == SAFEBOX) { CSafebox* pSafebox = item->GetWindow() == MALL ? o->GetMall() : o->GetSafebox(); if (pSafebox) { pSafebox->Remove(item->GetCell()); } } else { o->SyncQuickslot(QUICKSLOT_TYPE_ITEM, item->GetCell(), 255); item->RemoveFromCharacter(); } } M2_DESTROY_ITEM(item); }
item.cpp
Spoiler
DWORD CItem::GetCount()
{
#ifdef ENABLE_CHEQUE_SYSTEM
if (GetType() == ITEM_ELK || GetType() == ITEM_CHEQUE) return MIN(m_dwCount, INT_MAX);
#else
if (GetType() == ITEM_ELK) return MIN(m_dwCount, INT_MAX);
#endif
else
{
return MIN(m_dwCount, 200);
}
}bool CItem::SetCount(DWORD count)
{
#ifdef ENABLE_CHEQUE_SYSTEM
if (GetType() == ITEM_ELK || GetType() == ITEM_CHEQUE)
#else
if (GetType() == ITEM_ELK)
#endif
{
m_dwCount = MIN(count, INT_MAX);
}
else
{
m_dwCount = MIN(count, ITEM_MAX_COUNT);
}if (count == 0 && m_pOwner)
{
if (GetSubType() == USE_ABILITY_UP || GetSubType() == USE_POTION || GetVnum() == 70020)
{
LPCHARACTER pOwner = GetOwner();
WORD wCell = GetCell();RemoveFromCharacter();
if (!IsDragonSoul())
{
LPITEM pItem = pOwner->FindSpecifyItem(GetVnum());if (NULL != pItem)
{
pOwner->ChainQuickslotItem(pItem, QUICKSLOT_TYPE_ITEM, wCell);
}
else
{
pOwner->SyncQuickslot(QUICKSLOT_TYPE_ITEM, wCell, 255);
}
}M2_DESTROY_ITEM(this);
}
else
{
if (!IsDragonSoul())
{
m_pOwner->SyncQuickslot(QUICKSLOT_TYPE_ITEM, m_wCell, 255);
}
M2_DESTROY_ITEM(RemoveFromCharacter());
}return false;
}UpdatePacket();
Save();
return true;
}db when crash , appear this item...
edit: i don't know when crash or how crash. shop offline from great.
-
Hello ,
Looking for a developer to fix a bug in game.core
https://metin2.download/picture/jAqMIE5QIUg3t4o8daWN1qEYlhMXGhUu/.png
pay for this.
-
sure?
I'm waiting more opinions
-
Hello ,
I have a question... Is paygol a trustly company ,
I want to start a colaboration with them and I'm not sure . (without paymentwall and g2a)
Thanks .
- 1
-
3 minutes ago, ShadowsPR0 said:
International* boss
thx xD
-
-
Close
Thanks Marty
-
Hello
I need to buy multi-language system withe the next requirements :to be translated locale_string and translate.lua
example : locale_spanish , locale_english , locale_german and translate_spanish , translate_english , translate_german.lua.
I need it clean without any kind of bugs
I can offer between 100 and 200 euro skrill (or paypal) for it ,Thanks. -
Hello ,
I have db.core
problem is old and pay 150 - 200 € for resolve.
https://metin2.download/picture/9xd8rs8EHM9XxI9KXesdzScZ975k1eR8/.png
- 1
-
upp
EDIT: Topic close , thank you IceShiva.
-
-
Hello,
Give 50-100€ paypal to add radio in client (no gui , start client and automatic start radio)
skype: -EDIT-
ps: sorry for my bad englis
-
no, error include...
-
I have a problem when I compile db ,
help me....
-
bt full and show me libstdc++.so.6
-
insert in skill_proto and test it
INSERT INTO `skill_proto` VALUES ('1', 0xBBEFBFACC2FC, '1', '1', '1', '0', 'HP', '-( 1.1*atk + (0.5*atk + 1.5 * str)*k)', '40+100*k', '', '', '12', '-( 1.4*atk + (0.5*atk + 1.5 * str)*k)', '', 'ATTACK,USE_MELEE_DAMAGE', '', 'NONE', '', '', '', '', '', '', '40+100*k', '0', '0', 'MELEE', '5', '1', '0', '0');
-
config.cpp : 76 or search g_stClientVersion
-
Change version in PythonNetworkStreamPhaseGame.cpp:4208
- 1
-
Just now, SzC said:
I think you bla bla, this paid is posible buy all system from him.... not is proof for you mean scammer.
I buy systems from him and work fine!
shh show you the whole conversation?
-
4 hours ago, Vanilla said:
First it's a decision everyone makes for him- herself. Then: You don't really believe he'd pay 500€ for a fix? Come on, that's just ridiculous. I replied because I liked the idea behind it (of course I don't think he'd really pay at least half of it, no offense meant) and if it is a difficult task, I'd like to give my thoughts about it. For free. I don't know what's the problem about it.
https://metin2.download/picture/ZpWhEtz064828d97sfrZgPl34S4wBEVw/.png
https://metin2.download/picture/MsLq3QnQG7yr0w81AocA3Oa1W7TTX68s/.png
https://metin2.download/picture/7g0cWxh96Y3rEjrFsqPjeOx8zhmfUul4/.png - scammer (Thorico)
I'm not interested of how much do i pay you, i just want my server to run out of problems. I'm a mature person and i'm keeping my words when i say them.
-
2 hours ago, Aurora said:
It's funny to see if someone in the titel say they pay, all people reply by other topics nobody answer them questions or solve their problems
true
-
2 minutes ago, DarkAng3l said:
Reinstall your OS with correct libs and don't spam. You don't pay anyone. DB and Game cores have 4 GB size, that's libs problem, not in source OMG.
what os it's ok ? 9.2 or 10.1 or 10.2 ?
SaveSingleItem , pay for fix.
in Community Support - Questions & Answers
Posted
problem solved nobody don't know
problem from ctrl+z (instant pickup item drop)