A Roguelike in 8 steps

The original Rogue game was programmed in an era before mobile devices, before the Internet and even before Mac and Windows PCs.  Computers have changed a lot since Rogue, but making your own D&D -inspired, computer RPG that’s never the same thing twice still has an appeal.  Here’s how to do it with modern tools.

Lua (Portuguese for moon) is an easy to use scripting language that is actually a serious programming language.  As we set up a basic Roguelike, we’ll explore the way Lua makes powerful programming techniques easy and available.

Gideros mobile is an easy to use, open source library that uses Lua to develop games for iOS, Android, Mac OS X and Windows.  There are many frameworks/engines out there.  Corona, anyone?  Or Love or Moai?  I like Gideros because it’s straightforward, free, and is being actively developed.

Bringing any computer game to completion is actually kind of hard.  Games like Asteroids or Angry Birds though are pretty simple.  Some graphics and effects with a way to keep score.  RPGs, on the other hand, involve random level design, character class and progression, magic systems, inventory management, lighting effects and more.  Nonetheless, hundreds of people have preceded you down this path and you can too.

In fact,  using Gideros, we can create a complete Roguelike game filled with graphics, sound and lighting, in 8 steps.  Here’s how:

  1. Enter stage sprite
  2. Moving worlds
  3. A dark, scary dungeon filled with unknown monsters
  4. …. that you attack
  5. Interlude:  health talk
  6. The monsters fight back
  7. The sounds of battle, the agony of defeat
  8. An arrow in the dark

 

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