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
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"
|
|
|