Book Image

Creating Games with cocos2d for iPhone 2

By : Paul Nygard
Book Image

Creating Games with cocos2d for iPhone 2

By: Paul Nygard

Overview of this book

Cocos2d for iPhone is a simple (but powerful) 2D framework that makes it easy to create games for the iPhone. There are thousands of games in the App Store already using cocos2d. Game development has never been this approachable and easy to get started. "Creating Games with cocos2d for iPhone 2" takes you through the entire process of designing and building nine complete games for the iPhone, iPod Touch, or iPad using cocos2d 2.0. The projects start simply and gradually increase in complexity, building on the lessons learned in previous chapters. Good design practices are emphasized throughout. From a simple match game to an endless runner, you will learn how to build a wide variety of game styles. You will learn how to implement animation, actions, create "artificial randomness", use the Box2D physics engine, create tile maps, and even use Bluetooth to play between two devices. "Creating games with cocos2d for iPhone 2" will take your game building skills to the next level.
Table of Contents (16 chapters)
Creating Games with cocos2d for iPhone 2
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Smarter enemies


We have a fully functional game at this point, except for fleshing out the smarter enemies. After quite a bit of experimentation, we have found several things that don't work to improve the enemies, and a couple of things we can do to make them better. We tried using an enemy that used A* Pathfinding, which is considered the "gold standard" of pathfinding algorithms. However, this was not a great answer for the enemies, as they would stop and pause to recalculate a new route, which would often take a second or two, depending on how far away from the hero they were. If you had a couple of these enemies in the game at the same time, the entire system would freeze for a second or two. Not good.

After trying some different approaches (and different A* implementations), we have settled on a hybrid enemy pathfinding. Most of the time it works like a standard enemy. The difference is when it hits a wall, it changes to use A* Pathfinding to negotiate a route to the hero around the...