If you are interested in taking a deeper look at this game, .
Sword Masters was a full Roblox experience I was contracted to build from scratch for a group. A ground-up rewrite of their existing game, which was riddled with bugs and structural issues. I finished it in September 2024, and in October the owner left the project and the game was abandoned. The rights stayed with me, so I have the whole codebase abandoned in a folder in my PC.
The game is played in rounds. Between them, players vote for the next map in the lobby, and each round is PvP (last one standing), a zombie hunt or a boss fight. Every player brings a sword, a skin and one of seven abilities, from a free dash to a laser you aim with the camera.
This is a sneak peek of the game, back in 2024Architecture
The project follows Knit’s Service/Controller split, with a couple of exceptions that came from earlier code:
- Server entry point:
Server/ServerBegin: bootstraps all services, which then run autonomously. If one of them fails to start, the server kicks everyone with an error code instead of running half broken. - Client entry point:
First/ClientBegin: initializes controllers on the client side - Content is data: maps, zombies, abilities, swords and skins are tables in
ReplicatedStorage.Classes - Isolated scripts exist but are intentionally kept minimal and scoped to specific control tasks
Not all of the code is mine. The boss fight and part of the ability system came from earlier code that I integrated and adapted, and the write-ups say which part is which.
Stack
- Knit: service/controller framework for structured client-server communication
- ProfileService: data persistence and player save management
- SimplePath: NPC pathfinding
The technical write-ups for each system, including the bugs I’d fix today, are in the portfolio version.