Progress Thread - Flappy Jack

Moderator: Moderators

User avatar
dougeff
Posts: 2616
Joined: Fri May 08, 2015 7:17 pm
Location: DIGDUG
Contact:

Progress Thread - Flappy Jack

Post by dougeff » Tue Oct 18, 2016 8:10 pm

Here's my late entry...

Flappy Jack. I wrote most of this last year, and never finished it. I've been touching up a few things, adding a few new features. All that's left is to redo the music and do some play testing.

You have to catch the pancakes as they fall from the top of the screen. As your stack gets higher, it's harder to catch them. As the levels progress, it gets faster and faster.
Attachments
flappy7.png
flappy7.png (2.02 KiB) Viewed 14202 times
flappy8.png
flappy8.png (2.62 KiB) Viewed 14202 times
nesdoug.com -- blog/tutorial on programming for the NES

User avatar
dougeff
Posts: 2616
Joined: Fri May 08, 2015 7:17 pm
Location: DIGDUG
Contact:

Re: Progress Thread - Flappy Jack

Post by dougeff » Wed Oct 19, 2016 11:30 am

My very humble music 'studio'. Time to write some songs.
Attachments
20161019_100845_resized-1.jpg
nesdoug.com -- blog/tutorial on programming for the NES

User avatar
dougeff
Posts: 2616
Joined: Fri May 08, 2015 7:17 pm
Location: DIGDUG
Contact:

Re: Progress Thread - Flappy Jack

Post by dougeff » Tue Oct 25, 2016 5:27 am

I tried to edit the source code of (famitone) text2data, to allow lower notes, which worked fine for everything except DPCM channel. The table of DMC offsets was wrong, had to manually edit :P
Then I was getting a weird bug with Noise channel sound effects, that I've managed to fix, but somehow related to the fact that famitone only once writes to $400f, and assumes always a constant note to be playing (sometimes with a volume of zero). Somehow my sound effect (or something) turned off the constant note, after which no noise channel played. Took me an hour to debug and solve. =(
Anyway, it's 99% done, just need to fine tune a few things.
nesdoug.com -- blog/tutorial on programming for the NES

User avatar
dougeff
Posts: 2616
Joined: Fri May 08, 2015 7:17 pm
Location: DIGDUG
Contact:

Re: Progress Thread - Flappy Jack

Post by dougeff » Thu Oct 27, 2016 8:41 am

And, I'm done.

I thought I would share a tiny bit of code. To play the same famitracker/famitone2 song at different speeds...

Code: Select all

	lda level
	cmp #$10
	bcs +
	lda #9
	sta FT_SONG_SPEED ; levels 1-9 slow music
	jmp Game_Music
+
	cmp #$20
	bcs +
	lda #8
	sta FT_SONG_SPEED ; levels 11-19 medium music
	jmp Game_Music
+
	lda #7
	sta FT_SONG_SPEED ; levels 20+ fast music
	
Game_Music:	
	jsr FamiToneUpdate ;MusicEngine
And, yes, level $10 is level 10 in my numbering system.
nesdoug.com -- blog/tutorial on programming for the NES

User avatar
Jedi QuestMaster
Posts: 599
Joined: Thu Sep 07, 2006 1:08 pm
Location: United States
Contact:

Re: Progress Thread - Flappy Jack

Post by Jedi QuestMaster » Thu Oct 27, 2016 6:22 pm

Cool! Can't wait to play it. :)

User avatar
dougeff
Posts: 2616
Joined: Fri May 08, 2015 7:17 pm
Location: DIGDUG
Contact:

Re: Progress Thread - Flappy Jack

Post by dougeff » Thu Dec 01, 2016 7:07 am

I've been doing endless testing and rebalancing. Now I have a weird issue. The word "Flappy's" in the background looks weird on a CRT. It is clearly not dithered on its edges, yet I get this...
20161201_085602_resized.jpg
See the dithering on the letters? Also the pancakes (color 17) look like nearly the same color as the sign (color 16).

Compare to a random other game, and it has no dithering issues on the same TV.


20161201_085728_resized.jpg
nesdoug.com -- blog/tutorial on programming for the NES

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

Re: Progress Thread - Flappy Jack

Post by tepples » Thu Dec 01, 2016 7:19 am

Any color boundary with diagonal lines of slope 2 (26 degrees clockwise of vertical) has a potential for such artifacts on NTSC NES or Super NES because of how pixels line up with the color subcarrier. Unfortunately, this is the common amount of slant for cursive.

No yellow bird? No yellow mole?

User avatar
dougeff
Posts: 2616
Joined: Fri May 08, 2015 7:17 pm
Location: DIGDUG
Contact:

Re: Progress Thread - Flappy Jack

Post by dougeff » Thu Dec 01, 2016 8:17 am

Any color boundary with diagonal lines of slope 2 (26 degrees clockwise of vertical) has a potential for such artifacts on NTSC NES or Super NES because of how pixels line up with the color subcarrier. Unfortunately, this is the common amount of slant for cursive.
That's a very good explanation. Did you know that using a non-round number in an explanation makes it 26% more believable. I just made that number up, but I'm betting that you researched your answer. Maybe I should try a non-slanted sign.
No yellow bird? No yellow mole?
For legal reasons, I'm claiming that any similarly to popular games with similar names are purely coincidental.
nesdoug.com -- blog/tutorial on programming for the NES

User avatar
dougeff
Posts: 2616
Joined: Fri May 08, 2015 7:17 pm
Location: DIGDUG
Contact:

Re: Progress Thread - Flappy Jack

Post by dougeff » Thu Dec 01, 2016 11:54 am

It looks like 30° angle to me (angle of phosphor dots on CRT).

https://www.google.com/search?q=crt+tri ... c61880M%3A
nesdoug.com -- blog/tutorial on programming for the NES

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

Re: Progress Thread - Flappy Jack

Post by tepples » Thu Dec 01, 2016 1:19 pm

If pixels were square, it would be arctan(.5) = 26.6 degrees. When corrected for the 8:7 pixel aspect ratio, it becomes arctan(.5*8/7) = 29.7 degrees, which I admit is easier to confuse with shadow mask artifacts. But I'm pretty sure this is an NTSC encoding artifact, not a shadow mask artifact, and would appear the same way on an LCD TV (which otherwise has a more Trinitron-like mask pattern). The easiest way to demonstrate that this is an NTSC artifact is to reset the game a few times until you get a different alignment between the pixel clock and the color subcarrier.

User avatar
dougeff
Posts: 2616
Joined: Fri May 08, 2015 7:17 pm
Location: DIGDUG
Contact:

Re: Progress Thread - Flappy Jack

Post by dougeff » Sun Dec 04, 2016 8:03 pm

Which is better? (16 wasn't working...too close to pancake color.)
Attachments
flappy11b.png
flappy11b.png (2.53 KiB) Viewed 13668 times
flappy11.png
flappy11.png (2.52 KiB) Viewed 13668 times
nesdoug.com -- blog/tutorial on programming for the NES

User avatar
dougeff
Posts: 2616
Joined: Fri May 08, 2015 7:17 pm
Location: DIGDUG
Contact:

Re: Progress Thread - Flappy Jack

Post by dougeff » Mon Dec 05, 2016 3:50 pm

Or, maybe this...16 mixed with 06. (Nestopia with NTSC filter). Dark enough that the pancakes show up fine.
Attachments
Flappy12.png
nesdoug.com -- blog/tutorial on programming for the NES

User avatar
FrankenGraphics
Formerly WheelInventor
Posts: 2032
Joined: Thu Apr 14, 2016 2:55 am
Location: Gothenburg, Sweden
Contact:

Re: Progress Thread - Flappy Jack

Post by FrankenGraphics » Tue Dec 06, 2016 2:54 pm

Flappy11 looks less monochromatic, which is a nice touch. Although i like the details on the last one, it may still be too close to the pancakes?
http://www.frankengraphics.com - personal NES blog

User avatar
dougeff
Posts: 2616
Joined: Fri May 08, 2015 7:17 pm
Location: DIGDUG
Contact:

Re: Progress Thread - Flappy Jack

Post by dougeff » Tue Dec 13, 2016 5:17 pm

Here's (probably) the final cut...the full game, Flappy Jack.

(link removed, old)

Instructions -
Mostly L + R to move
Holding A or B will boost your speed
Catch Everything
Start to Pause

The game is considered 'won' if you score above 100,000 pts and see the 'good' ending.
You can cheat and press A and B and Start at the Title Screen to see the 'good' ending.
It is technically possible to reach level 99, but not very likely.

Let me know if you think it is much too hard or much too easy. Thanks.
Last edited by dougeff on Sun Jan 08, 2017 9:35 am, edited 1 time in total.
nesdoug.com -- blog/tutorial on programming for the NES

User avatar
dougeff
Posts: 2616
Joined: Fri May 08, 2015 7:17 pm
Location: DIGDUG
Contact:

Re: Progress Thread - Flappy Jack

Post by dougeff » Wed Dec 14, 2016 12:54 pm

Actually, I forgot, I wanted to add a final score on the Game Over screen...here's that version.


(Link removed, see page 3 for newer version)
Last edited by dougeff on Fri Sep 08, 2017 11:13 pm, edited 1 time in total.
nesdoug.com -- blog/tutorial on programming for the NES

Post Reply