Skip to content

CarlosVictorAR/MMORPG-GoT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚔️ MMORPG-GoT

Um jogo web de estratégia inspirado no universo de Game of Thrones, onde você escolhe sua casa, recruta aldeões, coleta ouro e usa habilidades únicas para dominar Westeros.


📸 Visão Geral

O MMORPG-GoT é uma aplicação web full-stack com autenticação de usuários, persistência de dados e mecânicas de jogo em tempo real. Cada jogador escolhe uma das nove casas nobres, cada uma com uma habilidade especial exclusiva.


🏰 Casas Disponíveis

Casa Habilidade
Stark Temor
Lannister Comércio
Targaryen Magia
Baratheon Temor
Greyjoy Temor
Martell Sabedoria
Tyrell Comércio
Arryn Sabedoria
Tully Sabedoria

🎮 Mecânicas de Jogo

  • Recrutar Aldeões — Gaste ouro para aumentar sua população
  • Coletar Ouro — Cada aldeão gera ouro passivamente
  • Usar Habilidade — Gaste ouro para evoluir o atributo exclusivo da sua casa

🛠️ Tecnologias

  • Back-end: Node.js, Express.js
  • Template Engine: EJS
  • Banco de Dados: MongoDB (Mongoose)
  • Autenticação: express-session + bcryptjs
  • Infraestrutura: Docker + Docker Compose
  • Front-end: Bootstrap 5, JavaScript Vanilla

📁 Estrutura do Projeto

mmorpg-got/
├── app/
│   ├── controllers/       # Lógica de negócio (cadastro, login, jogo)
│   ├── middlewares/       # Autenticação de sessão
│   ├── models/            # Schema Mongoose e DAO de usuários
│   ├── public/            # Arquivos estáticos (CSS, JS, imagens)
│   ├── routes/            # Definição das rotas Express
│   └── views/             # Templates EJS
├── config/
│   ├── dbConnection.js    # Conexão com o MongoDB
│   ├── gameConfig.js      # Configurações do jogo (custos e ganhos)
│   └── server.js          # Configuração do Express
├── app.js                 # Ponto de entrada da aplicação
├── docker-compose.yml     # Serviço MongoDB via Docker
├── .env.example           # Exemplo de variáveis de ambiente
└── .gitignore

🚀 Como Rodar Localmente

Pré-requisitos

1. Clone o repositório

git clone https://github.com/seu-usuario/mmorpg-got.git
cd mmorpg-got

2. Configure as variáveis de ambiente

cp .env.example .env

Edite o arquivo .env com suas configurações:

PORT=3000
MONGO_URI=mongodb://admin:minhapassword@localhost:27017/mmorpg?authSource=admin
SESSION_SECRET=sua_chave_secreta_aqui

3. Suba o banco de dados com Docker

docker-compose up -d

4. Instale as dependências e rode

npm install
node app.js

Acesse em: http://localhost:3000


🔐 Variáveis de Ambiente

Variável Descrição
PORT Porta onde o servidor vai rodar
MONGO_URI String de conexão do MongoDB
SESSION_SECRET Chave secreta para as sessões

📌 Rotas da Aplicação

Método Rota Descrição
GET / Redireciona para login
GET/POST /login Página e autenticação de login
GET/POST /cadastro Página e criação de conta
GET /jogo Tela principal do jogo
POST /jogo/recrutar Recrutar aldeões
POST /jogo/coletar Coletar ouro
POST /jogo/habilidade Usar habilidade da casa

👤 Autor

Feito por Carlos Victor

About

Web game inspirado em Game of Thrones, escolha sua casa, recrute aldeões, colete ouro e use habilidades únicas. Feito com Node.js, Express, MongoDB e EJS.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors