Jump to content
  • Advertisement
  • entries
    1212
  • comments
    1738
  • views
    1144368

Eller the smart feller

Sign in to follow this  
johnhattan

86 views

Spent much of the day working on financial stuff (read: taxes), but I did get a chance to make a much-needed improvement on ConFusebox.

I'd been using an easy-to-debug but glacially slow homebrew algorithm to generate the puzzles. With a little research, I discovered Eller's Maze Generation Algorithm (because a ConFusebox level is really a maze, only with lines where the path should be), which is a truly wonderous (although not well documented) thing. Basically it can generate mazes of arbitrary length with very low computing resources (at most three array-lookups per cell) and no more storage than is required to store a single row --not even the entire maze.

And that's important in Flash, as the Flash Player wants to shut down your app if you spend more than five seconds on a single frame. I had to distribute my maze-generation algorithm over four frames with a progress-indicator to let you (and Flash) know that things aren't crashed, and that just made things ugly.

With Eller's, however, things are so fast that putting it in a single frame isn't a problem. Generating a 12x12 maze my old slowass way took 3 seconds on the main development box. Now it's instantaneous.

What this means for you the player is that doing an "X-treme ConFusebox" with hugeass 15x15 mazes isn't going to tie your machine up for a half-minute generating the puzzle.

Happy happy.
Sign in to follow this  


0 Comments


Recommended Comments

There are no comments to display.

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.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!