I recently installed an ioquake3 server on a raspberry pi and it is working great. I have noticed some differences on the pings when I used the normal Gog Client vs when I use the ioquake3 engine on Windows 10.
While the two clients can connect to the server the Gog Client (Q3 version 1.32) gets a much lower ping than the ioquake engine on the same pc when connecting to the server.
On the Q3 engine i get around 20ms of ping when connecting to the server on lan. On the ioquake3 engine i get around 45ms. I installed ioquake3 on an Slackware 14.2 laptop and get the same performance as the windows pc when using the ioquake3 engine.
Is there any particular difference on how both clients do the connection to the server?
Thanks in advance
If the ioquake3 server and ioquake3 client are from built from ioq3 git master or downloaded from test builds page, the client uses a slightly different protocol – though I wouldn’t think it could increase ping. Run the client from command prompt using
ioquake3.x86_64.exe +set com_protocol 68 to use the original protocol.
I’m not familiar with high ping to LAN server issue. You could check the Gog Q3 and ioquake3 client config to see if they have different settings for rate, snaps, cl_maxpackets, com_maxfps, and r_swapInterval.
Good settings are probably
- rate 25000 (In menu as Setup -> System -> Network -> Date rate “LAN/Cable/xDSL”)
- snaps 20 (default 20, should be the same value of server’s sv_fps)
- cl_maxpackets 125 (default 30, input packets sent to server per-frame, cannot exceed com_maxfps)
- com_maxfps 125 (default 85, frames per-second to render)
- r_swapInterval 0 (no V-Sync)
Both linux versions were complied from git. Windows version was updated to test build,
I just checked the settings and cl_maxpackets was set to 30 on the gog version. I made the same change on ioquake3 version and i still get around 40ms of ping.
When i connect both clients together (no dedicated server) they have very low ping, I will make some tests running the dedicated server on the slackware pc instead of the raspberry to see if there is a difference.
I ran the server on one of the pcs instead of the pi and get very similar level of pings on both clients.
Can you notice practical differences in terms of latency? Sometimes, different clients have different methods to report ping times. Try shooting weapons and see if projectiles/impacts appear earlier with the GOG client compared to the ioquake3 client.
Also, you may want to use
sv_fps 40 on the server and
snaps 40 on the clients for increased responsiveness (and decreased perceived lag). This should always work fine on LAN, but double-check if the Raspberry Pi’s CPU is fast enough for that.
From a gameplay perspective they feel the same. I will try using this
settings on the server to see if it makes a difference. I dont believe
(albeit i dont have as much experience as some people on this forum) that
there is actual lag, but was curious on the time difference.