Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alienspaces/go-mud
A M.U.D (multi user dungeon) with a back end API built with Go and a front end UI built with Flutter.
https://github.com/alienspaces/go-mud
dart flutter game go mud
Last synced: 29 days ago
JSON representation
A M.U.D (multi user dungeon) with a back end API built with Go and a front end UI built with Flutter.
- Host: GitHub
- URL: https://github.com/alienspaces/go-mud
- Owner: alienspaces
- License: mit
- Created: 2021-10-06T08:56:48.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-03-18T08:10:17.000Z (9 months ago)
- Last Synced: 2024-08-03T23:26:37.155Z (4 months ago)
- Topics: dart, flutter, game, go, mud
- Language: Go
- Homepage:
- Size: 2.04 MB
- Stars: 26
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README-API.md
- License: LICENSE
Awesome Lists containing this project
- awesome-golang-repositories - go-mud
README
# Go M.U.D - API
- [Getting Started](README.md)
- [How to Play](README-HOWTOPLAY.md)
- [API](README-API.md)
- [Design](README-DESIGN.md)
- [TODO](README-TODO.md)## Dungeons
**List dungeons:**
- [Response Schema](backend/schema/game/dungeon/response.schema.json)
```bash
GET /api/v1/dungeons
```**Get dungeon:**
- [Response Schema](backend/schema/game/dungeon/response.schema.json)
```bash
GET /api/v1/dungeons/{:dungeon_id}
```## Locations
**List dungeon locations:**
- [Response Schema](backend/schema/game/location/response.schema.json)
```bash
GET /api/v1/dungeons/{:dungeon_id}/locations
```**Get dungeon location:**
- [Response Schema](backend/schema/game/location/response.schema.json)
```bash
GET /api/v1/dungeons/{:dungeon_id}/locations/{:location_id}
```## Characters
**Create character:**
- [Request Schema](backend/schema/game/character/create.request.schema.json)
- [Response Schema](backend/schema/game/character/response.schema.json)```bash
POST /api/v1/characters
```**List characters:**
- [Response Schema](backend/schema/game/character/response.schema.json)
```bash
GET /api/v1/characters
```**Get character:**
- [Response Schema](backend/schema/game/character/response.schema.json)
```bash
GET /api/v1/characters/{:character_id}
```**Update a character:**
📝 _Unimplemented_
- [Request Schema](backend/schema/game/character/response.schema.json)
- [Response Schema](backend/schema/game/character/response.schema.json)```bash
PUT /api/v1/characters/{:character_id}
```## Dungeon characters
Dungeon instances are created to accomodate a maximum number of characters per dungeon.
**Enter dungeon:**
A character enters into a dungeon.
- [Response Schema](backend/schema/game/dungeoncharacter/response.schema.json)
```bash
POST /api/v1/dungeons/{:dungeon_id}/character/{:character_id}/enter
```**Exit dungeon:**
A character exits from a dungeon.
- [Response Schema](backend/schema/game/character/response.schema.json)
```bash
POST /api/v1/dungeons/{:dungeon_id}/character/{:character_id}/exit
```**Get dungeon character:**
Lists the currently running dungeon instances.
- [Response Schema](backend/schema/game/dungeoncharacter/response.schema.json)
```bash
GET /api/v1/dungeons/{:dungeon_id}/characters/{:character_id}
```## Actions
Characters are controlled by performing actions.
**Create a character action:**
- [Request Schema](backend/schema/game/action/create.request.schema.json)
- [Response Schema](backend/schema/game/action/response.schema.json)```bash
POST /api/v1/dungeons/{:dungeon_id}/characters/{:character}/actions
```