I'm in the process of making an overlay map for the game--using Overwolf to make a transparent overlay so you can actually see your position in real time--but since the game has EAC I can't just get the character's position and map through in-game information. Instead, I've started looking at packets for that information.
Unfortunately, however, I'm not very experienced with this kind of thing. I've done a couple of things to attempt to find the different events that happen in Lost Ark with some success, but the biggest issue I'm having right now is the structure of the packet. I also can't tell if it's encrypted.
Either way, my current packet structure is
(C#)
Observing all packets to and from the server, the header corresponds to consistent values across all the actions I've performed, so I call it the "header"." To/From 31 and To/From 63 are events where I'm changing levels, and To 48 seems to be an update in movement, From 28 seems to be the serve accepting that you're moving. As for any other information, I have yet to find out.
One thing I found using Wireshark is that this game uses x11? Or maybe Wireshark is just getting them confused with x11 calls? I've since resorted to just using my own structure and changing the types to attempt to get them aligned, but to no avail. The rest of the values always change when I switch zones.
If someone could help me out with this, it would be greatly appreciated. I'm looking mainly for the position of the player and the map ID. I don't know how [Only registered and activated users can see links. Click Here To Register...] handles it, but I figure it's a good start? At least I try to look for a consistent number when moving in/out of a zone, corresponding to the values I see on the different map pages [Only registered and activated users can see links. Click Here To Register...]
Let me know what you find if you're up for it. Thanks
Unfortunately, however, I'm not very experienced with this kind of thing. I've done a couple of things to attempt to find the different events that happen in Lost Ark with some success, but the biggest issue I'm having right now is the structure of the packet. I also can't tell if it's encrypted.
Either way, my current packet structure is
(C#)
Code:
class ArkPacket {
public short header = 0; // This is the function of the packet
public long id = 0; // This is some 8 bytes after the function that is the same across all packets, so maybe it's just an ID?
public byte[] data;
}
One thing I found using Wireshark is that this game uses x11? Or maybe Wireshark is just getting them confused with x11 calls? I've since resorted to just using my own structure and changing the types to attempt to get them aligned, but to no avail. The rest of the values always change when I switch zones.
If someone could help me out with this, it would be greatly appreciated. I'm looking mainly for the position of the player and the map ID. I don't know how [Only registered and activated users can see links. Click Here To Register...] handles it, but I figure it's a good start? At least I try to look for a consistent number when moving in/out of a zone, corresponding to the values I see on the different map pages [Only registered and activated users can see links. Click Here To Register...]
Let me know what you find if you're up for it. Thanks