Download the Demo
Excitement is brewing as we come to the final stages of CC2′s production.
I have finished all my graphic work, and can (mostly) put my feet up as Rhys finishes up his programming duties on the game.
The last graphical things I had to make, were a series of icons to represent 22 “achievements” that can be… um… achieved in the game. Here are just a handful to whet your appetite:
December/January’s Etc
Hello all!
It’s been a busy end of year for us, as you know, compiling the demo (now available to those who pre-order) and completing all the prerequisites for that.
Greg & Ricky have completed all their work for the game and now get to sit back and-or move onto other projects. For those who have played the demo, I’m sure you can agree they have done a fantastic job (Greg’s art includes the background scenery and cave design).
It’s down to Tim and I now to finish off the game, and Tim is quickly wrapping the last of his graphical work. As of yesterday, all 35 XP rewards are now completed (though some need to be modified slightly for classic/survival mode) which is a milestone for us. I have been spending the past few days modifying the enemy tribe AI to purchase XP rewards. It’s fun to see them buying veteran hunters or reinforcements when they are in a vulnerable state.
All the levels bar one are now playable although the difficulty still need to be tweaked and tested. One bonus gametype is completed and playable, the others are still in progress.
We have a big list of achievements and statistics – these still need to be implemented but the backend code is all ready to go.
Every time I play test, I keep a sticky note with me and write anything that comes to mind – anything from bugs to visual effects ideas and ways to improve the interface. When I’m getting sick of implementing the ‘big picture’ stuff like new gametypes and achievements, I like to just sift through my list and make minor changes to polish and perfect the game.
Soon Tim will begin work on a fresh set of caveman craig merchandise which can be purchased from our zazzle store. We also need to put together some publicity material – trailers and the like.
For those who played the demo – thank you so much for your feedback, please keep it coming! Your ideas, criticisms, and praise will affect the final product! Also, if you do get an error log (it usually opens when the game quits if new errors have been added), don’t hesitate to attach it to an email addressed to rhys (at) paraboxgames (dot) (com) for our ‘analysis’
And what of future projects? CC2′s development is drawing to a close and Parabox Games can’t just ‘stop’ with it. Well, Tim and I always have ideas floating around and it’s just a matter of picking one and going ahead with it. We are still establishing what end of the market to target, and what is going to be the most fun to create (I am of the belief that your best creation tends to also be the most fun to create). The poll results from a few months ago was definitely helpful!
Take care,
Rhys
DEMO Now available for Pre-Orderers!
Good News!
As a token of our thanks for your trust, support, and patience over the past months and years, we have released a CC2 demo for anyone who has pre-ordered the game.
If you pre-ordered the game before today, you should have received an email from me with a private download link. Otherwise, the CC2 demo will be included in the package you are sent when you pre-order the game through our distributor, BMT Micro.
The demo includes a tutorial and initial level of the game, with a handful of the rewards and dinosaurs that are in the full game. The demo will eventually be available to the public – probably once the full game is released in coming weeks.
This year has been a very busy one for Tim and I, as we have been working very hard to get the biggest game project of our lives completed after 3 years of on and off development.
So if you want a taste of Caveman Craig 2 TODAY then pre-order the game! You also get Caveman Craig: SE to play immediately until the full version of CC2 is released.
On behalf of Tim and I, we wish you all a very happy new year and we are very excited about what 2012 will bring for Parabox Games.
Take care,
Rhys
Don’t forget to pre-order!
Hey everyone,
With the majority of my animation work done on CC2, I just wanted to take a moment to encourage you to pre-order the game!
Over the past few years that we’ve been working on this great sequel, I’ve also had the opportunity to work on a number of animated TV shows and films (Disney’s Kick Buttowski, Big Green Rabbit, Wakkaville and feature film; Santa’s Apprentice – just to name a handful) which have fueled and nurtured my animation skills beyond what you would have seen in the original Caveman Craig game. This is just one small reason to have confidence that CC2 is gonna be great!
CC2 has over 12 new dinosaurs. There are 4 challenging stages in which you must defeat 4 different enemies (we’re keeping the last one especially secret!). There are also 5 or so bonus levels and minigames between each stage. There’s a big rewards catalogue with well over 35 items you can buy to help Craig through the levels. Things like catapults, mammoths, natural disasters and lookout towers.
As an incentive to pre-order the game, we are offering “Caveman Craig: Special Edition” as a freebie to those who preorder before the game’s release. We’re hoping the game will come out early in the new year. Get onto www.cavemancraig.com to preorder.
Have a Merry Christmas and a happy new year! Treat yourself (or someone you tolerate) to a preorder of CC2!
Back in Action
Hello!
It’s been almost exactly one month since my last entry.. sorry about that! Christmas and what, o’ course.
It has indeed been a busy month for many reasons, but fortunately for you all, CC2 is one of them. The finish line is getting closer and closer, I promise you we’re not running in circles =) In fact we’ve made some significant leaps over the past weeks.
Ricky Garcia has finished the final masters for the CC2 soundtrack. And it is simply fantastic! We never thought we’d get such an exclusively professional & fitting bunch of tracks. Hopefully within days we’ll have something to show you featuring some of the music that Ricky has composed.
Tim has completed all of the caveman animations and a majority of all the artwork in the game.
Having recently spent a week chilling in a big ocean liner, I’m now getting myself back into the pace of things. I’ve made a start on most of the bonus minigames, and one or two of them are almost done & dusted. The Meteor Dodge game in particular is looking pretty awesome and it plays even better.

There are only a few more Sound FX to complete, and we only have a handful more rewards to put together. I recently recreated the pet dino (which featured in CC: SE) reward/bonus. Pet dino’s latch onto dinosaur threats and slowly drain their health. If you manage to get a male and female pet dino and they fully grow, they start having baby dinosaurs that also grow up and fight for you. A fun and handy investment.

Unfortunately, at this point CC2 won’t be released before the beginning of next year. However we plan to release a demo of the game before new years. Whether this will be for all to taste or just for those who have pre ordered the game is yet to be decided.
Thank you all for your ongoing support! Not long now!
-Rhys
The concept archives..
Hey guys,
Weeks ago, after a big burst of development made on CC2, I’d have typed up a blog entry with some sneak peeks at what we’d done and what you could expect in the final game.
However, we’re now in the late stages, and showing you too much will spoil the fun of experiencing it all when you first play. So for today I thought I’d go through the gigs and gigs of data used in putting together CC2 and find some concept art to have a look at how far CC2 has come. Click on the images to see a bigger size.
The original running animation for Craig, made during the early stages (mid 2009) of planning Caveman craig 2.

An even ear lier drawing. You may have seen this in one of our first blog entries. This is the original design/idea for a mini-hud, which you can see in CC2.

Greg's animation strip for an othnielia rotating on a spit. We actually used this animation, though shrunk down heavily.
AAAND, just for some contrast.. here is a fairly new screenshot. This is running on the very same engine that was being built in the screenshot above.
November’s Etc
Hello hello!
Life continues to be busy for Tim and I and rest assured we are still working hard to have Caveman Craig 2 ready by the end of the year. I’ll make a forewarning that we may spill into 2012 as I do not want to rush to meet a release date at the expense of polish.
The focus on these past couple of weeks have been on implementing all the XP rewards and further work on classic mode. Tim will be finishing off all the enemy leader animations soon but until now has been working on putting together some great XP rewards. Tutorial guy reprises his rock stomp contraption, as you can see here…

Here are some highlights in the changelist so far for the latest build of Caveman Craig 2 (I’ve hidden some things.. you need SOME surprises when the game is out!)
- Added ‘teacher’ reward/bonus
- Added ‘rock stomp’ reward/bonus
- Added the ‘ransom’ feature, allowing the player to spend caveman credits to revive Craig if he dies in enemy territory (and the enemy leader can do the same)
- The enemy leader is now smarter when choosing whether to attack Craig or not
There has been some discussion around the mini / bonus games in Caveman Craig 2. Raptor’s Revenge and Meteor Dodge will make a return, and they will be designed to be a lot more fun and challenging. We have some more to add too. These mini games won’t just be unlocked to be played at your leisure – they are incorporated into the progression/story of the game and provide the opportunity to unlock new rewards or features which will help you in the succeeding levels.
Thankyou all so much for your pre-orders – the response has been a testimony to your continued and loyal support, and we truly appreciate it. If you are yet to pre-order Caveman Craig 2, whattaya waiting for?
Take care,
Rhys
Classic/Survival Mode Begins!

I am on holidays for this week, which means I have lots of time to get on with personal things, which includes CC2! And amidst the house hunting, music composition, and web design, I have been making lots of fun progress on CC2. If you follow Parabox Games on twitter, you’ll have noticed I made live updates while doing bits and pieces. Always good to follow us on twitter!
Some ‘minor’ changes done this week..
- Preparers fart a lot less often. 
- Added pause/save/return to menu dialogs
- Can now use arrow keys as well as WSAD to control Craig
- Created an extension system so that custom spritesets and scenes can be created. See http://twitpic.com/6td4ms/full
- Cavemen actually dodge dinosaurs properly now.. can’t believe I missed that.
Past these little bits and pieces, most of my work has been surrounding the ‘classic/survival’ gametype. If nothing else gets you hooked on CC2, this will. The gametype mimics that of the original Caveman Craig – your goal is to get your tribe as large as possible without being obliterated. When Craig dies, you lose. Additionally, some of the key features in the conquest gametype are introduced in the classic mode too. Your cavemen can eat from the fruit pile to restore health. You can see individual stats from each cavemen. There are new dinosaurs, new rewards, and so on.
There will be a lot of testing and tweaking going on over the next couple of weeks to resolve some of the balance/difficulty issues in CC1 and CC:SE. In some versions, you’d be doing just fine until suddenly a billion raptors would appear and tear your tribe apart. Other versions left you overpowered once you got a certain number of hunters. We don’t want these frustrations to come across in CC2. Some goals I have for the classic mode…
1. It must be very challenging. Getting more than say 8 cavemen will be a decent accomplishment. Having huge tribes of 20+ cavemen is for the conquest gametype, or those who are truly hardcore cc fans.
2. The difficulty can’t plateau. The game should get harder and harder and you shouldn’t reach a point where you have nothing to do but sit back and watch your hunters wipe out the T-Rex population. Think Call of Duty WaW zombies.
3. The scoring should be determined by how good your tribe was at its best, not when Craig dies. If you reach 30 cavemen, then lose all but 3, and then Craig dies.. you get a lousy score, even though really you achieved a great tribe size. Perhaps the game should end when a certain number of your cavemen have died?
Has anyone got any suggestions to help us?
Take care!
Rhys
(Late) September’s Etc

Christmas is quickly approaching, and Tim and I have a long long list of things to do before CC2 is ready.
For those who have pre-ordered, a big thank you for supporting us and giving us the extra push to get this out as soon as we can! We know you’re going to love the game.
Not much has happened from a content standpoint in CC2′s development since my last entry. For the past few weeks I have been working primarily on the save function (which now works completely minus any kinks I have yet to discover!) that I went over with some technical details in my previous entry, and changing the spawning / difficulty curve for dinosaur threats. In the first BETA some testers found that they would suddenly get wiped out by up to 40 velociraptors later on in the game, an unrealistic number given the size of their tribe. The randomness of the director made it difficult to control the difficulty of each level. I have since changed the algorithm so that there is a more specific and intelligent method of spawning dinosaurs and other threats. This also allowed me to easily govern the types and numbers of threats in each level, and the enemy tribe’s growth rate.
Testing each level has lead me to discover that each level isn’t just ‘harder’ – different factors require you to play the game in a different way which really adds to the replay value and progression of the game. For example, in the second level there are less velociraptors and more pterodactyls – pterodactyls don’t hurt much but they tire your cavemen out. The level is also a lot larger and so your gatherers must travel further to get meat. This will affect your choice of XP rewards to use, and your micro management of each cavemen – when they sleep, which tasks they prioritise, and so on.
At this point there are 4 standard conquest levels. You must play each one to unlock the next. Along the way you will also unlock new gametypes, XP rewards, while facing new threats and tribe leaders. Some XP rewards are unlocked as you progress through the game, others are unlocked by getting certain achievements or reaching certain highscores in the unlockable gametypes. In Classic / Survival mode you can play as any tribe leader that you have conquered.
Very soon I will be beginning work on the “Classic / Survival” mode. This is the “build your tribe as big as you can” gametype you all know and love from Caveman Craig 1. While this is the next biggest gametype after conquest, most of the coding is already done and it’s just a case of stripping down the code and changing the way dinosaurs and such spawn.
As for the other guys..
Ricky is working hard on the soundtrack and I would say we’re at least 50% there. His musical diversity is really showing here with each level having a very different orchestration to fit the terrain type. Grassy levels have a very chilled out, slide guitar, country feel to it. In the snow you’ll hear metallic, electronic sounds layered with caveman chants. The highlight is most definitely the main theme – it will empower you and prepare you for battle! Think Halo.
Tim’s biggest job now is to complete the animations for the enemy tribes and prepare the frontend/menu. Past that, there are some rewards left to create, and some gaps to fill.
Greg has mostly completed his work for the game, being the stunning backgrounds and scenery in each level, as well as some trivial reward images and such.
Once this is all done, the other game types should come together very quickly and we’ll be looking at a finished product!
-Rhys
The Horrors of Saving
Just before we released our private BETA almost 2 weeks ago, Tim requested that I prepare a ‘save’ option so that testers can save the game to play later, but also send the save files to me if there were glitches so that I can see what’s going on. It sounded like an essential feature for our first round of BETA releases.
Unfortunately, Game Maker’s in-built “game_save” function just wouldn’t do. While we used it for Caveman Craig and the Special Edition, there was a lot of additional coding that had to be done to re-instate some data that’s lost during the game save. Namely, data lists (ds_list functions) and instance ID’s.
In CC: Classic and CC: SE, I used a simple ‘switch’ that told the game that a game had just loaded, which tries to ‘guess’ the contents of DS lists, to avoid errors, etc. It was as simple as:
global.justLoaded=true;
game_save("myfile.sav");
global.justLoaded=false;
The variable is quickly switched to false after the game saves, so that no other object thinks the game has just loaded when in fact it had just saved. But when the game is loaded, the switch was missed, and so it gives all the objects a chance to ‘work their crap out’ to avoid errors. It was messy, but it worked.
Not so for Caveman Craig 2, which has twists and turns in the code everywhere you look that the game_save function just doesn’t account for. I released the BETA without a save script, and made a note of looking at this as soon as we got back to work.
There is a lot to do, but I think I’ve finalised my concept for a custom save script. The simple part is as follows:
When saving the game, I use this code:
with(all) event_user(15);
This tells every instance in the entire game to execute its 15th user event. If the object has nothing that it needs to ‘tell’ the save file (like the cursor object or something), I simply leave this event blank. Otherwise, the object writes code to the save file which involves creating a clone of itself, with all the variables set correctly.
The save file is then executed as a script when loading, which creates all the instances and sets their variables to as they were when the game was saved.
Seems pretty simple and solid, right? WELL. The tricky part is in the fact that instance ID’s change between games (from what I could tell, game maker’s “game_save” function does not preserve instance IDs). Caveman & dinosaurs interact a lot, and there are a lot of variables which contain IDs of instances with some significance to the object. Example, if a raptor is eating Craig, Craig has “raptorID” set to the Id of the raptor eating him. The raptor also has “targetID” set to Craig’s ID. In using game_save and game_load, this gets lost and suddenly Craig has no idea who’s eating him, and the raptor has no idea who he’s eating, resulting in way too many errors to try and work around.
So I came up with the idea for an “ID Translation List”. With this concept, there are two DS lists. An A list and a B list. The A list contains every ID of every instance in the game as it was when the game was saved. The B list contains the new ID of each instance when the game is loaded. Because the file is compiled as a script, and executed as a script, it can work this out in 2 parts.
Firstly, in the game save script I created, it creates some of its own lines of code in the save file before getting every instance to add theirs:
file_text_write_string(global.saveFile,"global.idTranslationA = ds_list_create();
global.idTranslationB = ds_list_create();
ds_list_add(global.idTranslationA,-4);
ds_list_add(global.idTranslationB,-4);
");
This creates the 2 lists, but also adds “-4″ (the special term ‘noone’ which does not change) to avoid errors when, for example, Craig is not being eaten by any raptor at all.
Additionally, the script now calls the user events from all instances twice. Once with the variable “idTranslate” set to false, and again with it set to true. This is to place the code into the file in the right order, as follows:
-> create each instance with basic variables
-> add each instance’s old and new ID into the translation list
then
-> set each instance’s ID variables such as ‘targetID’ or ‘raptorID’ correctly by using the translation list
It looks like this:if global.idTranslate=false
{
file_text_write_string(global.saveFile,"
_"+string(id)+" = instance_create("+string(x)+","+string(y)+","+string(object_index)+")
ds_list_add(global.idTranslationA,"+string(id)+");
ds_list_add(global.idTranslationB,_"+string(id)+".id);
_"+string(id)+".myHealth="+string(myHealth)+"
_"+string(id)+".myFood="+string(myFood)+"
_"+string(id)+".myStatus="+string(myStatus)+"
_"+string(id)+".hasspear="+string(hasspear)+"
_"+string(id)+".superclub="+string(superclub)+"
_"+string(id)+".sprite_index="+string(sprite_index)+"
_"+string(id)+".image_index="+string(image_index)+"
_"+string(id)+".image_speed="+string(image_index)+"
");
}
else
{
//Uses the translation list to set ID variables like targetID
file_text_write_string(global.saveFile,"
_"+string(id)+".targetID=ds_list_find_value(global.idTranslationB,ds_list_find_index(global.idTranslationA,"+string(targetID)+"));
_"+string(id)+".harvestID=ds_list_find_value(global.idTranslationB,ds_list_find_index(global.idTranslationA,"+string(harvestID)+"));
_"+string(id)+".raptorID=ds_list_find_value(global.idTranslationB,ds_list_find_index(global.idTranslationA,"+string(raptorID)+"));
_"+string(id)+".prevrockID=ds_list_find_value(global.idTranslationB,ds_list_find_index(global.idTranslationA,"+string(prevrockID)+"));
_"+string(id)+".tokenID=ds_list_find_value(global.idTranslationB,ds_list_find_index(global.idTranslationA,"+string(tokenID)+"));
");
}
This script is for Craig, by the way.
So far I have only tested interaction with Craig and an Othneilia + his carcass, and it seems to work correctly. There is a LOT of work and testing to be done, but I’m confident this is going to be the most solid way of saving and loading in Caveman Craig 2.
-Rhys











