I'm currently working on a NES version of this old classic. As you can see if you try the ROM, it's going to resemble the Windows version. It isn't too complex yet and I certainly have a long way to go before it's even playable.
What currently works:
- Map decoding (RLE) and rendering (expanding metatiles, writing attributes, etc.)
- Various functions for replacing metatiles in VRAM etc.
- Objects (metasprites) including movement and collision testing
- Player movement and scrolling (the screen scrolls whenever Chip is in the center of the screen)
- A rudimentary system for "actions" happening when an object is in contact with different types of map blocks
- Picking up objects
A lot of this stuff still has to be improved. I consider the most basic graphical functions as finished, such as scrolling and object drawing (drawing here really just means going through the object list, checking if the objects are in range and if yes, compute their position depending on scroll speed and position.)
What will probably be a challange is the two layered map format of Chip's challenge (there can be things hidden under bricks etc.). I also have to implement a sort of "hybrid" object system where objects remain background blocks as long as they're not moving. And when they move, they'll be replaced by a sprite at the same initial position, move, and then be replaced by a background block again.
You can try what I've done so far: test 1, test 2 (this is a demo showing that objects react to background blocks in the same way as the player)
What do you think so far? As you can see, it's far from playable. I have to implement buttons, teleports, tanks, monsters ... the list lis long. However, this is farther than I've come on any previous NES project :p
EDIT: By the way, most of the graphics is done by my brother. I think he's done an excellent job. The tiles used in this game are 1/4 of the original size. There's also, of course, limitations on how many colors can be used etc.
What currently works:
- Map decoding (RLE) and rendering (expanding metatiles, writing attributes, etc.)
- Various functions for replacing metatiles in VRAM etc.
- Objects (metasprites) including movement and collision testing
- Player movement and scrolling (the screen scrolls whenever Chip is in the center of the screen)
- A rudimentary system for "actions" happening when an object is in contact with different types of map blocks
- Picking up objects
A lot of this stuff still has to be improved. I consider the most basic graphical functions as finished, such as scrolling and object drawing (drawing here really just means going through the object list, checking if the objects are in range and if yes, compute their position depending on scroll speed and position.)
What will probably be a challange is the two layered map format of Chip's challenge (there can be things hidden under bricks etc.). I also have to implement a sort of "hybrid" object system where objects remain background blocks as long as they're not moving. And when they move, they'll be replaced by a sprite at the same initial position, move, and then be replaced by a background block again.
You can try what I've done so far: test 1, test 2 (this is a demo showing that objects react to background blocks in the same way as the player)
What do you think so far? As you can see, it's far from playable. I have to implement buttons, teleports, tanks, monsters ... the list lis long. However, this is farther than I've come on any previous NES project :p
EDIT: By the way, most of the graphics is done by my brother. I think he's done an excellent job. The tiles used in this game are 1/4 of the original size. There's also, of course, limitations on how many colors can be used etc.