I’ve spent the last month or two trying to look into project planning ideas/methods/techniques, and in the process learning about design.
Have found mostly general tips, nothing too great aside from a professional project outline in my “The art of game design: A book of lenses” by Jesse Schell. Overall a great book on things to think about during the design process, and can be applied to projects out of the scope of game design. From this, I was able to put together several documents detailing the game I am working on, and giving a decent outline.
But still, I am trying to find a good way to plan out all the classes I would probably need, what kind of properties they would have and share, the order in which they should be built to create a meaningful design.
I would also like to layout all the graphical assets I would need (and later sound, music and video), so as to follow along with the programming portion of the project.
The main reason for my focus on project planning is lack of time/too much wasted time due to poor planning. With my diablo like flash game, a lot of the time was spent going back and changing core classes when I realized there were better, quicker and more efficient ways to do things, and started adding more classes I hadn’t originally planned on because of adding more features that are needed, but were not planned beforehand.
One good piece of advice I picked up out of a game development book that was released the end of last year is milestones.
By creating milestones, and striving for usable prototypes, I can more or less flesh out the features of the game. By starting with the bare minimum to have some kind of interaction, to adding more interactions and core game features, I can separate tasks by level of completion. That way I can see the major milestones I need to accomplish to be able to reach my end goal, and can concentrate on planning out each phase of each milestone, so I know what to focus on first, and instead of trying to plan out the entire scope of the game, which is a daunting task, I can plan out smaller “games” that build into the final prototype.
I would really like to submit my game for the intel game competition 2010 (level up), but the project might take longer than I have to finish in time. My RPG took about 8months to get all the core features programmed and working, along with a level, dialogue, and quest editor partially built. A lot of the time was spent re-programming things as new features came about, as well as a lot of research into getting an isometric Diablo 2 like game working with the graphics/scrolling and interface system.
But my new idea will require a good amount of research as well- I need to incorporate box2d, or emulate some of it’s functions for one of the core game mechanics. Aside from that, I also have to be able to create professional level art, and art takes me more time to create than programming, since I am not well skilled in it yet, and have to spend a long time revising things.
So for now, I think I will finish converting my diablo game into my game engine, and make sure all the features are working properly again, and use that as my primary submission to the contest. Since it was near completion for the main game, I should hopefully be able to finish it up relatively quickly, and might be able to get enough time to create a level in my new game for a secondary submission.
I would also like to get started on Android development, but need to find a better way to learn it. The books mainly seem to cover building an application using the built in GUI elements from the android OS, without focusing on creating original programs, and secondary showing “how many android widgets you can cram in your app”. I would like to be able to make a couple small programs for my own use, as well as release it on the android store, which would help me later convert my 2d games to use on the android.
I’ll have to look more into project planning, and hopefully figure out the best way to pre-plan, and save time during development.