8-bit vs 16-bit
24 Sep 2018RetroWar deliberately limits itself to what would be possible to run on an 8-bit computer or console. We believe limitations in visuals produce innovations in gameplay.
Occasionally, after much thought, we break this limits when the benefit offered by modern systems seems worthwhile.
But what exactly is an 8-bit console capable of? Well, in addition to the 8-bit CPU, each system had different chips for graphics and sound, and so capabilities varied greatly, and even overlapped what was possible on 16-bit systems. We have to arbitariliy decide where to draw our lines
Scrolling
Most 8-bit systems could scroll to some degree, but smooth multi-directional scrolling didn't become universal until the 16-bit era. Currently we are not including it, but this is a good candidate to add if we decide to implement more 16-bit type features.
Screen shake
Any 8-bit system that was capable of scrolling was also capable of screen shake, so we include it.
Colour palette
We are using a very simple 16 colour fixed palette. We also try to limit each sprite to 4 colours. Some 8-bit systems had more colours and/or could switch to different palettes. 16-bit systems varied greatly as graphics chips improved. I don't really see the point in doing pixel art with, say, a 4096 colour palette - I think you may as well go right up to 'modern pixelart' in that case and use a 32-bit pallete.
Alpha channel transparency
Makes many nice effects possible, but this was quite advanced even for 16-bit systems. The only transparency 8-bit games had was done by flickering a sprite on and off quickly.
Particles
Surprisingly 8-bit systems could do particles! Just look at Defender. They couldn't do vast numbers of them, they couldn't make them glow with transparency, but they could do them. We break the rules slightly here and provide unlimited particle numbers.
Texture scaling
Probably used most famously on the SNES, 2d textures could be resized dynamically and even drawn as pseudo 3d. You could zoom in the display. You could make a sprite bigger or smaller. We are not including it. (Although Retrowar-common library does include one scale effect.)
Dynamic lighting
If you have a large palette and an alpha channel you can dynamically change the light levels, e.g. have a player carrying a torch. It makes a huge improvement to the look of modern pixelart games, but we won't be including it.