Game Development with Construct 2, 1st ed.
From Design to Realization

Authors:

Language: English

Approximative price 63.29 €

In Print (Delivery period: 15 days).

Add to cartAdd to cart
Publication date:
Support: Print on demand
Design and create video games using Construct 2. No prior experience is required.
Game Development with Construct 2 teaches you to create 12 different game projects from a variety of genres, including car racing and tower defense to platformer and action-adventure. The software is user friendly and powerful, and the games you create can be exported to run on the web, desktop computers, and smartphones.

What You'll Learn
  • Create complete functional games using the Construct 2 game engine
  • Understand general logical structures underlying video game programs
  • Use practical game design advice (such as visual feedback and gameplay balancing)
  • Understand programming concepts useful throughout computer science

Who This Book Is For

Middle school and high school students with no prior programming knowledge, and only minimal mathematical knowledge (graphing (x,y) coordinates, measuring angles, and applying formulas)

Chapter 1: Getting Started with Construct 2

  About the Construct 2 game engine (we discuss how game engines compare to traditional creating games using traditional game programming languages, and the advantages to using the Construct 2 game engine in particular vs. other game engines)

  Downloading and installing (we explain how to set up the software, and include a comparison between the free and licensed versions. Note: all programs developed in this book use features available in the free version.)

  The user interface (we include a screenshot of the Construct software and explain the purpose of each panel, how to navigate between panels, and explain the basic terminology used by the program. All terms will be re-explained when they are first encountered in subsequent chapters)

  Saving and exporting games (we describe the two ways a game can be saved, and the numerous export options (HTML5 website, app stores, executable files, etc.)

Chapter 2: Starfish Collector

  Introduction (this section, common to most chapters, will include: - a screenshot and description of the game in terms of mechanics/dynamics/aesthetics - a list of previously covered topics the reader needs to remember and use here - a brief description of the new features of Construct that will be introduced in this chapter - initial project setup, graphics needed, and settings (window and layout size, renaming layouts and layers, etc.)

  Sprites (adding objects to the game; using the image editor; changing position, angle, and size)

  Events (the “code” of Construct; events are “if”-statements: conditions followed by actions; event-driven programming; how to make the starfish disappear on contact; adding comments)

  Behaviors (pre-programmed sets of events to accelerate game development; 8-directional movement and keeping the player on the screen)

  Ending the game (organizing messages with a User Interface layer; accessing properties in code; system conditions)

  Side Quests (this section, common to most chapters, will include optional extra modules the reader can follow that introduce additional game mechanics or add polish to the game, and an “on your own” section with ideas that the reader can implement on their own to practice and refine their skills)

◦ solid objects (add a rock sprite, introduce solid behavior, collision polygons, rotate and scale to make duplicates appear different)

◦ value-based animations (contrast value-based vs. image-based animations; discuss the importance of drawing player attention to interactive objects; adding the rotate, sine, and fade behaviors to animate the starfish)

◦ on your own (creating a maze from the rocks; rotating solid objects; making the starfish change position with the sine behavior; adding additional sprites, like seaweed)

Chapter 3: Space Rocks (inspired by the classic game “Asteroids”)

Introduces: Keyboard, Custom Movement, Bullet, Wrap, Animation (spritesheet; blending), Pin, functions

  Introduction

  Spaceship movement (discuss when one needs to write custom events rather than use behaviors; the keyboard object and custom movement and wrap behavior; velocity vs. acceleration; setting speed limits)

  Lasers and rocks (introduce the bullet behavior, and image-based animations; contrast key down vs. key press conditions)

  Thrusters and Explosions (the importance of visual feedback for the player; pin behavior)

  Teleportation (introduction to functions, randomization)

  Winning or losing the game

  Side Quests

◦ Shields (discuss game balance; decreasing the difficulty by allowing multiple collisions)

◦ UFOs (introduces spawn points, periodic events, combining bullet and sine behaviors)

◦ on your own (add a solid planet or moon; randomizing rock movement)

Chapter 4: Street Sweeper (inspired by the classic game “Frogger”, the player (a street sweeper) needs to cross a busy road and pick up pieces of trash, avoiding cars along the way, then deposit the trash in a can located across the street)

  Introduction (introduces tiled backgrounds for repeating images)

  Animating the player (introduces multiple animations, switching between animations based on keypress)

  Cars (also includes multiple animations initialized in layout, writing custom events to create a wrap-like behavior, and randomized speed)

  Displaying game over text (introduces text objects to display a “Game Over” message instead of sprites)

  Keeping score with global variables (introduce global variables, add collectible objects to earn points for the player, display the score with a text object, discuss literals vs. variables, text concatenation, add a goal object, and reuse the game over text object)

  Side Quests

◦ Randomizing graphics

◦ Animating text (scroll and fade effects)

◦ on your own (increase gameplay length by periodically spawning new objects; adjusting gameplay parameters to control difficulty level and gameplay testing)

Chapter 5: Adding polish to your game (the section revisits the Starfish Collector game from Chapter 2, and adds many features, resulting in a game we call “Starfish Collector HD” – HD standing for High Definition)

  Introduction

  Adding animation, obstacles, and text (adds animation to the turtle while swimming, obstacles (sharks) that cause the player to lose, and a text display listing the number of starfish remaining)

  Menus (introduces additional layouts (start screen; help/instructions; about/credits), the mouse object, sprite-based buttons, and a pause feature on the main game screen)

  Particle effects (introduces the particle object to create a visual “splash” effect when starfish are collected)

  Audio (introduces the audio object; importing music and sound effects; audio file formats and conversion; discussion of setting the mood with audio)

  Alternative controls

◦ Changing default controls (introduces the OR statement)

◦ Touch screen input (introduces the touch object)

◦ Gamepad controllers (introduces the gamepad object; directional pad / discrete button presses vs. joystick / analog controls)

  Revisiting earlier games (adding these features to the Space Rocks and Street Sweeper games)

Chapter 6: Plane Dodger (inspired by the smartphone game “Flappy Bird”)

  Introduction

  background effects (introduces infinite scrolling effects and simulating depth via parallax)

  player plane movement (using the bullet behavior for gravity and thrust effects)

  Generating stars and enemy planes (discusses random generation, difficulty ramp with caps; points for collecting stars)

  Side Quests

◦ Special effects: explosions and sparkles

◦ On your own (game over message; randomly colored enemy planes; sine behavior for enemy image tilt and vertical motion; using five stars to fire a single laser to destroy enemy planes; audio; menus)

Chapter 7: Daytona 101 (a standard racing game where a car drives around a racetrack as quickly as possible)

  Introduction

  Tilemaps and track design (introduces tilemaps for quick and efficient level design)

  Car mechanics (introduces the car steering and scroll-to behaviors, and layouts larger than the game window)

  Starting and ending the race (introduces system variables and time elapsed; the round function; displaying lap time; creating a finish line with a “one-way gate” to deter cheating)

  Side Quests

◦ Obstacles (wooden crates reduce player speed; oil slicks randomly change player angle)

◦ Lap timers (adding replayability by storing the best overall lap time)

Chapter 8: Rectangle Destroyer (inspired by the classic arcade games “Breakout” and “Arkanoid”)

  Introduction

  Paddle, Balls, Bricks, and Walls

  Game start and end (introduces “else” and sub-events; includes “click to start” mechanic, reserve ball count)

  Powerups (includes a discussion of keeping player engaged by changing gameplay mechanics)

o For the paddle (includes changing paddle size, ability to fire lasers that destroy bricks)

o For the ball (includes changing size and speed, having multiple balls on screen simultaneously, balls that cause groups of bricks to explode, balls that pass through bricks)

  Side Quests (this section is completely “on your own”; includes adding difficulty ramp based on time elapsed, and contains a list of additional powerup ideas to implement)

Chapter 9: Spell Shooter (a top-down shooting-style game where a wizard attacks randomly moving enemies)

o Introduction

o Player and Enemy Setup (introduces mouse-based look controls)

o Enemy Movement

o Patterns and waypoint logic

o Implementing with instance variables (introduces for-each loops and instance-based variables)

o Shooting and charge time (discusses gameplay balance by limiting player fire rate; includes user interface setup)

o Side Quests

o Adding enemy radar

o On your own (menus, audio, etc.)

Chapter 10: Airplane Assault (a top-down shooting game, inspired by the classic arcade game “1942”; enemies follow random selection of flight patterns, and also attack player)

o Introduction

o Player and Enemy Setup (includes periodic enemy spawning)

o Advanced waypoints

o Basic movement

o Random movement

o Shooting and health points

o Player (includes text objects; introduces Flash behavior for temporary player invincibility)

o Enemies (introduces Timer behavior for asynchronous firing times)

o Side Quests

o Endless scrolling effect

o Implementing analog gamepad support

Chapter 11: Tower Defenders (a tower defense style game)

  Introduction

  Enemies and waypoint setup<

  Turrets and bullets (introduction to the Turret behavior)

  Earning cash and additional turrets

o User interface design (creating sprite-based buttons)

o Turret placement (introduces drag-and-drop mechanics)

  Difficulty ramp and game ending (discusses game economy and balance issues)

Chapter 12: Maze Runman (inspired by the classic arcade game “PacMan”)

  Introduction

  Maze layout

  Player movement (introduces grid-based movement mechanics)

  Enemies and intelligent movement (introduces the Array object; discusses artificial intelligence)

  Side quests (on your own: multiple player lives; periodically spawning limited-time powerups (decrease enemy speed); difficulty ramp: increasing enemy speed as coins are collected)

Chapter 13: Treasure Quest (inspired by the classic console game “The Legend of Zelda”)

  Introduction

  Level design (Uses two tilemaps: one for background image, one for indicating solid tiles; adding non-tile or interactive objects, such as trees, bushes, and rocks, as separate sprite objects)

  Player setup

o Animations

o Sword-fighting mechanics (includes creating and attaching an animated sword sprite)

  Multiple levels (introduces portal and spawn-location mechanics)

  User Interface design

o Global layers

o Sign mechanics

  Enemies (introduces three different types of enemies with different behavior patterns; introduces Line of Sight behavior for detecting nearby objects within a field of view)

  Additional game objects (includes coins, hearts, bombs, and treasure chest)

Chapter 14: Jumping Jack

(inspired by the classic console game “Super Mario Bros.”)

  Introduction

  Level design (includes setting layer parallax scrolling for depth effect, and a single solid tilemap)

  Player setup (introduces the platform behavior)

  Enemies (includes two different types of enemies; platform-based and flying)

  Ladder mechanics (explains how to toggle platform/8-direction movement to enable player to climb ladders)

  Additional game objects (includes coins, springboards, breakable bricks, jump-through platforms, and keys/locked blocks)

Chapter 15: The Journey Continues

  Continue developing

  Broadening your horizons

  Disseminating your games

Appendix A: Construct 2 reference

  Objects and properties

  Behaviors

  Built-in functions


Lee Stemkoski is a professor of computer science and mathematics. He earned his Ph.D. in Mathematics from Dartmouth College in 2006. He has been teaching at the college level, with an emphasis on Java Programming, Computer Graphics, and Video Game Development for the past six years. Lee particularly enjoys playing classic games released for the Nintendo and Super Nintendo Entertainment System consoles. He has written another book, Beginning Game Development with LibGDX, in addition to many other scholarly articles and game development tutorials. 
 
Evan Leider is currently pursuing a B.S. in Computer and Management Information Systems with a specialization in Game Development, with an expected graduation date of 2018. Since 2012, he has been using Construct 2 to create his own games. Evan has been a teaching assistant in introductory video game programming courses for two years, where he helps college and high school students learn how to use Construct 2. He enjoys playing video games such as Sonic the Hedgehog and Super Smash Brothers. 

Teaches how to create 12 video game prototypes, more than any other book in this area

Emphasizes both design/aesthetic and technical/programming aspects of game development

Games created with the Construct game engine can be easily shared and exported to a variety of platforms (web, desktop, mobile)

No prior programming experience required; appropriate for students as young as middle school and high school