It’s not wasted useless data, and instead of having 17 remotes in replicatedstorage you have 0
It is. It’s a lot of unnecessary bandwidth just for replicating an identifier string - remotes already have an identifier that gets sent. This becomes even a larger issue if you replicate any data frequently.
So it’s better to have multiple remotes , using 1 makes no sense and is not much more intuitive or easy to do than just creating multiple
I also think I’m going to release a preview build once I get a couple more features in
To be honest. I would not buy this.
Maybe someone would, but I don’t know, I never recommend using Single-Remote Architecture, it just seems – unnatural. There could be overthrottling if using it for more things at the same time.
Plus I don’t really know. Could you answer questions:
- Why should we buy it if we can do it ourselves?
Actually I did tests at one point, and it can use quite a bit less data if you queue up a bunch of remote calls and send them at the end of the frame using a single remote call. Although to see this improvement, identifier keys will need to either be numbers, or all encoded into a binary string. My game creates identifier keys automatically by connecting custom client objects in the same order as server objects; This means the game can connect potentially thousands of private replication signals without creating and replicating any extra RemoteEvents.
I wouldn’t recommend OP’s module for this though.
Lol what? I gave you my suggestion, if you don’t want worse bandwidth overhead for your projects then don’t send identifier strings into one remote. The fact that you see criticism you dislike when I’m just helping as negativity is a bit absurd.
Why would they need to be numbers, right now for the key’s I use strings.
I’m not sure why I would pay 1000 robux to use one remote event. I personally feel that it would be a lot easier to just make different ones, and I am pretty sure it would make your game perform better to use more than one.
As I’ve stated , strings are quite a fair bit of data to be sending just for identifiers when you don’t need them.
It’s not just going to have the current features, I need more suggestions for features.
You can just modify your module’s implementation to use a dictionary of remotes rather than just 1 remote. Index the remotes by the name of the key. That way you keep the module of the API the same but you don’t waste bandwidth unnecessarily.
I recommend listening to what veteran developers have to say in the future – they’re suggesting it to help you out, not just to criticize.
Thank you, you’re right that I should’ve listened.
We can measure how much data a remote needs to send in bytes. Basically each character in a string is one byte, so “ExampleRemoteKey” would send at least 16 bytes because it has 16 characters. When numbers are used, it needs to replicate a double which is 8 bytes long.
It’s a little more complicated than this though. Roblox also needs to send the value’s type as well as string lengths. There are cases where a string can use less data than a number, and there are cases where a number can use less data than a string. Here are some rough results using studio’s ‘Performance’ tab today:
Blank remote call: ~9 bytes string (len 0): 2 bytes string (len 1): 4 bytes string (len 2): 8 bytes string (len 3): 9 bytes string (len 4): 10 bytes string (len 5): 11 bytes string (len 6): 12 bytes string (len 8): 14 bytes string (len 16): 22 bytes string (len 32): 36 bytes boolean: 2 bytes number: 9 bytes table (empty): 2 bytes table (array with 4 numbers): 38 bytes EnumItem: 4 bytes Vector3: 13 bytes CFrame (axis aligned): 14 bytes CFrame (random rotation): 20 bytes
Is this still using RemoteEvents? I feel kinda unecessary to buy a module which does the same functions as another, you could create your own remote event system and implement my suggestion, and maybe add other’s suggestions, because… Really, i wouldn’t like to buy a module which is doing the same thing as an implemented in-studio feature for free.
I am releasing free copies of this, I have improved my work now and this module is an example of my beginners skill.
If you would like a copy please dm me: The Overseer#0001
You no longer have to pay for it, I am releasing it, the module merely made it so you never had to create a single remote.
For all the hate on this, I’m sorry for making it cost anything.
Thank you for those who offered constructive criticism.
This project is going to be for my personal use and I’m inserting a download for the last version below, thank you.
OREModule.rbxm (2.2 KB)
Sorry for bumping, I was wondering and the community might be wondering too.
Where do you get this data, is there a page in which I can see exactly how data is transferred, how big it is, etc?
There’s a section for network usage. Just spam your remote events with something at a constant rate and take an average.
Sorry, I’ve looked at that post a billion times and never seen that, thank you!