NetRay - High-Performance Roblox Networking Library

Yes give me one sec and ill get it and edit this message with it included

Netty module:
Netty.rbxm (16.2 KB)

1 Like

Yes, it’s called request you can check the documentation for more info

Ok

type or paste code here
1 Like

It failed to do anything when I was trying to test

Benchmark (2).rbxl (256.4 KB)

Check if I have set netty up correctly, and if not can you send me a fixed place

Ok i will check if you implemented it right

1 Like

NetRay v1.1.1

  • Batching is now optional again
  • Batching fires every heartbeat and when it reaches max flush size
  • Fixed Queue system preventing reciving messages on client

Note

If you plan to send large data multiple times a frame and aren’t worried about receiving it instantly and are more concerned with network usage then disable the firing of the events per heartbeat and just when the batch fills up this allows for more complex and large data to be sent in a single event saving a lot of network usage and aren’t worried about small increase in latency

You can also adjust the size of the maxflushbatch inside Dynamic Sender to suit your needs, it will become remote event dependant and a configurable option in the future

Edit Constants Module for more refined tuning etc

GitHub and Roblox have been both updated!

Thank you to
@weakroblox35 - spotting queue issue

1 Like

I have a problem when i try registering a remote event from a client script (not the RegisterRequestEvent)

 17:46:48.062  Players.zak_isla.PlayerGui.controller.Chat.chatscript:10: attempt to call missing method 'RegisterEvent' of table 

i dont know if its my fault for me using it incorrectly or it doesnt support client → server firing at all

1 Like

:RegisterEvent() is a Server only function, for client use :GetEvent() wich gets the event you Registered on the server already

oh ok thanks

type or paste code here
1 Like

@TheYusufGamer Forgot that netty doesnt support sending tables. You might have to redo the benchmarks to not send tables over but rather singular arguments. Also here is the properly implemented netty, even though it doesnt rlly work as it doesnt support sending tables.

I also improved benchmarking internally

BenchmarkNew.rbxl (257.4 KB)

1 Like

You forgot to update GitHub code to version 1.1.1

1 Like

Yeah I updated releases not the soure code just yet, I will in a few min

Edit: Updated changed scripts on github repo

1 Like

Have you got any thoughts on this?

1 Like

I have no bad intentions, but if a table cannot even be sent, why are we benchmarking it?

I can’t really test it if its not possible to send arrays, but I can just test by sending a repeating string? if you want just try

local data = string.rep("A", 8000) -- Whatever you whant

and Use it within a task.wait() loop

Also you should change Register event to GetEvent as it’s server only. :wink:

local reportLatencyEvent = NetRay:RegisterEvent(!)

1 Like

Thanks for pointing that out, I’ll update the documentation soon

1 Like

Im talking about netty only. You can remove netty for now until you change the way the modules are benchmarked.

1 Like

You’re missing a 5 second delay between the tests to allow the network to return to baseline and task.wait(1 / amount) I don’t remeber if that was there originally for the loop

otherwise it looks good

You are free to modify and fix any issues that you stumble upon

1 Like