Page 1 of 1

Making a real 8 bit game

PostPosted: Mon May 10, 2010 11:24 pm
by Hblade
Uh, does anyone know how I can make REAL 8 bit images? I tried making an 8 bit sprite, (8x16 size) but the image came out quite large... So how can I actually make the sprite REALLY 8 bit? :o

Re: Making a real 8 bit game

PostPosted: Tue May 11, 2010 12:07 am
by DST
which 8-bit format are you trying to recreate?

There were lots of 8-bit formats.

Re: Making a real 8 bit game

PostPosted: Tue May 11, 2010 12:51 am
by Hblade
Which ever Game Editor will support. Doesn't matter to me :D

Re: Making a real 8 bit game

PostPosted: Tue May 11, 2010 1:46 am
by Scorpion50o1
what do u mean 8-bit image

Re: Making a real 8 bit game

PostPosted: Tue May 11, 2010 1:48 am
by Hblade
8 bit is nintendo graphics

Re: Making a real 8 bit game

PostPosted: Tue May 11, 2010 2:02 am
by Scorpion50o1
do u mean like the graphics like on gameboys all squared and stuff.

Re: Making a real 8 bit game

PostPosted: Tue May 11, 2010 2:53 am
by DST
I don't think bit means what you're using it to mean.

The NES and the atari 2600 and the Turbografx 16 are all 8bit systems; Their graphics look nothing alike.


For starters, i'd make the graphic with 4x pixels; you can do this pretty simply in gimp, just put on a 2x2 grid. Then double all your game speeds. Keep the colors inside a 256 color palette.

Re: Making a real 8 bit game

PostPosted: Tue May 11, 2010 11:43 am
by Hblade
Right, but how do I know which colors are in a 256 color pallet. How would i use thie pallet in gimp?

Re: Making a real 8 bit game

PostPosted: Tue May 11, 2010 5:16 pm
by DST
Just load the palette you prefer. You can access the Palette menu in GIMP from Windows>Dockable Dialogs>Palettes

Gimp comes with several palettes including EGA (for old computers), but here's the NES palette for it:

NES Palette.zip
(860 Bytes) Downloaded 846 times


Unzip and extract the file 'nes.gpl' to
C:\Program Files\GIMP-2.0\share\gimp\2.0\palettes (on my computer anyway, xp, gimp 2.6.8)

Have fun!

Re: Making a real 8 bit game

PostPosted: Tue May 11, 2010 5:56 pm
by Hblade
Thanks, D, I apreciate it :D

What about audio? I can make ogg 8 bit audio in FL Studio with the magical8bit plugin, but how can I uh, yeah...? Is there another way?

Re: Making a real 8 bit game

PostPosted: Wed May 12, 2010 12:41 am
by DST
:D :D :D :D

Extract to ImageLine/FlStudio 9/Plugins/VST

NES_VSTs.zip
(2.13 MiB) Downloaded 244 times

Re: Making a real 8 bit game

PostPosted: Wed May 12, 2010 2:00 am
by Hblade
Ahh thanks again! :D

Re: Making a real 8 bit game

PostPosted: Wed May 12, 2010 2:09 am
by Hblade
zomg and the file size is so small thank you! :D

Re: Making a real 8 bit game

PostPosted: Tue Aug 09, 2011 1:39 pm
by jobro
Sorry if I post a bit late in this topic. There is a tracker that is called FamiTracker that imitates the Nes sound spot on, and it even supports DPCM samples. As for the Nes VST's posted above they're good, but they're made with synthedit. This means that they're not 100% compatible with how the Nes sounds.

As for the Nes palette it seams to use the RGB palette in steps of 64 per channel. So if you got the color 2,2,2 then the color is rounded to 4,4,4 and so forth.

I know very little about Game-Editor's scripts, but I coded the entire Nes palette for GameMaker. The point is that if you can paint with Game-Editor in pixels then you should be able to use this array to simplify the selection of colors corresponding to the Nes palette. Enjoy!

Code: Select all
/*
==================
NES color palette
==================
The array nescol contains all colors from the NES palette.
*/

global.nescol[0] = make_color_rgb(120,128,132);
global.nescol[1] = make_color_rgb(0,0,252);
global.nescol[2] = make_color_rgb(0,0,196);
global.nescol[3] = make_color_rgb(64,40,196);
global.nescol[4] = make_color_rgb(148,0,140);
global.nescol[5] = make_color_rgb(172,0,40);
global.nescol[6] = make_color_rgb(172,16,0);
global.nescol[7] = make_color_rgb(140,24,0);
global.nescol[8] = make_color_rgb(80,48,0);
global.nescol[9] = make_color_rgb(0,120,0);
global.nescol[10] = make_color_rgb(0,104,0);
global.nescol[11] = make_color_rgb(0,88,0);
global.nescol[12] = make_color_rgb(0,64,88);
global.nescol[13] = make_color_rgb(188,192,196);
global.nescol[14] = make_color_rgb(0,120,252);
global.nescol[15] = make_color_rgb(0,138,252);
global.nescol[16] = make_color_rgb(104,72,252);
global.nescol[17] = make_color_rgb(220,0,212);
global.nescol[18] = make_color_rgb(228,0,96);
global.nescol[19] = make_color_rgb(252,56,0);
global.nescol[20] = make_color_rgb(228,96,24);
global.nescol[21] = make_color_rgb(172,128,0);
global.nescol[22] = make_color_rgb(0,184,0);
global.nescol[23] = make_color_rgb(0,168,0);
global.nescol[24] = make_color_rgb(0,168,172);
global.nescol[25] = make_color_rgb(0,136,148);
global.nescol[26] = make_color_rgb(44,44,44);
global.nescol[27] = make_color_rgb(252,248,252);
global.nescol[28] = make_color_rgb(56,192,252);
global.nescol[29] = make_color_rgb(104,138,252);
global.nescol[30] = make_color_rgb(156,120,252);
global.nescol[31] = make_color_rgb(252,120,252);
global.nescol[32] = make_color_rgb(252,88,156);
global.nescol[33] = make_color_rgb(252,120,88);
global.nescol[34] = make_color_rgb(252,160,72);
global.nescol[35] = make_color_rgb(252,184,0);
global.nescol[36] = make_color_rgb(188,248,24);
global.nescol[37] = make_color_rgb(88,216,88);
global.nescol[38] = make_color_rgb(88,248,156);
global.nescol[39] = make_color_rgb(0,232,228);
global.nescol[40] = make_color_rgb(96,96,96);
global.nescol[41] = make_color_rgb(164,232,252);
global.nescol[42] = make_color_rgb(188,184,252);
global.nescol[43] = make_color_rgb(220,184,252);
global.nescol[44] = make_color_rgb(252,184,252);
global.nescol[45] = make_color_rgb(244,192,224);
global.nescol[46] = make_color_rgb(244,208,180);
global.nescol[47] = make_color_rgb(252,224,180);
global.nescol[48] = make_color_rgb(252,216,132);
global.nescol[49] = make_color_rgb(220,248,120);
global.nescol[50] = make_color_rgb(184,248,120);
global.nescol[51] = make_color_rgb(176,240,216);
global.nescol[52] = make_color_rgb(0,248,252);
global.nescol[53] = make_color_rgb(200,192,192);