Walk packet

10/09/2023 21:31 JathaVII#1
Hello, i am trying to make a bot in Nostale but i have a problem

I send a server side packet "walk" (it works) and
I am trying to simulate my character's movements with the "mv" packet but i don't work on my character and i don't understand why. It works on other char in game but not me.

Is there an other packet that is used to walk with my character "client-sidely" or not ?

If someone can clearly explain how it works, I would be grateful.

Thanks
10/09/2023 22:56 CAV1S#2
Quote:
Originally Posted by JathaVII View Post
Hello, i am trying to make a bot in Nostale but i have a problem

I send a server side packet "walk" (it works) and
I am trying to simulate my character's movements with the "mv" packet but i don't work on my character and i don't understand why. It works on other char in game but not me.

Is there an other packet that is used to walk with my character "client-sidely" or not ?

If someone can clearly explain how it works, I would be grateful.

Thanks
As far as I know, the only way to move your character using packets alone is by combining the "walk" packet with the "tp" packet.
However, I'd recommend using the memory read & write method. For example, you can write the final destination X & Y coordinates using memory write. Then, clicking on the map will move your character to the final destination recorded in memory, rather than the point you've clicked on the map. Of course memory read&write can be external so no injection needed. This should be the simplest method to achieve the result you're expecting.
10/12/2023 03:17 RainbowJ#3
Quote:
Originally Posted by CAV1S View Post
As far as I know, the only way to move your character using packets alone is by combining the "walk" packet with the "tp" packet.
However, I'd recommend using the memory read & write method. For example, you can write the final destination X & Y coordinates using memory write. Then, clicking on the map will move your character to the final destination recorded in memory, rather than the point you've clicked on the map. Of course memory read&write can be external so no injection needed. This should be the simplest method to achieve the result you're expecting.
Thank you for the idea.
How should i do something like that?
10/12/2023 07:42 JONNST4R#4
Idea:
The idea is that you set a position, enable a flag and walk until you reach this position. If you think about it, you know you have to find three values: CurrentPosition, GoToPosition, WalkFlag

CurrentPosition: The position the player is at
GoToPosition: The position the player walks to
WalkFlag: If the player is moving, this is something between 1 and 10. If not moving, its 0;

How do I find the values?
First of all, if you are ingame you have to right double click to reset your camera position. If you walk up, the y value increases, and if you go right, the x value increases. You have to scan for Byte value in cheat engine. For the WalkFlag there is an option value between.
10/12/2023 13:35 CAV1S#5
Quote:
Originally Posted by JONNST4R View Post
Idea:
The idea is that you set a position, enable a flag and walk until you reach this position. If you think about it, you know you have to find three values: CurrentPosition, GoToPosition, WalkFlag

CurrentPosition: The position the player is at
GoToPosition: The position the player walks to
WalkFlag: If the player is moving, this is something between 1 and 10. If not moving, its 0;

How do I find the values?
First of all, if you are ingame you have to right double click to reset your camera position. If you walk up, the y value increases, and if you go right, the x value increases. You have to scan for Byte value in cheat engine. For the WalkFlag there is an option value between.
To make it even easier you can inject the packet logger into the game and scan for the current player X and Y position (jnstead of the value increased/decreased).
As of the flag - you can scan for the value unchanged & changed. Stay in one position, search for base value 0. Start moving and scan for a changed value. Once you reach the point scan for the changed once, then spam multiple times for non-changed (because you stay in the same position so the flag remains 0).

I would also advice to use the patterns instead of the pointers. Pointers changes on each patch (or each few patches). The patterns can be updated for many months.
You can find many guides how to work with the patterns.