RPG Development Roadmap, November 2011

With my little enormous RPG Project officially commenced, here’s a temporary planning of what I hope to do. I’m not working with weeks, month or any other time measurements, I use “phases” for now. A phase will be done when it’s done, no sooner, no later.

Phase 1:

  • Project Setup
  • Debug Class
  • Input Manager
  • Basic ScreenManager

This phase has already been completed. A system to switch game screens is absolutely essential, certainly in an RPG (e.g: option screens, HUD, battle UI. I tried to make something powerful making good use of OOP design and XNA’s (Drawable)GameComponent (which have built-in Enabled, Visible and DrawOrder properties).

Phase 2:

  • Basic controls: Button, Checkbox, Label, LinkLabel, ImageBox, ToggleControl
  • Additional Controls:  Listbox, Keyboard.
  • AnimatedSprite class to handle sprite animations

In this relaxing phase 2 I will recreate several typical UI Controls, hoping to make them powerful with properties and events. If I have more time to spare and feel that it’s really needed, I might recreate a keyboard and scrollable listbox. I’ll also start working on a basic AnimatedSprite class to draw animated images from texture maps.

Phase 3:

  • Advanced ScreenManager (with animation system)
  • Basic ParticleEngine
  • Investigation of Data Storage System
  • (Particle Engine Editor)

In this phase I’m going to improve my ScreenManager with some code borrowed from the ScreenManager MSDN sample to handle transitions between game screens. This code is quite cool as it gives the base class a percentage of how much of the transition has been completed, but allows game screens to handle their own transition based on those values. I’ll also start working on a basic ParticleEngine class to create some nice animations. It’s basic because I later on want to try to make a Particle Editor to easily create different effects, and actually save all that to text files which gets loaded. To achieve this I also need some way to write and read text files from and to the phone. In this phase I’ll start with some R&D to see how to take on this approach.  

Phase Next:

  • TileEngine that draws game maps from textfiles using spritesheets.
  • Character that can move on the map
  • Camera class to follow player character
  • Data Storage Engine
  • Editors for game maps, particle engine.
  • World Map Engine (to handle different maps)

Haven’t really properly thought about this. It’s all future future. We’ll see how things go by then though it’s safe to say that we can start working on specific RPG content after the above is well-completed.

About Editors & Data Storage System

There are still some issues I have to sort out. I’m thinking about creating Windows XNA Editors for things like animations and the tile engine. Most people use Windows applications as they are easier to develop, but by creating a custom XNA editor I can directly see the final result (and I can use my custom controls I created in Phase 2). Furthermore I don’t know how I’m going to handle the data storage exactly. Can I wire this up to some SQL Database, is it better to write everything to text files. How do I have to handle the data storage exactly to be efficient, and won’t Windows Phone cause issues (PC XNA is much more flexible, in my opinion). These are all sorts of things I have to carefully think about. For now, let’s get phase two down! ^.^


* The topmost image found in  my earlier post is not from the game, it’s from a PSP RPG and leans very closely to what I’d like to achieve.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s