Monday, November 19, 2007
You want to be a Maze Master? Then check out this website and the really neat colored mazes available. These mazes include some of the more advanced under and over type mazes which add a level of difficult and complexity. Really neat compositions as well.
Some of the most difficult mazes I have attempted in a while. Very expertly crafted for diffiulty, and extremely well designed. I am a big fan of this type of very engrossing mazes. See more at:
Weekly Mazes by Emma. The great thing about Emma’s mazes is their simplicity and the hand drawn quality. Not to mention the fact that she adds a new one nearly every week. A really cool resource for mazes.
Team of Monkeys
Team of Monkeys has a great variety of really cool printable mazes for you to complete. I really like the originality of these mazes. Exceptional stuff.
Amazing Challenge I
Click the image to view the maze full-size.
- Search for Mazes articles similar to “Amazing Challenge I”.
- Search all articles similar to “Amazing Challenge I”.
- List all Mazes articles by Shawn Olson.
- List Mazes articles from all authors.
Copyright © 2003-2009 by Shawn Olson.
Help the Monarch butterfly fly south for the winter.
More fun printables and activities to enjoy:
I also enjoy creating mazes. Recently I’ve been focusing on creating mazes on the surfaces of various geometric shapes (or, more accurately, I’ve been focusing on creating computer programs which generate random mazes of the surfaces of geometric shapes). Pictured to the right is a maze on the surface of a “buckyball” (i.e. a truncated icosahedron, or soccer ball).
The maze is “perfectly formed”, meaning that there are no loops, and every spot on the maze is reachable from every other spot on the maze. This is really just a prototype; I plan to make a nicer one with a solid wood structure beneath the laminated paper surface. The pictured one is simply heavy paper laminated with clear contact paper and taped at the edges of tha faces. The laminate allows one to use an erasable marker on the surface when solving.
Your source for mazes.
Hallucamazenic – Ink On Paper, Winter 2006, by Y. Frimer
Adapted from Business Mazes by Joni Farthing, Hart-Davis, 1981
What is a maze?
A maze is a puzzling game. A garden maze is a network, or labyrinth, of paths between high hedges. The puzzle is to find the paths that will lead most quickly to the exit, but the hedges prevent you from seeing where alternative routes lead.
How to read a maze
There are five mazes designed to introduce and practise language common in business situations. Just like the garden maze, each one involves making decisions. However, the aim is not to reach the exit as quickly as possible, but to solve the problem effectively.
The entrance is ‘the situation’. Everyone starts here, and then chooses a course of action from 1. If none of the alternatives are exactly the path you would like to take, choose the one nearest to the ideal. Each decision leads to another number in the maze, which shows how the situation has changed because of the action you have taken. Write down every number you turn to. This is your numbers-route, (If you find yourself on a familiar path, think again!) Continue until the end, or exit, of the maze is reached.
In a garden maze you cannot use a ladder to take a quick look over the hedge to see where other paths lead. In this book, you should not look at routes unless they are indicated by your decisions.
I suggest that you work through the maze in a group, but you can do it by yourself, discussing each choice in detail before reaching a joint decision and going to the next stage. Practise your English by trying to convince others that your point of view is right, but listen to their opinions too. Keep a record of the problems and your decisions. After you finish the maze you can either discuss it further or go back along your number-route and take another look at the unfamiliar words and expressions you met on your way. Write a report when you have finished.
In reality, a random maze would be much more convoluted than the above example. Such mazes are less pleasing to the eye. In the case above a maze consisting of walls that spiral from the origin was generated, and then subjected to a Monte Carlo simulation for a short time (before the maze would randomize completely).
A maze is a special kind of random tree: in particular, it is a spanning tree of a square in the square lattice (such a maze would have only one way out from the center). Below is a random tree in the square lattice.
Towards the limiting random lattice tree
If the number of edges in the tree above should be multiplied, while the length scale is shrunk appropriately, a limiting random tree will be seen. In the picture below there are 10000 edges, each too small to be seen here, in a lattice tree generated by a Monte Carlo program. The tree begins to appear like a fractal object. The existence of a scaling limit is known in high dimensions (above 8). There is general consensus that it also exists in dimensions below 9.
Die Oranje Vrystaat.
Die foto is in die Noord Vrystaat geneem.
Often in game creation it becomes necessary to create multiple sets of game graphics and background images which contain similar details and repeating elements. It may be for a HUGE outdoor overhead map for a role-playing game showing landmarks, hills, trees, grass, monsters, etc., or as in our case, a bunch of similarly-constructed mazes, or whatever. As game designers and programmers, we need to be able to store, manipulate, and recreate these in our game, using as few graphic, memory, and hard disk storage resources as possible.
Top Ten Maze Links:
- Mazes for sale, ROYALTY FREE on Clip-Art website – http://www.clipartof.com
- Bearded Bunny Blog – Free Printable Mazes – http://beardedbunnyblog.blogspot.com/2007/11/free-printable-mazes-from-4-great.html
- Team Of Monkeys – some very cool mazes, for free and larger sizes and vectors files for sale as clipart. – http://www.teamofmonkeys.com/
- Maze of Mazes – Collection of image mazes. – http://mazeofmazes.net63.net
- Handy Dandy Maze Editor – http://www.berighteous.com/euphoria/mazed.zip
- Experience Mazes, REALLY! – http://www.abcfamilyadventures.co.uk/experience/mazes
- Maze Master – Funky Mazes – http://www.mazemaster.com/MazeMaster/img/books/mm-ult002.jpg
- Ink Blot Mazes – Same artist as Team Of Monkeys, but a much tidier site and also with some quotes and other puzzles – http://www.inkblotmazes.com/
- Maze Algorithms – Think Labyrinth – http://www.astrolog.org/labyrnth/algrithm.htm
- Mazes on Facebook – an public album on facebook of mazes. COOL! – http://www.facebook.com/album.php?aid=16542&id=678580452&l=76507ed7ba
One common way of doing this is called “Tokenizing” the image. Instead of saving and loading all the images we could possibly need for our game, we break the image down into a small number of replicable parts – a set of graphic pieces that we can arrange to create the image we need when we need it. Usually, most pieces in this set are the same size, and will match up against other pieces in the set. The graphic pieces are generally called “tiles.” The graphic screens are stored as a matrix of alphanumeric characters, called “tokens,” with each character in the matrix corresponding to one of the graphic tiles.
Here are the mazes I have created so far for Snack Attack!
The first “maze” is for the About this Game screen. The ghosts chase Snacky around the About this Game text. The next maze (top, middle) is the original Pacman maze, resized to fit our game window. The next four mazes (the red, purple, green, and brown ones) are the original mazes from Ms.Pacman, and the last two I found in hacked MsPacman roms on the net.
Looking at the mazes, you’ll see that they all contain similar elements – rounded ends, right angle bends, segments that are the same length, etc.. To create these mazes, I took screen shots of the Pacman, et al, mazes and cut them up into 24 chunks. These 24 pieces arranged carefully, can recreate any maze a Pacman game can run.
Once I knew what the pieces needed to look like, I had to determine how to create a set we can use for our game. I had to make some creative and technical decisions to make the game easier to do and to make the mazes “fit” in our game window.
The mazes in the Pacman Arcade game are 1.5 times as tall as they are wide, and our game window is roughly square in mode 19, which has a 3:4 aspect ratio. In the Original, the maze borders are thinner than the maze obstacles, and the vertical spacing between obstacles alternates between high and short as we go from top to bottom in the maze. To limit the number of tiles we’d need and to make maze creation and AI programming easier, I decided to have one set of tiles for everything, and to make all the tiles the same size. Notice our borders and obstacles are the same thickness.
After a couple hours of tweaking, I determined the “correct” matrix size for our game is 19×22, with tiles that are 12×8 pixels in size. My primary criteria was being able to reproduce the original Pacman maze using uniform-sized tiles, and this maze needed to fit in a square game window as close as possible to the screen size we have. Our game window is about 8 pixels shorter than my other games, so I added the light blue border box around the game window, centered it, and adjusted the size of our feedback window to make it balance better. Since our Maze tiles are 12×8, for consistency sake, I set the graphics size for all the moving sprites to also be 12×8. This really is arbitrary, but it makes keeping track of them easier. Another upshot of having 12×8 tiles is we end up with about 1/3 fewer dots than the original.
Here is our minimum tile set:
Notice that our tile set is not colored. In the game we need to draw the mazes in different colors, so our tile set here is black, white, and gray. When we draw the maze we’ll color the white and gray pixels in each tile to the outline and interior color, respectively. Here I’m showing you the 2D “arcade” tile set, because it’s easier to see how it fits together. I have a more solid, 3D pipes-look tile set in 10 colors that will be included in the final version of the game. It was constructed the same way, only I processed each tile in photoshop to make it look 3D like. We’ll have a game option to choose between the two tile sets.
Our tile set contains a few extra tiles to correspond with new features we’ve added to the game. The 6 images along the bottom row are doors. The first two are doors for the penalty box. In Pacman and MsPacman, the penalty box is always in the same place, in the same orientation. The reason I think is that they needed to hardcode the location so that the ghost’s eyes can find their way back to the box so that the ghosts can respawn when we kill them. For our game, we can just have the eyes target the Penalty box door, and they’ll always find it, so we can put the Penalty box anywhere in the maze and it can have a vertical orientation if we want it to. Therefore I included a Horizontal and Vertical Penalty box door.
The next two doors are Ghost-Only doors. Snacky can’t go through them. We may want to make passages for the ghosts so they can ambush Snacky. The last two doors are Snacky-only doors. We may want to block the ghosts from certain Snacky-safe escape routes.
Included in the tile set is a Dot, so we can place the dots only where we want them. Similarly, we can place energizers anywhere we want, and since Euphoria is flexible in redimentioning sequences, we can have as many of them in the maze as we’d like.
Our game will determine the starting positions and number of ghosts from the maze definitions, so we can place as many ghosts as we want to, anywhere in the maze. We MUST have a penalty box, with a Penalty Box Door, but we can have the ghosts start from anywhere.
Snacky’s starting position will also be determined by the maze definition. We can start the game with Snacky anywhere we want.
Tokenizing the maze
Ok, so we have a tile set that we can use to construct any maze we can think of. So, how do we do it? I told you before that we want to represent the maze as a matrix of alphanumeric characters with each character corresponding to a tile in the tile set. Our mazes are 19×22 tiles big, and thus they can be represented by a matrix containing only 418 characters. That’s pretty tight. Storing the mazes as a GIF image is 6 times as large and GIFs are compressed pretty tightly.
How do we choose the tokens for each tile? Arbitrarily. You can make any alphanumeric character represent any tile you want. I usually try to go for characters that look kinda like the tile, so when I look at the text representation, I can tell what the maze is. Here is a maze from Snack Attack! And it’s corresponding text representation:
( is an upper left corner,
) is an upper right corner,
[ is a lower left corner,
] is a lower right corner,
< is a left ending horizontal piece,
> is a right ending horizontal piece.
O is an energizer and o is a dot.
C is the player’s starting position – because C kinda looks like Snacky.
M is a Ghost (M for Monster)
P is the Penalty Box door.
= is a horizontal piece.
You get the idea. When I run out of characters that look like tiles, I just start picking letters and symbols until I run out of tiles.
I store all the levels in the game (in the maze order shown above) back to back in one long sequence of sequences of sequences. Levels is all of the mazes, Levels is the about maze, Levels is the token at position 5,4 in the second level.(the red one in the image above – third maze in the sequence)
For our purposes, I have created a handy, dandy maze editor we can use to create the mazes. You click on the tile you want and then place it in the game window. The program indexes into the maze definition sequence and places the right token in the right place automagically.
If you haven’t yet downloaded my version of our course project, Snack Attack!, do it now, and play it a million times to get an idea for the game.