[ARCHIVED] FastNet2 - a fast, efficient & lightweight network library

FastNet2 | Update

  • Few Rewrites (Server & Client)
  • Fixed Server Pulling (Invoke)
  • Client RateLimit
Version: RC4 (0.4.0)
Status: Tested
available with Standalone .RBXM, .luau files in Github Repo & Wally Package.

FastNet2 - GitHub Repo
FastNet2 - RC4 Commit
FastNet2 - Wally Package (rc4 0.4.0)


Previous version:
→ RC 3 (0.3.1)

  • Fix Critical server (single player target)
  • Minor Improvements
2 Likes

i made a second benchmark for accuration receive.
Here - Roblox Place

3 Likes

This is what happens when a builder tries to be smart :rofl:

How can you not see the big text that says “.toml” and “.json”?

FastNet2 | Major Update

  • Built-in Pre-process data (aka wait till connection target being connected for PREVENT LOSS DATA, no more worries about client/server is late being connected pre-process will handle this, very-useful & important) [FEATURE - BUILT-IN]
(*Pre-process data will be removed if player is left, dont affect to other players still live)
  • Sent Queue (Client) is moved to first or being sent after Outgoing is processed (next frame)
Version: RC5 (0.5.0)
Status: Tested
available with Standalone .RBXM, .luau files in Github Repo & Wally Package.

FastNet2 - GitHub Repo
FastNet2 - RC5 Commit
FastNet2 - Wally Package (rc5 0.5.0)


Previous version:
→ RC 4 (0.4.0)

  • Few Rewrites (Server & Client)
  • Fixed Server Pulling (Invoke)
  • Client RateLimit
2 Likes

FastNet2 | Update

  • Add .CreateUUID function
  • Client & Server Identifiers are now cached/stored
  • Minor improvement on types
Version: RC6 (0.6.0)
Status: Tested
available with Standalone .RBXM, .luau files in Github Repo & Wally Package.

FastNet2 - GitHub Repo
FastNet2 - RC6 Commit
FastNet2 - Wally Package (rc6 0.6.0)


Previous version:
→ RC 5 (0.5.0)

  • Built-in Pre-process data (aka wait till connection target being connected for PREVENT LOSS DATA, no more worries about client/server is late being connected pre-process will handle this, very-useful & important) [FEATURE - BUILT-IN]
(*Pre-process data will be removed if player is left, dont affect to other players still live)
  • Sent Queue (Client) is moved to first or being sent after Outgoing is processed (next frame)
1 Like

rc6 on wally have critical issues where rc6 doesnt have rc5 updates

seems sick great work, i’ll be looking at this in the future

FastNet2 | Patch

  • Patch rc6 0.6.0 doesnt have rc5 (not full, full next update)
Version: RC6 (0.6.1)
Status: Tested

available with Standalone .RBXM, .luau files in Github Repo.

FastNet2 - Wally Package (rc6 0.6.1)

1 Like

FastNet2 | Update

  • Fixed & Improved Built-in player connections pre-process wait issue from rc5 0.5.0
  • Fixed Server & Client MULTIPLE Pull/Invoke
  • Fixed Server & Client Identifier Registration
  • Fixed Server & Client returning Multiple Requests (Invoke/Pull)
  • Fully fixed 0.6.1 doesnt have full rc5
  • Changed Pull/Invoke requestId to string from number
Version: RC7 (0.7.0)
Status: Tested
available with Standalone .RBXM, .luau files in Github Repo & Wally Package.

FastNet2 - GitHub Repo
FastNet2 - RC7 Changelogs
FastNet2 - Wally Package (rc7 0.7.0)


Previous version:
→ RC 6 (0.6.0)

  • Add .CreateUUID function
  • Client & Server Identifiers are now cached/stored
  • Minor improvement on types

Documentation havent made for now.

FastNet2 | Update

  • Add Debugging
  • New functional for Debugging
  • Changed assert to Debug
  • Add RateLimit on :Fire (CLIENT)
Version: RC8 (0.8.0)
Status: Tested
available with Standalone .RBXM, .luau files in Github Repo & Wally Package.

FastNet2 - GitHub Repo
FastNet2 - RC8 Changelogs
FastNet2 - Wally Package (rc8 0.8.0)


Previous version:
→ RC 7 (0.7.0)

  • Fixed & Improved Built-in player connections pre-process wait issue from rc5 0.5.0
  • Fixed Server & Client MULTIPLE Pull/Invoke
  • Fixed Server & Client Identifier Registration
  • Fixed Server & Client returning Multiple Requests (Invoke/Pull)
  • Fully fixed 0.6.1 doesnt have full rc5
  • Changed Pull/Invoke requestId to string from number
1 Like

FastNet2 | Patch


  • Fixed Wally Package for rc8 0.8.0 (was unable to export to roblox studio with rojo configuration)

version > rc8 0.8.1

FastNet2 - Patch (Wally)

FastNet2 | Patch


  • Fixed Request/Pull over-send (SERVER)
  • Fixed Request/Pull return/response data being tabled (SERVER)
  • Fixed Built-In wait player feature
  • Minor Improvement (SERVER & CLIENT)

version > rc8 0.8.2

FastNet2 - Patch (Github Commit - 0.8.2)
FastNet2 - Patch (Wally - 0.8.2)

FastNet2 | Update

  • Improved Invoke/Pull System on SERVER & CLIENT (upto 5x faster)
  • Added :Invoke (function) for Signal (oneSignal)
  • Improved FastSpawn type
  • Migrated coroutine.resume to task.spawn on oneSignal
  • Fixed FastNet2Module.Signal (function) type
Version: RC9 (0.9.0)
Available with Standalone .RBXM, .luau files in Github Repo & Wally Package.

FastNet2 - GitHub Repo
FastNet2 - RC9 Commit
FastNet2 - Wally Package (rc9 0.9.0)


Previous version:
→ RC 8 (0.8.0)

  • Add Debugging
  • New functional for Debugging
  • Changed assert to Debug
  • Add RateLimit on :Fire (CLIENT)
1 Like

FastNet2 | Update

  • Add Documentation comments
  • Add Util.luau
  • Add Hash function to Util.luau
  • Moved .CreateUUID function to Util.luau
  • Connection Identifier is now converted to hash using Hash function from Util.luau
  • Other minor changes
Version: RC9 (0.9.1)

Available with Standalone .RBXM, .luau files in Github Repo & Wally Package.


FastNet2 - Commit
FastNet2 - Wally

1 Like

Hey there!

FastNet2 documentation is finally here!

FastNet2 - Documentation Page

2 Likes

The documentation is very easy to understand. Thanks for writing this! I wonder though, what exactly is making this faster AND more secure? Those two usually don’t go together well!

(edit): There’s a few grammatical issues in every page, but that’s fine.

2 Likes

FastNet2 | Update

  • Removed .debug function
  • Changed to .DebugLogs()
  • Minor change to Debug.luau
  • Minor change on Process.luau (Scheduler Priority)
  • Documentation page update
Version: RC9 (0.9.2)

Available with Standalone .RBXM, .luau files in Github Repo & Wally Package.


FastNet2 - Commit
FastNet2 - Wally

1 Like

So, I am not terribly sure why you are checking if self exists in most functions in the oneSignal server module. Self will always exist if the function is called with a ‘:’ vs a ‘.’ and it would probably be more beneficial for the output to scream at the programmer for not calling it correctly vs nothing happening. You will also save yourself a little in efficiency by not calling this, since it won’t have to check if that variable is null.

i forgot to remove if self then when changing self = nil to setmetatable(self, nil)

edit:
re-updated rc9 0.9.2 with minor fix docs