Hi,
i am currently working on a small project (will create a small review about that later when i fixed this issue).
I need to know, whether the PING packet (0x00000014) from client to server is the only packet that needs to be sent without the client being kicked.
I know there is also a keep alive packet (0x00000018) which is basically empty.
But the Ping packet from client to server contains a 32 bit integer and from v15 clean source i can see that GetTickCount() is being pushed into the buffer before it gets sent.
So basically the client always send GetTickCount() (the current time since system startup in milliseconds) ?
Can some developer confirm that, because the server keeps kicking the client after some time and what is more confusing is, that the server doesnt send the ping packet to me, why?
My project is to emulate the flyff CLIENT to create some simple packet bot which can be used cross platform and/or on mobile devices (eg. android) for pservers.
Is the ping packet the only packet that lets the server know, yes there is still answers from client or is there any other packet that i need to send from client to server that he knows the client is still alive.
I am sending both, the ping packet with gettickcount() in 10 second frequently and keep alive when server sends keep alive i send keep alive back.
But still getting kicked after 1-3 minutes.
Edit: I am not entirely sure, but I guess its because i dont send the Map Key to server since the server i am trying it on is secured with map key.
Editē I think i fixed it, character is now still standing ingame after 8 minutes.
He was kicked way earlier before i made a change.
What i just noticed is, that the original game client was not pinging the world server but the cache server LOL.
I accidentally sent the ping to world server instead of replying to the ping requests from cache. Now i am replying ping packet to cache server and voila, no kick yet.
Which does lead me to the next thing i am going to do. Previewing my projet in another thread in form of a small preview video.
Video language will be german .
Here a little screen.