Hey so this module doesn’t wrap remote functions right? The creator should consider doing that…
It is. Here is example.
-- Server
local BridgeNet2 = require(<bridgenet path here>)
local Bridge = BridgeNet2.ServerBridge("Bridge")
Bridge.OnServerInvoke = function(player: Player, content: any)
return true
end
-- Client
local BridgeNet2 = require(<bridgenet path here>)
local Bridge = BridgeNet2.ClientBridge("Bridge")
Bridge:InvokeServerAsync(true) -- single argument
Bridge:InvokeServerAsync({true, false}) -- multi argument
so what this module does a overall summary is that it optimizes remote events by converting all arguments to strings because they cost less ? it also instantly disconnects connected RBXScriptSignals after using making it quite hard for Hackers to crash servers?
it has a rate limiter and also a data packets limiter ?
down side is that it can severely cause delays between client and server if there is Lots of firing of the same event ?
correct me if i am wrong please i am just trying to wrap my head around what this does
Thanks the docs didn’t mention anything about this!
YAY FINALLY RELEASED, Important question does bridgenet 2 have any remotefunction functionality to it?
Nvm scrolled up and found the answer
What about adding support for Axen’s compression module? I tested BridgeNet2 and the compression module together and it seems like receive have reduced for 2 times: 5.93 → 2.88 KB/s.
For example you can add method :ReferenceCompressionBridge()
which will make bridge that is specially used for compression requests. Yes, some time will be spent for compression before actual request sending, but why not if it reduces receive so hard.
bn2 batches remote calls together if they were sent in a frame, and wym disconnect connected rxsignals
and i dont think theres a noticeable delay
You may have not considered it yet because up till this point it’s only been teased, which is expected, it’s very very new and I would imagine it will take some time to develop a consensus on it.
That said, as of just a moment ago Unreliable Events were released. The first thing that came to mind is BridgeNet as I actively utilize this in my current projects. Do you plan on integrating Unreliable Events into your system in a future update? I believe it could be very advantageous for certain use cases and would love to see it.
Will BridgeNet2 support unreliable remote events in the future?
Can’t wait for BridgeNet to support Unreliable Events (Hopefully)
On a separate note…
Heres a quick function I made to be able to delete Identfiers:
(I wasn’t too sure how Identifiers worked, but I think this will correctly remove them, I tried to cover every basis)
-- In 'src'
RemoveIdentifier = if isServer then Server.removeIdentifier else nil,
-- In "Server"
function Server.removeIdentifier(name: string)
return ServerIdentifiers.remove(name)
end
-- In "ServerIdentifiers"
function ServerIdentifiers.remove(identifierName: Types.Identifier)
if fullIdentifierMap[identifierName] ~= nil then
identifierCount -= 1
identifierStorage:SetAttribute(identifierName, nil)
fullIdentifierMap[identifierName] = nil
for Name: string, Id: string in pairs(compressedIdentifierMap) do
if Id == identifierName then
identifierStorage:SetAttribute(compressedIdentifierMap[Name], nil)
compressedIdentifierMap[Name] = nil
end
end
elseif compressedIdentifierMap[identifierName] ~= nil then
local IdentifierName = compressedIdentifierMap[identifierName]
identifierCount -= 1
identifierStorage:SetAttribute(identifierName, nil)
identifierStorage:SetAttribute(IdentifierName, nil)
fullIdentifierMap[identifierName] = nil
fullIdentifierMap[IdentifierName] = nil
compressedIdentifierMap[identifierName] = nil
else
Output.warn('No Identifier exists with that string when trying to remove')
end
end
I’ve got plans for that dw, I’ve started development but I need buffers to release first
Do you think you could add this in your next update?
And maybe a setting to toggle off all output logs?
When approximately are you planning on releasing this? Since i was on releasing the new update with UmreliableRemoteEvents along with my christmas update.
What are bytes? I’ve seen a class called that before but I’ve never known what it does. What are packets? And what is the RemoteEvent throttle limit?
I’m just getting in to the nitty-gritty of networking. That being said, wouldn’t setting Roblox’s Signal Behavior to Deferred essentially do the same batching that this library does?
can you update the documentation and make the tutorial more clear, when i try to call FireTo it doesn’t show and I’ve required the module properly.
@ffrostfall Bro you need to cook on the next bridgenet2 update for unreliable events, or else FastNet is gonna continue cooking with no competition.
i for some reasons get better performance with… normal remotes?
Are you testing it correctly? You really shouldn’t be getting better performance with normal remotes.
idk i used the same datas with remotes and bridgenet2
i was sending it every frame, with remotes 5.5recv while with bridgenet2 i had 7 recv