Placeable Nodes

I’m working on getting the dungeons furnished at the moment, and I’ve added code to identify all the tiles around the outskirts of a room that can have a placeable added to them without obstructing doors or the path through the room, and create a placeable node for each one.

I use the term placeable to refer to a non-architectural element of the dungeon, such as a chest or alter or whatever.

This terminology is a holdover from my misspent youth with the Neverwinter Nights toolset, which is one of the big influences on this project. I had more fun playing with that toolset than the actual game, and I’ll probably write a filler post about its influence when I’m dry on actual content.

The nodes contain information such as rotation and offset, and when a placeable is added to a room it will be “plugged in” to a node.

The placeable nodes are added on a room by room basis, rather than across the tiles. This is because some rooms may not permit the placement of items, or may have special requirements as to where they can be placed. Also, I find working from the graph rather than the grid is much more elegant and flexible.

A reference to the node is added to the tile it’s located in, which means once the actual placeables are added it’ll be possible to use the tile grammar system to do some pretty cool things, like for example, combine several bookcases in one corner of a room into a single one that curves around the corner naturally, or combine a container into the stone wall behind it.

It can also be used to do things like offset the node so it’s flush with the thinner walls. You can see a few examples in the screenshot where there is a gap between the checker marker and the wall behind it, and it looks a bit unnatural.

Since this post was written I have experienced some internet down time and I’ve added the code to adjust the offsets:

I’ve also made the rendering system a bit more efficient, and I plan to do a post specifically covering that.

Also, I’ve added a model to show the position and rotation of the player 🙂

2 Responses to “Placeable Nodes”

  1. Really enjoying these updates. Thanks. 🙂

Leave a reply to Jeff Cancel reply