XNA Game Programming Adventures
XNA 4.0 RPG Tutorials

This page is for my XNA 4.0 RPG Tutorials series. On this page you will find the tutorials in PDF format as well as the project at the end of each tutorial. Starting with tutorial 14 I will be including the data I create during the tutorials in a ZIP file as well.

If you find an error in a tutorial, have a request for future tutorials in the series, you can post them on my forum. If you are posting errors please give the class and region the error is in. This will make it much easier for me to find the problem.

Part 1 - Getting Stated
This first tutoiral is about getting started with the role playing game, Eyes of the Dragon. I create the basic project, two class libraries, and some components that will be used through out the rest of the tutorials.
Part 1 - Getting Started
Project

Part 2 - More Core Components
In the second tutorial I add in support for Xbox 360 controllers to the input handler. I also add in some GUI controls and a class to manage them. I add in another screen to the game and show how to move between game states.
Part 2 - More Core Components
Project

Part 3 - Even More Core Components
In this third tutorial I added in a new GUI control, a PictureBox. I also added in another game screen, the playing screen. I also filled out the starting menu screen.
Part 3 - Even More Core Components
Project

Part 4 - Tile Engine
The forth tutorial is about adding in a tile engine for the game. The tile engine is what you will use to draw the maps the player will use to explore your world. In the next tutorial I will add in more to the tile engine.
Part 4 - Tile Engine
Project

Part 5 - Tile Engine Part 2
I continued on with the tile engine in this tutorial. It includes adding in a 2D camera to control scrolling the map and having maps with multiple layers and multiple tile sets.
Part 5 - Tile Engine Part 2
Project

Part 6 - Character Generator
This tutorial covers adding a new control to be used with the control manager and adding in a screen for the player to create their character.
Part 6 - Character Generator
Project

Part 7 - Animated Sprite
In this tutorial I added in an animated sprite for the player to control. I also added two modes for the camera. In the one mode the camera follows the sprite and in the other the camera moves independently of the sprite.
Part 7 - Animated Sprite
Project

Part 8 - Character Generator and Tile Engine
This tutorial improves the character generator by showing a preview of the player's character selection. I also added in zooming in and out to the tile engine as well as using a transformation matrix in the drawing code so you no longer always need to subtract the camera's position.
Part 8 - Character Generator and Tile Engine
Project

Part 9 - Item Classes
This adds in some basic classes for items in the game and a class to manage them. The class for managing them isn't meant for invenroty, that will be added later on down the road.
Part 9 - Item Classes
Project

Part 10 - Character Classes
This adds in some basic classes for characters in the game and a class to represent the world the game takes place in.
Part 10 - Character Classes
Project

Part 11A - Game Editor
In this tutorial I add in an editor for the game and move from a static character class system to a dynamic character class system. This is part one of a three part tutorial.
Part 11A - Game Editor
Project

Part 11B - Game Editor
In this second part of tutorial 11. In this tutorial I continue on with adding in editors for the game.
Part 11B - Game Editor
Project

Part 11C - Game Editor
In this third part of tutorial 11. In this tutorial I continue on with adding in editors for the game.
Part 11C - Game Editor
Project

Part 12 - Updating Game
This tutorial upgrades a few things in the game. I expand on the World class and make the tile engine a little more efficient.
Part 12 - Updating Game
Project

Part 13 - List Box and Load Game Screen
I cover adding in a List Box control and adding in a new screen to load games from. I also updated a couple screens to make it easier to load games and start new games.
Part 13 - List Box and Load Game Screen
Project

Part 14A & 14B - More Game Editors
In this 2 part tutorial I do a little work on the editors and actual create some data that can be read into our game.
Part 14A - Game Editor
Part 14B - Game Editor
Project - 14A
Project - 14B
Game Data

Part 15 - Skills, Spells, and Talents
This tutorial covers adding in some basic classes that will be needed down the road for skills, spells, and talents.
Part 15 - Skills, Spells, and Talents
Project

Part 16 - Quests and Conversations
This tutorial covers adding in some basic classes that will be needed down the road for conversations and quests. It also updates the game to use the classes from the past two tutorials.
Part 16 - Quests and Conversations
Project

Part 17 - Finding Loot
This tutorial covers the basics of placing chests for the player to interact with. They are just being drawn at the moment but picking them up will come eventually. I also added in a couple place holder classes for traps.
Part 17 - Finding Loot
Project

Part 18A & 18B - Finding Loot Part 2
In this 2 part tutorial I do a little work on the the player being able to find loot. I added chests and keys to the game editor and read in a chest at run time!
Part 18A - Finding Loot Part 2
Part 18B - Finding Loot Part 2
Project - 18
Game Data

Part 19 - Skills Continued
This tutorial expands on skills and adding skills to the editor. Soon I will cover reading in skills at run time and assigning points to skills.
Part 19 - Skills Continued
Project
Game Data

Part 20 - More On Skills
I add a new control to the game and a screen for distributing skill points.
Part 20 - Skills Continued
Project

Part 21 - Basic Inventory
This tutorial covers the basics of inventory in the game opposed to the data we have been working with up to now.
Part 21 - Basic Inventory
Project

Part 22 - Reading Data
This tutorial covers reading in the data made in the editor and updating the Player class.
Part 22 - Reading Data
Project

Part 23 - Level Editor
This tutorial covers creating a basic level editor that you can create levels and draw the map.
Part 23A - Level Editor
Part 23B - Level Editor
Project

Part 24 - Level Editor Part 2
I continue on with the level editor in this tutorial adding in some nice enhancements and being able to write out and read in levels.
Part 24 - Level Editor Part 2
Project

Part 25 - Level Editor Part 3
I continue on with the level editor in this tutorial adding in some more features and making the drawing a little more responsive.
Part 25 - Level Editor Part 3
Project

Part 26 - More on Skills
This tutorial covers adding in more about skills to the game. I also updated the game state manager to have a short transition time between screens.
Part 26 - More On Skills
Project

Part 27 - Updates and More on Talents
This tutorial covers adding in more about taletns to the game and updating a few componets.
Part 27 - Updates and More on Talents
Project

Part 28 - More on Spells and Effects
This tutorial covers adding in more about taletns to the game and updating a few componets.
Part 28 - More on Spells and Effects
Project

Part 29 - Weaknesses and Resistances
This tutorial covers adding in weakness and resistances to damage effecgts.
Part 29 - Weaknesses and Resistances
Project

Part 30 - Updating Weapons
This tutorial covers updating weapons to use damage effects.
Part 30 - Updating Weapons
Project

Part 31 - Tile Engine Update
This tutorial covers making an update to the tile engine.
Part 31 - Tile Engine Update
Project

Good luck with your XNA game programming adventures.

Jamie McMahon



Site Search

Custom Search


Latest News

February 10, 2012
3rd Brick Breaking tutorial!
August 12, 2011
31st XNA 4.0 RPG tutorial!
August 11, 2011
30th XNA 4.0 RPG tutorial!
July 27, 2011
29th XNA 4.0 RPG tutorial!
July 20, 2011
28th XNA 4.0 RPG tutorial!