What kind of module should I use?
What kind of system should I use?
like StateManager for player state?
and what about moveset system?
This is the question I asked before starting battleground game
What kind of module should I use?
What kind of system should I use?
like StateManager for player state?
and what about moveset system?
This is the question I asked before starting battleground game
For now I only use EZ Ragdoll Module and Muchacho Hitbox Module
For a battleground game, you’ll want to establish a solid architecture from day one since scaling these systems later becomes painful.**State Management:**A StateManager module is absolutely the right call. Players need distinct states (Lobby, Loading, Playing, Eliminated, Spectating), and you want these changes replicated consistently across clients and server. Structure it so state transitions are predictable—use an enum or table of valid transitions rather than allowing arbitrary changes. This prevents bugs where players end up in impossible states.**Moveset System:**Keep movesets separate from your state manager. Use a ModuleScript-based approach where each move is its own module with consistent properties:- Cooldown duration- Resource cost (mana, stamina, etc.)- Animation ID- Damage value- Server-side validation logicOn the client, handle input and animations. On the server, validate everything before applying damage. Never trust client calculations for combat.**Architecture Pattern:**Use RemoteEvents for one-way communication (client inputs → server processes) and RemoteFunction for responses (server tells client if action succeeded). This keeps your network flow clear and easier to debug.Essential Systems to Implement Early:- Combat validation (server-authoritative damage)- DataStore integration for stats (even if cosmetic at launch—track kills, wins, playtime)- Matchmaking queue with timeout handling- Respawn/elimination logic with clear state transitionsStart with these fundamentals working smoothly before adding complexity. Many battleground games struggle because they bolted systems together without a coherent state model. Spending 2-3 days architecting beats spending weeks refactoring broken systems across 50 scripts.