CyberMax
Roundmoor · Round & Match System for Roblox developers

Rounds, map votes and teams that never get stuck

A lobby that waits for enough players, an intermission countdown, a map + mode vote, map loading, fair teams with parties and skill, spawns with protection, win checks for free-for-all, team deathmatch, elimination and objective modes, an MVP scoreboard, and rewards paid exactly once per match. Then it loops.

10 modules + 3 example scripts1,849 lines of original Luau25 tests passing.rbxmx + Rojo

For: Roblox developers building round-based shooters, minigames, PvP arenas and party games.

See it work: real output from the shipped code

One full match with the example config

Driven through RoundMachine:Step() with 6 players (one joins first, five more during the wait). The status lines are Format.status() of the snapshot clients receive.

0 sNeed 2 players (1/2)
9 sIntermission · next match in 0:08
17 sVote for the next map · 0:12
18 sLoading Dockyard · 0:04
23 sTeam Deathmatch · 6:59 left
35 sTeam Deathmatch · 6:47 left
252 sMatch over · next in 0:05

The map vote

MapVote:Open() offered 3 map + mode options (the last map is never offered straight away); everyone voted, so the vote closed early.

OptionVotes
Quarry · King of the Hill2
Dockyard · Team Deathmatch ✓3
Rooftops · Elimination1

Blue wins (score limit) · Blue 40 · Red 35 · MVP Cy

First kills reported with RoundMachine:Kill(), then the final scoreboard and the payout Rewards:Pay() made once for this match (win 100, played 40, MVP 50, 5 per kill, 2 per assist).

AtKillAssist
3sAva → DeeBen
6sCy → Ben
9sDee → FayCy
12sBen → Eli
15sCy → Ava
18sCy → Fay
21sDee → Ben
24sFay → Eli
PlayerTeamScoreK/D/ACoinsPaid for
CyBlue1616/14/8246win 100, MVP 50, 16 kills x5 80, 8 assists x2 16
DeeBlue1515/9/4183win 100, 15 kills x5 75, 4 assists x2 8
BenRed1414/14/4118played 40, 14 kills x5 70, 4 assists x2 8
FayRed1313/13/0105played 40, 13 kills x5 65
EliBlue99/12/0145win 100, 9 kills x5 45
AvaRed88/13/13106played 40, 8 kills x5 40, 13 assists x2 26

What's inside

ModuleRuns onWhat it doesLines
RoundMachineServerThe whole match loop.361
ModesSharedGame modes as data (free-for-all, team deathmatch, elimination, score attack...) + who won.169
MapVoteServerPick a few map + mode options, one vote per player, fair tie-breaks, no instant repeats.154
TeamsServerFair team splits, parties kept together, join-in-progress balancing.180
ScoreboardServerKills, deaths, assists, objective points and team totals for one match, plus the MVP.117
RewardsServerEnd-of-match payouts (win, loss, draw, MVP, per kill), paid exactly once per match.71
SpawnsServerSafe spawn points (team spawns, away from enemies) and spawn protection.76
MapLoaderServerCopies the voted map from storage into the world and cleans it up afterwards.56
Format (free)ClientThe text your round UI shows (timers, phase lines, scores, results), same on every client.81
Signal (free)SharedA tiny event object so your UI and game scripts can react to round, vote and score events.49
Example scriptTypePut it in
RoundmoorConfigModuleScriptReplicatedStorage
RoundmoorServerScriptServerScriptService
RoundmoorClientLocalScriptStarterPlayer > StarterPlayerScripts

Tested like real software

25 automated tests run in a real Luau VM against a Roblox engine mock, on luau-web 1.4.0 (Luau compiled to WebAssembly). They ship in the zip: cd tests && npm install && node run.mjs.

SpecPassingFor example
demo1/1demo: one full match with the example config
example2/2example config: 4 modes and 3 maps pass the startup checks together …
parts13/13Modes: the example's 4 modes pass; defaults are filled …
rounds9/9waits for 2 players, counts down, and drops back to Waiting if someone leaves …

Install in 5 minutes

  1. Drag Roundmoor.rbxmx onto ReplicatedStorage in Roblox Studio.
  2. Drag RoundmoorExamples.rbxmx in and move the three scripts to the services above.
  3. Turn on Studio access to API services and press Play. INSTALL.md walks through an example place step by step.

FAQ

Is this allowed on Roblox?

Yes. It's ordinary Luau using Roblox's own services (DataStoreService, MarketplaceService, Players). Nothing bypasses Roblox rules.

Why not a free model from the Toolbox?

Free models are a fine start. Roundmoor ships its tests (25 of them, run in a real Luau VM), validates every remote argument, and is original code with a clear licence.

Do I need Rojo?

No. Drag the .rbxmx files into Roblox Studio. A Rojo project file is included if you use it.

Can I use it in a game I sell or a client's game?

Yes: unlimited experiences, commercial or not, for you or your clients. You can't resell or share the code itself.

Is CyberMax affiliated with Roblox?

No. Roblox and Roblox Studio are trademarks of Roblox Corporation, named only to describe compatibility.

More tested kits

HatchwrenPet & Egg SystemStallwrenShop & Currency SystemGavelwickAdmin CommandsMillwrenTycoon KitQuestwrenQuest & Dialogue SystemSalvowickFPS Combat FrameworkDevEx calculatorFree: Robux to USD at 2026 rates
Roblox and Roblox Studio are trademarks of Roblox Corporation. Roundmoor is made by CyberMax and is not affiliated with or endorsed by Roblox Corporation.
$7Get Roundmoor