LLOB2 continues

After over a year when I have been busy with other things, I find myself with some time available to work on Lore Lords again.

Going through my notes and cloud servers I was able to get going again with my action list.

So strange coming back to something cold after so long, but I’m finding my way around the code and getting to grips with where I left off.

The first action was the complete of the distribution of the game onto the cloud server with control and monitoring through a live database.

I now have the game checking the main server (which is on a different machine) for what games are available and what to do with them, then a state machine ticking over a phase at a time if the game is running or putting the game on hold gracefully if I want to bring down the server.

The good news is I can login to my game server using ‘UbuntuBash’ on my Windows 10 PC and ‘nohup’ a LLOB2 service into the background which stays resident so long as a live game is on the system. As the game is also the web server that both throws up my retro HTML web page form and also runs the HTTP API interface the game service does need to be running even when the game is between phases and turns. With ‘nohup’ I can close my shell without killing the game.

Control and monitoring of the game is done using phpmyadmin at the moment. This shows the phase and turn number as well as current status of the game. I can also change game status in this way (I’m not developing custom management pages yet, no need during this early stage).

It’s nice having the game running and playable, but I still don’t have a gateway developed to allow users to gather and launch a game themselves – at the moment I have to enter their data into the game on creation (or manually through the HTTP API).

The next step will be to have new players be added and editable through the database rather than in the initiating routines in the code. In this way I will be able to add and remove players during a live game, this should make testing with more than just one user (me) possible.