Jump to content

Jira

Premium
  • Posts

    194
  • Joined

  • Days Won

    2
  • Feedback

    0%

Jira last won the day on July 8 2021

Jira had the most liked content!

About Jira

  • Birthday 07/10/1995

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Jira's Achievements

Proficient

Proficient (10/16)

  • Reacting Well
  • Very Popular Rare
  • Dedicated
  • First Post
  • Collaborator

Recent Badges

582

Reputation

  1. _strdup can cause memory leaks just cast it #ifdef PYTHON_3 if (!PyUnicode_Check(poItem)) return false; const char* temp = PyUnicode_AsUTF8(poItem); if (temp == NULL) return false; *ret = (char*)temp; #else if (!PyString_Check(poItem)) return false; *ret = PyString_AsString(poItem); #endif or use const char* for read-only bool PyTuple_GetString(PyObject* poArgs, int pos, const char** ret) { if (pos >= PyTuple_Size(poArgs)) return false; PyObject* poItem = PyTuple_GetItem(poArgs, pos); if (!poItem) return false; if (!PyUnicode_Check(poItem)) return false; const char* str = PyUnicode_AsUTF8(poItem); if (!str) return false; *ret = str; return true; } Thanks for sharing! EDIT: Don't do this In some instances, Destroy Window is called multiple times for that window. void CWindowManager::DestroyWindow(CWindow* pWin) { if (std::find(m_ReserveDeleteWindowList.begin(), m_ReserveDeleteWindowList.end(), pWin) != m_ReserveDeleteWindowList.end()) { TraceError("Double-destruction of %s %p", pWin->GetName(), pWin); return; } [..] }
  2. just change if (!IsEmptyItemGrid(DestCell, item->GetSize(), Cell.cell)) with if (!IsEmptyItemGrid(DestCell, item->GetSize(), Cell.window_type == DestCell.window_type ? Cell.cell : -1))
  3. I found a mistake here [Hidden Content] Additionally, from what I observed, there doesn't appear to be a buffer input limit for client session. Thanks for sharing.
  4. [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
  5. 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()) {
  6. Thanks. Observer mode has the same bug.
  7. 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;
  8. It also has a memory leak The name of the timer is never deallocated when CancelServerTimers or ClearServerTimer is called
  9. Thanks, I'm so curious if can be exploitable with net.SendChangeNamePacket
  10. 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
  11. 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
  12. Yes you're a big programmer (idiot). Give me on dm that server with 1k players I'll make that server to cry.
  13. 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').
  14. I can find that key in 1min. What are you doing here is a bad practice, you can trick just the kids.
  15. [Hidden Content]
×
×
  • 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.