TI-UNICESUMAR / 2024-desafio-profissional-v-ESOFT5S-A

12 stars 14 forks source link

Trabalho 2 Bimestre - Definição #20

Closed ThiagoBussola closed 1 month ago

ThiagoBussola commented 4 months ago

Uma breve introdução ao domínio do problema

O que é RPG?

RPG, sigla para Jogo de Interpretação de Papéis, é uma atividade colaborativa onde os jogadores assumem a persona de personagens em um mundo ficcional. Através da imaginação e da narração, os jogadores guiam seus personagens por aventuras épicas, enfrentando desafios, tomando decisões e construindo uma história em conjunto.

Elementos Essenciais do RPG:

Narrador: O maestro da história, responsável por guiar a narrativa e apresentar os cenários, desafios e personagens não-jogadores (NPCs) que os jogadores encontrarão. Jogadores: Cada jogador cria e interpreta um personagem único, definindo suas características, habilidades, motivações e personalidade. Regras: Um conjunto de regras serve como base para as ações dos jogadores, desde combate até resolução de problemas, garantindo equilíbrio e coerência na história. Imaginação: A chave para o sucesso do RPG! É através da criatividade e da imersão que os jogadores dão vida aos seus personagens e constroem uma experiência memorável.

D&D, lançado em 1974, é considerado o precursor dos RPGs modernos. Nele, os jogadores embarcam em missões épicas em um mundo de fantasia medieval, combatendo monstros, desvendando segredos e buscando tesouros.

Características de D&D:

Sistema de Regras: D&D utiliza um conjunto detalhado de regras que abrangem desde combate até interação social, garantindo um jogo equilibrado e desafiador. Classes e Raças: Os jogadores podem escolher entre diversas classes, como guerreiros, magos e clérigos, cada uma com habilidades e estilos de jogo únicos. Além disso, podem selecionar a raça de seus personagens, como humanos, elfos, anões e orcs. Masmorras e Dragões: O nome do jogo já diz tudo! Explore masmorras repletas de perigos, encontre monstros lendários e derrote dragões poderosos. Campanhas Épicas: D&D oferece diversas campanhas prontas para jogar, com histórias envolventes e personagens memoráveis. Os jogadores também podem criar suas próprias aventuras, expandindo o universo do jogo e explorando infinitas possibilidades.

Benefícios do RPG:

Criatividade e Imaginação: O RPG estimula a criatividade e a capacidade de improvisar, pois os jogadores precisam pensar fora da caixa para superar os desafios que encontram. Trabalho em Equipe: O sucesso no RPG depende da colaboração entre os jogadores, que precisam trabalhar juntos para alcançar seus objetivos. Resolução de Problemas: Os jogadores desenvolvem habilidades de resolução de problemas ao lidar com os diversos desafios que surgem durante a aventura. Contagiem de Histórias: O RPG proporciona uma experiência única de contar histórias, onde cada jogador contribui para a narrativa, criando memórias inesquecíveis.

Desenvolvimento da aplicação

Utilizando a API utilizando a https://www.dnd5eapi.co/, desenvolva uma aplicação utilizando Nest JS com as seguintes funcionalidades:

Fique a vontade para adicionar outros items na criação do personagem

Regra de negócio básica!

Dicas

Uma forma interessante de construir sua aplicação, principalmente se estiver utilizando mongodb, seria utilizar-se da vantagem de não precisar trabalhar com uma tabela pré-definida. Dessa forma você poderia criar no seu registro do personagem um campo chamado step ou passo. Ao definir o nome e atributos do personagem, salve esse registro no banco com o passo: 1 Ao definir a raça do personagem, salve um novo registro com o passo: 2 e assim por diante. Dessa forma você tem o rastreio completo da criação e alteração dos dados do personagem até chegar na montagem final da ficha

Como começar? É de extrema importância que você leia a documentação da API: https://5e-bits.github.io/docs/api/get-a-class-by-index Aqui podemos ver como fazemos uma requição para API para receber os dados de uma classe. Sendo assim, você criaria uma rota na sua aplicação que receberia uma classe como parametro. Pegue o nome da classe, envie para a API do D&D, salve os dados retornados da API em memória e trabalhe com eles para a etapa atual de criação de personagem.

Links úteis: