[ARCHIVED] Warp - very fast & powerful networking library

Could you please give some context to why my take is so bad instead of just giving a random dry response? :grin:

My point still stands, don’t rely on “networking” modules, specifically this one, since it’s fundamentally broken and i’ve reported a issue twice and still wasn’t fixed. Now it’s been supposedly abandoned and no longer maintained by being archived, very common with these modules infact.


There’s a memory leak
Player instances are not removed when they leave the game.

the latest version includes memory leak fix

1 Like

I upgraded the version to 1.0.14, but {…} objects turn into nil when sent to client.
Is it no longer possible to send tables?

how does the table structure looks like? and there an issues with buffer dynamic serialization…

{‘a’, ‘b’, ‘c’} like this
But when they are sent to client, they turn into nil

does it works well if only sending the “options” variable?

Yes it does


image

then its the buffer module in the warp itself, between serialization or deserialization was the issue.

Oh, I see. Then, what can I do?
Can it be resolved easily, or should I wait for the next version?

try use older version without buffer and get the patched memory leak in ServerProcess.luau
this project is archived.

Players.PlayerRemoving:Connect(function(player: Player)
	if not player then return end
	if queueOut[player] then
		queueOut[player] = nil
	end
	for _, map in { serverQueue, unreliableServerQueue, serverRequestQueue } do
		for Identifier: string in map do
			map[Identifier][player] = nil
		end
	end
	for i=1,2 do
		for Identifier: string in queueInRequest[i] do
			if queueInRequest[i][Identifier][player] then
				queueInRequest[i][Identifier][player] = nil
			end
		end
		for Identifier: string in queueOutRequest[i] do
			if queueOutRequest[i][Identifier][player] then
				queueOutRequest[i][Identifier][player] = nil
			end
		end
	end
end)
1 Like

Creating remotes even with from(server_client)array is very slow

On version 1.0.9, the best one so far imo.
I compress with Squash. Buffer works fine

Anytime I fire a reliable event from the client to the server without having a listener on the moment of fire, it throws an error. The two solutions I have are either using unreliable event which isn’t suitable or restructuring the scripts for either a permanent server listener to the events or a confirmation of the presence of a listener before firing. Is there a way to simply fire a reliable event without needing a listener on the server side?

Error Message:
image

no, you cant. and why would u have to fires the event if on the server side dont listen the event connection? i have also heard about version 1.0.13^ is buggy on the dynamic serialization (buffer), so i would recommended you to use the older version instead.

I have a task completion system and the completion of tasks is handled by firing events from the client.

Ex: Open drawer task

Anytime the client opens a drawer, it will send a task completion event to the server. If the “Open drawer” task is active, it will listen to the “Open drawer” completion event from the client. If the task is inactive, there will be no listeners to the completion and that’s where the error happens.

Can you add it as a feature to disable the requirement for the listener to be connected?

Thank you


buffer goes out of bounds upon sending a relatively small table with data