More Detailed Project Overview
I've got a few draft posts in the works but first I thought I should do a more detailed overview of what I'm planning starting with a sort of disclaimer. Everything I write about in this journal needs to be taken with a pinch of salt. Until I show actual screenshots everything I've planned has been a thought experiment! None of my planned approaches may work out, so feedback and criticisms on my posts is very welcome
So the game. The premise is sort of simple but the implementation will be a nightmare I guess you can sum it up as the Star Trek Holo Deck. Or Red Dwarfs' 'Better Than Life' if you want to get creeped out
My plan is that it's like a customisable first person adventure game. The subject matter and genre can be anything - war, crime solving, drama, exploration, whatever! I imagine a typical user experience will be selecting rough duration of play, high level game world settings and then clicking Start. The game takes care of everything from then onwards. It will give you a unique seed if you enjoyed that particular adventure and want to share it or play it again.
You can be as detailed about what the adventure contains as you like. Whether it contains horror or comedy. Whether the universe contains magic, fantasy technology or is gritty and realistic. Whether it's set in the early days of civilisation or in the distant future. Whether the adventure is contained within one town or spans an entire galaxy.
I'm really trying to let the scope of this thing fly out of control! My first iterations will be confined and simple but I'm planning a framework that can just grow and grow as I add more to it. As I add new procedural object types or narrative structures they will just start to be used accordingly... and if I get it right and people enjoy the game then hopefully it will be simple enough for people to add their own stuff too!
The narratives and worlds will be procedurally filled according to the starting game settings. It will try to react to the player as they play in order to produce an unique experience and keep the narrative on track.
Ok and one last thing. As this will take a while to complete I'm planning for something that would more than likely cripple current hardware! I'm not letting current constraints hold me back. Everything is going to be horribly expensive resource wise so let's hope everything is super fast by the time I'm done. And that I can afford it
I'm basing this whole thing on my own engine. I think some of the tested frameworks out there like Unity are brilliant and no doubt it would massively speed things up using them but I'm not going to here. I love learning and there is no better learning experience than writing your own engine! Previously I've only done this with the 'game code' but this time I'm going further with rendering and physics too. Not audio though. That's just boring ;p
I'll post details about the engine but in a nutshell it's C++, heavily interfaced and using OpenGL 4+ for rendering. Performance is important as ever but not critical, I just want playable framerates for now. As I'm a one man show I don't have time to really optimise the whole thing. Instead I'm aiming primarily for readability in my code and trying to avoid coding myself into a spaghetti mess.
The engine will be separate to the game - I plan to use it for other projects too. Maintaining an engine/game separation is important to me for architecture reasons and keeping everything 'clean'. As such the game will be a DLL plugin to the engine itself.
Right that's a load of hot air/hype. Next post will have some actual content, promise!