Hi there tranesoz,
I'm just going off of my understanding of the problem here. I'm not exactly the most qualified to answer the question, but I'll do my best.
So you're running a CO server on three different servers and you're getting 150-400ms ping. When you test your ping between your PC and VPS, you're getting ~100 ping.
You want to know if there's anything you can do to reduce the ping between the VPS and the game client.
Here's some possible answers as to why your ping might be high:
1. The client and the server are located far away from each other.
... Is your VPS far away from where you live? If yes, then your packets will take more hops to get to the server. In which case, you'd want to find a host close to where you live.
Another possibility is your VPS is using shared resources and someone's hogging the network resources.
2. You're using a VPN poorly
If you're using a VPN, your packets might take longer to reach the server, depending on where the VPN is and how it handles routing. Also, depending on the type of encryption it uses, that could also slow things down.
3. You mentioned something about lowering the memory usage. I don't know TQ clients/servers handle things (or really that much about networking), but if your source is limiting the amount of memory it's using, you generally want your network buffers to be relatively generous.
I'd imagine if your buffer fills up, you'd either have a deferred acknowledgement in TCP - or maybe the packet is just thrown out altogether, which would make the client resend the packet until it goes through.
That or your source is just running so slowly that whatever is handling the packets is slowed down drastically as well.