Simple match making using google open match.
Currently it takes one ticket, creates a match (with only one player), assigns fake game server ip and sends the match
- Game Frontend here means our code backend
- Client means actual frontend
- Install minikube
- Run minikube
minikube start --cpus=3 --memory=2500mb
(to delete useminikube delete
) - Run
eval $(minikube docker-env)
(minikube will use local docker repository) - Cd into frontend and run
docker build -t realpvn/open-match-function .
(this builds match making function docker image) - Run setup
./setup --new
- It deletes old minikube and starts new one
- It also sets required environment variable which will be used in our code to get host address and ports of our pods
- Source bashrc file
- Run frontend, and director. (Match function will run inside kubernetes as a service (refer to the image above) so we do not run it manually, it starts on step 5)
(Step 1-4 is required only first time after restart/installation of minikube, after that if we want to restart whole open-match pods/service use
./setup
and it should delete old pods/service and start new)
- Synchronizer panics because of ulimit (upgrading kernel should fix this, refer to this github issue)
- Fetching tickets fail sometimes (probably because of synchronizer ^)