
In this video we will take a short tour of Xcode and bring in our initial assets to use throughout the course.
In this video we will create our Hero class, which is a subclass of SKNode.
In this video we will move the character using the update function.
In this video we will add gesture recognizers so we can swipe the screen and move the hero in a particular direction
This video continues right where the previous one left off.
In this video we will add physics properties to the Hero class and discuss each
This video continues right where the previous one left off.
In this video we will begin creating our Boundary class with Swift and Sprite Kit. These will be the maze walls.
This video continues right where the previous one left off.
In this video, we will setup the SKPhysicsContactDelegate in the GameScene.swift file which will enable us to react to contacts between physics objects.
In this video, we will incorporate Tiled a free program to help us layout and design levels. This software makes it much easier and faster (in your instructors opinion) then using the SpriteKit Scene editor
In this video, we will parse the Tiled file which is essentially just XML data.
This video continues right where the previous one left off.
In this video, we will center the mazeWorld instance around the hero.
In this video, we'll create a "pickup" type class (think pellets), called Stars. If you pick up them all, you'll clear the stage.
This video continues right where the previous one left off.
In this video, we will add sensor nodes around the hero, to detect which walls are currently blocked. If blocked, we will register that us the next "desired direction". When the passage clears, the hero will automatically turn that way.
In this video, we'll actually use the sensor nodes.
In this video, we will create a mass-less edge boundary around the world by extending the functionality of our Boundary class.
In this video, we will create an Enemy class and place the enemies with either our Tiled file or SKS file.
This video continues right where the previous one left off.
In this video we will move the enemies based on the location of the hero.
This video continues right where the previous one left off.
In this video, we will refine the enemy logic and create a variable factor for how quickly they can find the hero.
This video continues where the previous one left off.
In this video we will reload the current level. We will also add a little code for enemies bumping off of each other.
In this video we will add a property list file and use that to setup the hero characters properties and animation frames.
This video continues right where the previous one left off.
In this video we will use the GameData.plist to set some initial game settings (like whether to show physics bodies, use Tiled files, set the amount of parallax, and gravity)
In this video we will create an Array in the property list and store the data for each level here (properties like hero speed, enemy speed, TMX file, next SKS file to load, etc)
This video continues right where the previous one left off.
In this video we will load the next level if the hero collects all stars.
In this video, we will add a text label using a custom font.
In this video we will add a parallax background that moves at an offset value in relation to the rest of the world.
In this video, we will add sounds to the game using SKActions and using the AVAudioPlayer
In this video, we will modify the Boundary class to make certain boundaries pushable.
In this video we will modify the Star class to make certain stars automatically advance the level.
Classic game concepts. Modern programming.
When you think of maze games, you’ll probably think of Pac-Man, which isn’t hard to argue is the most popular game of all time. At that game’s core is a simple hook. Move at high speeds and don’t get caught, which is a fun concept for any player of any age. Even today some of the most popular games don’t rely on much more than a classic hook: something that is easy to play, but impossible to beat. A game like Flappy Bird is a recent testament to that.
In this tutorial series, we’ll look at programming a conceptually simple game, but one that can be expanded in a hundred different directions using Apple’s amazingly easy physics engine. You’ll learn the latest in iOS programming technology: Swift and Sprite Kit. Then for level design, you’ll get two options: create levels within Xcode 6 using the new Scene editor, or take a step outside Xcode and use Tiled, a free level design program which in our opinion, is a tad more refined and speeds up level creation.
After this series, you will be a game developer! Ready to submit your first app for the iPhone, iPad, and possibly even Apple Watch. Plus using software like Apportable, you can even export your app to Android and a plethora of other devices.