Overview

This tutorial will introduce you to game development on Windows 8 by using the MonoGame open source library, and Visual Studio 2012.

During the course of this tutorial, you will build a 2D game by using MonoGame while becoming familiar with the key concepts of game development.

The focus of this tutorial is writing a game that has multiple elements on screen at the same time. Since the game must keep track of the elements by rendering them, updating them and tracking the ways in which they interact with each other, this will present a challenge from both a logical and performance perspective.

This tutorial is an adaptation of the Honecomb Rush Hands-On-Lab originally published on the Xna Creators Club (located at http://xbox.create.msdn.com/en-US/education/catalog/lab/honeycomb_rush). Tara Walker (http://tarathegeekgirl.net) and I have taken the original lab and code and updated it to work with MonoGame instead of XNA Game Studio, and Windows 8 for this tutorial. Additional platforms like Windows Phone 8, Mac OSX, iPhone, iPad and Android Phones and Tablets will be covered in additional series.

As an added bonus, we will use the Buddy API (http://buddy.com)  to implement the high scores screen. By using the Buddy API, you can enable your games to be more social and drive interest in your game.

This tutorial was originally presented in two parts at MonkeySpace 2013 in Chicago, IL USA. You can find both sets of presentations here.

Objectives

By the end of this tutorial you will have:

· A high-level understanding of the MonoGame application model within the Windows 8 operating system

· Learned how to use resources (images, fonts, et cetera) in your game

· Learned how to add game logic

· Learned about 2D rendering in MonoGame

· Learned how to use touch and gesture input to control your game

· Learned how to write a performance intensive game

· Learned how to call an external web api to save and load information

Prerequisites

The following is required to complete this tutorial:

· Microsoft Visual Studio 2012 and the Windows Phone 8 SDK, which will be used to compile the game assets.

-- or --

· Microsoft Visual C# Express 2012 for Windows 8 and the Windows Phone Developer Tools, which will be used to compile the game assets

MonoGame : http://monogame.net

Tasks

This tutorial includes two exercises built from the following tasks:

1. Create game project

2. Basic game rendering

3. Game logic

4. Polishing the game - sound and animation

5. Additional screens and menus

Estimated total time to complete this tutorial: 90 minutes.

The delivery of this tutorial is broken down into smaller bite-sized chunks that can be completed in a short period of time. At the end of each chapter you will have added more functionality to your game. The following table lists all of the chapters in this series with links to them for easier access.

Table of Contents

Overview

Exercise 1: Basic MonoGame Framework Game

Task 1 - Basic Game Project

Task 2 - Create Content Pipeline Project and Add Assets

Task 3 - Add Game State Management; ScreenManager Classes

Task 4 - Adding Helper Classes

Task 5 - Base Classes

Task 6 - Beehive Component

Task 7 - Bee Component

Task 8 - Worker and Soldier Bee Components

Task 9 - BeeKeeper Component

Task 10 - ScoreBar Component

Task 10 - HoneyJar Component

Task 12 - Vat Component

Task 13 - SmokePuff Component

Exercise 2: Game Polish and Menus

Task 1 - Background Screen

Task 2 - Main Menu Screen

Task 3 - Loading and Instructions Screen

Task 4 - Pause Screen

Task 5 - LevelOverScreen

Task 6 - Putting It Together

Task 7 - Adding Sounds

Task 8 - Integrating Components with Countdown Stage

Task 9 - HighScoreScreen and Logic

Task 10 - Integrating the High-Score Screen

Summary