I'm no artist but I thought I might play around with some concept art. Here is a monster, not sure what type of monster, but a scary one.
This is the beginnings of a space ship. The planet is stationary, but the spaceship is turning.
Fundamentally this game is not about teaching people to code. It is about fun and that means I want the API to be creative brain friendly. I'm taking the "use case" approach and one use case is
"the cannon should pointed at bad guy"
In my (cut down - missing DeltaTime) C++ code, it looks something like this...
One aspect of this game is that I would like to integrate to Blockly. Not to teach anyone how to program, but to provide a rich way to script the environment.
One of the issues is that due to the hexagon shape and the need for characters to fir through one side is that the hexagons are quite big. To get around this, edge technology has been introduced!
a) What debugging capabilities do you need to provide?
c) Maybe use a graphical language like MIT's Scratch, however, depth might be sacrificed.
d) What happens if the player does something not expected like spawn a million tanks?
e) Will scripting be a major part of the game?
f) Script safety? (intentionally all file operations were removed).
g) Can user generated content create profanities or spread hate?
h) Will it muck with the classification rating?
i) What happens if the script hangs?
One of the big things about building games is storing your creation and for me that is cloud integration.
I'm using Azure's Table Storage service. Every time a player builds or destroys a block, it gets added into the cloud. When the player restarts, it gets restored from the cloud.
This might not seem very efficient, but it has a level of robustness built in. In the even of an cloud outage like the one that happened in Sydney a few weeks ago, at worst the player will need to rebuild a little bit. If the game had been saved as a blob, the player could have lost the entire session's work or even worse their entire world. To improve efficiency the plan is to run a job each night to consolidate the changes into a compressed zip payload.
Of course this tech is multiplayer aware, so it is actually the listening server that gets and sends data to and from the cloud and spreads it out to all the players.
My daughter made this 'house' kind of looks more like a bunker. But she is having fun. Unknown to me, she has invited her mates over next Friday to give it a go - no pressure!
One of the key aspects of this game is multiplayer. Having the ability to share your creations and interact with real people can be quite fun. By putting this in early hopefully networking issues can be less painful over all.
A good overview of network approaches can be found here ue4 doco