Ultima 4
I have chosen to do a tutorial about doing a remake of Ultima 4 partly because source code is already out there for various remakes, and partly because it contains a lot of elements which are still valid today.
Tile maps, sprites, etc, never will go away. So you might as well learn about them.
So let me walk you through the stages.
Tile maps, sprites, etc, never will go away. So you might as well learn about them.
So let me walk you through the stages.
Reverse engineering
The first thing you end up doing when you begin a remake is rip the original apart. I have done this a hell of a lot, both as a hobby and professionally. It's far too big a subject for this tutorial. So like most good games coders, I will cheat.
I have picked Ultima IV. A great game that has been reverse engineered to death by many people. Details of everything can be found on the web, so we can just steal that. XU4 is an excellent remake you can download and play with if you don't have a copy of the original. The point of this tutorial is not to show you how to reverse engineer games, it's intent is to give you techniques and ideas to go and attack your own favorite game.
I hope to inspire you to get a copy of XNA, and get your fingers dirty. Dig deep into the code of ages past, and summon forth the spirits of games long dead and forgotten.
Errr.. sorry.. got carried away there.
I have picked Ultima IV. A great game that has been reverse engineered to death by many people. Details of everything can be found on the web, so we can just steal that. XU4 is an excellent remake you can download and play with if you don't have a copy of the original. The point of this tutorial is not to show you how to reverse engineer games, it's intent is to give you techniques and ideas to go and attack your own favorite game.
I hope to inspire you to get a copy of XNA, and get your fingers dirty. Dig deep into the code of ages past, and summon forth the spirits of games long dead and forgotten.
Errr.. sorry.. got carried away there.
Plan of action
Before we can start anything, you need to have XNA installed. Go get it.
Got it? Good.
Okay I will write this tutorial as a set of webpages. Each page will cover a single topic.
I'm not going to micro manage you, I want you to have to work a bit. So I will say things like "create an array and name it blah". I won't say "add this line of code at this place in this file". I will though write code that is easy to read rather than optimal code.
If you get stuck the full source is at the bottom of the page anyway.
After the tutorial bit itself, you will find a list of extra coding jobs that could or should be done, I'm not writing a full remake, just giving you ideas.
After that will be the source code and any resource files you will need.
So lets begin.
Got it? Good.
Okay I will write this tutorial as a set of webpages. Each page will cover a single topic.
I'm not going to micro manage you, I want you to have to work a bit. So I will say things like "create an array and name it blah". I won't say "add this line of code at this place in this file". I will though write code that is easy to read rather than optimal code.
If you get stuck the full source is at the bottom of the page anyway.
After the tutorial bit itself, you will find a list of extra coding jobs that could or should be done, I'm not writing a full remake, just giving you ideas.
After that will be the source code and any resource files you will need.
So lets begin.