My son and I have been writing MineCraft mods which had been fun and educational for him, but a little frustrating in the last month.
If you have been following the world of Minecraft you will know that there has been a rapid succession of updates, many of them buggy or bug-fixes for the previous bugs.
Every time MineCraft updates, we need to wait for the SDKs to update, deal with breaking changes and then re-release.
To top it all off, there is now going to be an official Modding API. Although this is a good thing, it still means we need to re-code things when this is released.
As we only really get 3 hours a week to work on this, we are in effect standing still trying to keep up.
Also faced with the new API, we have decided to down tools for a few months and spend our Father & Son coding time to start work on our own game.
My son has decided he really really wants to be a game developer when he grows up, but for me this is an excuse to get some practical maths, logic and problem solving into his life.
I’ve not worked as a game developer for 22 years and I stopped doing *real* graphics programming 10 years ago.
When Notch announced he was working on a space game http://0x10c.com/ it kind of sounded like the kind of game I always wanted to make, not that I would ever have the time or skill to build something as good as Notch 🙂
But it did remind me of my original project.
After checking out some of the screenshots (1 2 3 4 5 6 7) I’m kind of relieved that he is making an awesome game, but it is 3D, and my idea was always more of a 2D physics game. Notch’s new game looks like a reboot of Elite, which I loved, along with Mercenary.
I’m kind of building what Terraria was to Minecraft. As far as I can tell, what we are doing has not been done before, at least with the strong physics simulation angle.
We kind of want to make a cross between space-wars, little big planet and sim-city.
- Epic slow lumbering space battles – Broadsides! Ships being torn apart! Physics!
- Systems engineering – Design of ships systems, Energy and resource control
- Simple visual programming -Lego Robotics style simple code.
- Multiplayer – It’s probably only going to fun against a human.
- Mining/Trading – Elite style trading + Mining and refining.
We in effect want to build a simple game but with enough emergent behavior that people would be able to do some surprising things.
I started design of this 10 years ago, here is one of my old sketches.
The idea is you build your ships out of modules. These modules need to be bought or manufactured.
As you build larger and larger ships, they take more effort to control you can buy or program control modules to help automate things.
Things we need to do.
- Game Premise – The background story to the game.
- Choose a platform – Java, NME or MonoGame.
- World Structure – Squares, Triangles, Hex.
- Game IA – (Information Architecture)
- Physics Engine – I’m going to need something specialised.
- Game AI – How the ships learn to fly themselves.
- Game Mechanics – How you build. How you trade, How you refine. How you fly. How you fight. How you program.
- Server Protocol – NFI
- Programming Model – How logic modules can control other modules.
- Financial Model – Minecraft?
I suspect this will keep us out of trouble for a few years.
Thinks to @WillHughes for pointing out ‘Gratuitous Space Battles’