Difficult-to-emulate lightgun game: Top Hunter by Asder

Discuss emulation of the Nintendo Entertainment System and Famicom.

Moderator: Moderators

Post Reply
NewRisingSun
Posts: 1510
Joined: Thu May 19, 2005 11:30 am

Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by NewRisingSun »

All emulators that have lightgun support can run Duck Hunt and Hogan's Alley, but there are some tough-to-emulate light gun games from unlicensed publishers that pose a greater challenge.

The most difficult seems to be a game called "Top Hunter", which only exists on the Asder 20-in-1 multicart, although an extracted mapper 0 ROM image of the game can be found on the net for emulators that do not bother to implement this particular multicart mapper (which only exists as a UNIF board mapper so far). Only FCEUX with its Old PPU emulation seems to be able to run the game past the title screen, all other emulators that I have tried fail, including FCEUX with its New PPU emulation. The game has been reported to work well on actual hardware.
User avatar
rainwarrior
Posts: 8732
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by rainwarrior »

Top hunter seems to do the following:

1. Full white screen with a timed loop to identify the first scanline where the zapper registers. (Y detection)
2. Series of narrow white blobs moving horizontally across the detected Y position. (X detection)

Image demonstrating:
top_hunter_hit_detection.png
top_hunter_hit_detection.png (6.44 KiB) Viewed 7183 times
I'm noticing that with New PPU on, the Y position is detected a little bit lower than with Old PPU. Even in Old PPU mode the position is a bit low, but with New PPU the X detection pass is just too low for it to register.

I haven't looked into how FCEUX registers a zapper hit, but this seems to be the problem. Operation Wolf has a very similar detection scheme, but it appears to work because its Y detection isn't so low, so the difference doesn't cause a problem.
User avatar
rainwarrior
Posts: 8732
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by rainwarrior »

Both Old and New PPU seem to give very good Y tracking with tepples' zapper stuff in Action 53, though. Maybe Top Hunter does something exceptionally unusual?
zxbdragon
Posts: 498
Joined: Mon Dec 12, 2011 8:15 pm

Re: Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by zxbdragon »

20170726071747.png
20170726071740.png
0170726071754.png
lidnariq
Posts: 11432
Joined: Sun Apr 13, 2008 11:12 am

Re: Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by lidnariq »

So, playing a little bit around with Mesen's debugger...

I think it's an interaction of two "sorta" bugs, one in the game, and one in how most emulators implement the Zapper.
#1 The game draws the horizontal scans a couple scanlines below where the mouse is pointing. On hardware, the bit goes true a few scanlines after light is sensed, and so the game should scan for X position a few scanlines higher than it does.
#2 Many emulators only check the single pixel under the mouse cursor, instead of the comparatively large area that the Zapper actually sees.

So the two together mean that the game gets a Y coordinate in the first frame, and no X coordinate at all in the following six.
Sour
Posts: 891
Joined: Sun Feb 07, 2016 6:16 pm

Re: Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by Sour »

As far as I can tell, changing Mesen's code to check for any single "bright" pixel in a 3x3 or 5x5 grid around the mouse's position seems to fix the game (the targeting is kind of bad, but that might be the game's fault). Doing this makes most of the vertical/horizontal pattern tests in Zap Ruder behave more or less like a solid white block, though. I'd be curious to see how those patterns behave on an actual CRT+Zapper...
lidnariq
Posts: 11432
Joined: Sun Apr 13, 2008 11:12 am

Re: Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by lidnariq »

I guess I only have the subset of tests in A53v1, but I do have a CRT and Zapper. (I suspect other people will have both and the ability to run Zap Ruder v3 itself)

What specifically are you looking for?

Zap Ruder doesn't seem to contain a "focus size" test. I (or someone else) can probably figure out some way to make one?
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by tepples »

All Action 53 tests are in the cartridge as unused data. You could use a Game Genie code to change the ZapPing entry point to the main menu entry point.
Sour
Posts: 891
Joined: Sun Feb 07, 2016 6:16 pm

Re: Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by Sour »

I'm mostly curious how a zapper would behave on the thinner lines at a reasonable distance.
e.g can it actually pick up the light from those tiny bars? And does it just pick up the light from those bars no matter where you aim inside the pattern? If so, the vertical tracking in both tests would work despite aiming at the black portions of the pattern.

In that case, it would make sense to expand the tracking in Mesen to a ~5x5 grid, since that's pretty much how the tests behave with a 5x5 grid.
In contrast, at the moment (in emulators), as soon as you put the mouse into the black areas, the tracking arrows reset to their default position at the bottom of the screen (and I doubt the zapper itself is precise enough to do this unless you stick it to the screen of a 30" CRT..)
zxbdragon
Posts: 498
Joined: Mon Dec 12, 2011 8:15 pm

Re: Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by zxbdragon »

Sour wrote:I'm mostly curious how a zapper would behave on the thinner lines at a reasonable distance.
e.g can it actually pick up the light from those tiny bars? And does it just pick up the light from those bars no matter where you aim inside the pattern? If so, the vertical tracking in both tests would work despite aiming at the black portions of the pattern.

In that case, it would make sense to expand the tracking in Mesen to a ~5x5 grid, since that's pretty much how the tests behave with a 5x5 grid.
In contrast, at the moment (in emulators), as soon as you put the mouse into the black areas, the tracking arrows reset to their default position at the bottom of the screen (and I doubt the zapper itself is precise enough to do this unless you stick it to the screen of a 30" CRT..)

Mesen, The latest source code to compile successfully and run error. vs2015.

You use ~5x5 grid, Can choose 2 player ?
Sour
Posts: 891
Joined: Sun Feb 07, 2016 6:16 pm

Re: Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by Sour »

zxbdragon wrote:Mesen, The latest source code to compile successfully and run error. vs2015.
You use ~5x5 grid, Can choose 2 player ?
It's normal for it to crash at the moment - you will need to delete your settings.xml file to fix it.
The grid size is customizable - selecting a zapper in the input devices now enables the "Setup" button and lets you pick the radius (1x1, 3x3, 5x5 or 7x7). The radius setting is shared by all connected zappers.
zxbdragon
Posts: 498
Joined: Mon Dec 12, 2011 8:15 pm

Re: Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by zxbdragon »

Sour wrote:
zxbdragon wrote:Mesen, The latest source code to compile successfully and run error. vs2015.
You use ~5x5 grid, Can choose 2 player ?
It's normal for it to crash at the moment - you will need to delete your settings.xml file to fix it.
The grid size is customizable - selecting a zapper in the input devices now enables the "Setup" button and lets you pick the radius (1x1, 3x3, 5x5 or 7x7). The radius setting is shared by all connected zappers.
thank you ,delete setting.xml OK
fceux mouse right click,choose 2 Player mode.
Mesen right click no response?
Sour
Posts: 891
Joined: Sun Feb 07, 2016 6:16 pm

Re: Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by Sour »

zxbdragon wrote:fceux mouse right click,choose 2 Player mode.
Mesen right click no response?
Ah, I had to try it in the game to understand - I thought there was some option about 2-player zapper mode in the FCEUX right-click menu.

You can do the same in Mesen - you need to hold down the right button and then click the left button.
Basically while the right button is held, the zapper can't detect any light, and pressing the left button acts as it always does.
zxbdragon
Posts: 498
Joined: Mon Dec 12, 2011 8:15 pm

Re: Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by zxbdragon »

Sour wrote:
zxbdragon wrote:fceux mouse right click,choose 2 Player mode.
Mesen right click no response?
Ah, I had to try it in the game to understand - I thought there was some option about 2-player zapper mode in the FCEUX right-click menu.

You can do the same in Mesen - you need to hold down the right button and then click the left button.
Basically while the right button is held, the zapper can't detect any light, and pressing the left button acts as it always does.

fceux right button menu can be closed.
2017-08-04_10-51-23.jpg
If fceux is correct, then right-click should be able to select 2 p mode
natt
Posts: 76
Joined: Fri Oct 26, 2012 5:27 pm

Re: Difficult-to-emulate lightgun game: Top Hunter by Asder

Post by natt »

NewRisingSun wrote:All emulators that have lightgun support can run Duck Hunt and Hogan's Alley, but there are some tough-to-emulate light gun games from unlicensed publishers that pose a greater challenge.

The most difficult seems to be a game called "Top Hunter", which only exists on the Asder 20-in-1 multicart, although an extracted mapper 0 ROM image of the game can be found on the net for emulators that do not bother to implement this particular multicart mapper (which only exists as a UNIF board mapper so far). Only FCEUX with its Old PPU emulation seems to be able to run the game past the title screen, all other emulators that I have tried fail, including FCEUX with its New PPU emulation. The game has been reported to work well on actual hardware.
Works fine in bizhawk, and it doesn't do anything particularly special for lightgun...
Post Reply