Jump to content

Rakancito

Contributor
  • Posts

    71
  • Joined

  • Last visited

  • Days Won

    9
  • Feedback

    100%

Posts posted by Rakancito

  1. 38 minutes ago, Gurgarath said:

     

    Is that the same guy as FrankieCommando?

     

    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.

     

    9 hours ago, Narvikz said:

    It would literally take me 10 minutes to put together so many words let alone organize them in coherent sentences. Hell if I wanted to fool someone into believing I'm some kindaivy league PhD biochemist for reddit in so many words it'd probably take me more like 20.

     

    I'm betting you took 30 minutes to come up with this post alone. Why don't you grab a book in your free time?

     

    Oh and BTW reverse engineering is miraculous. Surprise surprise, there's WinServer2003 compatible reversed from source windows:
    https://reactos.org/

     

    mind = blown

     
     
    WooooooW, WinServer2003, niceeeeeeeeeeee, i'm sorry, oh wait, Are we not in WinServer 2019?, 16 years niceeeeeeeeeeeee
     
     
    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.
     
     
  2. 2 hours ago, hachiwari said:

    No. You dont understand or "know nothing". Leak source code doesn't matter, please check for example reverse engineering in google

     

    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 .
     
    • Love 1
  3. 43 minutes ago, VegaS™ said:

    I don't know why people waste time for coding these things non-logical and call them "algorithm vs names fake" but it's fine, we're in 2020, everything is strange.

    You could do something better, stop doing anti-cheat things, you've no idea how they're working behind and even if you know something the checks are so bad and old things, maybe they was good back in 2010 in metin2, but for these times are 0.

    Don't take it bad, is just an advice.

    tnM0fab.jpg

     

     

    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,
     
  4. 2 hours ago, hachiwari said:

    XDDD

     

    Edit exe with notepad and your pro algorithm wont work 

     

    I dont know which piece of code is the best

    1. while with "if (strcmp(me32.szModule, "m2bob.dll") == 0)"

    2.

    
    	if (cExeFile[0] == 'c' && cExeFile[1] == 'h' && cExeFile[2] == 'e' && cExeFile[3] == 'a' && cExeFile[4] == 't')
    	{
    		TraceError("Cheat: %s detect!!! Close Process and continue!!!", cExeFile);
    		vKillProcess(APP_PROCESS);
    		return;
    	}

     

     

     

    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 ^^.

    • Love 2
  5. M2 Download Center

    This is the hidden content, please
    ( Internal )

    This is the hidden content, please
    ( GitHub )

    Everything works fine, just add a part of "python" client, so that users change language with a button, i was lazy to do it.
     
     
    - 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.
    • Metin2 Dev 273
    • kekw 7
    • Eyes 5
    • Dislove 2
    • Angry 4
    • Not Good 1
    • Sad 2
    • Think 4
    • Confused 3
    • Scream 1
    • Lmao 1
    • Good 114
    • muscle 1
    • Love 18
    • Love 185
  6. On 2/1/2020 at 9:38 AM, Zombie said:

    Original Topic Fix: 

     

     

    This fix creates damage to the server. After inserting this fix the players will have difficulty in doing damage to the mobs, they don't always give the hit. The problem is in this string:

     

    if (!battle_distance_valid(ch, victim))

     

    return BATTLE_NONE;

     

     

    If you find the solution to the problem, update thanks.

     

    Solution?

     

    @Rakancito

     

    Just expand the check to a higher value in the distance.

    • Love 1
  7. hace 2 horas, Mali61 dijo:

    You should give via for @metin2-factory

    9682482f3f.png

    63485210f9.png


    True, I forgot to add your credits for the little code, I already did ^^
    For the rest it fixes many problems for everyone.


     

    hace 2 horas, Mafuyu dijo:

    why tf u release it, now will every shit server use this...

     

    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.

     

     

    • Love 2
  8. M2 Download Center

    This is the hidden content, please
    ( Internal )

    This is the hidden content, please
    ( GitHub )

    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.

    • Metin2 Dev 63
    • Dislove 1
    • Lmao 1
    • Good 20
    • Love 2
    • Love 29
  9. En 5/11/2019 a las 5:20, Tallywa dijo:

    bump

    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);

     

    • Metin2 Dev 1
  10. 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.

  11. 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.

     

    hace 4 horas, kiyagan dijo:

    Dude, there's no code in Turkish. :)

    -----------------------------------------

    Many people in this forum are uninformed. Because for the first time they see Turkish words.

    functions are not important variables or headers.

    moreover, I suggest you check the codes instead of writing nonsense here

    I forgot to change the byte type to int because I'm write this system in 2 page inventory. the inventory have 179 index but this system have 753 index. so please change byte type to int type

    other than that, all you talk about is nonsense

    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.

     

  12. 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
     

    • Love 2
  13. hace 17 horas, kiyagan dijo:

    Seriously, you can't be that stupid. you said  word copy and paste in the other day but you now say shit code 


    This is not insulting, it's constructive.
     

    The system works more or less well, but it could work better.
     
    Hello, don't worry, I explain maybe why they say this is a mess, don't take it as an insult, it's a tip for your code if you are going to sell it at 190 EUR,

    1. There are things that can work without initializing builders, you need to understand the difference between object and class.
    2. It's great that you use Pointers, but abuse of memory space, many things could work without using a pointer, it's not bad, but neither good, I would advise you to read a little more about OOP concepts.
    3. (THIS DOESN'T HAVE A LOT OF RELEVANCE BUT IT MATTERS) It's good that you do code in Turkish (it is your language), but there is a programming standard for something, notation please, nor the Chinese program in Chinese, well, this also has to See why the programming is in English, but wtf, you just don't understand anything, there is something called Programming Standards, I would love to program in Spanish, and I don't program in Spanish.
    4. Abuses of the data type BYTE, just by observing the code I could notice that everything is in BYTE, it is not bad, but I bet you that one day there will be a crash just because the datatype does not support more than 8 bits, I think That here you need to study the size of each datatype.
    5.
    You handle the exceptions badly, why do you put a NULL factor in an ARITHMETIC type ?, I would understand if they were pointers, but they are not, you should simply study a little more about this, even the compiler will scream.

    I could keep listing, but I feel lazy to continue checking, it may work personally, but it could work better, maybe you should consider that a lot.
     

    Regards ^^.

    • Love 4
  14. M2 Download Center

    This is the hidden content, please
    ( Internal )

    This is the hidden content, please

     

    GUIDE TO INSTALL: In README Github.

    Please big projects in PHP sucks.

     

    This is a simple Web Site on ASP.NET Core, It can run on Linux Ubuntu.

    It may harm some children with this. , i'm not a programmer Web, but i found it interesting that C # evolves and now not only allows its programs in Windows, so i have taken the liberty of making a Simple Web for Metin2 in C #, I share the code with you, you can change the design, etc.

     

    Advantages:

     

    • Theirs would be that we move forward and start using more powerful languages and frameworks, PHP is falling behind in terms of these powerful tools and I see many pages programmed in PHP.
    • Now programmers who know a little about C # will understand and be able to carry out projects that can work as a Web and Desktop project.
    • There are other interesting Frameworks, but .NET is very extensive and offers many great alternatives that can be used.
    • The Expert Web Programmers 't use PHP,  If you get a big Web project in PHP, this is bullshit.
    • A lower possibility of vulnerabilities.
    • This page is missing a beautiful design, but in tems of functions, it's works correctly, although it could work better, if you need help regarding this issue, i can help you in things that are really worth it.
     
    Disadvantages
     
    • To manipulate it, you need advanced programming knowledge
    • Some cases you must solve them with great intelligence
    • You must have Visual Studio.
     
    You can use other frameworks and languages, but i think this is a very powerful language.
     
     
    GUIDE TO INSTALL: In README Github.
     
    Spoiler

    295730foto1.png

    295747foto2.jpg

    295802foto3.png

    295814foto4.png

    290041foto5.png

     

    • Metin2 Dev 6
    • Good 5
    • Love 12
  15. hace 1 minuto, Nirray dijo:

    You mean dmg hack svside check from clientside .mse file?
    Or waithack from SendAttackPacket?

    If waithack - it is still working (hidden for example)
    Also, because of first check "GetLastAttackTime" there's a input "lag" (you need to attack twice new mob to deal damage [even visible in your gyazo gif with metin stone @Rakancito])
    It's more like workaround ? 

    To fix it correctly we should change the 
    
      

    
    CalcMeleeDamage
    CalcArrowDamage

    iDam = 0;

    like char_battle.cpp does with bow
     

    
    if (IS_SPEED_HACK(m_me, pkVictim, dwCurrentTime))
    	iDam = 0;

    I didn't want to be rude I also want to fix it and I'm here to help ?

     

    Ya... sure, i repeat, is the first...

    I explain.

    The biggest problem of Metin2 is that it's complete code is on the Internet, itsn't private, that causes the hacks to be more sophisticated and apart from the existence of a business, it's very complicated to fix hacks when those who create the hacks also create the anti hacks, (Good business, i create a hack to deny it with my own anti hack "MONEY, MONEY, MONEY, MONEY AND MORE MONEY, MONEY, MONEY").

    Just note that the one who sells the solution to fix the DMG Hack by the server also sells one of the most famous and low-cost hacks (MONEY, MONEY, MONEY, MONEY, MONEY).
     

    If the code of Metin2 was not on the Internet, i assure you two things.

    1. Metin would probably already be offline.
    2.
    There wouldn't be so many hacks or they wouldn't be so sophisticated.

    "Hacks have always been a deficiency of exceptions in the code. "

    DMG Hack correctly doesn't work, but Wait Hack does, to fix Wait Hack it's necessary to change the headers of the packages or the sending of target packages in attack, however that implies modification of client and reviewing the client with an Analyzer of Memory is not complicated.

    For WaitHack only one attack speed check is necessary.

    When you attack, you get an amount of milliseconds of time after that attack, usually DMG Hack will place an attack between 10,000 to 200,000 in time, I don't know why, however Wait Hack no, this will continue to place a similar time analyzer , but it will advance next to your attack speed according to what I observed, if you place a Speed hack checker, the system will count speeds alternately and will expel the user from the server.

    There are probably more solutions for fixing these two hacks and this can be a good one, I have tested it a lot and the DMG Hack doesn't work at all.

    The real option against these problems has always been a good anti hack, for that you will need to study a bit of Windows Libraries such as Process32Next, Process32First and CreateToolhelp32Snapshot, review processes and understand that if there is a malicious program, you must close, it's also easy to with a Break Point, but you can search all and close.

    Now i ask you, what do you prefer? Do you lose a basic in exchange for fixing DMG Hack or do you submit to rent the fix for what he sells himself?.

    I have no problems with this, since the business is understood and if there is business, there will be people with interest, the interesting thing here would be to increase the part of code that i have placed and improve it. But I think it is up to each one to improve it, for my part if I see that I can improve this, I will publish it (maybe), so we can fix several defects among all.
     

     

     

    • Love 4
  16. M2 Download Center

    This is the hidden content, please
    ( Internal )

    This is the hidden content, please
    ( GitHub )

     

     

    Hi guys,

    I observed that a person asked for the car pick with filters but they didn't give him the correct answer, and that some cheats have it, here is an example, i tested it in my Test Server and it works correctly, i hope not forgot to add some part of the code since. I finished the system a while ago, if you have one error tell me and i will resolve ?.

     

    .png

    • Metin2 Dev 80
    • kekw 1
    • Eyes 1
    • Dislove 2
    • Not Good 2
    • Cry 1
    • Think 1
    • Confused 2
    • Scream 1
    • Lmao 1
    • Good 27
    • Love 6
    • Love 52
  17. hace 58 minutos, zeimpekis9 dijo:

    there is a bug since i installed this: skills bugged, and someone can do dmg at whole map.  

    Check you Splash dmg and your iMaxHit ^^, i have tested the skill for at least 4 months and it works correctly without errors, i could even tell you that if you check the code, you only move the point that you aren't the target yourself, but that the target is the opponent.

     
  18. hahahahahahaha... Don't worry, i'm a relaxed person,  i actually laughed   dahh... i haven't been angry, you still have the complete code of an update of the official servers, Maybe it's a nice update for archer ninjas. .
    I think it's important that some things are updated on the servers that want them.

    I could publish more things but now it gives me laziness, at another time with time I will see what else I update with respect to the official servers,  although if you are interested in something, you can tell me and see if i can :) i don't have problems.

  19. Justo ahora, sonyc73 dijo:
    
    pkAttacker->
    
    642 =             ch->ChatPacket(CHAT_TYPE_INFO, "Melee Attack: %d", get_dword_time() - ch->GetLastAttackTime());
    

    You should check the statements.

    int battle_hit(LPCHARACTER pkAttacker, LPCHARACTER pkVictim, int & iRetDam)

     pkAttacker ->ChatPacket(CHAT_TYPE_INFO, "Melee Attack: %d", get_dword_time() - pkAttacker->GetLastAttackTime());

    int battle_melee_attack(LPCHARACTER ch, LPCHARACTER victim)

     ch ->ChatPacket(CHAT_TYPE_INFO, "Melee Attack: %d", get_dword_time() - ch->GetLastAttackTime());
×
×
  • 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.