-
Posts
12 -
Joined
-
Last visited
-
Feedback
0%
Content Type
Forums
Store
Third Party - Providers Directory
Feature Plan
Release Notes
Docs
Events
Posts posted by Luigina
-
-
2 hours ago, Amun said:
That picture says that you're calling AddGuest on a null pointer, which is why you're getting the crash.
There isn't any way to null pointer. I just click to npc and got crash.
Did you see the size on crash ?
I did that change and my problem solved.
King regards !- 1
-
Hello community !
I found an issue when i was checking ShopEx system. If your pack_tab size is bigger than default m2 / SHOP_HOST_ITEM_MAX_NUM is bigger than default this overflow occurs.
This causes a core crash as seen in the screenshot below:
https://metin2.download/picture/n2KPdWX19ovTCs9nLW684fA6IibqhrTu/.png
Solution
I use temp buffer for handle better but you can change 8096 too.
To solve this problem, you can follow these steps:// In shopEx.cpp -------------------------------------------------------------- // Search char temp[8096]; char* buf = &temp[0]; size_t size = 0; // Change like this TEMP_BUFFER buf(16 * 1024); -------------------------------------------------------------- // Search memcpy(buf, &pack_tab, sizeof(pack_tab)); buf += sizeof(pack_tab); size += sizeof(pack_tab); // Change like this buf.write(&pack_tab, sizeof(pack_tab)); -------------------------------------------------------------- // Search pack.size = sizeof(pack) + sizeof(pack2) + size; // Change like this pack.size = sizeof(pack) + sizeof(pack2) + buf.size(); -------------------------------------------------------------- // Search ch->GetDesc()->Packet(temp, size); // Change like this ch->GetDesc()->Packet(buf.read_peek(), buf.size());
After following these steps, you should have overcome this problem in the ShopEx system. If you have any problems, please leave a comment.
Kind regards,
Luigina
- 2
- 1
- 3
- 1
-
@ Mali update repo for another guys
in uiinventory.py
self.DelHighlightSlot(overSlotPos)
to
self.DelHighlightSlot(overSlotPosGlobal)- 1
- 1
- 1
-
Nobody don't want compile source in every version change so you can add simple config. Config.cpp short g_NewClientVersion = 0; TOKEN("client_version") { str_to_number(g_NewClientVersion, value_string); fprintf(stderr, "CLIENT_VERSION: %d\n", g_NewClientVersion); continue; } Config.h extern short g_NewClientVersion; input_login.cpp if (pinfo->NewCheckVersion != g_NewClientVersion) { TPacketGCLoginFailure failurePacket; failurePacket.header = HEADER_GC_LOGIN_FAILURE; strlcpy(failurePacket.szStatus, "VERSION", sizeof(failurePacket.szStatus)); d->Packet(&failurePacket, sizeof(TPacketGCLoginFailure)); return; } and change int NewCheckVersion to short NewCheckVersion, bcs which crazy guy will make 1231312312 the version.
- 3
-
GF really angry now.
- 2
-
Guys don't forget, do this to rendertarget too.
-
Good job, thanks a lot
-
Thanks for your release
- 1
-
Great work, thanks.
- 1
- 1
-
You can use to know encrypted password;
open console from navicat or etc.select password("password");
- 1
- 1
ShopEx Buffer Overflow Fix
in Bug Fixes
Posted
You can change like that
TEMP_BUFFER buf(8 * 1024 * SHOP_TAB_COUNT_MAX);