Thursday, April 29, 2010

Spent the whole evening tweaking the level generator. It had a few minor glitches in it that only occurred once in every 25 or so dungeons, so that made them REALLY tricky to find... Hard to reproduce a bug in a random level generator hahaha Anyway, it's all solved now and - as you'll see above in the screenshot - the program is now producing huge, labyrinthine, awesome dungeons that are a lot more elaborate than they were last time I showed you. Now all it needs are the staircases to new levels and the ability to create ROOMS, since constant corridors are boring.

Anyway, my playing around with the lighting and normal mapping code paid off as you'll see in some of the screenshots above. You may also notice another little detail that I have been playing with... See if you can spot it... It's non-functional yet, but it gives the engine a bit more of a 'gameplay' feel. Also, while the walls of the dungeon look AWESOME now with all the lighting (check out the screenshots) please keep in mind that what you are looking at are the LOW-RES 3D models. Yes, that's right, it's going to look even better once it's done. What you're seeing are the temporary fill-in models I've been using to test my code! How cool is that?

Anyway, I hope you like it (I think the Minotaur looks kick-ass inside the dungeon setting, personally)

Tuesday, April 27, 2010

After the herculean task of getting the procedural level generator working, I was fairly braindead last night, so I decided to play around with something a bit easier and get the normal mapping happening... I was foiled yet again :( had a bit of progress though! The normal mapping IS working fine, and the previously flat walls are now lumpy and realistic looking, which is exciting, however, the addition of the normal mapping has completely and utterly removed all of my lighting in the levels, so it's back to the drawing board with my lighting and shadow code.

Velly velly sad :(

I'll let you know if I get it working and maybe provide spunky screenshots!

Monday, April 26, 2010

After a massive migraine-inducing programming session I have gotten the procedural dungeon generation working :D

In lay terms, it means that every single dungeon in the game will be different. Some will be tiny, some will be MASSIVE and sprawling labyrinths. What's that? That's in games already? Oh yeah, I forgot to mention that this game is infinite... There are an infinite number of dungeons in the game, and ALL of them will be different! They are generated by the COMPUTER, and not by a level designer.

Similar things have been accomplished in games such as Diablo and Torchlight before, but those games actually only use a 'faked' procedural generator where a selection of pre-designed 'chunks' of a level are slapped together in a random order, so while each level is different and random, you're walking through the same thing over and over again. In The Sword of Ahkranox, EVERY piece of the dungeon is random.

This is gonna be fun to play...

Now I have it working on a 2D plane, the next step is to fix up a couple of minor bugs and then get the game generating staircases so as to build multi-level dungeons. So far the engine supports dungeons that can be up to 10 storeys deep, which - with each level being up to 50x50 grid spaces, that makes a possibility of an in-game dungeon with up to a quarter of a million areas to explore.

I dunno, I can't explain it any better than that... If you're a programmer, you'll understand the staggering implications of what I've managed to do. If you're not... Well... Jump up and down and clap and just accept that it's an amazing breakthrough in video gaming, then buy me a drink when you see me next to say job well done.

Anyway, I've attached a couple of pics of the level generation system (top down) and inside one of the levels (still low-res wall models and zero lighting/props/monsters). Just know that what you're looking at was designed ENTIRELY by the computer, and not by me.

I've also been playing around with the monster's animations. They can now walk, run, charge, dodge, block, be hit, attack and die - among other things. So once I've perfected the level generation, monster population will be one of the next things to do.

Saturday, April 24, 2010

Solved the riddle of the random dungeon generation. Still currently only happening over two dimensions, and in need of some performance tweaking, but now the base algorithm is working it's only go go go from here! It's quite fun to traipse around a randomly generated level, not knowing what's coming up next.

Many games have what they call randomly generated or procedurally generated levels, but it's not so. Games such as the Diablo series or Torchlight have random segment level generation. Basically level designers have built big blocks of segments of levels and those blocks are tacked together randomly. Since many of those segments have scripted events for monster creation, etc, one can predict what will be coming next in these so called "random" levels. In The Sword of Ahkranox, the procedural level generation is just that. Truly procedural.

The Hellfire2 engine (which I have been developing purely for this game) relies on a top secret hyperbolic parabloid procedural world generation formula that I devised back in 2005, so level generation will be a VERY random, VERY unpredictable thing. Should be great fun when you're being chased by an ogre through it!

And the new to-do list: - More complicated dungeon generation on a 2D plane (t-junctions, crossroads, etc) - Get player collision working - Basic AI (no player recognition) - Range-of-vision processing (hiding 3D models that the viewer can't see to preserve memory)

Thursday, April 22, 2010

As you can see, a fair bit of work was done last night. Some monsters are in the game. No AI yet, but basic idle animation is there. Their normal mapping seems to be working fine, so once the level generation is completed I'll get that working for the environment models, too.On the topic of level generation, I did quite a bit of work last night to get it happening, but there's still some problems.

Good Stuff: - The models are loading and positioning fine - Everything is sticking to the alotted grid schematic

Bad Stuff: - Corridors are intersecting where they shouldn't be - I'm not certain yet but I think there may be some object rotation issues

More work on that tonight and on the weekend, though. I'm confident that I'll have something at least basically working by the end of the long weekend. I have nothing else planned.

So, the updated to-do list: - Get the world generation working (for dungeons, at least) on a 2D plane - Get player collision working - Basic AI (no player recognition) - Range-of-vision processing (hiding 3D models that the viewer can't see to preserve memory)

Once that's completed I'll be able to start work on a 3D plane of dungeon generation! This game has multi-level dungeons, sometimes 10 storeys tall, so once the simple stuff is worked out, the harder stuff (which makes the game better) will come next.