Sign in to follow this  
DiegoFloor

Dungeon maker input methods

Recommended Posts

Hi, I hope this is the appropriate forum for this discussion.

I'm trying to come up with a dungeon maker system or, more generally, a system for creating rooms and tunnels that is easy and intuitive for the user. edit: The more powerful the creation system the better (obviously) and I'm aiming at something that allows the user the have curved walls and is not restricted to a 2d plane.

I'm playing with a few ideas here. The result product of all of them is made with modules, pre made models.

The user creates nodes, connects them and they become rooms connected by corridor and hallway. Maybe each node has properties that define what this is going to be in the final product, like room size or something like that.

The other idea is by defining the ground. The user draws the ground as splines and the system creates the ground model and adds walls and ceiling.

Third idea: The user creates the volumes like small minecraft's cubes and the system does some kind of 'interpolation', using curved walls and such when needed.

Any ideas? [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img] Edited by DiegoFloor

Share this post


Link to post
Share on other sites
Easy to do with pre-made models acting as tiles. You can randomly(like in a roguelike) or (with user input) design endless dungeon layouts.

The other 2 seem like a lot of work for not much benefit. Also, the interpolation is going to kill off the user's vision of the dungeon when it rounds off all the hard edges. When using interpolation techniques in a modeling package, you have to know to model in extra edge loops to combat that unwanted rounding, so eg: a cylinder doesn't turn into a pill!

With pre-made tiles, users can place whatever features they want easily.

Share this post


Link to post
Share on other sites
When you say pre-made tiles you mean big pre-made tiles, right? like a whole room made of 4 corner pieces etc. My ideas use pre-made tiles as well but in smaller chunks, but I want to avoid having to place them by hand as it's time consuming and not very fun. I might settle for something simpler like placing tiles, if the other alternatives prove to be too complicated for me.

I had another idea. Define a floor like a huge plane (or terrain, to have some height variation) and just draw the walls along the floor, click and drag.

Share this post


Link to post
Share on other sites
Actually, I was thinking about 1x1x(whatever height) tiles. 1 unit being 1 meter.

Just have corner pieces, mid pieces, doorways, and random wall features.

Then if you generate a room in a data structure like like

(4x4 room)
####
####
####

You just place the most relevant tile in each one. The inner 4 tiles are just floor. The middle walls just get the wall tile(s), and the corners get the corner based on simple rules. A corner tile is a floor plane with 2 walls built in. A wall is a floor with 1 wall built in.

For variation you can make a ton of different tiles that can be corners, or floors, or walls and choose a random one to place. A wall doesn't have to be just a flat plane. You can have variations that look like filled in doorways or windows. Some with missing bricks.

Then each tile can have a 'feature' or whatever you want to call it, that can be an object on top of it. Like a plant, or a chest, or a hanging cage with a skeleton in it. Or even just bloodstain decals.

Share this post


Link to post
Share on other sites
I see now why my ideas seem too complicated! I should probably have said that in the first post, but I'm looking for a more general system that could do curved walls and not be restrained to a 2d plane. 2d square dungeons are so popular that this is a natural assumption. (editing the first post now)

By the way, thanks for sharing your ideas! It really helps.

Share this post


Link to post
Share on other sites
Daaark's suggestion can be extended to 3D rather easily, by making the walls higher, adding a ceiling, and introducing additional tiles such as stairs or ladders (unless your world is in zero gravity!). Curved walls can also be added as "curved tile" types (in various orientations).

Of course, the most "general" system would be a full-blown voxel algorithm which literally digs out the dungeon procedurally, but that's infinitely more complicated (and you lose the retro feel). Edited by Bacterius

Share this post


Link to post
Share on other sites
Have you ever played the Dungeon Siege games? They use a tile-based world very similar to what you're describing. You might find these to be useful:

[url="http://scottbilas.com/files/2003/gdc_san_jose/continuous_world_paper.pdf"]http://scottbilas.co...world_paper.pdf[/url]
[url="http://scottbilas.com/files/2003/gdc_san_jose/continuous_world_slides.pdf"]http://scottbilas.co...orld_slides.pdf[/url]

Share this post


Link to post
Share on other sites

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

Sign in to follow this