• Advertisement

Archived

This topic is now archived and is closed to further replies.

Classic games ...... can we make game like that?

This topic is 5096 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

What i mean is.... I was looking through some archives and looked at some NES games. The games had size of 256 and 384 KB or simllar sizes. I was wondering with today''s software (DX, OGL, Allegro, etc) can we still make games that small? if the showcase was open i''d look for myself. but in some case i see games that are not too compilicated that are 1 or 2 MB. i don''t know if that because of the SDKs we use, the hardware it''s implemented on, or just that we don''t use alot of assemlby in our game in any case, if someone wants to set me straight, please do.

Share this post


Link to post
Share on other sites
Advertisement
The average size for a modern cell-phone game is 300k-500k, so yes, people are still making games that small.

You probably could make a DX or OGL game that small. Looking briefly I see that opengl32.lib has a size of 75k, and d3dx8.lib has a size of 20k. (maybe there are other files that I''m not counting). But it looks like the code size of these libraries wouldn''t hold you back. The real bottleneck would be the resources- the images and sounds.

Share this post


Link to post
Share on other sites
Theres a couple reasons why old NES and that era of games were so small. First, The CPUs they used typically have a more dense instruction stream (operations are encoded as fewer bytes) so the executable code is smaller. Operations on an x86 range from 4 to 12 or so bytes(I am not 100% sure of numbers but the point remains), depending on the operation and addressing mode. The second, and more important thing is that graphics and audio were at a much lower bitdepth. An NES game used 4 (or 2?) bit paletized graphics, today almost all games use at least 16 bits. beyond that, with the lower resolution of the NES, smaller graphics were used, while using the same graphics on a PC monitor would just be to small. If you take a 16x16 NES graphic, it should come in at about 128 bytes, while a comparable modern day graphic is probably at least 2 kilobytes(32x32 16bit). audio is much the same, plus a higher emphesis on MIDI-type formats which are smaller yet. Now, all that said, theres no reason you couldn''t used palitized graphics at a low resolution and scale them or small MIDI files if you were dead-set on a small game.

Ravyne, NYN Interactive Entertainment
[My Site][My School][My Group]

Share this post


Link to post
Share on other sites
quote:
Original post by pinacolada
The average size for a modern cell-phone game is 300k-500k, so yes, people are still making games that small.

You probably could make a DX or OGL game that small. Looking briefly I see that opengl32.lib has a size of 75k, and d3dx8.lib has a size of 20k. (maybe there are other files that I''m not counting). But it looks like the code size of these libraries wouldn''t hold you back. The real bottleneck would be the resources- the images and sounds.


Actually on most cell phone games we are limited to a total size of 64KB by the device...which means our code size ends up being ~ 20 kb!!

Share this post


Link to post
Share on other sites
quote:
Original post by psamty10
quote:
Original post by pinacolada
The average size for a modern cell-phone game is 300k-500k, so yes, people are still making games that small.

You probably could make a DX or OGL game that small. Looking briefly I see that opengl32.lib has a size of 75k, and d3dx8.lib has a size of 20k. (maybe there are other files that I''m not counting). But it looks like the code size of these libraries wouldn''t hold you back. The real bottleneck would be the resources- the images and sounds.


Actually on most cell phone games we are limited to a total size of 64KB by the device...which means our code size ends up being ~ 20 kb!!



Sounds like you are targetting the really primitive phones. The size limit for the games we publish is 300k, and we support a slew of phones (not just the high end ones).

And if you download a big game like LOTR, or Finding Nemo, or EQ: Hero''s call, I believe those games are around 500-600k.

Share this post


Link to post
Share on other sites
Damn... thats sweet... 500k... i wish my mommy let me play with that.
You guys doing BREW apps?

Share this post


Link to post
Share on other sites
Well, early NES games were 8 kilobytes (!), due to carteridge size.

Many games on Nintendo carteridge systems are smaller than you think. Mario 64, for example, was 8 megabytes.

[edited by - PlayGGY on March 6, 2004 12:28:06 AM]

Share this post


Link to post
Share on other sites
Someone recently drew my attention to a GameDev Tutorial:

http://www.gamedev.net/columns/hardcore/tetris/

It''s 30 lines of code... 36kb compiled executable... (VC7)

I''d say, yes. It is possible to make games that size still. Even with Direct Draw.

Share this post


Link to post
Share on other sites
quote:
Original post by Slickfty2
Someone recently drew my attention to a GameDev Tutorial:

http://www.gamedev.net/columns/hardcore/tetris/

It's 30 lines of code... 36kb compiled executable... (VC7)

I'd say, yes. It is possible to make games that size still. Even with Direct Draw.


Not only that, but the code is incredibly clean and well written. You guys should check it out, and use it as an example of how to code.


[edited by - PlayGGY on March 6, 2004 12:40:05 AM]

Share this post


Link to post
Share on other sites
quote:
Original post by PlayGGY
quote:
Original post by Slickfty2
Someone recently drew my attention to a GameDev Tutorial:

http://www.gamedev.net/columns/hardcore/tetris/

It''s 30 lines of code... 36kb compiled executable... (VC7)

I''d say, yes. It is possible to make games that size still. Even with Direct Draw.


Not only that, but the code is incredibly clean and well written. You guys should check it out, and use it as an example of how to code.


[edited by - PlayGGY on March 6, 2004 12:40:05 AM]


was that a joke??

Share this post


Link to post
Share on other sites
quote:
Many games on Nintendo carteridge systems are smaller than you think. Mario 64, for example, was 8 megabytes.
What is more impressive to me was that Zelda: Ocarina of Time was just 12 MB total of RAM and ROM together, plus a couple kB for SRAM. Quite simply; "bloody hell!"

Share this post


Link to post
Share on other sites
quote:
Original post by psamty10
Damn... thats sweet... 500k... i wish my mommy let me play with that.
You guys doing BREW apps?


yeah

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
quote:
Original post by Ravyne
Operations on an x86 range from 4 to 12 or so bytes(I am not 100% sure of numbers but the point remains)


FWIW: the smallest x86 instruction is 1 byte (inc, dec, nop, int3, ret ... can''t think of any more off the top of my head - pusha/popa are 2 bytes aren''t they ?)

Share this post


Link to post
Share on other sites
quote:
Original post by Alpha_ProgDes
i don''t know if that because of the SDKs we use, the hardware it''s implemented on, or just that we don''t use alot of assemlby in our game


As alrready stated by someone else - it''s all about the
resources.

Look at the old MS-DOS games to understand what I mean.
Given VGA specs for graphics (8 bit palletised 320x200 pixels)
and 8 bit mono @ 22Khz plus MIDI for sound plus bzip2 for
resource compression, yes, I really think it ought to be no
problem to create a really appealing title for the PC that
is less than a meg in size.

Share this post


Link to post
Share on other sites
quote:
Original post by Alpha_ProgDes
quote:
Original post by PlayGGY
quote:
Original post by Slickfty2
Someone recently drew my attention to a GameDev Tutorial:

http://www.gamedev.net/columns/hardcore/tetris/

It''s 30 lines of code... 36kb compiled executable... (VC7)

I''d say, yes. It is possible to make games that size still. Even with Direct Draw.


Not only that, but the code is incredibly clean and well written. You guys should check it out, and use it as an example of how to code.


[edited by - PlayGGY on March 6, 2004 12:40:05 AM]


was that a joke??



No. He''s absolutely correct. Code that clean and pure should be used in all textbooks.


/sarcasm

Share this post


Link to post
Share on other sites
quote:
Original post by PlayGGY
quote:
Original post by Slickfty2
Someone recently drew my attention to a GameDev Tutorial:

http://www.gamedev.net/columns/hardcore/tetris/

It''s 30 lines of code... 36kb compiled executable... (VC7)

I''d say, yes. It is possible to make games that size still. Even with Direct Draw.


Not only that, but the code is incredibly clean and well written. You guys should check it out, and use it as an example of how to code.


[edited by - PlayGGY on March 6, 2004 12:40:05 AM]


I agree... so understandable for new programmers.

Share this post


Link to post
Share on other sites
Very possible. For about a week I was working on a 64k demo ... a 64k game with sprite based graphics, midi sound, in the flavor of nethack.

There is no doubt in my mind that I could have completed it, but I halted it because there was just so much more that I wanted but couldn''t do.

Although it was funny coming up with dirty palette compression schemes ... I was able to fit my 54 32x32 tiles into ~4960 bytes. Yum

The big issue for me space-wise is dynamic objects (characters that need to be animated and aren''t good for my compression technique), and the fact that in order to fit everything in there I needed to have almost EVERY aspect of the game procedural. Procedural levels, procedural monsters, use a grammar for procedural name creation, etc.

But when I looked at it ... whats the point? Although I may one day make a floppy size game. That would be alot of fun, there is so much you can do with that space if you have been planning a game that is 1/20th the size.

Share this post


Link to post
Share on other sites
I may be mistaken here but isnt it as follows with NES:
A Kernel is loaded onto the system which handles all API relevant stuff, therefore if you say a rom is so and so big, thats only the arts, music and the core game stuff. Thus you have to compare the rom with a games executable without DirectX or OpenGL.
-CProgrammer

Share this post


Link to post
Share on other sites
from what i''ve seen there two different sizes: the file size and the cart size. i''ve was quoting from the cart size, which is the bigger of the two.

Share this post


Link to post
Share on other sites
quote:
Original post by CProgrammer
I may be mistaken here but isnt it as follows with NES:
A Kernel is loaded onto the system which handles all API relevant stuff, therefore if you say a rom is so and so big, thats only the arts, music and the core game stuff. Thus you have to compare the rom with a games executable without DirectX or OpenGL.
-CProgrammer


DirectX and OpenGl aren''t part of your game, only API calls (well, mostly).

Share this post


Link to post
Share on other sites
Yes you can make games small. There was a little contest on the java boards. It was called 4k game contest. Rules were do whatever you want, but it must be playable, not a demo, and it must be under or equal 4kB.
First optimization was: removal of main method. It saves 12 bytes. Others were drastic as well.
There is a minimal amount of memory that is needed for a complex game. SNES games were example of potentially excellent games that have problems with low memory, and persistence of the world.

Macro assembly is also an option if you''d like to have small EXECUTABLE files. Compression could be high, but it wont alow you do 1200 x 1024 CT like graphic under 3 kB.

Share this post


Link to post
Share on other sites

  • Advertisement