Coverage Status Repository size GitHub last commit

Projeto RPG Dice Roller

Este projeto é uma API em Java usando o framework Spring Boot para rolagem de dados de RPG.

Com foco no em tornar acessível dados que fogem do padrão e que não estão mais disponíveis no mercado como por exemplo o sistema Star Wars Fronteiras do Empério.


Conteúdo

  1. Dados genéricos
  2. Star Wars: Fronteiras do Império
  3. Mutant: Ano Zero
  4. Exemplo de uso
  5. Demo
  6. Histórico de lançamentos
  7. Tecnologias utilizadas
  8. Contribuições

Dados genéricos

GET /v1/dice/roll

Realiza a rolagem dos dados de acordo com os parâmetros (quantity e faces) recebidos na URL e retorna um JSON com o resultado da rolagem.

  • Quantity: quantidade de dados que serão rolados, parâmetro opcional (Default = 1).
  • Faces: quantidade de faces dos dados que serão rolados, parâmetro opcional (Default = 20).

Exemplo parâmatro:

?quantity=3&faces=12

Exemplo resultado:

[3,10,8]

Dados Star Wars: Fronteiras do Império

GET /v1/dice/sw/force

Realiza a rolagem dos dados de acordo com os parâmetros (quantity e faces) recebidos na URL e retorna um JSON com o resultado da rolagem.

  • Quantity: quantidade de dados de Força que serão rolados, parâmetro opcional (Default = 1).
?quantity=3
Dado Nome
Forca Dado de força

Exemplo resultado:

{
  "luz": 2,
  "negro": 3
}
Resultado Resultado
Luz Pontos do lado Luz
Negro Pontos do lado Negro

POST /v1/dice/sw/roll

Realiza a rolagem dos dados de acordo com os parâmetros recebidos em um JSON e retorna um objeto JSON com o resultado da rolagem.

Dado Nome Descrição
Habilidade Habilidade quantidade de dados de Habilidade a serem rolados.
Proficiencia Proficiência quantidade de dados de Proficiência a serem rolados.
Dificuldade Dificuldade quantidade de dados de Dificuldade a serem rolados.
Desafio Desafio quantidade de dados de Desafio a serem rolados.
Ampliacao Ampliação quantidade de dados de Ampliação a serem rolados.
Contratempo Contratempo quantidade de dados de Contratempo a serem rolados.

Exemplo parâmatro JSON:

{
  "habilidade": 3,
  "proficiencia": 1,
  "dificuldade": 2,
  "desafio": 1,
  "ampliacao": 1,
  "contratempo": 2
}

Exemplo retorno JSON:

{
    "sucessos": 3,
    "triunfos": 0,
    "vantagens": 0,
    "fracassos": 0,
    "desesperos": 1,
    "ameacas": 2
}
Dado Resultado
Sucesso Sucessos
Vantagem Vantagens
Triunfo Triunfos
Fracasso Fracassos
Ameaca Ameaças
Desespero Desesperos

Exemplo de uso

Alguns exemplos interessantes e úteis sobre como seu projeto pode ser utilizado.

GET https://dice-api.up.railway.app/v1/dice/roll

GET https://dice-api.up.railway.app/v1/dice/roll?quantity=3&faces=12

GET https://dice-api.up.railway.app/v1/dice/sw/force

GET https://dice-api.up.railway.app/v1/dice/sw/force?quantity=4

POST https://dice-api.up.railway.app/v1/dice/sw/roll

Para mais exemplos, consulte a Wiki.

Demo

https://dice-api.up.railway.app/

Histórico de lançamentos

  • 1.0.0
    • Endpoint GET /v1/dice/roll
    • Endpoint POST /v1/dice/sw/roll
    • Endpoint GET /v1/dice/sw/force

Tecnologias utilizadas

  • Java 19
  • Spring Boot
  • JUnit 5
  • Mockito

Contribuições

  1. Faça o fork do projeto (https://github.com/grcreutzberg/dice-api/fork)
  2. Crie uma branch para sua modificação (git checkout -b feature/newChange)
  3. Faça o commit (git commit -am 'Add some feature')
  4. Push (git push origin feature/newChange)
  5. Crie um novo Pull Request