A screenshot on MobyGames makes it look like Gunther walking with a hammer is 16x32. I might have miscounted (still at work) but it seems like a good number to me. I think that everyone's sprite is only 16 colors as well.
So, Olemars: Your last block has 50 bytes. If it was raw pixel data, that would be 100 pixels which is way too small for 16x32 (512 pixels). Also when I look at it there's only so much you can RLE. The byte increases make zero sense to me.
I suspect that it should be read in three-nibble chunks. Instead of "1 30 2 2D 3 27 0 4A", read it as "13 0 22 D 32 7 04 A". Or "1 3 0 2 2 D 3 2 7 0 4 A" which isn't much to go on, but hey, more columns.
The world map did something interesting. Something like...There were 256 tiles. Each map entry was only 4 bits long. Those 4 bits were the low 4 bits of the tile index, while the upper 4 bits were taken (1 each) from the tile's four neighbors' lower bits. I think that the coders were not shy about using nibbles.
EDIT to remove stupid stuff: So that header is the animation table. If you take "3 27", "3 3C", "3 4E", "3 64", and you copy that 27 over the other values, one of your character's walk animations will be sliding across the ground while holding the same frame.
The more I poke around the file, the more confused I get. I was screwing with Hans' file (the alchemist), and I wound up with a picture of Gunther (the hero)! Are we missing something really big here? I mean, it doesn't make sense, but. I guess it's likely that I corrupted a pointer somewhere, and that different hero pictures are stored back-to-back. In any case I think that data is stored in 16x16 chunks. Hmm... Oh yeah, and no longer convinced that it's only 16 colors either. I got Hans to leave a trail of palette-shifting fire effects. Anyway. Leaning less towards recognizable RLE and more towards homebrew compression. I think this means something like decompiling. Bleh.
Although this is still worth staring at: The alphabet-frequency attack is looking interesting. Turns out the hex editor HxD can generate frequency plots. Here's what it looks like, for our four heroes attacking with bows, in order from skinniest to fattest:
Gretchen
Hans
Gunther
Ebhard
Also notice the file sizes:
4,918 F60CBBW.IMC Gretchen
5,524 A00CBBW.IMC Hans
6,038 F01CBBW.IMC Gunther
4,952 C00CBBW.IMC Ebhard
Ebhard the cleric has wide expanses of the same color, so I'd expect that he compresses well with RLE. Gretchen has lots of empty space, being thin, so I'd expect the same from her.
There's a couple spikes in the middle that grow as you move down the images; those are 0xAA and 0x55. Those spikes exist in most player character IMCs...but are completely missing in the dying ones. 0x7A is also popular everywhere. The first two IMCs have a big block of interesting stuff on the right starting at 0xE8, which is common in other files too; the second two see it starting at 0xE0.
Most stuff is well-distributed, including (frustratingly) 0xAA and 0x55. There is an interesting clustering effect starting at 0xE? though, at least on Ebhard. You get long areas with no 0xE0, or no 0xE8 or F0 or F8, then suddenly they're 10% of the file for a several tens of bytes. It's pretty subtle still, and I haven't seen a great pattern to it...
But, changing any byte, nay, any bit at all in any byte whatsoever causes a LOT of damage to the image. (The damage is limited to the region of the file that you modified, so, you'll only corrupt one frame of one animation often.) So what the eff.