- O jogo é composto por dois jogadores, sendo um deles responsável pela onça e o outro pela matilha de cachorros.
- O jogador com a onça deve capturar cinco cachorros.
- O jogador com a matilha deve encurralar a onça, deixando-a sem possibilidade de se movimentar pelo tabuleiro.
- Ganha quem conseguir alcançar o seu objetivo primeiro.
- As peças podem ser movidas em qualquer direção pelo tabuleiro (frente, trás, lados ou diagonal).
- O jogador com a onça sempre começa o jogo.
- A captura acontece quando a peça da onça salta por um dos cachorros e para numa casa vazia, similar ao jogo de Damas e, assim como ocorre em Damas, é permitido captura simultânea.
Capturar todas as peças do adversário ou bloqueá-lo para que ele não possa mais mover sua peça.
Onça: O jogador que controla a Onça tem como objetivo capturar cinco cachorros do adversário, e pode se mover em qualquer direção diagonal para uma casa vazia adjacente, e pode saltar sobre as peças adversárias em uma única jogada.
Cachorros: O jogador que controla os cachorros tem como objetivo bloquear a movimentação da onça, impedindo que ela se mova para uma casa vazia adjacente. Os cachorros podem se mover em qualquer direção diagonal para uma casa vazia adjacente, assim como a onça, mas não podem saltar sobre as peças adversárias.
O jogador vence quando captura cinco cachorros do adversário do adversário ou bloqueia seu adversário de tal forma que ele não possa mais mover suas peças. Se ambos os jogadores estiverem na fase de voo e nenhum jogador conseguir vencer em 20 jogadas consecutivas, o jogo é considerado um empate.
Se durante uma partida for comprovado que uma
posição se repetiu 4 vezes, a partida estará empatada. Também chamado
de empate pela repetição de lances, deve ser reclamado pelo jogador no
momento que ocorrer.
| Requisitos Funcionais | |
|---|---|
| RF1 | O usuário deve Registrar e autenticar no Sistema |
| RF2 | O usuário deve criar uma partida |
| RF3 | Seleção de adversários disponíveis |
| RF4 | O usuário deve movimentar as peças |
| RF5 | O usuário deve CapturaR peças adversárias |
| RF6 | O usuário deve receber uma finalização do jogo quando todas as peças do adversário são capturadas ou bloqueadas |
| Requisitos Não Funcionais | |
|---|---|
| RF9 | Segurança |
| RF10 | Desempenho |
| RF11 | Confiabilidade |
| RF12 | Escalabilidade |
| RF13 | Usabilidade |
https://www.figma.com/file/zrfygafUcHBCc2I6Ea66m8/JOGO-DA-ON%C3%87A?node-id=4-67&t=tVwjm1CcruMxOlTQ-0 https://www.figma.com/file/lirMVMoYpfZita4FG2b7Jp/CRUD?node-id=0-1&t=Wmu22dLC5KMH7KLd-0 http://www.mae.ufpr.br/downloads/atividade_jogo_da_onca.pdf https://dev.azure.com/matheusfagundes2/Jogo_da_on%C3%A7a/_wiki/wikis https://ludopedia-anexos.nyc3.digitaloceanspaces.com/jogo_da_onca_regras_jogo_da_onca_2016_89601.pdf
Dependências locais Então após baixar o repositório, deve se entrar na pasta api, não se esqueça de instalar as dependências locais do projeto:
npm install
Rodar o projeto Para rodar o projeto localmente, basta rodar o comando abaixo:
npm run dev
Isto irá automaticamente rodar a API no seguinte endereço:
http://localhost:3333/
http://localhost:3333/api/user
Observações:
Para derrubar todos os serviços, basta utilizar as teclas CTRL+C, que é o padrão dos terminais para matar processos. Você pode conferir o endereço dos outros serviços dentro do arquivo .env encontrado na raiz do projeto, como por exemplo o endereço e credenciais do Banco de Dados