My 2nd homebrew game demo

Discuss technical or other issues relating to programming the Nintendo Entertainment System, Famicom, or compatible systems.

Moderator: Moderators

Post Reply
User avatar
Sivak
Posts: 316
Joined: Tue Jul 17, 2007 9:04 am
Location: Somewhere
Contact:

My 2nd homebrew game demo

Post by Sivak » Sun Feb 24, 2008 7:55 pm

This time we've gone to a simpler game: Simon. I dubbed this project Siamond due to the way the game board is laid out.

This game was a pretty quick one to make and the demo here is more or less the whole game. I might add some stuff, but the overall game is pretty much here.

Link:
http://www.nintendoage.com/media/_userm ... ond2%2Ezip

User avatar
Zepper
Formerly Fx3
Posts: 3194
Joined: Fri Nov 12, 2004 4:59 pm
Location: Brazil
Contact:

Post by Zepper » Sun Feb 24, 2008 8:37 pm

Very nice. It works on my emulator. :)
You did a great job. I like this kind of game.

User avatar
blargg
Posts: 3715
Joined: Mon Sep 27, 2004 8:33 am
Location: Central Texas, USA
Contact:

Post by blargg » Sun Feb 24, 2008 9:34 pm

Gets a bit frantic once the sequence gets of a decent length (I got to 16). Overall, it's clean. I saw no momentary vertical scrolling issues lots of homebrew games have, when switching screens. Some specific critique:

"At the start of the game, a sequence of colors begins. The player must repeat this sequence perfectly. [...] once a player inputs a wrong part of the sequence, the game is over."

Talking about the player in third-person is inappropriate when the text is meant for the player to read. Talk about the player in the first-person: "You must repeat this sequence perfectly. Once you input a wrong part of the sequence..."

Also, don't change verb tense in mid-sentence: "On every successful repetition, a new, random color will be added to the sequence and the process repeats." Either change "will be" to "is", or change the last word from "repeats" to "repeated", so that you have "will be ... repeated". I prefer the former, since "is" is more assertive than "will be".

In general, your instructions read more like a design document for the game. The following seems much more friendly (and concise) to a player just interested in how to play:

"Your goal is to remember then repeat the sequence of colors shown before you, using the d-pad. Each time you succeed, a new step is added to the sequence. The game ends when you make a mistake."

Technically, would it be possible to queue d-pad input so that the player can input the sequence as fast as he likes, rather than having to wait for the game to highlight that color? This would involve polling the d-pad inside the NMI handler, and keeping track of presses in a small queue. I might post some code that shows how to do this cleanly. It could be frustrating to know you entered it correctly, but the game was too slow to keep up.
Last edited by blargg on Sun Feb 24, 2008 9:35 pm, edited 1 time in total.

Roth
Posts: 399
Joined: Wed Aug 03, 2005 3:15 pm
Contact:

Post by Roth » Sun Feb 24, 2008 9:35 pm

Sivak, it's REALLY solid man! Great job! I love the sound effects for it, and the music is really catchy too : ) It's really cool how you gray everything out upon a wrong answer. Good work!

User avatar
Sivak
Posts: 316
Joined: Tue Jul 17, 2007 9:04 am
Location: Somewhere
Contact:

Post by Sivak » Sun Feb 24, 2008 10:13 pm

Diss my grammar will you? :(

Well, I may change how it's written. I basically wrote something in a text file I felt made sense. I really didn't think too many would even bother reading the instruction screen since, unlike my other game Geminim, Simon is probably more widely-known. I just put it there as a formality, heh.

As for the speedy input, I would probably have to modify the code rather significantly to do it that way. Right now it looks at what you input, waits 10 frames to show you what you pressed and play the tone, then lets you press another. I originally had this at 15, but to me that seemed slow. 10 seemed more than fair. I could probably lower it to 7 or even 5 if that still seems high.

Roth: Make it your next EOR power. 8)

User avatar
blargg
Posts: 3715
Joined: Mon Sep 27, 2004 8:33 am
Location: Central Texas, USA
Contact:

Post by blargg » Sun Feb 24, 2008 11:21 pm

Diss my grammar will you?
Sorry, if I had realized you didn't want critique aimed at improving it, I would have avoided giving that. I am a part-time grammar Nazi, after all.
As for the speedy input, I would probably have to modify the code rather significantly to do it that way. Right now it looks at what you input, waits 10 frames to show you what you pressed and play the tone, then lets you press another.
Check out the demo code I just posted. It should be really easy to plug that into your game (if you want queueing). Sounds like your current method would register a button held down as multiple presses, which is also bad, as it would prevent use by players who have slow reflexes. With a game like this, you can make it playable by people no matter how slow they are at pressing buttons.

User avatar
Zepper
Formerly Fx3
Posts: 3194
Joined: Fri Nov 12, 2004 4:59 pm
Location: Brazil
Contact:

Post by Zepper » Mon Feb 25, 2008 7:54 am

blargg wrote:
Diss my grammar will you?
Sorry, if I had realized you didn't want critique aimed at improving it, I would have avoided giving that. I am a part-time grammar Nazi, after all.
- All your base are belong to us.

User avatar
Sivak
Posts: 316
Joined: Tue Jul 17, 2007 9:04 am
Location: Somewhere
Contact:

Post by Sivak » Mon Feb 25, 2008 8:45 am

Well, no. One key press won't register as multiple. When you hit a button, a variable gets set. When the action takes place it gets set to something else in a sort of "Held" state. You need to release the key in order for it to be reset to 0 or "unheld".

I have modified the game since this release because right now, you can press up (for example) to hit red in the pattern, release it and then quickly press and hold it again while the red animation is playing and it'll register as being a request for red if you keep it held. With my new improvements, the D-pad will be put in a "held" state until the animation finishes and you're able to input another press.

I was being a little silly with the grammar statement. I know the game text was written quickly.

NotTheCommonDose
Posts: 523
Joined: Thu Jun 29, 2006 7:44 pm
Location: lolz!
Contact:

Post by NotTheCommonDose » Tue Feb 26, 2008 5:07 pm

Great to enhance my memory skills but when I lost, it scared me like a screamer on youtube.

CKY-2K/Clay Man
Posts: 215
Joined: Sun Apr 01, 2007 2:10 pm

Post by CKY-2K/Clay Man » Tue Feb 26, 2008 5:17 pm

NotTheCommonDose wrote:Great to enhance my memory skills but when I lost, it scared me like a screamer on youtube.
rofl
Image
Here to at least get an idea of how the NES works. I mean I know alot of the basic things, but this place'll help me grasp more how NES functions.
Major respect to NES developers.

User avatar
Sivak
Posts: 316
Joined: Tue Jul 17, 2007 9:04 am
Location: Somewhere
Contact:

Post by Sivak » Tue Feb 26, 2008 10:01 pm

NotTheCommonDose wrote:Great to enhance my memory skills but when I lost, it scared me like a screamer on youtube.
I actually have considered changing the loss sound so it's a little less "scary". I think that high-pitched triangle wave does it, heh.

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

Post by Drag » Wed Feb 27, 2008 9:37 pm

Sivak wrote:
NotTheCommonDose wrote:Great to enhance my memory skills but when I lost, it scared me like a screamer on youtube.
I actually have considered changing the loss sound so it's a little less "scary". I think that high-pitched triangle wave does it, heh.
How about a happy little "aww, you lost" jingle? Kinda like when you run out of time in Elebits? :P

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

Post by tepples » Thu Feb 28, 2008 6:09 am

Drag wrote:How about a happy little "aww, you lost" jingle?
You mean like this?

User avatar
Sivak
Posts: 316
Joined: Tue Jul 17, 2007 9:04 am
Location: Somewhere
Contact:

Post by Sivak » Sat Mar 01, 2008 11:22 am

For those interested, I have a newer version:

http://www.nintendoage.com/media/_userm ... ond3%2Ezip

Some better graphics in-game (I think anyway), a more ornate title screen with music, and you have a time limit to enter your move now.

I rewrote some of the instruction screen as per Blargg's suggestions, although I do realize I spelled "Ends" wrong. It's been fixed.

As I post newer demos I continue to update more things, heh.

NotTheCommonDose
Posts: 523
Joined: Thu Jun 29, 2006 7:44 pm
Location: lolz!
Contact:

Post by NotTheCommonDose » Sat Mar 01, 2008 2:39 pm

I still like the digit digit barn song at the intro.

Post Reply