Jump to content
  • Advertisement
Sign in to follow this  
  • entries
  • comments
  • views

The Genesis of the Game

Sign in to follow this  


Back in the mid-80s I spent hundreds of hours playing Elite. For those too young to remember it, Elite was a space trading simulation with elements of role-playing and flight-simulation. The game took place in a universe with hundreds of systems and thousands of planets and space stations.

And all of this on a Commodore-64 with around 30K of RAM, thanks to procedural generation of the galaxies.

I am, deep down, quite lazy. I have no interest in manually placing several hundred villages made up of dozens of buildings and scores of NPCS. I am, however, interested in having those things in my game. And as a developer I like having the possibility of something surprising, if not actually emergent, in my game. Thus the procedural generation.

In order to have a good random-seeming distribution of towns, caves, etc., I next needed a way of generating repeatable random-seeming numbers. The built-in random functions of most computer languages do not allow for the use of seeds, so the results are not repeatable - or at least, not repeatable in any useful way. Fortunately I am not the first person to have come up with this idea.

So: the first piece of code in Shank's Pony is the Mersenne Twister class, which I translated into Actionscript2.0 from a version written in C. All tests so far indicate that it is working exactly as I had hoped.

Next: Using modulus and seeds based on the Mersenne Twister to create procedural towns and dungeons.
Sign in to follow this  


Recommended Comments

Wow, procedural generation is one of the things I'm working towards. My dream gamedev goal is to be able to completely procedurally generate an RPG, including a half decent storyline.

Best of luck! Hopefully you'll unearth some great ideas and resources to help me when I finally get round to procedural generation myself!

Share this comment

Link to comment
As I get my code in some semblance of working order I will be posting it here.

Share this comment

Link to comment
I actually embarked on a mild procedural generation experiment for CSRPG3, in an effort to reduce the download size. Unfortunately, real life intervened and I didn't get much further than procedurally generating weird-looking terrain (randomly placed hills) and bizarre town names.

If I ever decide to make the game, I'll probably end up posting lots of documents on my "patches" system.

Share this comment

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!