data.yaml

main
Bel LaPointe 2025-10-05 10:44:09 -06:00
parent 5e48c96148
commit 3c60633723
5 changed files with 67 additions and 0 deletions

View File

@ -1,5 +1,8 @@
# The plan
* prize
* |
6364911004025400205 8376 GS GC
* a rulebook for the GM
* stat blocks with flavor text (+lorem ipsum)
* QR codes that link to more info OR secret code
@ -22,6 +25,9 @@
* only used player aspects are relevant QR codes
* complete story to reveal relevant pieces
* maps
* https://i.pinimg.com/1200x/11/98/02/11980234db04345439af4ae5afcad494.jpg
* https://i.pinimg.com/1200x/e8/a3/a6/e8a3a6339dcee89f3bf105b355156041.jpg
* https://i.pinimg.com/736x/1b/51/48/1b5148d541deb8ea37901b9a46627d73.jpg
## Rulebook

11
srv/data.yaml Normal file
View File

@ -0,0 +1,11 @@
routes:
"/diagonalheart/ancestries/clank": ""
"/diagonalheart/ancestries/katari": ""
"/diagonalheart/classes/bard": ""
"/diagonalheart/classes/rogue": ""
"/diagonalheart/weapons/legendary-returning-blade": ""
"/diagonalheart/weapons/ilmaris-rifle": ""
"/diagonalheart/consumables/stardrop": ""
"/diagonalheart/consumables/death-tea": ""
"/diagonalheart/adversaries/tiny-red-ooze": ""
"/diagonalheart/adversaries/young-ice-dragon": ""

5
srv/go.mod Normal file
View File

@ -0,0 +1,5 @@
module srv
go 1.24.2
require gopkg.in/yaml.v3 v3.0.1 // indirect

3
srv/go.sum Normal file
View File

@ -0,0 +1,3 @@
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=

42
srv/main.go Normal file
View File

@ -0,0 +1,42 @@
package main
import (
"net/http"
"os"
"gopkg.in/yaml.v3"
)
func main() {
if err := run(); err != nil {
panic(err)
}
}
func run() error {
f := os.Args[1]
b, err := os.ReadFile(f)
if err != nil {
return err
}
var data struct {
Routes map[string]string
}
if err := yaml.Unmarshal(b, &data); err != nil {
return err
}
return http.ListenAndServe(":3001", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
k := r.URL.Path
v, ok := data.Routes[k]
if !ok {
http.NotFound(w, r)
return
}
w.Header().Set("Content-Type", "text/html")
w.Write([]byte(v))
}))
}