Saturday, April 30, 2011

Update Batch!

Hey everyone! Today I'm going to talk about some recent updates I've made to my game, and my methodology behind them. So, I'll jump right to it!

Most notably, I've changed a few things in the Cave generation.(what else is new?) As you might have noticed from playing, the difficulty curve is rather... Well... Insane. You can be in one skinny hallway, go down a floor, and be mobbed by 100 enemies waiting in a large open cave area with no cover or way out to be seen. You try to block-dash your way to safety, but your shield breaks and you get F@#&'ED.

To add to that, I wasn't even able to get past level 15 at best. Ouch!
So for one, I mellowed down the algorithm's a little bit. The room size doesn't blow up so quickly now, and most importantly I changed the enemy spawn method. Before, my "level builder" code would scan every empty space, and take a random chance and place an enemy there. The disadvantage of this system is that while it does fill up all space rather evenly, cramped floors become rather sparse, and large open areas become rather hellish.

To that effect, I changed the spawn method to become quantity-based, where the generator will predetermine how many enemies it will spawn, and then pick fitting places for them on the map. In the end, it gives me much more spawn control, and later it will allow me to do some cool black magic with enemy spawn patterns. Now the difficulty is much more manageable.

Now then, a small update on the HUD. As pointed out by JWK5, it was nice that the magic gems in the HUD would "blink" when you killed an enemy to show off that you were gaining MP, but it wasn't enough information for him. He wanted to know how close he was to getting his next full gem, so that he could plan around it. And for a while I thought about it and came up with a method that would make sense-- The gems slowly saturate until they hit full, where they begin glowing in the center. Overall, this works out very well. I suppose it's obvious that you should provide the player with this kind of information, so they can better plan their moves.

To add onto the graphical increases, I've been broadening the tileset and adding more variations. Grass tiles are no longer awkward blocks, and I've created more dirt variations and stuff like that. I also created new torches, which I'll talk about in a bit. Soon there will be small water puddles and things like cobwebs in the Cave. While they don't impact the gameplay at all, they tremendously add to the experience and engage the player in my game. Creating this kind of atmosphere helps me pull the player into my world and have them, at least somewhat, feel the world of my game and make the experience much more 'real'.

And now I've been working on the game's story. Well, implementing it. Now there is finally a much needed intro dialogue when a new Protector is created, and it gives a short and sweet introduction to the general mood of the game. The goal of the introduction isn't actually to tell the player anything, the goal of it is mostly to make them want to know more. With that, I've began adding parts of the Cave's story(yes it has a story), and I rewrote my text wrapping algorithm and it now works excellently.

For my last update, last night I added lighting. It might surprise you at how amazingly this affects the game's atmosphere. Or, maybe it won't! Either way, it definitely helps give a great sense of depth, and it'll let me do cool things like day/night cycles and make the cave totally creepier. That's where the torches come in, of course!

Anyway, that's all for today! Next time: a gameplay teaser trailer!
Thanks for reading!

No comments:

Post a Comment