Skip to content

Um simulador de RPG que tem como objetivo auxiliar autores de sistemas e mestres a equilibrar desafios de RPG

License

Notifications You must be signed in to change notification settings

coppolaop/SimuladorRPG

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

logo

SimuladorRPG

-----------------------------------------------------

Kotlin

GitHub license

📋 Tabela de conteúdo

  1. 🎲️ Sobre SimuladorRPG
  2. 👾 O que é essa ferramenta?
  3. ⚖️ Funcionalidades
  4. 🔨 Desenvolvimento e teste unitário
  5. 🌿 Variáveis de ambiente
  6. 🐙 GitHub Actions
  7. ©️ Licença
  8. ❤️ Contribuidores

-----------------------------------------------------

Alguns sistemas modernos de RPG de mesa possuem em seu cerne a proposta de combates equilibrados. Muitos fatores são levados em conta nesse equilíbrio, mas abstraindo o encontro à ataques e curas (como infelizmente a maioria dos jogadores faz), o combate não passa de estatística e matemática. A partir desse ponto de vista, esta aplicação foi desenvolvida com intuito de auxiliar autores de sistemas, e mestres, a equilibrar monstros para seus desafios de RPG. Entenda que este programa não está incentivando seu jogo a ser resumido a ataques e defesas, mas te dando ferramentas para mensurar o quão difícil um desafio pode ser, levando em conta apenas as estatísticas.

Mestre, grandes monstros têm grandes mitos.
Além de deixarem pistas de sua presença no entorno,
permitindo uma boa antecipação em sua narração,
é possivel que, com uma boa investigação,
o grupo encontre informações preciosas
antes de lidar com eles.
-- O Caminho do Mestre Cafeinado (Vol 1) - Rafael Balbi

E como saber o quão perigoso um monstro realmente é?
É neste ponto que entra esta aplicação!

-----------------------------------------------------

SimuladorRPG é um simulador de combates de RPG, que recebe a ficha de um monstro, o nível desejado dos personagens, a amostragem de execução e alguns parâmetros de regras utilizadas na mesa.

É uma aplicação desktop Backend para te ajudar a preparar desafios.

-----------------------------------------------------

  • Simulação de rolagens de dado;
  • Comparação de rolagens de acerto contra Classes de Armadura dos alvos;
  • Sistema de ações;
  • Definição de nível do grupo;
  • Emulação opcional de ataques críticos em acertos maiores que superem a Classe de armadura do alvo em 10 pontos;
  • Emulação opcional de três ações por turno;

-----------------------------------------------------

Este projeto utiliza a linguagem Kotlin. Para mais informações sobre esta tecnologia, consulte o site: https://kotlinlang.org. Utilize sua IDE de preferência para o desenvolvimento. Para os testes unitários, nossa meta é de tentarmos ter a cobertura máxima, levando em conta nossas regras de negócio. Para executá-los, utilize sua IDE.

Running the application in dev mode

A aplicação é desktop e por enquanto sua execução é em prompt de comando. Apenas abra o arquivo Main.kt e execute-o.

Related Guides

-----------------------------------------------------

Até o presente momento, não utilizamos variávies de ambiente na aplicação, mas os arquivos de execução precisam estar na pasta resources (/src/main/resources). Uma pasta deve ser criada para armazenas os monstros, deu nome deve ser: "/pdm". Para criação do arquivo, tome como base este arquivo utilizado no teste unitário.
Existem algumas configurações que são feitas no main da aplicação, antes da chamada do simulador, elas são:

Name Description
SimuladorService("X", Y) Realiza a configuração inicial do simulador, onde X é o nome do arquivo onde o monstro está e Y é a quantidade desejada de monstros daquele tipo na simulação
.ativarAcaoTripla() Ativa o sistema de três ações por turno
.ativarCriticoEmMais10() Ativa a funcionalidade de acerto crítico em acertos que superem a Classe de Armadura do alvo em 10 pontos
.definirNivel(X) Define o nível dos personagens na simulação, onde X é o nível desejado
.obterTaxasDeVitoriaPJ(X) Inicia a simulação, onde X é a amostragem desejada, o número de combates que será realizado. Para valores mais precisos, utilize números mais altos

-----------------------------------------------------

Este projeto ainda não utiliza GitHub Actions para automatizar tarefas, mas pretendemos utilizar.

Este projeto está sobre a licença Licença Apache, Versão 2.0.

-----------------------------------------------------

About

Um simulador de RPG que tem como objetivo auxiliar autores de sistemas e mestres a equilibrar desafios de RPG

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages