MVP is getting closer... backend is next!
Updated: Jun 19, 2018
Hi! Again, another 3 weeks of good work and we are very close to having an MVP (minimum viable product). Tutorials were finished and polished a little bit and replays are now being stored in the database as they should, although they can't be triggered from the game yet. We also have timers in place for our Lives system. As part of the monetisation strategy the game will have a limited (3) amount of lives. Each life is consumed if the player joins a game and doesn't win the match. If you win the match, you keep the life, otherwise it's consumed.
Timers are stored and synchronised from our server; they will not be stored locally on the device (making it just a little harder to hack). That means players will either buy bundles with lots of lives or watch a rewarded video ad to get one life instantly. They can also wait of course. I want our players to fully experience this game even if that means not paying us a single cent or watching a video ad. One match every 30 minutes (assuming you always lose) sounds fair to me.
I consider this to be near MVP because at this point you can have a solid idea on what the game is about. Our core elements are already working: small and simple tutorial, working multiplayer and timed lives. The rest of the product can be expanded upon this and the core game experience will be the same. So... what's next you might ask?
Back-end stuff...since we are not using PlayFab or GameSparks or any of the mayor players in the Multiplayer As A Service space, we need to make sure our humble custom-made setup will be able to scale and support our games. If we were starting right now, we will probably had gone the "easy" route (just use a provider infrastructure and SDK) but when we started they were not as robust as they are now. So fast forward now, our multiplayer is working but it is far from being optimised. I need to build some very simple tools to monitor, benchmark and stress test our back-end stuff.
That's a custom terminal dashboard for our game server instance. It's early WIP but you can see it's showing us very useful information as of now. Over the course of the next two weeks I will be working on this dashboard to leverage on it once we move to the tuning and optimisation phase of the TCP stuff. We need to know the latency our players are experiencing, how many packets do they really need to have a great experience without compromising network resources, what is the amount of player one server instance can have, etc. I also think this terminal dashboard can be expanded a little bit to do some management of database resources (mostly editing stuff). A nice to have feature that is in the backlog is being able to plug into any running session and watch it while it is being played. Of course, no fancy graphics; just characters on screen. But it is to be seen if that has some other utility beyond being something cool to watch and have...
So.. that's it for now. Have a nice weekend!