Chaos Groove Demo no. 4

A new demo is now available, featuring some pretty basic menus which can let you choose several different game settings, including different board sizes, added board features, different wizard stats and random wizard names.

I’m a bit tired to list everything in full, so have a play and explore some of the different options. Progress has been patchy lately because I’m getting ready to go back to full-time work. But I thought a new demo would be nice.. 🙂

Progress will continue to be slower than before I’m afraid, but will continue..

Some good news

Some good news though (after my bad news post below).. I’ve been working on some more menu options which will let players choose how the game plays.

Here is the very large board option being used:

Chaos Groove Screenshot

Wizard Selection Screen

I now have a basic, but effective, Wizard Selection Screen in place..

Chaos Groove Screenshot

This uses the new config files to read in the wizard_options.ini file and use the text information held in there for the menus and to directly set up the wizards. Unlike previous menu systems I’ve written, the information is not transfered into seperate menu variables, but parsed directly from the text each frame. This might be too slow in a fast paced arcade game when used ingame, but for Chaos it’s not going to be a problem. It will also make it easier to code in new menu options and process them as well. In addition, the variables in the text can be used to deal with how the menu options are shown on the screen to some extent.

Unfortunately, my strengths do not lie in clean, modular, reusable abstract code like menu programming. So, the code is a bit hackerish I’m afraid, but is mostly data-driven and is effective. 😉

The next demo release will let you pick a combination of wizards (human, computer or off), as in Chaos Funk.

Chaos Groove Demo no. 3

Demo no. 3 is now available!

Screenshot 18 for Chaos Groove

Chaos Groove Demo

Some more last minute bugs delayed things and I’m sure there are still some nasty ones in there. But I need to release today.. 😉 Just accept that it will have some issues. 🙂

Ok, all the spells are now in there and the AI also uses them all and is in general better. You can now go into magic castles and trees created by an enemy wizard, and this seems to be working ok, but I’ve not had too much time to test.

There are a few more effects in there as well, which help make things look a bit better, although the time between effects and general logic may now be a bit too fast. After testing a lot, you tend to speed things up rather than have events happen slowly. 😛

Still missing are proper engaged to enemy option at the start of a creature’s movement, undead can’t be attacked option and illusions & the disbelieve spell.

Hope there are no serious problems and you enjoy the new demo!


Today I have added Magic Fire and Gooey Blob:


Like the original, Gooey Blob will spread and cover pieces that don’t belong to it’s owner. They can also be rescued by killing the covering blob. Unlike Gooey Blob, Magic Fire will try to attack a piece, but will kill the piece completely if it wins. The growth routine is pretty simple and is a direct translation from the original code after being disassembled by a few people. I think the ‘grow and make the original piece die’ chance is not quite the same, but the rest of it is identical.

As you can see in the screenshot, I’ve added a quick blur glow to the fire gfx, which is a bit of a placeholder for the moment.

The growth options are all held in the piece data text files, so pieces can have a different chance of growing, dying, attacking, etc.. They can also grow a piece that is not the same as the current one, so for example you could have a bees nest which has a chance of creating a bee creature. 🙂

Most of the time today was spent on getting the AI to use the spells properly and to react to them on the board. Because they can grow the AI needs to be coded to realise that standing next to a growing piece is not a good idea! At the same time a wizard shouldn’t be so scared of blobs more than a square away that they would run away in a panic. They need to know that they cannot move and attack them. That is what I tried to today, even though it’s a bit tricky. I had to do a few changes (without hardcoding for specific spells), to make the AI treat them properly. It still needs some work, but that’s for another day.

Like much of Chaos, one little thing here can have unforeseen consequences later on due to the way things interact. It certainly takes longer than you think for getting the logic right!

I’ve also fixed a few display user interface bugs with text not being removed at the start of a new turn and with removing highlighting in a computers turn and messing up his movement. I’ve still got a few issues to fix with wizards mounting a piece with a magic bow and not shooting, and not doing anything in a magic tree. But for today the Magic Fire and Gooey Blob are pretty much done. Mutation and Teleport next I think..

Shiny Weapons

Here you can see a Computer controlled wizard casting Dark Power on an enemy Golden Dragon..

Screenshot for Chaos Groove, with magic attacks and powered up wizards

Notice also the wizards running about with spangly, shiny, super-weapons! Yes, I have put in the code and the new gfx to let you cast Magic Shield, Magic Armour, Magic Knife, Magic Sword, Magic Wings & Magic Bow. 🙂

I had to add a bit more shading detail to Magic Armour as it was looking too flat otherwise, and it is one of my favourite gfx in Chaos. I would love to do all the gfx with this amount of detail or more, but I’m afraid I’m not a good enough artist to do on the creatures..

To implement the new spells.. first of all I added a spell option to enable a spell to change a target piece’s gfx to another one in the list of pieces available. This lets me change the wizard gfx, but it could also be used to disguise a strong piece with a weaker creature’s image (thinking of evil spells here!). With this in place I was able to add more spell options to change individual stats like combat, defence, movement, etc.. Like the originals, the combat and defence options refer back to the original pieces values to stop you casting two magic knifes and getting a +4 combat advantage.

All these wizard spells also let the wizard attack undeads, although that side of the code in terms of creature attacking is not in there yet. I’ve made the magic bow arrow gfx appear white with a slight glow to separate it from the normal arrows.

The AI can now also use these new wizard spells, although I might have to tweak the values used after analysing more games. At the moment though, the AI will be more likely to cast spells like shield, armour, wings or bow if it is under threat. Similarly, it is more likely to cast knife, sword, wings or bow if feeling strong. I think this does reflect how human players would play and hopefully will feel more natural. The AI will also not cast a spell like knife when it already has sword.. Oh, and having the same spell more than once will make it more likely to be cast (more chance of getting one to work).

I had to do a bit of work to get the AI wizards to shoot properly when moving around, mounting and firing, or standing still and firing from the ground or when riding a creature. This part of the code wasn’t there at all before, and it took a while, but it seems to be working ok. Now, they are just totally evil with their new weapons.

What else? Oh, I’ve made the wizards be more likely to ride pieces when under threat rather than trying to hide in the open. I think I’ve fixed the spell information bug Kreezer mentioned and I fixed a couple of other rare bugs in there too.

Great balls of fire..

Somewhere in the middle of this raging inferno is a wizard who is about to die!

Screenshot for Chaos Groove, with fire effect in place.

Yes, I’ve been improving and adding new particle effects (and they look much better in motion!) Firstly, there is an improved exploding effect (such as when casting magic bolt). I’ve also added a proper flame effect (see above), for when a dragon’s fire hits something. I still need to do proper missile particle effects.. Also in place is a new magic attack effect (which looks pretty cool), and this also means that I’ve added the 4 magic attack spells: Justice, Decree, Dark Power & Vengence. Not only that, but the AI will actually use them as well. 🙂

The AI won’t cast them on a wizard that is not riding another creature (or tree, castle), because for the moment I have not put in the code where a wizard loses all his creatures. This will be optional in the game with a few variations, I always felt it was too unbalanced personally.. but it will be in there if people want to enable it.

Once I’ve got the AI to use raise dead properly, I’ll be moving onto spells like magic shield, etc.. There is more drawing for the wizard gfx for those, so it will take a bit longer.

Chaos Groove Demo no. 2

Chaos Groove Screenshot

Here is what you’ve been waiting for, Demo number 2!

There are still some issues with this that I haven’t had time to add or fix yet:

  • Magic Wood trees can only be entered by the wizard who cast them. They are also attacked and shot as if they were normal creatures.
  • The AI doesn’t yet cast Raise Dead.
  • Wizard movement for the AI is a bit broken, sometimes it attacks when it doesn’t need to, and othertimes doesn’t. Also the AI doesn’t have code to deal with dismounting. But at least the AI now tries to ride creatures and get in trees.

Pressing the right mouse button over an empty board square will now highlight all creatures by their wizard’s colour..

Oh, The game now uses a text file: Display.ini to open a screenmode. The default option is to try to open a fullscreen screenmode of 1280 x 1024 using OpenGL. If this is not suitable for you then please edit the display.ini file to pick a screenmode that works better for you.

I’m sure I’ve missed something, but enjoy some of the new spells, and the better AI wizards!

Pathfinding test

Chaos Groove Pathfinding test Screenshot

This is just a test of the pathfinding under extreme conditions to make sure it all works properly. 🙂

I will also use this pathfinding for game options which throw in a user definable amount of walls and destructable objects on the board to make sure no wizard is trapped in a corner. 😉

Ohh.. Look at that!

First of all I think I’m going to use quarter sized images (640 x 480) instead of using the full sized screenshots and letting WordPress make a teeny tiny little thumbnail..Screenshot 10

So, as you can see from this screenshot you will see I’ve added the Wall spell. I have yet to make the AI players use this, but you can cast upto 4 blocks as in the original. In the above screenshot there have been 2 wall spells been cast in case you were wondering where the extra blocks came from!

I’ve had to expand the engine to provide support for spell icons, (in addition to using creature sprites as icons), as well as adding extra features such as multiple casts to be used with walls and shadow woods. This also means that you could now make a spell which lets you cast 2 dire wolves, or 3 orcs.. 🙂

I’ve also added support for text descriptions for the non-creature spells, and rearranged the user interface at the bottom to make better use of colour to more clearly show each creatures statistics.

Law-1, Law-2, Chaos-1 & Chaos-2 are also now implemented, but since they are the most useless spells in the game, that’s not so great! 😉