[release][tab]Name:[/tab] PIPE
[tab]Version:[/tab] 1
[tab]Description:[/tab] Creates a second network connection to the game server, which is dedicated to networked variables.
[tab]Requirements:[/tab] All Clients Need gm_luasocket - http://www.facepunch.com/showthread.php?t=495940
[tab]SVN:[/tab] http://gmod-haza.googlecode.com/svn/trunk/PIPE/[/release]
**This is experimental and is only for ADVANCED server admins and developers**
[release]
How does this work?
When a client connects to the game server with PIPE installed, an additional TCP connection is created, all networked variables are then sent over this connection instead of the main game connection.
[/release]
[release]
What are the benefits of this?
At the moment, source parses the network packets in a single thread. This is fine, but when you start sending down large amounts of data it starts to get congested.
Even though PIPE runs on the same thread as the game, the networked variables are no longer mixed in the same packet Que. This ensures that physics data etc are processed with more priority, the data packets are smaller and can get ordered faster.
By reducing the extra data strain on the main game connection, we eliminate the main cause of Reliable Buffer Overflow errors.
[/release]
[release]
What does the client need?
Each client that connects to a server with PIPE on it, must install the gm_luasocket.dll addon by Anders1.
[/release]
[release]
What does the server need?
- The gm_luasocket.dll addon by Anders1.
- The PIPE addon.
- Custom settings in addons/PIPE/lua/pipe/pipe_sh.lua
[/release]
[release]
What settings do I need in pipe_sh.lua?
The IP must be the same as the game server.
The port must be ** different** from the game server. Eg Game server port is 27015, PIPE port is 27020.
[lua]const_ServerIP = “192.168.1.3”;
const_BindPort = 27080;[/lua]
[/release]