This multiplayer demo is a cloud first implementation of a global scale, realtime multiplayer game utilising dedicated game servers, utilising both Google Cloud's products and open source gaming solutions.
Apache License 2.0
117
stars
16
forks
source link
Add a basic match function, fake ticket generator #125
We use a MatchProfile per region so that the match function is evaluated for each region and all open tickets.
In the match function, for a given region, we sort tickets by some "score" that includes latency to that region and skill and assign matches for that region. We assign an evaluator score based on the aggregated score on the ticket.
The evaluator score should let us assign ideal matches between the regions, so in general the latency should be a big component of that score.
Add a fake frontend that can create tickets for the new match function
Creates fake tickets with random latency and skill. Always-on deployment, but lays dormant unless you change the configmap.
New ticket "API" to match function can be see in the fake frontend:
Ran: for module in $(find $(pwd) -name go.mod | xargs -n1 dirname | cut -d/ -f9- | grep -v .terraform); do cd ~/go/src/$module; go get .; go mod tidy; done
Also add go.work{,.sum} to ignores (per best practice of not checking these in).
Adds a less rudimentary match function:
MatchProfile
per region so that the match function is evaluated for each region and all open tickets.Add a fake frontend that can create tickets for the new match function
New ticket "API" to match function can be see in the fake frontend:
Along the way:
for module in $(find $(pwd) -name go.mod | xargs -n1 dirname | cut -d/ -f9- | grep -v .terraform); do cd ~/go/src/$module; go get .; go mod tidy; done
go.work{,.sum}
to ignores (per best practice of not checking these in).Towards #47