glua net monitor
1.0.0
Um utilitário simples que captura mensagens de rede de entrada e saída para ajudá-lo a depurar e otimizar a largura de banda. Suporta a biblioteca net e a obsoleta biblioteca umsg (atualize seus complementos se você ainda os usa).
Basta colocar a pasta gLua-net-monitor
na pasta garrysmod/addons
, ela funcionará sozinha.
Complementos que substituem qualquer substituição de função net/umsg/bf_read devem chamar a implementação base para que isso funcione. Substituir net.Incoming
pode impedir que este utilitário capture mensagens recebidas, pois requer que o cabeçalho da mensagem funcione.
Por padrão, o arquivo hooks.lua
contém algumas implementações básicas para depuração. Sinta-se à vontade para se livrar deles.
-- Called when a net message is started.
-- @ param msgName: name of the message that was started.
-- @ param funcInfo: info about the function that started the message.
hook . Add ( " OnNetMessageStarted " , " NetStarted " , function ( msgName , funcInfo ) end )
-- Called when a net message is captured, for both outgoing and incoming messages.
-- Keep your code fast in here! This is called for every net/umsg message.
-- @ param msg: The captured message, see NetMonitor.CapturedMessage
-- @ param funcInfo: For outgoing messages, the function who started the message.
hook . Add ( " OnNetMessageCaptured " , " NetCaptured " , function ( msg , funcInfo ) end )
-- Called when a net message is received but no receiving function is hooked.
-- This is likely an oversight of a developer, albeit a wasteful one.
-- @ param msg: The captured message, see NetMonitor.CapturedMessage
hook . Add ( " OnNetMessageIgnored " , " NetIgnored " , function ( msg ) end )
-- Called when a received net message does not read all the received data.
-- Not called for the usermessage lib messages.
-- Called after OnNetMessageCaptured & OnNetMessageIgnored
-- This means you or an addon on your server is wasting bandwidth!
-- @ param msg: The captured message, see NetMonitor.CapturedMessage
-- @note: The captured message data will contain a binary string dump of the remaining data.
hook . Add ( " OnNetMessageDumpedData " , " NetDumped " , function ( msg ) end )
-- Called when a net message is discarded due to starting another without finishing the current one.
-- @ param msg: The captured message which got discarded, likely missing some information.
-- @ param funcInfo: The info about the function which called the dicarded message's net.Start()
hook . Add ( " OnNetMessageDiscarded " , " NetDiscarded " , function ( msg , funcInfo ) end )
-- Called clientside when the server's registry is received.
hook . Add ( " OnNetRegistryUpdated " , " NetRegistryUpdate " , function () end )