Limitations

From NESdev Wiki
Revision as of 21:10, 8 December 2009 by Tepples (talk | contribs) (flipped puzzle and fighting around by approximate order of release of the genre defining game)
Jump to navigationJump to search

Some of the limitations of NES hardware and common mapper hardware severely limit the system's capability to perform well in some genres. This could be part of why they took off after 1991 when more powerful hardware became more readily available.

Simulation

Limitations: 8 KiB PRG RAM; no 3D graphics

Some kinds of simulator games, like SimCity, The Sims, Harvest Moon, and Animal Crossing, have large grid-based world maps and tend to need more than 8 KiB just to store this map. Very few NES cartridge boards provided more than 8 KiB, and most of them were Japan-only. Games that allow the player to customize his appearance extensively, as in Animal Crossing and The Sims, typically rely on 3D texture mapping so that the changes to the appearance can be seen from all angles.

Creation

Limitations: 8 KiB PRG RAM, input devices

Games that allow for modification, such as modified game graphics, maps, and scripts, tend to be extremely limited. There's also no alphabetic keyboard or precise pointing device on an NES. A BASIC interpreter and a "shooter maker" were released only in Japan. Videomation is a paint program with an expanded CHR ROM, but its animation is severely limited, and it can't save.

Driving

Limitations: No 3D graphics

There are two ways to do a driving game: behind-the-car with a Pole Position style track (as seen in F-1 Race and Rad Racer) and overhead/isometric style (as seen in RC Pro-Am and Micro Machines.) In a behind-the-car view, the car can't turn all the way around. Overhead view severely limits how far ahead one player can see, and the camera generally has to follow one player or the other.

Puzzle

Limitations: 16x16 pixel attribute tiles

A lot of tile-matching games, such as Magic Jewelry, Yoshi's Cookie, Mystic Pillars, Wario's Woods, Palamedes, and one of the Puyo Puyo games, have 16x16 pixel tiles. This limits each player's playfield to about 6x12 cells. Games with smaller tiles typically can't go over three unique colors, as seen in Dr. Mario and Tetris 2. One compromise is seen in LJ65: tiles in both players' playfields are drawn as a dithered combination of orange, green, and blue. It's not as clean as, say, Tetris for Sega Master System, but it gets the job done.

Fighting

Limitations: Overdraw

If both players' graphics are drawn as sprites, characters will have to be no wider than 32 pixels. Otherwise, they'll flicker like crazy when you cross the 8-sprite limit. You can get away with wider jumping poses because it's less likely that both characters will be in the air at once. Shaq-Fu was poor in execution, but its core idea of smaller characters could be made to work well on an NES. You could aim for something like Super Smash Bros.

The other way to do this, allowing big characters like in Street Fighter, is to draw one character as 8x16 pixel sprites and the other as background tiles. This allows up to 64-pixel-wide characters, or slightly smaller counting projectile attacks. But you have to design the game such that only one player faces either direction, so that you can draw the other player with mirrored sprites. That means you can't easily jump behind or roll past the other player and attack from behind unless the frames for facing the other player's back have dedicated cels. In addition, backgrounds will be plain, and you'll probably need an advanced mapper with a scanline timer to perform multiple scroll splits at the status bar, play area, and ground.

Bullet hell shooter

Limitations: Overdraw, CPU speed, 5-line OAM DMA delay

Shooters can be hard, like Recca, but they can't have more than 64 things in the air at once. Some platforms (like GBA and Neo Geo) can rewrite part of the sprite table during rendering to expand the sprite capability, but the NES can't. And even then, more than 8 on a line will flicker so bad that bullets will be invisible half the time.

Party multiplayer

Limitations: Sprite palettes; overdraw

With an NES Four Score adapter, there are four controller ports, one for each of the four palettes. If each player's car, uniform, etc. has the same graphics with a palette swap, there are no palettes left for anything else. Either other things like projectiles and enemies need to be the same color as the player, or they have to be background objects. Four 16x16 or 32x16 pixels will also hit the 8-sprite limit with no room for projectiles unless the game is designed not to encourage them to be at the same vertical position.