Three Hundred :: Mechanic #083 Sites:     Webcomics   |   Three Hundred Mechanics   |   Three Hundred Prototypes
 Three Hundred
   - Index Page
   - About...
   - By Year

   - Comp-Grid
   - Procedural
   - Tactics
   - Tiny Crawl
   - Misc

PreviousMechanic #083Next

  Mechanic #083 - ASCII 3D
Posted: 07/01/08

Taking Roguelikes into a new dimension... literally.

  Into the Third Dimension!


This is a really quick entry that came to me when I was supposed to be nodding off for some much needed rest. The basic idea is to solve two Roguelike problems at the same time. The first is having multiple dimensions, rooms above rooms and height mapped terrain, without resorting to a second window like Dwarf Fortress does it. The second is to do so without actually breaking the ASCII-based building blocks. And this is what I came up with:


Simply put, layers of ASCII are simply placed on top of each other, scaled and tinted properly to give the illusion of a z-axis. Doing this in 2D is not difficult, and before 3D was all the rage, Sega racing games like Outrun and arcade shooters like Space Harrier and Super Thunderblade would construct environments out of scaled 2D building blocks. To emulate this approach, simply scale each layer around a central point (in this example, that point is unfortunately, right in the middle where you can't walk). Moving this point around with shift the perspective with a sort of parallax scrolling effect.

This is a simple example since it is late at night and I want to go to sleep, but I'm pretty sure that this extremely simple approach could create more complex structures. For instance, in this example, all the walls are the same height and there are no floors on higher levels. This would be easy enough to do. Height mapped floors, however, may require additional efforts to look right. In motion, with smooth scrolling, the depth of a valley or height of a mountain should look right, but roguelikes sort of move chunk by chunk and I'm not sure that scale would be immediately obvious from a static screen. It might be possible, but I'd have to build and tweak and engine to see, rather than relying on my mad Photoshop skills.

This approach could, of course, be used with actual 2D graphics. I seem to remember some old, really crappy platform game faking a simple perspective this way (I think it was in 3D, as in you used glasses and all, but had really bad colors with bright reds and greens and hurt your eyes). Though you could use real graphics, I think doing it in flat ASCII is much more preferrable. It will give you game an extremely unique look and feel and separate it out from the rest of the roguelikes with what amounts to a relatively simple addition. Making a fully 3D roguelike in this manner (with things like bridges and rooms over rooms) could really make something truly unique and original in the gaming landscape.



Copyright 2007-2014 Sean Howard. All rights reserved.