It is currently Tue Jan 22, 2019 10:36 pm

All times are UTC - 7 hours





Post new topic Reply to topic  [ 21 posts ]  Go to page 1, 2  Next
Author Message
 Post subject: Split Second
PostPosted: Fri Dec 28, 2018 6:59 am 
Offline

Joined: Sun Jan 14, 2018 7:50 pm
Posts: 9
Greetings Everyone!!

I am pleased to announce that I have created my very first NES game! Thanks to all the help and guidance in the community. What better way is there to announce your first game than in the 2018 NESdev Competition.

So, now, what is this game? Well as many of you may recall, way back in the 1980s we never had fancy hand-held video games like Switches or anything. What we did have was standalone hand-held video games. One of which was called, “Split Second,” originally introduced to the world by Parker Brothers in 1980. I mostly seem to recall playing it in the back seat of my parents’ old red 1984 Buick Century. The game itself was constructed with dark red plastic and had an old fashion 1970s “Star Wars-ish” feel to it. It had a simple display which only consisted of an array of red lights. Some of the lights were bar shaped and some were circular. It had four directional buttons as well as a start and a select button. Finally, the bottom 3rd of the game was an enormous vent which was probably more for show than serving any practical purpose. But who knows – maybe that was the only way to keep the CPU from overheating. Have a look at this picture from Electronic Plastic (http://www.electronicplastic.com/game/?company=&id=625), to see for yourself.

Image

I have created a port of Split Second to the NES. I tried to keep the same look and feel as with the original game. I also tried to replicate the game play and sounds as best as I could. As a first attempt, I am generally happy with the way that the NES game reproduces sounds but there is definitely some room for improvement. I am hoping to make some improvements to the sounds and graphics over the next month.

Here were my technical goals/achievements for this project:
    1. Learn 6502 assembly language.
    2. Learn to use NESASM compiler.
    3. Learn to use an NROM 128 mapper to keep things simple.
    4. Use only background tiles (no sprites anywhere in the game).
    5. Create simple light weight sound engine.

One thing I am very concerned about is that I do not want to plagiarize anything from the original hand-held game. I tried to call this out explicitly by citing the original work from Parker Brothers on the title screen. I also spent some time on uspto.gov and couldn’t find any associated trademarks. I wrote my own code and produced my own graphics. I’d like to think of this project as a tribute to Split Second but if people (who know more about trademarks than I do) are uncomfortable with the current name, I can certainly change it.

How does one play? See the original manual (https://www.manualslib.com/manual/1216146/Parker-Brothers-Split-Second.html?page=2#manual) for details. But it’s pretty straight forward. There are 8 distinct games. You select a game by using the select button and you start playing a game by using the start button. In some of the games you move a ball around the screen. In some of the games you move a bars around the screen. The object of each game is to complete the course as fast as you can. If you’re playing by yourself you can do time trials to see how fast you can complete each game. If you’re playing with multiple people you can take turns to see who is the fastest! I would recommend playing with the sound on as the scoring feedback system was originally meant to be heard. For example, there are different sounds for beating your previous score versus failing to beat your previous score etc.

Here are the names of the games:
    1. Mad Maze (Visible)
    2. Mad Maze (Preview)
    3. Mad Maze (Invisible)
    4. Space Attack (Beginner)
    5. Space Attack (Pro)
    6. Auto Cross
    7. Stomp
    8. Speedball

Hope you have a chance to play. If you find any bugs, let me know!


Attachments:
split_second.nes [48.02 KiB]
Downloaded 46 times
split_second_005.png
split_second_005.png [ 3.32 KiB | Viewed 715 times ]
split_second_002.png
split_second_002.png [ 3.31 KiB | Viewed 715 times ]
split_second_001.png
split_second_001.png [ 3.12 KiB | Viewed 715 times ]
split_second_000.png
split_second_000.png [ 3.32 KiB | Viewed 715 times ]
Top
 Profile  
 
 Post subject: Re: Split Second
PostPosted: Fri Dec 28, 2018 9:52 am 
Offline
User avatar

Joined: Sat Mar 30, 2013 12:24 am
Posts: 385
Will chime in more later, but I love it!

_________________
www.mteegfx.com


Top
 Profile  
 
 Post subject: Re: Split Second
PostPosted: Fri Dec 28, 2018 11:05 am 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 7977
Location: Seattle
Skadiet wrote:
Finally, the bottom 3rd of the game was an enormous vent which was probably more for show than serving any practical purpose.
Speaker grilles were often hidden under things that looked like that ... and it turns out there is a speaker there. (youtube repair video)

edit: being a little too young to have had one of these when they were new ... it's kinda neat seeing a hardware instance of Wario Ware.


Top
 Profile  
 
 Post subject: Re: Split Second
PostPosted: Fri Dec 28, 2018 11:42 am 
Offline

Joined: Tue Aug 28, 2018 8:54 am
Posts: 117
Location: Edmonton, Canada
I had fun playing all the games here. I've never seen one in real life, thank you for a fun little game.

Just a though, it would be a little easier to play in games like maze, if you add faint image of other segments that are not lit, like you would see on real game.


Top
 Profile  
 
 Post subject: Re: Split Second
PostPosted: Fri Dec 28, 2018 11:59 am 
Offline

Joined: Sun Jan 14, 2018 7:50 pm
Posts: 9
lidnariq wrote:
Speaker grilles were often hidden under things that looked like that ... and it turns out there is a speaker there. (youtube repair video)

Wow, that's pretty cool! Thanks for sharing the video, I hadn't seen that one yet.

yaros wrote:
Just a though, it would be a little easier to play in games like maze, if you add faint image of other segments that are not lit, like you would see on real game.

Yeah, agreed. That was actually my original intent but then when I wasn't sure how to do it, I went with the black background! But I can definitely revisit it now that the main game logic is complete. Thanks for the suggestion.


Top
 Profile  
 
 Post subject: Re: Split Second
PostPosted: Fri Dec 28, 2018 12:39 pm 
Offline
User avatar

Joined: Thu Aug 13, 2015 4:40 pm
Posts: 355
Location: Rio de Janeiro - Brazil
Color 07 should be really faint, but most emulators show it too bright. What you could do is flicker it.

_________________
https://twitter.com/bitinkstudios <- Follow me on twitter! Thanks!


Top
 Profile  
 
 Post subject: Re: Split Second
PostPosted: Fri Dec 28, 2018 2:47 pm 
Offline
Formerly WheelInventor

Joined: Thu Apr 14, 2016 2:55 am
Posts: 1833
Location: Gothenburg, Sweden
Here's a quick test for two techniques. Sorry for butchering your graphics.

Assuming the back panel is not really black but deep red or reddish brown, you can separate the plane from inactive marks by a dregree on the hue axis. This is the easiest way to achieve really faint changes with the PPU. Some setups might make one of the colours appear a little brighter or darker than the other, but it's not too bad in this case.

If you want it even more faint, you could checkerboard the pattern. Since there's no scrolling, you won't get the "shimmer" effect that's mostly unwanted. The pattern won't be a checkerboard, but it could work, still. I did that on the lower left marks. Edit: Or you could flicker them like nesrocks said.

I used 07 for the back plane, and 06 for the off marks.

The game was pretty fun even though i have no experience from the original gadget! The whole concept of remaking the original is really neat, too.


Attachments:
quicktest_splitsecond.bmp
quicktest_splitsecond.bmp [ 30.12 KiB | Viewed 607 times ]

_________________
http://www.frankengraphics.com - personal NES blog
Top
 Profile  
 
 Post subject: Re: Split Second
PostPosted: Fri Dec 28, 2018 3:58 pm 
Offline
User avatar

Joined: Thu Aug 13, 2015 4:40 pm
Posts: 355
Location: Rio de Janeiro - Brazil
If you checkerboard it there will be artifacts in CRT displays. The best way to get flicker is what Macbee taught me. Get horizontal lines that alternate every frame. Looks smoother than full/empty display of the image.

Not having a black background is a good idea, though on second thought I guess I wouldn't use that brown. Keep it all in the red spectrum.

_________________
https://twitter.com/bitinkstudios <- Follow me on twitter! Thanks!


Top
 Profile  
 
 Post subject: Re: Split Second
PostPosted: Fri Dec 28, 2018 7:35 pm 
Offline

Joined: Sun Jan 14, 2018 7:50 pm
Posts: 9
FrankenGraphics wrote:
If you want it even more faint, you could checkerboard the pattern. Since there's no scrolling, you won't get the "shimmer" effect that's mostly unwanted. The pattern won't be a checkerboard, but it could work, still. I did that on the lower left marks. Edit: Or you could flicker them like nesrocks said.

I used 07 for the back plane, and 06 for the off marks.

The game was pretty fun even though i have no experience from the original gadget! The whole concept of remaking the original is really neat, too.

I think I do like the "even more faint" option because I used the $06 color on the whole "plastic casing." I'm afraid it would all just look the same. When you say that I could checkerboard the pattern but that it won't actually be a checker board, is that just due to the CRT distorting the pattern - but different than the "shimmering effect?" Glad you had fun playing!

nesrocks wrote:
If you checkerboard it there will be artifacts in CRT displays. The best way to get flicker is what Macbee taught me. Get horizontal lines that alternate every frame. Looks smoother than full/empty display of the image.

This sounds good too. Unfortunately, as a consequence of using an NROM 128 mapper, I only have two 8K prg rom banks. One has 3 bytes free and the other has 37 bytes free. :lol: Not sure if I'd be able to pull this off in 40 bytes. Of course, I could always just convert the mapper to NROM 256....


Top
 Profile  
 
 Post subject: Re: Split Second
PostPosted: Sat Dec 29, 2018 5:37 am 
Offline
Formerly WheelInventor

Joined: Thu Apr 14, 2016 2:55 am
Posts: 1833
Location: Gothenburg, Sweden
Quote:
When you say that I could checkerboard the pattern but that it won't actually be a checker board, is that just due to the CRT distorting the pattern - but different than the "shimmering effect?" Glad you had fun playing!


yeah, the pattern might come across as a bit braided. You may also see a few bright or dark speckles from the borders between two neighboring colours, but this is mostly the case between colours of different brightness, not hue. Such artifacts will "shimmer" in a scrolling scene (change brightness depending on position) but aren't that much of a problem on most still screen scenarios since the artifacts aren't animated then. Here, where the're just a slight difference in hue and an almost neglible difference in brightness, the thing i think you need to consider the most is the distorted checkerboard pattern.

Here's a run through blarggs' ntsc filter tool with contrast and sharpness set to middle. A softer screen will look slightly better on checkerboard patterns (since they're smudged out into the blend we actually might want), and a sharper screen will look slightly worse, since the distortion of positions becomes more pronounced.

Attachment:
filtered.bmp
filtered.bmp [ 847.55 KiB | Viewed 519 times ]


Quote:
Unfortunately, as a consequence of using an NROM 128 mapper, I only have two 8K prg rom banks.

-There's some space left in your chr rom banks. If you really wanted, i'm eyeballing that you could put some 500-600 bytes of data in there if you pack the tiles, freeing up prg rom

-If you haven't already, i think you could save some space by RLE compressing your screens. I think doing the RLE vertically instead of horizontally (as per normal) would save you more.

_________________
http://www.frankengraphics.com - personal NES blog


Top
 Profile  
 
 Post subject: Re: Split Second
PostPosted: Sat Dec 29, 2018 6:15 am 
Offline
User avatar

Joined: Thu Aug 13, 2015 4:40 pm
Posts: 355
Location: Rio de Janeiro - Brazil
Be really careful with checkrboard dithering. That filter does not properly recreate what happens on NTSC CRT. Nasty diagonal lines will be created as artifacts.

_________________
https://twitter.com/bitinkstudios <- Follow me on twitter! Thanks!


Top
 Profile  
 
 Post subject: Re: Split Second
PostPosted: Sat Dec 29, 2018 8:04 am 
Offline
User avatar

Joined: Tue Jun 24, 2008 8:38 pm
Posts: 2178
Location: Fukuoka, Japan
Tried the game and it was interesting.

I don't think that I ever saw it as a kid but I would have been quite young too when it came out. Our first game were some dedicated pong like machine maybe made by radio shack then we had an odyssey 2(not sure the name, it had a keyboard on it).


Top
 Profile  
 
 Post subject: Re: Split Second
PostPosted: Sat Dec 29, 2018 8:30 am 
Offline
Formerly WheelInventor

Joined: Thu Apr 14, 2016 2:55 am
Posts: 1833
Location: Gothenburg, Sweden
One other thing that could work (with better clarity) is resuming the black back plane, then
-set the red emphasis bit (this will brighten all reds and dampen all others by degrees of non-redness)
-let inactive marks have colour $07 or $08 (depending on how much you want the marks to be faint)
-adjust the yellow buttons to $28 (which has a really nice warm yellow when red bit is set)

Pros:
-you don't need dither or flicker
-better playfield clarity
-less colour monotony.

Cons:
-You need to detect or manually set PAL/NTSC region since they swapped the R and G bits for the PAL version.
-Rare variant systems and consoles that have been hacked by enthusiats to have an rgb output (also rare) will look different*. But it's still playable.


I think this techique is probably the least invasive to your original expression if you can get a region detection in. It can also be combined with the brownish red backplane if you want better colour distinction yet prefer the backplane to have some colour.

The dithering is just there because i didn't change it from my last mockup. To the left is using colour $07 (a bit darker than the casing), and to the right is using $08 (markedly darker than the casing but also noticably colder - i think it looks quite nice that way personally).

Attachment:
redemphasis.bmp
redemphasis.bmp [ 360.05 KiB | Viewed 490 times ]

Last edit:
The new "darker than 06" property through the red bit could perhaps be used for shading on the plastic shell or edge smoothing of the same, even if the minimalist approach is nice on its own.

_________________
http://www.frankengraphics.com - personal NES blog


Last edited by FrankenGraphics on Sat Dec 29, 2018 8:54 am, edited 3 times in total.

Top
 Profile  
 
 Post subject: Re: Split Second
PostPosted: Sat Dec 29, 2018 8:32 am 
Offline
User avatar

Joined: Thu Mar 31, 2016 11:15 am
Posts: 467
Might be neat to have an option where you hold the controller sideways (vertical). It would resemble holding the original game.


Top
 Profile  
 
 Post subject: Re: Split Second
PostPosted: Sat Dec 29, 2018 10:22 pm 
Offline

Joined: Sun Jan 14, 2018 7:50 pm
Posts: 9
The good news is that it was pretty easy to change the "clear_board" method to produce an off-colored board in color $07 instead of drawing an all black board. It looks pretty good as is - don't think I will need the alternating horizontal lines method or dithering this time around.

The bad news is that if I really go through with this... I'll have to re-write code in each of the 8 games and it would require me to upgrade to NROM 256 :( . For example, see in the screen shot how there is black around the ball and the space ship. The off-colored board gets erased when you move the ship around. Same thing with the other games. Would definitely like to try. But not sure if I will have the time in January. Will keep the group posted with any updates. Thanks for all the good suggestions!


Attachments:
split_second_007.png
split_second_007.png [ 3.55 KiB | Viewed 420 times ]
Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 21 posts ]  Go to page 1, 2  Next

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group