-
Posts
134 -
Joined
-
Last visited
-
Days Won
1 -
Feedback
0%
IceShiva last won the day on March 9 2020
IceShiva had the most liked content!
About IceShiva
Informations
-
Gender
Not Telling
IceShiva's Achievements
-
There is also stupid bug, You can access 0-255 array index where vaild index is 0-4, if memory is filled at address which array points and value is < 1 with incorrect index you should get free name change. If you want trigger, just call net.SendChangeNamePacket(254, "newcharactername") from python. Try to decrement/increment index to find filled memory and check behaviour.
-
Quest trigger via commands
IceShiva replied to valdirk2's topic in Community Support - Questions & Answers
Register your server/client command with ScriptButton() function and pass arguments from server/client. -
How can I stop python injectors?
IceShiva replied to Tenma's topic in Community Support - Questions & Answers
This is very relative subject, but I can say no. -
How can I stop python injectors?
IceShiva replied to Tenma's topic in Community Support - Questions & Answers
You neeed also to compile stdlib from python as shared/static object and modify python interpreter interface in client due to public disclosure. -
Client short freezes when creating character
IceShiva replied to jeko's topic in Community Support - Questions & Answers
Yes. Long running function that block main loop. -
Also since mysql 5.6 you cannot use 0000-00-00 00:00:00 as default date If you want use InnoDB as default storage engine at all databases and tables you need to rewrite libsql connector to something that suport transactions and of course rest of code due data in innodb can have few states such as commited and uncommited. Of course is worth.
-
It's eterpack bug/feature. If you have multiple files with same virtual path in diffrent locations ex. pc2 and path_fix_pc2. Files are loaded by priority appointed by index. So if you have in index record like. First one just will be loaded and second one will be discarded as "already loaded"
-
You need also to replace maria/mysql connector lib. Additionally you cant use InnoDB storage engine on metin2 server due to InnoDB is transaction level database and you have to manage behaviour like which data should be readed at this moment when specific row is now locked (read commited/read uncommited). So you also need to implement sql connector which support transactions. Of course if you want still use InnoDB on metin2 server you should just update you connector this will fix errors as described on up post. But unwanted behaviour is guaranted.
- 1 reply
-
- 1
-
Resource manager and lack of async assets loading. Particle system is one most blocking part of client. We should ask a little different question. What working good in metin2 especially on client side. Additionally if you want fix something you need to start from code fundamentals due to desing pattern(s) limitation. The easier way is to take that is " the best of metin2" and implement on rich abstracted engine designed in modern style.
-
Offical pet system proplem
IceShiva replied to Kori's topic in Community Support - Questions & Answers
Additionally you can compile code in debug mode, you dont have values in variables due to optimalization. Debug can slow down you code but is really helpfull -
I can't connect my server.
IceShiva replied to Denizeri24's topic in Community Support - Questions & Answers
Probably youre fuckuped auth sequence by removing one of deleted functionality. Enable packet trace in client and check which packet is sended last then analyze it. You can do it by defining _PACKETDUMP in NetStream.cpp -
DB-Core Crash | Strange Error!
IceShiva replied to .NyanCat's topic in Community Support - Questions & Answers
[Hidden Content] Run binary under lldb and trace it. I think using latest standard on metin2 source is not good idea due to changes in stl.