Sprites

Game will feature sprites, lots of sprites. But how much exactly?

Since every object is modular, doing full picture for every combination is out of the question. I cant afford drawing each armor-weapon combo with every possible item hanging on the soldiers body.

X-Com had 21 equippable item  + one item of nothing, and 4 armor sets, that’s alone makes 88 combinations (X-Com used common sprites for several items like grenades, motion scanners, bodies, etc. But we want everything). 4 bodies (every armor suit), and, i believe, 7 (?) alien lifeform bodies that can be equipped. 132 combos. That should be multiplied by 8 for every direction, then by two to allow for sitting. That’s 2112 sprites. And guess what? We didn’t started animating it yet.

Ain’t nobody got time for that. Turns out, Mythos Games hadn’t either. Look:

x-com PCK-Viewer V1.0 by Marco Kaiser

Made with PCK-Viewer V1.0 by Marco Kaiser

That makes things WAY easier. Somewhat around 900 sprites WITH animation, and, what’s more important, most of these are simple, like just an arm, or leg, or weapon. Engine assembles everything on the fly. Introducing a new item would require 8 sprites in this case. And 4*8*2*god knows how much for animation — if we’re going to redraw everything.

To be honest, first approach has its advantages too. Assembled sprites are somewhat inferior to the prerendered ones, as the construction rules enforce strict hand positions, overall poses are somewhat common and bland, etc. Getting rid of graphical artifacts could be tedious. Still the amount of work required to prerender every combination when you just want to add one more weapon is astonishing. It’s so big that you have to plan the game’s content completely almost from the start. I’m not capable of that.

Instead of that, i’ll write a graphic composer and assign a set of sprite identificators to every object, which will then be displayed as sprites from the library. Object composed from the parts will have that exact parts displayed, reducing the number of sprites needed to direction*object*state. There will be 8 directions and somewhat around 2 states (some objects will have only one state, most will have normal/damaged, and some will have additional equipped/dropped states). Armor set will be divided by 6 parts (head,body,hands,legs), so the full armor will require 96 sprites minus the animation (and minus the ground tiles and objects).

Assuming aforementioned armor/weapon amounts it will yield 912 sprites, make it 1500 with animations. As expected, that’s more than X-COM amount, but less than Xenonauts had (around 34000 files with up to 40 sprites in each! That’s huge and wouldn’t be possible to draw by hand unless you have an army of asian artists, so they used automatic 3d prerendering).

Even with such (comparatively) little amount of sprites variety of possible combinations is very big. And that’s why i like this approach. A bunch of sprites for the new grenade, and voila! It can be equipped by any soldier in whatever armour. It can even be picked up and used by the aliens. You can equip armor partially, you can draw soldier without an arm, you can give visual damage feedback (especially good with 3×3 big enemies). It’s going to be fun.