Project: Chip's Challenge for NES

A place where you can keep others updated about your NES-related projects through screenshots, videos or information in general.

Moderator: Moderators

User avatar
bigjt_2
Posts: 82
Joined: Wed Feb 10, 2010 4:00 pm
Location: Indianapolis, IN

Post by bigjt_2 » Wed Feb 02, 2011 9:39 pm

Never played the original. Hmmm... So you actually introduced me to it. Your remake's looking good.

Jaffe
Posts: 48
Joined: Sun May 14, 2006 10:26 am
Location: Norway

Post by Jaffe » Sun Mar 27, 2011 3:37 pm

Thanks for the comments. :)

It's been brought to my attention that the compiled version that I have uploaded is a test version of something I tried to do a while ago. It starts of at the wrong level and the game just freezes once you've completed it. This was not what I intended to upload! I have uploaded the correct, latest build now. Hopefully that one should match the pictures and level descriptions in my last post...

edit: You'll find it here.

Drag
Posts: 1327
Joined: Mon Sep 27, 2004 2:57 pm
Contact:

Post by Drag » Sun Mar 27, 2011 11:08 pm

I spy a Creeper in the tileset, good sir. :P

Looking good! Keep up the good work. :D

Jaffe
Posts: 48
Joined: Sun May 14, 2006 10:26 am
Location: Norway

Post by Jaffe » Mon Mar 28, 2011 2:33 am

Thanks :) I'll work more on it when I have time for it. Soon it's easter break, maybe I'll get something done then.

Haha, is the creeper still there? :o

Jaffe
Posts: 48
Joined: Sun May 14, 2006 10:26 am
Location: Norway

Post by Jaffe » Sun Apr 24, 2011 1:50 am

A little update (playable demo here: http://home.no/johan-af/chip/chip.nes)

Green buttons and toggle blocks have now been implemented. They can be seen in the fourth and fifth levels. To do this, I decided to make my game use CHR-RAM instead of CHR-ROM. This was really the only way the game could support the large amount of toggle blocks found in some levels. Instead of writing new metatiles to the nametables over several vblank periods (if there are many blocks), the graphics for open and closed toggle blocks are switched in CHR-RAM. This does take some time too (128 bytes to be copied), but in sum it's worth it.

Brown buttons (or grey here) and traps have also been implemented. This can be seen in the fifth level in the demo. Cloners are also working properly, which can also be seen in the fifth level.

There are still lots of things left to implement. The most important is teleports. After that comes the blocks that have walls that block you from only certain directions. My engine currently doesn't allow them to be implemented in a non-hacky fashion, so I'll have to revise how collisions and interactions work. After those are implemented, some serious optimization and bug fixing will commence. Some of the bugs are probably easy to spot in the demo (objects flickering on the wrong side of the screen when scrolling them off screen for instance.) Others are only revealed by larger and more complex levels.

On the graphics side, my brother has done some polishing. It seems I have failed to mention this before, but most of the graphics in this game is done by my brother. Of course, the original design is by Microsoft, but he's done a good job in making NES versions of the various tiles (and coming up with brand new ones where this was impossible.)

I have also written a level editor for the game, so that I don't have to RLE code them manually and write object lists, etc. any more :p The editor is written in Common Lisp and can be found here: http://home.no/johan-af/chip/mapeditor.

strat
Posts: 375
Joined: Mon Apr 07, 2008 6:08 pm
Location: Missouri

Post by strat » Wed Apr 27, 2011 2:44 pm

I just played to the first green block level and noticed the block graphics don't always match to their passable/impassible state.

Jaffe
Posts: 48
Joined: Sun May 14, 2006 10:26 am
Location: Norway

Post by Jaffe » Thu Apr 28, 2011 1:00 pm

I'm aware of this, and this is what I'll be working on fixing next. It happens because the green button is aligned just on the same block row as the "trigger row" for updating nametables when scrolling (the nametables cover in total 30 rows, so 2 nametable rows have to be used again to display map rows 31 and 32 as well as 1 and 2). My current system for doing nametable updates is really "hacky". I'm working on making a more robust system that can do some kind of prioritizing. Another effect of the same problem can be seen in level 6 (the level with blue walls). If you walk straight towards a wall and at the same time pick up a chip, only either the wall or the chip will be replaced by floor. Not both.

As can be seen in a demo I uploaded a few days ago (link in my last post), teleports are now working. They were surprisingly simple to implement. They function as in the Windows version: When entering a teleport the game searches through the level for the next teleport in reverse reading order -- that is right to left and bottom to top. To fasten this process, a list of teleports sorted in this order is added to each level with teleports. There are still some issues with control input while entering teleports, but this will be sorted out later... (I'm going to revise my input routines.)

Walls which block you from only certain directions have also been implemented since my last post.

Kojote
Posts: 35
Joined: Tue Jul 15, 2008 7:57 pm
Location: Salzburg, Austria
Contact:

Post by Kojote » Fri Aug 05, 2011 8:33 pm

Hi Jaffe,

I wonder how this project comes along, any news? Possibly any new demo? :)

Regards
Kojote
Kojote
http://www.pdroms.de - Homebrew news for consoles & handelds
http://www.retroguru.com - Retroguru Game Development
http://www.speckdrumm.org - Speckdrumm - Austrian Demogroup
http://www.retromagazine.eu - Retro - German Retrogaming Print-Magazine

User avatar
GradualGames
Posts: 1107
Joined: Sun Nov 09, 2008 9:18 pm
Location: Pennsylvania, USA
Contact:

Post by GradualGames » Tue Aug 23, 2011 8:59 am

I like the demo (only the first link worked for me) Funny thing is I'm not sure if I played the original or not. I had a game on Windows 95 about fifteen years ago that was similar to this game, not sure if it was a knock off. I just remember moving around on a gray grid, collecting keys, and other things (not sure if they were chips). I wonder what it was? Anyway, looks cool.

tepples
Posts: 22141
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples » Tue Aug 23, 2011 9:35 am

Google Image Search chip's challenge windows
Is that what you were looking for?

User avatar
GradualGames
Posts: 1107
Joined: Sun Nov 09, 2008 9:18 pm
Location: Pennsylvania, USA
Contact:

Post by GradualGames » Tue Aug 23, 2011 9:45 am

It's coming back to me now. Yes, I think that was it. I played that on my Pentium 133 when I was like...13. I hope this NES version gets finished cause that was a really fun game. :)

Jaffe
Posts: 48
Joined: Sun May 14, 2006 10:26 am
Location: Norway

Post by Jaffe » Fri Sep 30, 2011 11:33 am

I would also like to see this finished, but I simply don't have the time to work on it now. When I'm working on something programming related I need to work on it non-stop. I can't dedicate an hour here and an hour there and work on it, it has to be more of a continuous process. That's why it has taken this long to get to the stage the game is in now. I've only worked on it a month or so during the last two easter and christmas breaks.

The latest version is the one found under http://home.no/johan-af/chip (there's also source code for the game and the map editor here)

The problems I am facing now (as I remember them) are the following:

- Efficiency: There's a lot to be done here. As of now, there are a lot of levels which can not be played because there are simply too many monsters and objects for the game code to handle in between vblanks. I know some optimization can be done here, but I'm afraid some of the most complex levels in the original game will never be playable in this version :/

- Graphical glitching: The most prominent glitch occurs when a nametable update happens at the same time as the scrolling routine demands an update of an entire row of tiles. As of now the code simply doesn't handle this. The request that happens last is the one carried out by the vblank code. Another glitch occurs when toggling the green walls. I'm unsure about how to fix this.

- Monster behavior: The more complex monsters, such as the 'frog', are not implemented correctly. The 'slime' and 'walker' monsters are also not implemented as of yet.

- Status screen: This has not been implemented, and doing so will not be easy. A status screen would have to be separate from the main view, it could for example be brought up by pressing START. The screen would have to be blacked out, and one of the nametables would have to be emptied. When continuing the game, everything would have to be re-drawn. This is the only way to do it as far as I can see, and it will not be a very neat result.

- Music: I've been in contact with a guy who was interested in making music for the game, but music is something I can't even think about now. The game engine is inefficient enough as it is, and adding a music routine would probably take a lot more leves of the playable levels list.

In conlusion: A lot still remains. And sadly it becomes more and more clear that a game like this isn't well suited for the NES. Some of the levels require quite a lot of comupting each frame. Every single object in a level is alive at all times, not only when showed on the screen. This can not be omitted. A bug at the opposite end from the player could for instance control toggle blocks or tanks that are far away, and in many levels that is crucial to the whole premise of the level. When Christmas time comes and I don't have much else to do, I'll take a look at it again. But I doubt that I will get much further.

tepples
Posts: 22141
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples » Fri Sep 30, 2011 12:57 pm

Can it run at 30 fps or 20 fps instead of 60 fps? Players accepted reduced frame rates back in the day for games developed by Micronics.

Jaffe
Posts: 48
Joined: Sun May 14, 2006 10:26 am
Location: Norway

Post by Jaffe » Thu Oct 06, 2011 5:41 am

Thanks, I must admit I never even thought of doing that! The game is still fully playable at 30 fps, but the jerky movement gets quite tiring after a while :/ I do however feel optimistic about eventually adding music to the game if it's acceptable to run it at 30 fps. The same demo as before is available at 30fps here: http://home.no/johan-af/chip/chip_30fps.nes

User avatar
thefox
Posts: 3141
Joined: Mon Jan 03, 2005 10:36 am
Location: Tampere, Finland
Contact:

Post by thefox » Thu Oct 06, 2011 12:46 pm

Jaffe wrote:Thanks, I must admit I never even thought of doing that! The game is still fully playable at 30 fps, but the jerky movement gets quite tiring after a while :/ I do however feel optimistic about eventually adding music to the game if it's acceptable to run it at 30 fps. The same demo as before is available at 30fps here: http://home.no/johan-af/chip/chip_30fps.nes
Did you notice that this demo has the "stuttering sprites" problem? That is, sprites are not always lined with background properly as the screen scrolls. It's easier to see when frame stepping.
Download STREEMERZ for NES from fauxgame.com! — Some other stuff I've done: fo.aspekt.fi

Post Reply