rbxcat - a ROBLOX Client Access Tunnel
Introduction
Hi! My name is Leah and I develop small-scale games under the banner of Kitten Holdings on ROBLOX.
I was constantly wondering what game framework to use, what the best way to access server-replicated information from the client was, and most importantly, how to do it myself!
I, along with my co-developer Zach, decided to open source our Attributes-based solution for this unique problem, and soon plan to release our NodeJS based analytics server under the banner of rbxcat-server to compliment this game framework have released rbxcat-server to go alongside our Analytics and OpenCloudMessaging modules!
Examples
Some example games can be found below:
rbxcat-obby: A simple obby game made on the rbxcat framework!
Playable at: rbxcat - obby - Roblox
Source visible at: GitHub - fartg/rbxcat-obby
rbxcat-minigames: An intermediate introduction into rbxcat programming with a minigames place.
Playable at: rbxcat - minigames - Roblox
Source visible at: GitHub - fartg/rbxcat-minigames
Some example images can be found below:
A working tycoon prototype using rbxcat:
Included modules inside of rbxcat:
A money-per-second example from our github tutorial:
Problems
What problems does this game framework solve?
- Anything that you think you need can be made modular, (if it hasn’t already), and grabbed by the client.
- With a unique, well-formed tutorial, you can learn exactly how to use our framework for your use case.
- Easily request and access server-sided information about a client’s game session with built in tools and attribute-centric calls. (EditPlayer.Return, EditServer.Return)
What problems does this game framework introduce?
- Because of the way ROBLOX works, attributes are NOT asynchronous, and will take a second to populate on player join. This is solved by waiting for a ready event to be called before loading anything on the client side, or just task.wait()ing until an attribute returns something other than nil.
- Not everything is made for you! Knit and other game engines like it allow for direct calls to handlers (RemoteEvents that can be listened to) while we do that before runtime.
Installation / Source
A link to the github repository:
A link to the model:
Why open source and post?
I’m posting this to ask for any feedback, code-auditing, and anything else that the devforum can come at it with!
I plan on uploading uncopylocked example games using rbxcat so that it’s more clear how it can be used for any game that you can imagine.
Have a great day!