Game development is something that I simply love.
Is it the complexity of developing a framework to organize the project and its workflow?
Is it the difficulty of understanding the different components that are part of the whole application and how they interact with each other?
Is it the challenge of working with people with different ideas and skillsets?
The answer is all of them and much more.
In the past I was able to build simple game prototypes, being my Super Mario clone the only one available to show https://www.youtube.com/watch?v=X-mQQuVN0tc , and as each new project was done I kept improving from the previous ones, learning new and better ways to solve past and new problems more efficiently, and using more advanced technologies, like UDK for example.
As you get more experienced and dedicated your target is to build bigger and better things, many times this involves having to work as a team, it doesn’t have to be a professional one, a bunch of friends with different skillsets is good too, but this is always something difficult in new projects, startups, or whatever you want to call it, because people simply lose the interest when the first difficulties show up, even on planning stages, or simply when their vision is way too big and they understand that it can’t be fulfilled.
After several tries this led me to think that I should try to build something small, but well built from start to end, instead of trying to achieve something huge, that would never become more than a mere prototype.
For this I started to develop the StoryTime project, which is a 2D game engine and the tools associated to development of a game using it.
The name StoryTime comes from my main focus to build something that makes it easier to tell a story, like developing a point and click story driven game.
The main objectives in this project is not to build the most advanced software in the world, but build something small, but robust, that will teach me about many technologies and patterns, like MVVM pattern that I learned through WPF for the development kit UI, how physics work applied to games, which I’m currently learning from using farseer physics engine and how to develop graphics engine to work with the framework.
Currently for graphics rendering I’m using XNA, I know that XNA is no longer supported, but as far as I know it’s simple to port to MonoGame from it, and like I stated previously, my objective here is not to achieve something huge, but to learn how to solve many problems at a small dose and develop a project from the beginning to the end.
Currently I already have a small UI where it’s possible to move objects in a scene, save part of it, and edit some of it’s components, and I’m starting to develop an animation development tool
In the next posts I’ll be glad to show part of what I already have, preferentially showing something “moving”, which is something that everyone enjoys.