ByteNet Max | Upgraded networking library w/ buffer serialisation, strict Luau and RemoteFunction support | v0.1.8

Thanks for the report, I’ll try and get a fix out soon. Your video is very blurry, is there any way you could send a clearer video? And maybe the code excerpt too?

sorry for the late response, but unfortunately i don’t think i can re-record the video and give you any related code excepts, because i only saved after i switched to remote functions, but i have made a test place which replicated what happens in the video close enough, with a bit of extra debug.

multiple_query_test.rbxl (74.7 KB)

1 Like

Version 0.1.2

Fixes

  • Fixed Wally & GitHub reference for defining namespaces

Version 0.1.3

Fixes

  • Added a queue system to handle multiple queries at once. Now the data should be sent in order.
1 Like

Hey, I’ve fixed it. Here’s the testing place you sent with the upgrades:
multiple_query_test.rbxl (75.3 KB)

1 Like

I’ll say it definitely fixed part of it, but queries still seem to be getting mixed up sometimes(?)


sometimes all queries are mixed up,

sometimes only part of the queries are mixed up.

since i have actual code snippets, i’ve made a seperate testing place with everything but the relevant parts trimmed out.
more_relevant_mqt.rbxl (73.5 KB)

2 Likes

I’m making a PR to fix this, here’s my tested fix that resolves this issue for you.
ByteNetMax.rbxm (18.9 KB)

2 Likes

Version 0.1.4

Fixes

  • Upgraded data management for RemoteFunctions, queries should not get mixed up now. Thanks to @HooferBevelops for the commit!
  • Fixed Color3 type, it now works as intended. Once again, thanks to Hoofer.

Version 0.1.5

Fixes

  • Small fix to prevent multiple firings of Remote Functions, by Hoofer.

Now available on GitHub, Wally & Creator Store.

1 Like

Version 0.1.6

Upgrades

  • Huge upgrade to the receiving system of ByteNet Max. Receiving now encodes data into buffers before reaching the client, where it is decoded. This improves performance significantly! Read the new documentation for an upgraded experience.

Fixes

  • Firing multiple requests at insane rates would break the system. That has been fixed now.

Now available on GitHub, Wally & Creator Store.

Version 0.1.7

Upgrades

  • Two new functions, .listenOnce() and .mute(). This gives you more control over your callbacks. Documentation is in the original post.

Fixes

  • Packets were broken after v0.1.6. This has been fixed. Hopefully.

Now available on GitHub, Wally & Creator Store.

1 Like

I saw that there’s a 1.0.0 version on wally, but no updates here. Is there a recent update?

No, the 1.0.0 was a mistake, that’s the first release. I don’t know how to remove package versions. The latest is always updated on the DevForum, so v0.1.7 is the latest.

1 Like

Version 0.1.8

Upgrades

  • Re-did how .listenOnce() and .mute() works. Renamed .mute() to .disconnectAll() to better reflect its functionality.
  • Re-did how .listen() works. It now returns a function that can be called to disconnect the specific listener.

For more information, check the documentation!

Now available on GitHub, Wally & Creator Store.

I can’t run any async or yielding functions with the queries. Can you fix this? I’m assuming you’re spawning the methods but I think it may be counter-productive in this case

Basically my model goes like this:

query.invoke(data)
-- Server
quert.listen(function(data, player)
    local success, datastoreData = pcall(Datastore.GetAsync, key,  value)
    return success and dataStoreData or {}
end)

It gives me an error saying it cant write to the buffer because the argument is nil. So its not waiting for the GetAsync to finish.