Thursday, January 30, 2014

Investigating C1 climate (for a huge fail)

We all now C2 has an complex ecology model, where temperature,wind light, radiation and others such parameters dynamically shape the worlds face.

But did you know that basic ecology elements are also present in C1 to some extent?
Let's find out about those together.

Sunday, January 26, 2014

Friday, January 24, 2014

Getting C2 chemicals descriptions (chemicals.def file format)

What a sneaky bastard I am.
This was supposed to be a C2 Norn autopsy article! (I swear I'm not doing that to avoid awarding anyone the promised carrot.)

I just realised something was still missing from the last article.
In the C1 chemicals information article we were able to pull out both chemical names and descriptions from the chemicals.txt file.

So where's that information in C2 ?

Reversing and Parsing C2 allchemicals.str file format

Aright, we already covered how to obtain an up to date list of Chemical numbers and names inside our programs by extracting it from C1 game files.

Obviously this is an ability of much practical value for C2 too, so let's see how we could do that now.
I haven't found the allchemicals.str file format described anywhere so far, but the format is simple enough so reversing it should be Norn's play for us at this point :)

Thursday, January 23, 2014

Back to more traditionnal automated Norn genealogy using python and graphviz ( Intro )

We've already had a glimpse at using advanced tools for experiments in Albian genealogy.
Gephi is a nice tool for interactively browsing decently sized datasets on the macro scale, but what about more conventional genealogy tools ?

In this post I will show you basic use of graphviz in python to make some more traditional but far more detailed family trees automatically.This will once again be only a short glimpse at graphviz possibilities so we can use it as an useful tool further down the road.
Hopefully it will make you want to add this to your Albian explorer toolbox.

Wednesday, January 22, 2014

Parsing C2 histfiles

Once again, a quick filler post about parsing a random creatures file format.

This time we will be investigating the Creatures 2 "History file" format.

 This one is also already documented online, but being able to parse it can allow us to extract some interesting data.

I guess this post needed at least one picture

Monday, January 20, 2014

Designing farting norns (Tutorial)

Many colored alternative breeds exist for all of the creatures games.

In this tutorial I will show you how to design a new breed for C1.
But not one that involves making new sprites for new colored or punk Norns, but rather one that implements new Norn behaviours and possibilities.
Using those techniques one could add loads of interesting behaviours to Norns such as :
  • Adding a kicking stance and associated behaviours to fight off Grendel more efficiently
  • Making Norns that can reinvigorate and heal by resorting to meditation
  • Enabling actual telekinesis in Norns ( yes, this IS possible with some work )
  • Making jumping Norns
  • Mimicking more realistic life behaviour ( digestion, elimination ... )
  • ...
But this time we will be:

Making Farting Norns:

Friday, January 17, 2014

Norns caesarean (saving the egg from a dead pregnant Norn)

I read a post today on (the awesome) Discover Albia blog and got slightly depressed by a random statement about the grief of loosing a pregnant Norn along with her egg.

Not that it happened that much to me, maybe once at worst.Yet this was the wake up call I needed to be ready should this ever happen.
So here's some CAOS black magic that will help you saving the egg from a pregnant Norn that passed away before getting to term.

Wednesday, January 15, 2014

Generating arbitray In-game eggs from CAOS commands, while also investigating the Norn reproductive system.

Okay, so in a previous article we've seen how to generate .egg files from genomes with a custom tool.
Even if it may be a nice skill to add to your toolbox, it might not be the most practical everyday tool to inject genomes in your game.

Wouldn't it be more practical if we could directly create ingame eggs from arbitrary genomes/couples as if they were just laid ? This is not only possible but also quite easy.

Some available tools such as the Genome injector on the awesome CDR website already perform that feat. ( Be sure to check out the whole site, as it is definitely the single most complete and comprehensive resource on writing C1 and C2 custom programs )

From there we could go the easy way, as Chris conveniently included a detailed description of the CAOS magic involved in spawning C2 eggs from genomes in the readme file the genome injector ( thanks for that Chris ! ).

But I'll rather show you how you're supposed do find out that information by yourself when starting from scratch, as it will serve us better in the long run when investigating other undocumented game features.
We will be doing this for C1, as Chris' tool only seems to work on Creatures 2.

We will use the CAOS language,it's documentation and some external tools to try to understand what exactly happens during the whole Norn reproductive process, so we can mimic it with a custom and more practical tool.

Sunday, January 12, 2014

Parsing C2 GameLog files with python.

In this post we will see how to precisely parse a C2 Gamelog file.
This file is an ordered collection of all main events happening in Albia : Birth, Ageing, Dieing, getting a Name, Exports or Imports.
Parsing it can be useful to redraw a full timeline of stuff happening in your world, or to see which Norns are still alive or were ever used, if you need to perform some cleanup in the game folder ( by default, genomes and sprites files accumulate in the game folder for each Norn and are never removed )

Whatever your needs are, I hope yo will find this quick reference useful.

Saturday, January 11, 2014

The Creatures 1 chemicals.txt file format.

For some odd reason, one of the most commonly usable file in the Creatures series, the Chemicals.txt file,  format is still totally undocumented in 2014.

Maybe somebody did document it and his work was lost in time ? Maybe I'm stupid and this is considered such common knowledge that nobody ever thought writing about it would be worth it ?
Anyway, I take the opportunity to publish the information here so nobody has to find it out by himself again if ever needed.

The Chemicals.txt file contains the list of all chemicals in game, their associated name, as well as their description (as used in the genetics kit)
It's a valuable resource when writing your own programs for dynamically establishing the various chemicals names without worrying about the various countries variations, or custom chemicals installed by various players.

26/01/2014 Update: Seems I've committed a small mistake (sorry, but I'm mostly writing all of that as I do it, so some things might need tuning afterwards)
Although The Chemicals.txt holds chemical description data, it's the chemicals.str file that holds the current actively used ingame chemicals list.
The chemicals.str file has exactly the same file format, except it doesn't include the chemicals descriptions and that each entry length prefix is only one byte long instead of 2.
This doesn't prevent you from using the Chemicals.txt file as a chemical description source, but the most up to date data synchronised with your game status is to be extracted from the chemicals.str file.

Wednesday, January 8, 2014

Generating Creatures 2 Egg files with Python

The Creatures 2 .egg file format is one of the few well documented aspects of the game series.

Why bother writing about it on a blog about investigating undocumented game aspects then ?
Well, the ability to generate .eeg files is a pretty simple skill that might prove an interesting addition for anybody writing Creatures tools.

The aim here is just to show how quick and easy it is

Saturday, January 4, 2014

Introduction to advanced Norn genealogy using Social Network Analysis (SNA)

This post will be a quick taste of things to come.

I will show you where to look for Norn genealogy information in the game files, how to extract it using python, and then use it with more powerful tools than the built-in "family tree" of the original games to fully map out all of your Norn population.

We will only be scratching the surface of all those vast topics here, and each aspect of it will be the topic for a dedicated article further down the road. For now,I'm trying to get as much new and varied information out as I can. I hope this will bring some new topics, tools and knowledge to the Creatures community.

Wednesday, January 1, 2014

Investigating the effects of cyanide poisonning in Norns

While I was messing around C2 the other day, I was following a Grendel around in an unpopulated test world, and it suddenly dropped comatose with no warning signs.

All his organs had brutally stopped for no apparent reason,he had various food at hand and a full life bar minutes ago.A quick overview of it's bloodstream showed an obvious and fatal cyanide poisoning.So I took the opportunity to fully investigate the mechanisms of cyanide poisoning and the appropriate cure.

So what exactly happens during Cyanide poisoning in C2, and how do you counteract that really severe condition ?