Clicker MMO
This project is a substantial multiplayer browser-based game featuring real-time cooperative gameplay. Built from the ground up, the game relies on a Node.js server utilizing Socket.io for instantaneous client-server communication. To ensure robust performance and data integrity, I architected a high-performance data layer using a MySQL database, incorporating a write-behind caching strategy to optimize throughput within an MVC framework. The application is locally hosted and securely served using a custom-configured infrastructure.
Features
- Real-time cooperative multiplayer gameplay mechanics.
- Instantaneous bidirectional client-server communication using Socket.io.
- High-performance MySQL database integration for persistent player data.
- Custom write-behind caching strategy to optimize database throughput.
- Secure client connections handled via an Nginx reverse proxy.
- Automated SSL/TLS certificate management utilizing Certbot.
- Background service management implemented using NSSM for continuous uptime.
Gallery
Technical Details
The backend architecture is built on Node.js, leveraging Socket.io to facilitate real-time, event-based communication between the server and the web clients. The data layer utilizes MySQL, structured around an MVC (Model-View-Controller) design pattern. To handle the high frequency of database writes typical in a clicker game, a custom write-behind caching strategy was implemented, significantly reducing database bottlenecking. The deployment environment was configured locally from scratch, utilizing Nginx as a reverse proxy to route traffic securely, Certbot for SSL management, and NSSM (Non-Sucking Service Manager) to run the Node.js application smoothly as a Windows service.