I am only a newcomer to Cocos2D and now the Gamekit. Although I have some programming experience, it only recently involves Objective-C and the IOS/OSX platform. My previous experience in game programming was designing scenarios in VC++ for “StarFleet Command” a tactical realtime starship combat game, released around 1999/2000. What made working with SFC so easy was that although it was written to use C++, which would ordinarily raise the bar too high for most fans, was that a comprehensive API was supplied, with sample code and enough information to design some very complex levels.
The iPhone Game Kit is the first bundle I have seen that comes anywhere close to this. A complete fully working project supplied that can be easily extended with just a few changes. The source code is clearly laid out and explained in enough detail to permit an entry level programmer to understand what is going on. The modularity of the code (decoupling) is very good. This makes it easy to prototype your game actions and then introduce them to the rest of the game without going through a lot of pain integrating what you do into what is there already.
I bought a couple of books on Cocos2D when I was starting out. These books have been excellent for a new starter, but are designed to appeal to a broad range of game styles and genres. The Game Kit, which isn’t really that much more of a cost than a couple of books, gives much more detail into the specifics of an RPG game, so if you are pursuing that goal, I believe it to be a “must have” reference, even if you do not use the all the code yourself.
The Game Kit design itself also demonstrates many “best practices” for the novice game designer/programmer. The use of .plists to control the various object presentation and attributes provides the designer with the power to modify the game, without even changing any code. The fact that a lot of the difficult tasks are done for you, such as the save game methods, implementation of scenes, menus, levels and animation (and the rest) makes it so that the novice programmer can accomplish something at a professional level, while hoping they learn along the way.
In short, as a novice programmer myself, I’ve found the GameKit to be worth the investment – it has bootstrapped my iOS game development from dead end meandering and lessons that don’t integrate into my vision, into something that provides direction. It is so much easier when you can stand on the shoulders of giants!
FInally I would like to just add a few things I would like to see in future editions
of the Game Kit, which I know are possible. Like the Community project, it would be good to see these changes worked on collaboratively, then rolled back into the platform. Multiplayer modes would be appreciated, some method to make the game turn-based
and I suggested recently having more than one Player Character, so that party based games are possible. Lastly, if there was support for isometric map layouts, the GameKit
would probably become the killer API for RPG/TBS/RTS games and the go to for a kind of standard. Most of these are beyond my own skill to implement at present, but the Kit design should make them simple to implement if a collaborative approach were taken.
The graphic tilesets supplied are terrific, but game graphic designers are greedy, and some of us have little artistic talent so more please, especially now there are even better graphics on the new devices!
Thanks for unleashing my creativity and productivity. The Game Kit is just as much an important reference now as any technical item on my book shelf.