Inspiration

We were inspired by the .io games that peaked in popularity a few years ago (agar.io, slither.io, etc). We realized we could use the Roblox API to integrate Roblox profile information into the character models for our game. In .io fashion, our game features simplistic graphics and mechanics to create a fun and addicting game to play with friends.

What it does

Our project uses Roblox profile information and profile pictures to create an avatar for each player that loads in. Players control a circle that rotates around an axis and slowly gains speed when the spacebar is held down. Collisions will result in the slower player losing and the faster player gaining speed. The player with the highest speed will be at the top of the leaderboard.

How we built it

Our project uses a username input from the player and the Roblox Users API to get the user data for the Roblox account associated with the inputted name. The Roblox thumbnail API is used to get profile picture information from each account. The backend runs the game logic a certain number of times per second and returns the current game state, which then gets emitted to the frontend. The frontend hooks into that game state to display the current state of the game. The only information the frontend sends to the backend is the status of the spacebar. That way, the backend is the sole source of truth when it comes to tracking the players.

Challenges we ran into

We ran into some trouble trying to use the Roblox Authentication API due to the captcha requirements it contained. It also rate limits users so we had to handle that.

Accomplishments that we're proud of

We were able to develop all of our UI without importing an external library, making the efficiency of our website much better than it would have been. We also managed to create gameplay that's genuinely fun and somewhat addicting.

What we learned

We learned how to use svg to dynamically render game graphics. We integrated Svelte stores and reactivity with svg for intuitive and clean code.

What's next for Robug

In our next steps, we would increase the game window size so that the player has more space to move around. With the increased game window size, the player's individual would move as their avatar moves.

Our game also features some bots that move around at a constant speed. In the future, we would use machine learning to add bots that would actually play the game alongside players.

Built With

Share this project:

Updates