Computer Science 486 Mobile and Internet Game Development
Study Guide :: Unit 3
Second Android Game Development—Platformer
Overview
This unit will guide you through developing a retro-style platform game called Platformer. In this game, the player has to guide a character, Bob, from the underground fire caves through the city, forest and, finally, to the mountains. This game has four challenging levels. This unit will focus on developing a more advanced level game by upgrading the Tappy Defender code, which was done in unit 1.
Learning Objectives
After completing this unit, you will be able to:
- Develop a more advanced and flexible game engine.
- Do “sprite sheet” character animation.
- Use level builder engine to design your levels in text format.
- Perform transition between levels.
- Add loads of extra diverse levels.
- Build multiple scrolling parallax backgrounds.
- Introduce a more advanced HUD.
- Use sound manager to easily manage sound FX.
- Add some advance features, such as pickups, upgradable guns, seek-and-destroy enemy drones, AI scripting for patrolling enemy guards, and hazards such as fire pits.
Learning Activities
- Read Unit 3 notes.
- Read the following chapters in the textbook, Android Game Programming by Example.
- Platformer—Upgrading the Game Engine
- Platformer—Bob, Beeps, and Bumps
- Platformer—Guns, Life, Money, and the Enemy
- Platformer—Putting It All Together
- Read the review questions below in this unit and use the course discussion forum to:
- Post your answer to any one of the review questions below.
- Comment on another student’s posted answer.
- Answer any questions posed to you.
- Do the unit exercise, discuss it with your Academic Expert, and share the experience with your peers on the discussion board.
Lesson Notes
Platformer—Upgrading the Game Engine
This chapter provides a good level of understanding of how can you quickly learn about and build a more advanced and flexible game engine for a retro-type 2D platform game. One of the goals of this game engine is to make the complexity of a larger scale game easily manageable. The other goal is to separate the level design from the coding.
Platformer—Bob, Beeps, and Bumps
This chapter describes how to use the newly developed game engine to add a class to manage the sound FX and a class to implement the more complex player controls such as animated running and jumping for the retro-type 2D platform game.
Platformer—Guns, Life, Money, and the Enemy
This chapter shows how to add some advanced features in the Platformer game, such as collectible pick-ups, power-ups, deadly homing enemy, and patrolling guard. These features can easily be added into the game’s level designs.
Platformer—Putting It All Together
This chapter discusses how to add lots of new platform tile types and scenery objects, multiple scrolling parallax backgrounds, collision detection, and a teleporting system so that the main character, Bob, can travel between the levels of the game. Using the different tile types, scenery objects, and backgrounds, four playable levels linked together by the teleporting system have been implemented in this game.
Review Questions
- How do you properly scale a game on Android to fit with any screen resolution? What technique has been used for the Platformer game in the textbook for this kind of scaling?
- What is thread in game programming? How are threads induced in the Platformer game?
- Explain the technique and the associated classes that are used for creating different levels of the Platformer game in the textbook.
- What is multiphase collision detection? How has multiphase collision detection been implemented in the Platformer game?
- Select any one of the following classes and explain its architecture and functionalities in the Platformer game:
- InputController
- Animation
- PlatformView
- GameObject
- MachineGun
- Drone
- Guard
Unit Exercise
- Implement the Platformer game by following the instructions and the codes provided in the textbook. Review and analyze the codes and different functionalities of the Platformer game for a better understanding. Post your experience and discuss items that you found useful in the respective unit forum.