ArtBook • Proposal • Tools • Author
> Server < • Client (Reactron) • Game (Unity)
☕ Developer: niloodev • 🎨 Lead Designer: Axel Galzz • 🐻 Animation and Pixel Designer: VamnKuma • 🎵 Soundtrack: Izábi Ferros
Project developed by; Ezequiel Nilo (Programming), Axel Galz (Design), VamnKuma (Animation and Pixel ART) and Izábi Ferros (Soundtrack).
Lycaria is a turn-based online game, it is divided in three parts; the client, server and the game. The project was developed with the intention of creating a simple and light form of entertainment for potential players, while developing a complex story behind it.
The TCC (course conclusion project) was presented and delivered on 06/12/2021 as a project from Analysis and Systems Development technical course in ETEC Antônio de Pádua Cardoso.
- The application back-end must match all the necessities, providing a route for /login, /register and API Rest services in general.
- Be capable of maintaning multiple players connected to a WebSocket room. (Called Lobby)
- Handle game logic as necessary, since the game is turn based.
- One client per account.
- Store all players info in MongoDB non-relational database, and keep it synced to WebSocket. (Players connect and disconnect actions updates the database with the info)
- Must have a standart security, sufficient to keep players safe.
This application uses the following open-source packages:
- Express (API framework)
- Colyseus (Game server template made in WebSocket and Typescript, IT WAS REALLY GOOD in server development and I recommend it)
- JsonWebToken or JWT (Create user section and codify it)
- BCrypt (Encrypt password to send to database)
- MongoDB (Non-relational database)
- Mongoose (Compact client for MongoDB)
- Nodemailer (Sending emails 💌)
- Nodemon (Auto restart the Node application when an archive changes.)
- @Colyseus/Monitor (Shows the current rooms of Colyseus and display some options, like an admin panel)
code made by niloodev | Ezequiel Nilo
ANY TIPS OR FEEDBACK IS HIGHLY APPRECIATED! 🐸