Tuesday, 17 September 2013

More bug fixes and more tweaks on ramps/hallways...  pretty much all of the known bugs are eliminated but there are still a few rules I want to add in the algorithm.

I also experimented on lighting to make it more interesting.  While I'm doing everything I can to not make it look like Minecraft (which, for a project like mine, would be too easy), I also don't want it to be  too dim and gray.  I'm liking what I'm seeing so far.

Running around and looking at the results of the dungeon being generated is really inspiring for new gameplay ideas.  Who knows, I might figure out how to implement them later on so I'm taking notes.

Monday, 16 September 2013

Bug fixes "East, always to the East!" - Marius (Diablo2)

I removed a few major bugs today; they were mostly typos (two bugs related to the direction "east"; odd considering I'm just adding numbers on the X axis but whatever) so I'm glad the logic in the programming is working nicely.

Screenshot bellow showcase the overall layout of two generated dungeons:

As I'm running around the dungeon(s) to help me out debug the code, I'm glad to report that I've gotten lost plenty of times (often needing to look at the overview in order for me to get my bearings).  It's interesting to note that so far it looks a lot like maps to Diablo III which isn't necessarily a bad thing but it's still not enough RANDOM for my liking.  I'm getting close, though.  A few tweaks in how the logic for the hallways work and I should be golden.

I still haven't tweaked my algorithm to change how rooms are generated.  It's not bad the way it is but I want more variety.  I got a few ideas on how to approach this so, further progress throughout the week should yield interesting results.

The really cool thing right now is that the bulk of the program is complete; now it's just a matter of tweaking to get more desired results.

Yep!  I'm pretty confident that I'll be able to focus a bit more on the 3D Art department by the end of the month.

Friday, 13 September 2013

Rewrite #3

I practically rewrote the entire thing from scratch again.  This is, what?  The third time now?  It's all good, though.  As I'm seeing the dungeon generator at work, it gives me new ideas on behaviours/algorithms, not to mention it allows me to organize and clean up the code tremendously.

The way the code generates the shape of the room(s) is much more isolated which allows for greater flexibility without messing up the rest.  I'm also applying this to the hallways that are connecting the rooms and its surprising to see how much more interesting it makes the overall experience.  Without this iterative process, I'd still be generating very basic square rooms; it looks much more organic now (relatively speaking, of course).

Another thing I looked into was the lighting.  I changed some parameter that was causing the light to not do a proper falloff on the walls and ceiling.  Made it all look like Playstation 1 era graphics.

There's no point in showing screenshots yet as the end result looks practically identical since last time I posted.

So what's on my ToDo list now?

  • Adding another algorithm to generate a room with a completely different shape.
  • See if I can't generate a dungeon that could go downwards or have rooms that have multiple floors.
I'm trying to think about other things I'd want to put in but I think, at this point, once I'm done with my ToDo list I'll just add more art assets to make everything feel more organic.

Tuesday, 10 September 2013

It's been a month, already!

I've been planning this thing for years but I've only started working on the prototype 30 days ago.  It's just one of those things I was putting aside because I wasn't confident enough to do it on my own and there were a few (important) things I couldn't figure out yet.  Thankfully, I have some support and it has helped me immensely!

Daring Legends is a pretty ambitious video game project and the main focus is on procedural generated content.  What I got so far (as a prototype) is a fully functional 3D rendered dungeon generator.

Today was a pretty long evening night as I was debugging the code that generated ramps on elevated terrain and, more importantly, I was struggling to get decent pit generator within rooms and that proved to be more difficult than it should have been.  I'll have to come back and clean that code because that particular section is a nightmare to look at in its current state.

What I've got so far is the following:

  1. Dynamically scalable room generator with various shapes (placeholder tiles) and height.
  2. Randomly generated lights (placeholders for environment torches, moonlight, etc).
  3. Procedurally generated hallways with ramps.
  4. Randomly generated multi-leveled platforms.
  5. Dynamically placing giant green pills (those are programmer art for monsters such as goblins).

Here are the latest screenshots of the current prototype.  The images are all part of the same 10-room generated dungeon viewed from different rooms/angles: