I am rebooting Eyes of the Dragon again. This time, though, I am following a fully cross-platform design, and I have what I want to accomplish already planned out. It will very much resemble this video.
That is my game Silver Prophet. While the graphics won’t be quite the same quality since I don’t own the rights to them, the underlying gameplay will be the same. I will be making changes, but the core will remain the same. You can find the Git Hub at the following link:
https://github.com/Synammon/EyesOfTheDragon4
Tutorial List
Tutorial 1 – Getting Started
In this first tutorial, I lay the foundation on which I will be building the game. Then, I add the input manager and the state manager for key components. Finally, I also implemented the title state that will pop up when the game launches.
Tutorial 01 – Getting Started
Tutorial 2 – GUI Framework
In this tutorial, I cover how to create controls for gathering input from the player. Also, it makes a manager that manages all of the controls on a screen. Finally, I also cover how to switch control between game screens.
Tutorial 2 – GUI Framework
Tutorial 3 – Enter Android!
I said that this tutorial series would be cross-platform, and I meant it! In this tutorial, I add an Android project to the solution and demonstrate how to work with Android basics. I also cover how to use render targets to have one base resolution and scale it to multiple resolutions.
Tutorial 03 – Enter Android!
Tutorial 4 – Tiles! Tiles! Tiles!
This tutorial covers adding the tile engine for the game. It is very close to a direct port from my game, Silver Prophet. There are just a few differences. First, it is implemented on both Desktops and Android.
Tutorial 04 – Tiles! Tiles! Tiles!
Tutorial 5 – More on Mobile
For the iOS crowd, this tutorial covers the basics of getting started with iOS, from PC. Also, it adds an animated sprite. Moving the sprite will be covered in the following tutorial.
Tutorial 6 – Keep on Trekking
This tutorial is all about trekking. No, not Star Trek. It allows the player to move the sprite around the map.
Tutorial 7 – What Was That?
You knew it was coming. I started work on the editor. I added the missing controls: text box, list box and picture box. Also, I added the project for the editor, though I didn’t go much further.
Tutorial 8 – Where Was That?
I continued work on the editor in this tutorial. I updated the basic controls that were added in the last tutorial to stop some bleeding when rendering text. Also, I added in a new form that you can use to navigate the file system.
Tutorial 09 – Who’s That Girl?
This tutorial is about adding NPCs to the game. They will be added to the map rendered, and there is collisions between them.
Tutorial 10 – Look Who’s Talking
This tutorial mirrors tutorial fifteen in my A Summoner’s Tale tutorials and adds conversations into the game. There will be a part two, though, because it was getting longer than I would like.
Tutorial 10 – Look Who’s Talking
Tutorial 11 – Look Who’s Talking, Now
This tutorial mirrors tutorial sixteen in my A Summoner’s Tale tutorial series. It does some refinement on conversations and sets up being able to read and write them.
Tutorial 11 – Look Who’s Talking, Now
Tutorial 12 – Mechanical Engineering, Sort of
In this tutorial, I create the bulk of the character generator that uses the SPECIAL system. You assign twenty-two points to the character’s attributes, where each attribute begins at two and goes to a maximum of nine. Attributes will not change as the character levels up. There is the potential that there will be items that change the upper limit.
Tutorial 12 – Mechanical Engineering, Sort of
Tutorial 13 – Mechanical Engineering, Sort Of – Part Two
I continue on with creating characters in this tutorial. I actually create the character using the values in the right-left selectors. I also fix a defect that was pointed out in the Look Who’s Talk and Look Who’s Talking Now tutorials. Because I often use Point variables, I added some extension methods to the SpriteBatch class to draw items using points rather than having to convert them manually. Part of the writing once and use many paradigm.
Tutorial 13 – Mechanical Engineering, Sort Of – Part Two
Tutorial 14 – Mish Mash
Okay, so the title wasn’t so clever. I could not come up with a cleaner one, though, so it stuck. In this tutorial, I cover adding mobs. First, I define a class that represents a mob. Then, I create a layer on the map to hold encounters between the player and other entities.
Tutorial 15 – Encounters
The title says it all. This tutorial is about having encounters. It is the first of two, maybe three, on the subject. In this tutorial, you can trigger an encounter by pressing the E key when you are beside a mob. You will jump to an encounter map, which is filled with obstacles. You can walk around the map but not through obstacles.
Tutorial 15 – Encounters
Project 15
Tutorial 16 – Encounters Part Two
This tutorial picks up where the last tutorial ended. It is about having fights between mobs and the player. It is a turn-based system where you take a turn, and the mob takes a turn, then back to you.
Tutorial 16 – Encounters Part Two
Project 16
Tutorial 17 – Encounters Part Three
Continuing on with encounters, this tutorial covers creating moves for attacks and the mob moving around the map. Ranged attacks will be coming next!
Hello.
I just discovered your blog and I am going through tutorial… I found error at the GameStateManager class creation. The code which is in doc is for GameState not GameStateManager.
Also you have error in GameState class, where you set SpriteBatch “set” to private and later on TitleScreen creation I got error because of that.
Hey there!
Glad you found your way here. I thought I fixed that in the PDF. I will go over it and fix it soon. Thank you for bringing it to my attention. If you keep reading, please post any errata that you find, and I will make sure to fix them.
Cynthia
Sure, I will go through all 🙂 Must say good job, very detailed tutorials. Also I am wondering, can I skip iOS and Android part or I need to also implement those things (for later turorials/code to work)?
You can skip those sections if they are not relevant to you.