Overview
Project: GMod (PGM) was one of my first real Roblox projects, built from scratch when I was still figuring out game development. Inspired by Garry's Mod, it aimed to bring the sandbox experience to Roblox with multiple game modes — Free For All deathmatch with custom weapons and maps, a creative sandbox mode with building tools, and vehicle combat with battle drones.
Looking back, the code is held together by hope and bad practices. The architecture is monolithic, the networking is naive, and many features were duct-taped on as I went. But the game actually ran — players could join, fight, build, and break things. It taught me the fundamentals of game scripting in Luau, persistent state management with DataStore2, and real-time replication with BridgeNet2. It's the definition of "you have to start somewhere."
Development
Sandbox & Core Mechanics
Phase 1Built the sandbox foundation — player tools, physics objects, building system with weld/constraint mechanics, and a custom spawn menu. Everything powered by spaghetti Luau scripts.
Free For All Mode
Phase 2Implemented FFA deathmatch with custom weapons (AWPs, pickaxes), multiple maps, kill tracking, and respawn system. Basic leaderboard and score display.
Vehicles & Custom Content
Phase 2Added battle drones with mounted weapons, custom 3D models, player animations (running, tool equip), and a model preview system.
Persistence & Networking
Phase 3Integrated DataStore2 for player data persistence and BridgeNet2 for real-time state sync. Set up basic admin tools and moderation commands via Cmdr.
Features
- Free For All deathmatch with custom weapons and maps
- Sandbox mode with building tools and physics objects
- Battle drones with mounted weapons
- Custom 3D models and player animations
- Persistent player data via DataStore2
- Real-time state sync with BridgeNet2
- Custom spawn menu and admin tools
Architecture
System Design
Monolithic Roblox game with a single DataModel structure. Luau scripts power all game logic, with BridgeNet2 handling client-server replication and DataStore2 for persistent player data. The "architecture" here is mostly learning how not to structure a game.
Challenges
Everything. I had no experience with game architecture, no understanding of networking patterns, and no concept of code organization. The game worked in small demos but scaling to a full experience revealed every design flaw. Still, it shipped, it ran, and I learned more from this project than from any tutorial.
Gallery

Plans
None — this project is a time capsule of early development. It stays as a marker of how far things have come.
