Refocusing# Aug 29, 2021 by Tony "Sgt. Flame" Richards
Over the past couple of weeks I’ve taken a short “innovation sprint” break. I had a lot of fun and made some progress on some things that might prove to be valuable in the future, but nothing that I can use for now.
It’s time to get back to heads-down coding.
I’ve pretty much nailed down the
Authentication Service, and have both a
NATS as well as
REST API for it exposed.
Also, using the
VARest Unreal Plugin, I was able to use the
Authentication Service from the game client.
Now, not only does
Game Studio authenticate, so does the game client.
Once authenticated, both the game client as well as the
Game Studio use a
JWT while connecting to game servers, rest API, and NATS. This provides me with a distributed authentication system.
NATS, I was able to configure it so that I could access it via web sockets, so the
Game Studio not only uses the
REST API, but it can also participate in the
The game client still cannot use NATS, but for now it’s not a problem. If I need to use req/reply then I can use the
REST API, and if I need pub/sub or other messaging then I can use the Unreal networking.
In addition to finishing up authentication, I’ve cleaned up a lot of code, refactored the main
Workbench React component, and completed the implementation of a simple User editor.
I still have a little work on the user editor for things like resetting passwords, etc, but that can come later.
I’ve made several improvements to the micro services design, and with that I’ve implemented a
File Store Service which uses
BBolt as I had planed a month or so ago.
I’ve also implemented a
User Service which is used by the
Game Studio for editing users, and it’s also used by the
Authentication Service to verify user-id and password.
I’m pleased as to how well this all came together.
Next weekend is a three day weekend for me, so I’m hoping to resume working on the game client and return to the game server persistence implementation.
– Sgt. Flame