Date: 2011-04-10 07:41:52 Language: c++ Status: idle

Dungeon

Project page for Dungeon. This is a game inspired by the Dungeon Keeper games.

The game currently only has the tile grid. I am in the process of adding some characters.

I will update this page when I have something to show. Hopefully it will do better than Hanova.

Screenshots:

Removing the grid

I decided to try removing the grid from the game, so you can effectively create your dungeon in more interesting ways. This was also to avoid just making a clone of the games that inspired it.

I have written various demos to test out concepts to use in this game, such as building the cave geometry and navigation meshes.

My first goal here is to load an initial dungeon and allow the user to tell minions where to excavate. If the game feels fun at that point, I will think about how to turn it into an awesome game.

Some progress

Made some progress with this game. The tile engine is working properly. I haven't added support for connecting different tile sets yet. That needs designing. I don't particularly want to have to create loads of connecting tiles but I cant think of a better way of doing it.

I spent far too much time on an algorithm to return a list of all visible tiles from a point in a level inside a defined frustum. There are still a couple of issues with it but it is mostly there.
I did write this twice. The first version was a recursive function that branched whenever the frustum was split by a solid. This ran into problems for some cases.
The current algorithm is a more optimal solution. It uses a list of frustums that is updated when it is split instead of recursion. There are two bugs with it that I know of; one is a simple fix, it is possible for the same tile to be evaluated twice. The other is more awkward and occurs only when the camera is looking almost straight down an axis. In this case it is possible for the algorithm to accept a tile that should be occluded.

I have started work on the characters in the game. Hero characters maintain a personal map of the dungeon, compiled by what they have seen and possibly transferred from other characters. I currently have a place-holder character exploring the dungeon and building this map.