Creators of Caveman Craig, Teka Teki, and more.. 

What’s grakkin?

Hello all!
Not much worth mentioning on the Caveman Craig 2 front, we’re all just keeping busy with bug fixing, tweaking, and planning. Lots and lots to do, but it’s slowly (yet somewhat quickly) coming together!

But, just to keep you all excited..

Early Playthroughs

This week I was fairly sick and unable to concentrate on doing any substantial work on CC2. My job this past week or 2 has been to simply fix bugs, tweak, and make the game as playable without the console as possible.

Feeling better this morning, I decided I would do a playthrough of the game. I’ve hardly done this before, actually.. I usually find a bug or something I can change and close the game immediately to fix it. This morning I allowed myself to just play, enjoy myself, and see what happens. Instead of fixing the bugs as I find them, I just took note of them to fix later.

I played for a good 20-30 minutes.

My tribe was thriving, although being heavily assaulted by velociraptors, compsognathi, pachycephalosaurus’, etc. Gatherers didn’t seem to be getting much better at their job, but the hunters were on top of their game and were especially good at protecting their minions.

I had noticed, however, that there was no sign of the enemy. They hadn’t come to attack, and in the debug screen, they had stopped growing after about 7 cavemen despite having a considerable amount of food. I decided it was time for me to drop by (with a couple of hunters, but not all of them, as I didn’t want to leave my tribe unprotected).

When I first entered their territory, I was greeted by a small gatherer – who was quickly stoned to death by my bouncers. I took down the enemy’s first checkpoint with no problem.. no hunters came to defend or anything.

When I reached the enemy’s cave (encountering just a couple of cavemen along the way), I realised what was wrong. Most of the cavemen were fast asleep, and the rest were standing around with absolutely nothing to do. Neanderthal Neil was nowhere to be found.. he must have been killed by a velociraptor days before!

.. I have some work to do!


New Video!

This video isn’t just a bit of teaser gameplay in CC2, but also a demonstration on our Parabox Console.. If you’re a Game Maker developer, you might find this tool very useful!


A Beast of Different Proportions

It’s ok little Bukknog, I’d be pretty terrified too if I faced a Parasaurolophus. And in CC2, these guys will arrive in packs of 3-7. But don’t fret, they are harmless, and really just want to trample your crops and shake the earth while making high pitched, irritating noises. Face your fear and succeed in bringing one down and they’ll make for quite a tasty banquet!

More coming soon.

May’s Etc

Everything is going just great over in the world of Caveman Craig. We’re all keeping busy and coming up with great ideas. Caveman Craig 2 is truly coming into form and there’s just so much I’d like to show you! But, all in good time =)

Ricky has been putting together some ideas for the game’s soundtrack, and it’s sounding pretty professional! It’s giving us great ideas for how the overall tone will be and I’m realising more and more how essential the music is to the game’s polish.

Tim and I have been discussing aspects of gameplay in detail, particularly for the mobile version of Caveman Craig. The desktop and mobile version will be considerably different, yet considerably the same. More to come, on this. We’ve also conceptualised some great ideas for the menu and how the game progresses. We should be posting up some concept art soon on this!

Greg will be back on board with artwork soon now after having a bit of a break. Most of his work will be on the special items, purchasable in-game with “XP” that is earned by accomplishing certain tasks with Craig. These are more or less what you’d know as ‘bonuses’ in the original game.

Finally, I’ve been working my butt off coding some ideas for optimising the enemy tribe when they are off screen, as well as fixing bugs and testing thoroughly. The seemingly simple task of creating a ‘pause’ script turned out to be difficult but all the more important as it is also used for a whole number of interface features. I’ve been spending some time testing this.

We’ve also got a new dinosaur running around, although he can be pretty hard to see! The compsognathus is a little like the ‘pet dino’ in the special edition of Caveman Craig in that they latch onto their targets and nibble away until someone can fend them off.. only these little guys attack in groups!

We’re at a stage now where we need to populate the land with all the dinosaurs and get them running, so this should be an exciting stage in development, especially for you guys!

We have a release schedule which is keeping us working with deadlines, which means delays will be minimal and release is approaching ‘announcable’. Please keep supporting us and make sure you subscribe to the blog if you haven’t already! You don’t want to miss out on all the news :)

Take care,

What else?

So you might’ve been waiting for me to reveal another enemy in Caveman Craig 2.

However, we’re gonna keep it secret. To find out the final enemy caveman, you’ll just have to buy the game when we release it (and of course, progress far enough in the game to meet him).

As Rhys mentioned, we’re planning to release the game sometime mid-this-year. We really value your patience, and that’s why we’d like to keep you keen with images like the one on the left here.

Rhys has developed a system where Craig earns experience points by showing initiative, killing dinosaurs and kicking butt. The experience points can be spent on all sorts of handy items such as this tower thing. The dude in the top pegs rocks at enemies.

Development Stats

Out of curiosity, I ran a program to tell me how many total lines of code there are in Caveman Craig 2 at this point. It returned with 9,830. Unfortunately the program wouldn’t work on earlier versions of Caveman Craig 1, but here are some other statistics:

There are 189 sprites (images/animations) in the current build of CC2. The final release of Caveman Craig 1 Special Edition had about 180 sprites, but half of these were alpha masks. The latest version of Game Maker supports alpha masks within a sprite, so in a sense there were only about 90 sprites in CC: SE.

The current project file for CC 2 is 10.6mb. This is without music, frontend art (the largest images in terms of file size), most of the sounds, and a large portion of the sprites (not to mention code although that’s very small). CC: SE was 10.1mb when it was finished.

On my rather powerful machine, Caveman Craig Classic begins to slow down after around 40 cavemen (idle, following craig). Caveman Craig: SE was an improvement, slowing down after about 80. Caveman Craig 2, however, can handle 150!

Perhaps the most amusing, though, is this:
Caveman Craig 1 took 30 days to complete.
Caveman Craig: SE took 2-3 months.
Caveman Craig 2 has so far been in development for 3 years.

Oh the shame.

Caveman Craig’s latest foe!

Uh oh! It’s Prehistoric Pete!

One of the enemies Craig will have to face (without making direct eye-contact) is the caveman who predates clothes!

Prehistoric Pete is the original nudest and Craig will need to defeat him in Caveman Craig 2. Just… make sure that leaf stays on.. please…


Also, seeing as Rhys did it, I’ve uploaded a picture of my workspace… as though anybody cares!

I can’t remember the exact specs of my computer – nothing too amazing – but the software I use is:
Toon Boom Digital Pro – Fantastic animation software which I use for animating the characters in Caveman Craig 2. It’s also good for general drawing. There have since been more versions of the software (Animate Pro and the secret Harmony), but digital pro is the best and most well-behaved of them. I also use Adobe Photoshop CS2. I use a teensy tiny Wacom Bamboo drawing tablet (it’s the cheapest one, and it works nicely).

I also use a Rode NT-2A microphone for recording voices and stuff (my wife is a singer, so she uses it for that too) and a very minimal recording set-up.

Also in the photo you can see about 15% of my Simpsons/toy collection. I have a heap of Simpsons, Toy Story and general cartoon merchandise including some original animation production cels from Rugrats, Aladdin, The Simpsons and Rocko’s Modern Life. All inspiration for Caveman Craig??.. sorta. I just like toys.


We are making good progress on the game, and we may even be able to confirm a release date soon! Stay tuned!

Learning from the sound issues in Caveman Craig 1

If there’s one thing I hate about the development platform of choice (Game Maker), it is the sound engine.

It seems to be lacking so much, both in functionality and stability, that my stomach twists every time I remind myself that my games do eventually need sound effects.

Caveman Craig 1 was whipped up in a month; we had a deadline. As a result not much time was spent on sound. We had to rely on what GM could provide and cop any of the idiosyncracies it has, like some WAV files not loading / playing at all, weird buffer issues, and very limited functionality.

This time round, with CC2, I’ve spent some time researching possible sound engine alternatives. The major problem was, however, that CC2 will not just be released on Windows, and so we couldn’t rely on DLL’s and extensions for all platforms. So I went back to Game Maker to see how I could work with its sound engine. And I believe I’ve had some success!

Firstly, the ‘buffer’ issues I always found in my other games weren’t really buffer issues at all.. I don’t think. There is a “sound_loop” function, but I previously used “if !sound_isplaying() then sound_play();” instead, as it meant as soon as the action stopped (say, preparing fruit), so would the sound associated with it. I wouldn’t need to check if the action had finished and execute a “sound_stop” function. It was laziness on my part, I guess. But I’ve discovered that the “sound_isplaying” function is 1 step/frame out of sync. So, if sound X is not playing, the above code would return true twice before it realises the sound is playing: enough time for the game to play the sound twice, 1 step apart from each other – therefore giving off the impression the sound is not playing correctly. If I discipline myself to use sound_loop and sound_stop, we might not get those issues. Alternatively, if YYG fixed this minor glitch in an update, I will kiss their feet.

Secondly, positional audio in GM is not great. And this is why: each sound file that you load has an ‘index’. You set the position and volume of a sound based on that sound index. So, for example, if you have 5 rocks landing in 5 different places at the same time, and they all play the same sound, only 1 position and volume value can be used. My solution, forgive me if there are technical limitations to this approach (I don’t know how it works in other programming languages, really), would be to give each instance of a sound playing an ID, and choosing the position and volume on a per ID basis. That said, realising that most of the positional sounds are either short or not often played (a rock landing plays a short sound, and the sound of a velociraptor dying is rarely going to play twice, and when it does, positional problems aren’t really going to matter), it looks like we can work with the GM engine after all.

So far, we have implemented a number of the sounds from the original Caveman Craig for testing purposes, and this seems to work just great. I’m looking forward to showing you some more ‘lively’ gameplay teasers soon. Perhaps even with a touch of Ricky’s musical presence!


Ricky’s Studio

Further to my previous blog post.