Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won

  • Yangs

    316 [ Donate ]

Rakancito last won the day on December 16 2019

Rakancito had the most liked content!

Community Reputation

79 Excellent

About Rakancito

  • Rank


  • Gender
  • Location


  • Discord

Recent Profile Visitors

821 profile views
  1. That is a correct answer, you should also contemplate that the loss of interest was due to a series of demands, as I told you, Windows files were leaked, which ReactOS occupied, it's different to Reverse Engineering, there are many projects with compatibility for Windows programs such as the Samba project. Don't worry, I don't like Frankie's useless one, years ago just because he thought he was a developer, he kicked me out of a series of groups. But as I see that many think that I am the trash person, my GeoIP https://gyazo.com/0802d45acce97cfd517288d8c1c3111a I think that before I start to defame, first inquire, don't compare me with that garbage that just copies and paste code.
  2. No, just because the useless takes things from others and sells them as if they were his, does not mean that we are the same people, i repeat again, I'm a stupid Mexican who helps and that's it. WooooooW, WinServer2003, niceeeeeeeeeeee, i'm sorry, oh wait, Are we not in WinServer 2019?, 16 years niceeeeeeeeeeeee https://www.microsoft.com/en-us/cloud-platform/windows-server Oh fuck me, sorry. Your wonderful Reverse Engineering was done with a filtered Windows code, Wonderful Reverse Engineering, I support the Software for developers, but things as they are. I would recommend reading more about history of OS and Kernel ^^. if (Filter == Knowledge food) printf("We have OS for Developers") Again, Reverse engineering or retroengineering is the process carried out with the objective of obtaining information or a design from a product, in order to determine what its components are and how they interact with each other and what the manufacturing process was.
  3. oh, hahahahahaha..., are you ok?, please, you should study more in your Software classes. , i think you only speak by talking without knowing a little about Software, The source code is what matters most, and if you think otherwise you have mental retardation. What do I mean? It's simple, you can use Reverse Engineering, yes, but that's why you won't find all the breakpoints, because in a Software it's very necessary to know at least the name of the methods, otherwise it becomes complicated what What are you trying to tell me, Reverse Engineering is simply a Software analysis to understand what logic a program follows. Just so you can see that I'm good, I'm going to give you a "REVERSE ENGINEERING" class, since I don't like people to be left with their ignorance, I like to help. I think the one who doesn't understand is you, the reason why in Metin this code isn't so useful is because in the Software there is something called White Box Testing and Black Box Testing, as well as Reverse Engineering, everything has a what, this code would work perfectly in 2010 because not everyone had the Metin2 source code, so it became more difficult to find the error, in 2020 Metin2 has everything free, so it's easier to find a break point , if almost no one had the source code, simply the hacks would be useless macros that would help the players halfway and the hacks like the FARM bot would not be as sophisticated. If "REVERSE ENGINEERING" were as miraculous as i think you think, then we would all know the full source code of Windows,else there are Windows things that nobody knows what they are for. What happens with metin is simply "White Box Testing", and it's the main reason why it is very complicated to cancel "Hacks". If you want, I recommend you read more about a topic called "Software Testing Techniques and Software Metrics", so that you understand the topic and can give intelligent comments, even if you like, I can give you some interesting books I don't put the code for everyone to use, if they think it does not work, they don't implement it and now, it is something that cost me 10 minutes of my time, but it can work for more than one person or you can use it for many things .
  4. I understand and i know that it's complicated because the metin source code is known, but i was bored and more than one can serve,
  5. If you want you can remove that part and you will not have problems, I just put it, but the correct function vs the Cheat Engine Memory Viewer is: BOOL HasDebugPort = FALSE; CheckRemoteDebuggerPresent(GetCurrentProcess(), &HasDebugPort); if (HasDebugPort) { TraceError("Please close your debugging app and restart the program"); vKillProcess(APP_PROCESS); } The code works, at least for now. For the check if is Name Fake like M2bob or Lalaker not it's the part m2bob.dll, it's other part, equally you can remove the part "if (strcmp(me32.szModule, "m2bob.dll") == 0)" and the code will not have problems ^^.
  6. Just check if the name is probably Fake and close the client. I also added an anti debugging to avoid Cheat Engine or others with Memory Viewer and its debugger. https://github.com/Rakancito/Algorithm-vs-Names-Fake
  7. Everything works fine, just add a part of "python" client, so that users change language with a button, i was lazy to do it. https://gyazo.com/fad416a9143c0efe994dd74cab7846f0 - The system saves one language per account. - It's capable of translating quest, client, etc. - The system takes the language from the client's mylang.cfg file and save on DB of this account in the client. The guide simply focuses on looking for DEFINE: ENABLE_MULTILANGUAGE So you can see how I placed it. https://github.com/Rakancito/multilang_system
  8. Just expand the check to a higher value in the distance.
  9. True, I forgot to add your credits for the little code, I already did ^^ For the rest it fixes many problems for everyone. Because i mostly like to help with insignificant things, some also sell what they shouldn't sell or place it badly. As one boy said before, any shit server will still be a shit server.
  10. Hi guys, I leave the system of PENDANT, It's basically like the official system, If you see something is missing, you can tell me. https://github.com/Rakancito/pendant_system
  11. It's a simple code against a reverse engineering method, in addition to detecting Cheat Engine through a quick process analysis. There are more debug methods, however this is the most usual, the only thing that reviews is if the current executable (our binary) contains the open debug port and if it does, it closes the program, in case of not finding a port of moment but is in process, analyze and check if there is the famous "Engine" online. https://github.com/Rakancito/anti_debugger
  12. In pythonItem.cpp add after this function bool CPythonItem::GetCloseItem(const TPixelPosition & c_rPixelPosition, DWORD * pdwItemID, DWORD dwDistance) bool CPythonItem::GetCloseItemVector(const std::string& myName, const TPixelPosition& c_rPixelPosition, std::vector<DWORD>& itemVidList) { DWORD dwCloseItemDistance = 1000 * 1000; TGroundItemInstanceMap::iterator i; for (i = m_GroundItemInstanceMap.begin(); i != m_GroundItemInstanceMap.end(); ++i) { TGroundItemInstance * pInstance = i->second; DWORD dwxDistance = DWORD(c_rPixelPosition.x - pInstance->v3EndPosition.x); DWORD dwyDistance = DWORD(c_rPixelPosition.y - (-pInstance->v3EndPosition.y)); DWORD dwDistance = DWORD(dwxDistance * dwxDistance + dwyDistance * dwyDistance); if (dwDistance < dwCloseItemDistance && (pInstance->stOwnership == "" || pInstance->stOwnership == myName)) { itemVidList.push_back(i->first); } } return true; } pythonItem.h after this bool GetCloseItem(const TPixelPosition & c_rPixelPosition, DWORD* pdwItemID, DWORD dwDistance=300); add bool GetCloseItemVector(const std::string& myName, const TPixelPosition& c_rPixelPosition, std::vector<DWORD>& itemVidList);
  13. You have an error with the data types which don't support a value higher than the one marked. Example: int -> 2 ^ 32 = -2147483648, 2147483647, if you want your game not to be crashed, you must handle intermediate values to those that I have just given you if that is the case :), on the other hand I would advise you to check if not You have more objects in the database that can cause such conflict or check that all assignments are correct. Example: GetSocket in item.h and you check your source code because in the functions you just placed you have no errors, more than the fact that in some cases it is necessary to check if there is a problem of "NULL", on the contrary everything is fine and there would be no point in rectifying that the candidates are superior. That is to say that everything returns a correct value, because if not all the variables are assigned, the system will simply save the memory address or NULL.
  14. Stop insulting, I'm almost sure that more than one will grab the system and use it, maybe it will improve, maybe not, here the important thing is that there was no respect for what a boy was selling. The form of programming is not our problem. Take this as constructive, before defending you again I repeat the issue of datatype. I Repeat the datatype: 1 BYTE = 8 bits = 2^8 = 256 values, the range of values is -128 to 127, if you have one index with 179 in values larger than 127 maybe will crash for your DATATYPE, ok, you change for int, its good, but for your justification, do you need study more.
  15. You can do two things, the first with the SQL designer you can add the variable within the field and the second is that you can also design, place the field as VARCHAR type and then simply add the names you want. The difference is that if you leave it that way, you should look at the order of the values equally from the server because it will send numbers. After doing this, you go to skill.cpp and look for: struct SPointOnType { const char * c_pszName; int iPointOn; } kPointOnTypes[] = { And before that: { "\n", POINT_NONE }, }; You add the bonus you want, for example: { "RESIST_SHAMAN", POINT_RESIST_SHAMAN }, And in your Table replace HP for RESIST_SHAMAN and gg. Remember you can only use bonus, if you like HP + other, i advise you to use setFlag and insert code, it's more or less as easy, just add an Affect
  • 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.