Go binary/server for helping run/build sessions for the Maze Rats TTRPG
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

389 lines
7.8 KiB

basePath: /
definitions:
tables.Building:
properties:
rooms:
items:
type: string
type: array
tacticalFeature:
type: string
type:
type: string
type: object
tables.Character:
properties:
appearance:
type: string
background:
type: string
clothing:
type: string
feature:
type: string
items:
items:
type: string
type: array
mannerism:
type: string
name:
type: string
personality:
type: string
physical_detail:
type: string
seed:
type: integer
stats:
$ref: '#/definitions/tables.CharacterStats'
type: object
weapons:
items:
type: string
type: array
type: object
tables.CharacterStats:
properties:
armor:
type: integer
dex:
type: integer
max_health:
type: integer
str:
type: integer
wil:
type: integer
type: object
tables.City:
properties:
activities:
items:
type: string
type: array
districtThemes:
items:
type: string
type: array
events:
items:
type: string
type: array
factions:
items:
$ref: '#/definitions/tables.Faction'
type: array
lowerClassBuildings:
items:
$ref: '#/definitions/tables.Building'
type: array
seed:
type: integer
tacticalStreetFeatures:
items:
type: string
type: array
theme:
type: string
upperClassBuildings:
items:
$ref: '#/definitions/tables.Building'
type: array
type: object
tables.Faction:
properties:
goal:
type: string
trait:
type: string
type:
type: string
type: object
tables.Maze:
properties:
activities:
items:
type: string
type: array
entrance:
type: string
form:
type: string
hazards:
items:
type: string
type: array
layout:
type: string
reward:
type: string
rooms:
items:
type: string
type: array
ruination:
type: string
trapEffects:
items:
type: string
type: array
trapTriggers:
items:
type: string
type: array
tricks:
items:
type: string
type: array
type: object
tables.Monster:
properties:
ability:
type: string
base:
type: string
feature:
type: string
personality:
type: string
seed:
type: integer
stats:
$ref: '#/definitions/tables.MonsterStats'
type: object
tactics:
type: string
trait:
type: string
weakness:
type: string
type: object
tables.MonsterStat:
properties:
qualifier:
type: string
value:
type: integer
type: object
tables.MonsterStats:
properties:
armor:
$ref: '#/definitions/tables.MonsterStat'
type: object
attack:
$ref: '#/definitions/tables.MonsterStat'
type: object
dex:
$ref: '#/definitions/tables.MonsterStat'
type: object
health:
$ref: '#/definitions/tables.MonsterStat'
type: object
str:
$ref: '#/definitions/tables.MonsterStat'
type: object
wil:
$ref: '#/definitions/tables.MonsterStat'
type: object
type: object
info:
contact: {}
license: {}
title: Maze Rats API
paths:
/api/character/{seed}:
get:
parameters:
- description: Int64
in: path
name: seed
required: true
type: integer
produces:
- application/json
- ' text/plain'
responses:
"200":
description: OK
schema:
$ref: '#/definitions/tables.Character'
summary: Generate a specific player character using a seed
tags:
- character
/api/city/{seed}:
get:
parameters:
- description: Int64
in: path
name: seed
required: true
type: integer
produces:
- application/json
- ' text/plain'
responses:
"200":
description: OK
schema:
$ref: '#/definitions/tables.City'
summary: Generate a specific city using a seed
tags:
- city
/api/dungeon/{seed}:
get:
parameters:
- description: Int64
in: path
name: seed
required: true
type: integer
produces:
- application/json
- ' text/plain'
responses:
"200":
description: OK
schema:
$ref: '#/definitions/tables.Maze'
summary: Generate a specific dungeon using a seed
tags:
- dungeon
/api/generate/catastrophe:
get:
produces:
- application/json
- ' text/plain'
responses:
"200": {}
summary: Generate a catastrophe
tags:
- magic
/api/generate/character:
get:
produces:
- application/json
- ' text/plain'
responses:
"200":
description: OK
schema:
$ref: '#/definitions/tables.Character'
summary: Generate a player character
tags:
- character
/api/generate/city:
get:
produces:
- application/json
- ' text/plain'
responses:
"200":
description: OK
schema:
$ref: '#/definitions/tables.City'
summary: Generate a city
tags:
- city
/api/generate/dungeon:
get:
produces:
- application/json
- ' text/plain'
responses:
"200":
description: OK
schema:
$ref: '#/definitions/tables.Maze'
summary: Generate a dungeon
tags:
- dungeon
/api/generate/insanity:
get:
produces:
- application/json
- ' text/plain'
responses:
"200": {}
summary: Generate a insanity
tags:
- magic
/api/generate/monster:
get:
produces:
- application/json
- ' text/plain'
responses:
"200":
description: OK
schema:
$ref: '#/definitions/tables.Monster'
summary: Generate a monster
tags:
- monster
/api/generate/mutation:
get:
produces:
- application/json
- ' text/plain'
responses:
"200": {}
summary: Generate a mutation
tags:
- magic
/api/generate/name:
get:
produces:
- application/json
- ' text/plain'
responses:
"200": {}
summary: Generate a character name
tags:
- character
/api/generate/spell:
get:
produces:
- application/json
- ' text/plain'
responses:
"200": {}
summary: Generate a spell
tags:
- magic
/api/monster/{seed}:
get:
parameters:
- description: Int64
in: path
name: seed
required: true
type: integer
produces:
- application/json
- ' text/plain'
responses:
"200":
description: OK
schema:
$ref: '#/definitions/tables.Monster'
summary: Generate a specific monster using a seed
tags:
- monster
/api/roll/{xdy}:
get:
parameters:
- description: Roll in xdy format (e.g. 1d6)
in: path
name: xdy
required: true
type: string
produces:
- application/json
- ' text/plain'
responses:
"200": {}
summary: Roll some dice
tags:
- dice
swagger: "2.0"