Maybe an update notifier? In case for example, I am using an old version of FastNet, it would notify me that theres a new update. Would be cool to see!
That need use loadstring for checking global version
just made it on Version 2.9.8b with autoUpdate feature
Update | v2.9.8 | Beta
- Added UpdateChecker
- Added AutoUpdater (defaultly disabled, enable it on settings)
- Added Build Version
- Added :GetBuild()
Get Build Version Module (number)
- Added :Flood() on :Listen & :WaitForListen (Server only, default: disable)
Flood(enable : boolean, max : number, reset : number, global : boolean)
If global off use per player
Remote:Listen(function(...)
end):Flood(true, 50, 0.1)
- Minor Improvements
Note:
Flood likely anti spam remoteevent and almost like :AddLimit / :AddLimitAll but it different because AddLimit only limit when player going to fire
UpdateChecker & AutoUpdate Feature only works on ver 2.9.8 or higher
Download Here
FastNet.rbxm (38.0 KB)
Add :WaitForRemote() it will wait until the remote exist otherwise calling :Get on the client may return to nil before the server created the remote
Minor update on v2.9.8 Beta (b_2980 -> b_2982)
- Added Thread Reuse on Client (Tested benchmark doesnt improve much like only 3-10%)
- Improved UpdateChecker
- Minor improvements
Note: I suggestly replace this to your v2.9.8 build_2980 to this update
Download
FastNet.rbxm (38.2 KB)
Its also available on roblox library for b_2982
Forgot to say, the guide is updated right now.
I will be working on FastNet with roblox-ts version, but the begining first (ver0.1.0-alpha)
EDIT: damnly hard for unavailable roblox libraries
Changelogs (b_2984/2.9.8 Beta)
- Fix Invokes return nil
- Minor fix on updater
- Other Minor fix
Download Here
FastNet.rbxm (38.2 KB)
Pros on FastNet:
- More secured with AES (very hidded secret key, optional on settings)
- Encoded data packets (automaticly decoded when receives)
- Low bandwidth usages (Highly compressed, the smallest is 2 bytes)
- Custom RateLimit to Player
- Stabled Efficiency & Optimized
- Faster
- Thread Reuse (Client)
- RateLimits & Queues System
- Debugging (optional)
- Traffic Logs
- Fire back after receive (optional, likely RemoteFunction)
- Easy to use
- Custom Timeout system (yielded) on RemoteFunction
- Anti-Spam on Remotes Receiver (optional)
Cons on FastNet:
- Disable RateLimiting & Queue make unstablled or very-high/massive limition size
- AES Encryption is slow when handling alots data to encrypted
- AddLimit / AddLimitAll may extra performance taken
- AES Encryption System enabled requires extra performance for secure their keys
- Easily RateLimit handler outdated (not at all)
Note: For version 2.9.x
Patch Update - v2.9.8 Beta [b_2985]
- Improved Locking Frames (max is 60) on rateLimit & Queue System
- Improved Queue handler (more efficiency & lower Latency/Ping ms)
- Client <-> Server Better Effiency & more stable latency
- Fixed :WaitForListen & :Listen for Server side (missing player instance fixed)
- When Queue reach limit will no longer drop the queues just reject next queue request if it still on the limit
- Thread Reuse now also on rateLimit system (Client & Server)
Download here
FastNet.rbxm (38.8 KB)
New Update | v2.9.8 - Beta/PreRelease (b_2987)
- Alot more Efficiency & Lower Latency
- Major Fixes, Improved & Optimized overall
- Added BYTE Packet Size on Traffic Logs (B/KB/MB)
- Added _packet Module for BYTE Packet Size Reader (Credit: @Pyseph)
- Improved Frame Locking
- Multiple Frame uses on FastNet
- Frame Lock is able to customized now on Settings
- Some Changes on default FastNet Settings
- Faster (lowest latency hits 29-30ms, avg was ~34-41ms tested & benchmarked)
- Improved Queue System (Client & RateLimit)
- Added FastNet:ClearQueue()
Clear all current tasks/queues exists (include clear rateLimit)
- Added WaitFor Method on :Get
:Get(RemoteName: string, WaitFor: boolean, Timeout: number)
local x = FastNet:Get(“Remote1”, true) – if timeout not filled it will set into 0.1s
WaitFor its for Wait until the RemoteIsExists
- Minor Improve on Debug
- Removed "print"s (sorry forgot to remove it)
- More Stabled
- Other Minor Fixes & Changes
Download here
FastNet.rbxm (41.8 KB)
Github
This is most stabled version, there will be no v3.0-alpha/beta/pre-release/release, FastNet will be way longer get updates since im taking a break because i have been alot of grinding to this source for updates faster and i already out of idea for next updates
there will be no v3.0-alpha/beta/pre-release/release, FastNet will be way longer get updates since im taking a break because i have been alot of grinding to this source for updates faster and i already out of idea for next updates
Thanks, i appreciate you all!
Replace update to b_2987.
##chrzzz30
Minor Update | v2.9.8 | Beta | Build_2988
- Removed AutoUpdate on FastNet
Only UpdateChecker Feature still stay on FastNet
- Parellel on FastNet Handler! (Client, Server & RateLimit/Queue Handler)
So every frames in Handler on FastNet now its on Parallel (Multi-threaded)
Also Parellel is not implemented in Compress Module because useless
- require(idFastnet) doesnt support anymore due some changes on FastNet
- FastNet Module parented on “Actor” named FastNet so its will be working property (this why it doesnt support require(id))
So if you want use this module you can follow this
local FastNet = require(ReplicatedStorage:WaitForChild("FastNet"):WaitForChild("MainModule")
-- now you can use FastNet!
- Removed debug profilers (due parellel actived)
This is faster & more efficience on latency than BridgeNet-v2.0rc4 on benchmarks result
Download
FastNet.rbxm (46.7 KB)
Recomanded using :Flood on Remote Receive Listener like this
Remote:Listen(function(plr, any)
end):Flood(true, …)
For more efficience and less server workloads taken and this help your Remote Listener to prevent receiving a bunch/brute from a client like spamming remotes and make a overhead
InvokeServer & InvokeClient throw an error when the player left while it’s being invoked so I made a temporary fix:
Update | v2.9.8 (Beta) | b_2989
- Improved Queue System (Server & Client)
- Improved & Minor Fix Listener Connections
- Improved & Fixed Invokes
- Minor change
Download here:
FastNet.rbxm (46.1 KB)
[updated for hot fix]
So why would I choose FastNet over Bridgenet?
I already wrote it before on top, scroll up