Jump to content

Jira

Premium
  • Posts

    191
  • Joined

  • Days Won

    2
  • Feedback

    0%

Everything posted by Jira

  1. [Hidden Content]. Svn/Server/game/cmd_general.cpp#L91 [Hidden Content]. Svn/Server/game/player_block.cpp#L43 [Hidden Content]. Svn/Server/game/player_block.cpp#L139C4-L139C4 ez sql inject xd
  2. item drop penalty source/server/game/char_battle.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/source/server/game/char_battle.cpp b/source/server/game/char_battle.cpp index 4b0c013..9f9fab6 100644 --- a/source/server/game/char_battle.cpp +++ b/source/server/game/char_battle.cpp @@ -1107,8 +1107,18 @@ void CHARACTER::ItemDropPenalty(LPCHARACTER pkKiller) std::vector<BYTE> vec_bSlots; for (i = 0; i < INVENTORY_MAX_NUM; ++i) - if (GetInventoryItem(i)) + { + if ((pkItem = GetInventoryItem(i))) + { + if (pkItem->GetType() == ITEM_QUEST) + { + if (quest::CQuestManager::instance().GetPCForce(GetPlayerID())->IsRunning() == true) + continue; + } + vec_bSlots.push_back(i); + } + } if (!vec_bSlots.empty()) {
  3. If you send the move and attack packet to target and if you have the same position as the target then this check is pointless. An extra check that you can add if (fHittingDistance == 0.0f && victim->GetX() == ch->GetX() && victim->GetY() == ch->GetY() && !victim->IsPC()) return;
  4. It also has a memory leak The name of the timer is never deallocated when CancelServerTimers or ClearServerTimer is called
  5. Thanks, I'm so curious if can be exploitable with net.SendChangeNamePacket
  6. I think you meant to do like this, with your fix you cannot drop gold. void CInputMain::ItemDrop2(LPCHARACTER ch, const char * data) { TPacketCGItemDrop2 * pinfo = (TPacketCGItemDrop2 *) data; if (!ch) return; if (pinfo->gold > 0) ch->DropGold(pinfo->gold); else { LPITEM pkItem = ch->GetItem(pinfo->Cell); if (!pkItem) return; if (pkItem->IsEquipped()) return; ch->DropItem(pinfo->Cell); } } But it's better to check inside of CHARACTER::DropItem function. Btw don't use macros it's enough to put a comment like // FIXME: can't drop equipment
  7. just add -Wno-invalid-source-encoding ex) CFLAGS = -m32 -g -Wall -O2 -pipe -fexceptions -std=c++17 -fno-strict-aliasing -pthread -D_THREAD_SAFE -DNDEBUG -Wno-invalid-source-encoding
  8. Yes you're a big programmer (idiot). Give me on dm that server with 1k players I'll make that server to cry.
  9. 20-30 days? Dmn pls somebody ban this idiot and delete this shit. For you're secure server really I don't recommend to remove te improved encryption (that's why is called 'IMPROVED').
  10. I can find that key in 1min. What are you doing here is a bad practice, you can trick just the kids.
  11. for client crash void CPythonApplication::__ResetCameraWhenMinimize() { if (m_CursorHandleMap.empty()) // FIXME return; CCameraManager& rkCmrMgr = CCameraManager::Instance(); CCamera* pkCmrCur = rkCmrMgr.GetCurrentCamera(); if (pkCmrCur) { pkCmrCur->EndDrag(); } SetCursorNum(NORMAL); if (CURSOR_MODE_HARDWARE == GetCursorMode()) { SetCursorVisible(TRUE); } } and void CPythonApplication::DestroyCursors() { for (auto itor = m_CursorHandleMap.begin(); itor != m_CursorHandleMap.end(); ++itor) DestroyCursor((HCURSOR)itor->second); m_CursorHandleMap.clear(); // FIXME }
  12. # update added 1.6 lib src
  13. Can you show me what it contains ../../common/stl.h?
  14. Because your client write wrong values for config when you close it.
  15. No, move it to MSVC configuration or after endif(POLICY CMP0043)
  16. Yes, if the platform selected is Win32 you must to define _USE_32BIT_TIME_T because time_t is by default __time64_t . If you run in debug mode you can get a runtime error if isn't defined _USE_32BIT_TIME_T That cmake project doesn't add definition for _USE_32BIT_TIME_T. You can solve like this: if(CMAKE_SIZEOF_VOID_P MATCHES 4) add_definitions(-D_USE_32BIT_TIME_T) endif() Generate and rebuild.
  17. If you have that starter I'm curious what's hiding inside, I can look.
×
×
  • 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.