Light gun guide
If you've ever been in a video game arcade before it's almost guaranteed you've seen a specially large cabinet featuring a fake “light” gun which could be used to aim at a screen displaying the game, one example being Terminator 2: Judgment Day. Thanks to the efforts of various developers and hardware manufacturers, it is now possible to bring that experience to the home using Batocera! This also includes the various home ports of such light gun games such as the infamous Duck Hunt.
Once the light guns are connected, a crosshair will appear on the screen:
The game list will also indicate which games are light gun compatible with a small theme-specific icon next to the name (this can be optionally disabled):
You might come across few games that are not gun games with the light gun icon anyway in Batocera v35. These games have optional light gun support for an easter egg, specific scene, mini-game, etc. They are not configured automatically by the system. However, it is possible to manually configure them if you know what you are doing.
Light gun comparison
So first and foremost a light gun is needed, possibly multiple if intending on doing multiplayer (be careful of having enough physical space for both collision avoidance and tracking). Various light guns have entered the market and each offer their own advantages and disadvantages. If not specified, the light gun is compatible with all displays. Click the light gun to go to its section.
All prices are subject to differ based on local availability and are only estimates; listed in USD.
Light gun | Tracking method | Precision | Connectivity | Estimated price | Notes |
---|---|---|---|---|---|
Direct Wiimote gun with IR bar![]() | Infrared![]() | ★★★★☆ | Bluetooth | $10-20 second-hand Wiimote + $3-$10 IR bar | Need to have a powered IR sensor bar, but is far more accurate than using the Dolphinbar. Also, the Wiimote itself is wireless (most other light guns are wired). It is possible to convert the Mayflash Dolphinbar into a regular IR sensor bar with a firmware update, to use it as if though it were just a regular IR bar (this disables the Dolphinbar's Bluetooth connection, the Wiimote must be connected to a different device). |
Mayflash Dolphinbar with Wiimote gun![]() | Infrared![]() | ★☆☆☆☆ | Connect Dolphinbar to machine via USB cable, then Wiimotes to Dolphinbar via Bluetooth | $10-20 second-hand Wiimote + $35 Dolphinbar | Works universally across machines and Wiimotes, but tends to jitter. No calibration possible, crosshair is mandatory. This is the only option on v34 and lower. Also, the Wiimote itself is wireless (most other light guns are wired). |
Namco GunCon2/G-Con2![]() | Cathode ray timing![]() | ★★★★★ | Composite/component cable | $25-$50 second-hand, low availability | Limited to analogue displays which supports composite/component input. This cannot be used on a modern digital display. |
GunCon3![]() | Infrared | | USB cable | | Larger displays require more physical distance (or wide/fish lens). Fully supported since v38. |
Ultimarc Aimtrak![]() | Infrared![]() | ★★★☆☆ | USB cable (370 cm) | $95 (w/o recoil)/$120 (w/ recoil) | Has calibration issues, requiring multiple attempts before it will apply. |
AE Lightgun![]() | Infrared | ★★★☆☆ | USB cable (290 cm) | $125 | Requires at least nine feet/three metres of space to use. Has calibration issues, requiring multiple attempts before it will apply. |
Sinden Lightgun![]() | White border on display | ★★★★☆ | USB cable (480 cm) | $100 (w/o recoil)/$160 (w/ recoil) | Recoil can optionally be disabled. Requires shrinking the game screen to display the white borders. Has limitations on how many guns can be used per USB hub. |
GUN4IR![]() | Infrared![]() | ★★★★★ | USB cable | $80 (DIY)/$200 (pre-assembled) | Larger displays require more physical distance (or wide/fish lens). Fully supported since v36. |
SAMCO light gun![]() | ★★★★☆ | USB cable | | |
|
Fusion Lightgun![]() | Infrared | | USB cable | | |
Global calibration
When a light gun is connected, a light gun symbol will appear in place of the controller activity icons (if that is enabled and the theme supports it). In addition, a new menu item will appear in the CONTROLLERS & BLUETOOTH SETTINGS menu specific to the light guns that are currently connected. This can be used to adjust settings specific to that light gun.
Depending on the light gun, global calibration may be required. All global calibration can be performed at any time, even during gameplay, however this sort of calibration will always be for global calibration (it is not saved per-game, it's only needed to be done once). Refer to the section relevant to your light gun below for instructions.
It is recommended to have one proper controller pad connected in addition for each light gun connected, in order to access commands or press buttons unavailable on the light gun itself (the latter of which requires one controller per light gun). Each controller connect corresponds to one light gun each.
Each controller corresponds to each light gun in player order. So for instance, if player 2's light gun is missing a coin button ([SELECT]
), then this can be pressed on player 2's controller to activate that light gun's coin button.
Direct Wiimote gun with IR bar
The Wii was revolutionary for its motion-based controls when it released back in 2006. This technology can now be used to emulate a light gun in Batocera, useful if you happen to have an old Wiimote and sensor bar laying around that is unused (though for convenience, buying a USB-powered sensor bar may be necessary). This is recommended over using the Mayflash Dolphinbar as the direct connection has far superior accuracy.
This is a special mode for the Wiimote when connected to Batocera. This will be referred to as the Wiimote gun from now on. Requires Batocera v35 or higher.
Most third-party remotes won't work as they don't respect the correct bluetooth connection process, requiring the Mayflash Dolphinbar Bluetooth module.
The Wiimote's face buttons have no function in Batocera v35, however this was fixed in Batocera v36.
Direct Wiimote gun setup
Set up the powered IR bar by taping over one side with solid tape and positioning the remaining LED at the bottom/top center of the display. Counter-intuitively, this setup works best when only one IR LED is visible (otherwise the cursor on-screen may “jump” when aiming at the edges).
Connect the Wiimote directly as a regular Bluetooth device. A notification will appear indicating that the Wiimote has connected in its gun mode, with a little light gun icon appearing (if the theme supports it). Once connected, press and hold the [Home]
button for three seconds. A target will appear in the center of the screen, aim the Wiimote at it from your neutral shooting position and press [B]
. Then a target will appear at the top-left; aim at that and press [B]
again.
If the second target cannot be shot at, move further away from the display and repeat the process from the start. It may also help to put the IR bar above the monitor instead of below.
Dolphin can emulate the pairing function of the emulated Wii system, allowing for direct connections to the Wiimote. This is independent of what Wiimote gun settings are used in EmulationStation.
Mayflash Dolphinbar
The Mayflash Dolphinbar is a third-party accessory that was initially designed to allow Wiimotes to be used as a cursor for PCs, or to allow for direct passthrough of the Wiimote to the Dolphin emulator (hence the colloquial name). Batocera can use it to emulate a light gun.
Unlike the direct Wiimote connection method, modes 1 and 2 do not utilize any special Wiimote gun mode in EmulationStation to function, instead the Dolphinbar itself emulates being a mouse and keyboard to the machine. When in these modes, it does not allow for global calibration, meaning that it will not likely match your display one-to-one (just like the original Wii did). It is also the only available option for light gun play on v34 and lower.
Certain third-party remotes that don't work over native Bluetooth may work with the Dolphinbar, as it uses its own Bluetooth stack separate from the host machine.
Until recently, the Mayflash Dolphinbar could not be used as a regular IR sensor bar if intending to use the direct Wiimote connection method since the LEDs shut down after some inactivity if no Wiimote is connected to it. A firmware update from Mayflash is required to unlock a new mode by pressing and holding [MODE]
on the Dolphinbar (as shown in this short tutorial). The LEDs will remain powered on for 4 hours before shutting down. It is possible to directly connect a Wiimote to the bar to use it regularly though.
Dolphin can emulate the pairing function of the emulated Wii system, allowing for direct connections to the Wiimote. This is independent of what Wiimote gun settings are used in EmulationStation.
Mayflash Dolphinbar setup
The Mayflash Dolphinbar requires manual action, compared to other solutions which automate most of the process. Because of this, it has its own page.
Namco GunCon 2
The Namco GunCon (known as G-Con in Europe) is a PlayStation peripheral first released in 1994, with the GunCon 2 for the PlayStation 2 following it up in 2001. If you have a GunCon 2 and a compatible analogue TV, you may be able to utilise it with Batocera. This cannot be used on a modern digital display. Requires Batocera v36 or higher.
The GunCon 3 is not compatible as it has no driver support yet.
Namco GunCon 2 setup
Create a sh file inside the ports folder
/userdata/roms/ports/GunCon2_Calibration.sh
The calibration script must be marked as executable with the chmod +x
command:
chmod +x /userdata/roms/ports/GunCon2_Calibration.sh
- GunCon2_Calibration.sh
#!/bin/bash xrandr --output $(xrandr | grep -o '.* connected' | sed 's/ connected//') --gamma 1:1:1 --brightness 2.0 guncon2_calibrate.sh xrandr --output $(xrandr | grep -o '.* connected' | sed 's/ connected//') --gamma 1:1:1 --brightness 1.0
- The first line will increase the brightness via xrand
- The second line will launch the calibration script via switchres
- The third line will set the brightness back to default once the script exits.
Calibration How To
You only need to do a first calibration once.
- Start the calibration by pressing the gun trigger.
- Follow the onscreen instructions and aim at all the 4 circles with the cross in the middle.
- Try to be as exact as possible.
- The result will not be perfect even if you aimed exactly in the middle using the GunCon2's crosshair.
- This is normal..
- Exit the script and save the settings by pressing A or B
Micro Calibrations in-game
- Button C + D-pad left/right → decrease x-min → apply if your gun is out on left of the screen
- Button C + D-pad up/down → increase x-max → apply if your gun is out on right of the screen
Ultimarc AimTrak
The Ultimarc Aimtrak comes with its own IR bar which can be mounted on the top of or at the bottom of the display, much like the Wiimote. Requires Batocera v35 or higher.
Ultimarc AimTrak setup
Connect both the light gun and the IR bar via USB. Then, hold main trigger for five seconds to launch the global calibration process. Shoot the top-left, top-right and bottom-center targets as they appear.
The calibration information is saved to the gun itself, so a recalibration may be required if moving to a different display.
Ultimarc AimTrak recoil
If using a recoil model, a separate power supply is required. This is not bundled with the light gun. More info can be found on its store page. Scroll to Recoil Power Requirement (Guns with recoil option only)
section.
To quote AimTrak's documentation:
“The recoil power is routed via the connecting cable and the power supply needs to have a connector with outer diameter of 5.5mm and inner of 2.1mm. The required voltage is 24-36 Volts. The power supply needs to have the following maximum specs:
24 volts 4 Amps, or 36V 3 Amps.
DO NOT use a supply with a current capability of greater than 4 amps as the mechanism relies on the current-limiting feature on the supply to prevent overload. If using two or more guns you will need one supply per gun. The center pin of the connector is positive. Outer barrel negative.
We have tested this 3A supply from an Ebay vendor and it gives stronger recoil than some 4A supplies: http://www.ebay.co.uk/itm/-/262181938884 Here is an Ebay USA link: https://www.ebay.com/itm/224253662140 The pictures below show the cable connection and an example supply. This type of power supply is often available on Ebay.”
AE Lightgun
The AE Lightgun comes with its own IR bar which can be mounted on the top of or at the bottom of the display, much like the Wiimote and Ultimarc AimTrak. Requires Batocera v35 or higher.
AE Lightgun setup
Connect both the light gun and the IR bar via USB. Then, press the button in front of the main trigger to launch the global calibration process. Shoot the middle, top-right and bottom-left targets as they appear.
Sinden Lightgun
The Sinden Lightgun is a light gun which uses a regular camera looking at a white border to perform its tracking. Batocera will automatically enable a white border when the Sinden Lightgun is connected, as well as shrinking the content of the games to accomodate for this. Requires Batocera v35 or higher.
A hardware bug prevents the use of multiple Sinden Lightguns on a single USB hub on some boards. Computers will typically use a single hub for groups of the same ports accessed via the IO panel. The best way around this is to plug one light gun into the front facing ports, and another into the IO panel. If your machine has a mixture of USB 2.0 (black tongue) and USB 3.0 (blue tongue) ports, they will usually have separate hubs.
Sinden Lightgun setup
Connect the USB cable to the machine. Then hold left on its D-pad for five seconds. Shoot the center of the screen. Calibration is complete.
Sinden Lightgun settings
Sinden Lightguns offer the following options in CONTROLLER & BLUETOOTH SETTINGS → SINDEN GUN SETTINGS
- BORDER SIZE: Thin, medium or big. By default, the medium one is enabled (the size may differ depending on the emulator).
- BORDER MODE: Select when to display the border.
- NORMAL: Always shown in EmulationStation and in game (default)
- IN GAME ONLY: Only shown when playing a light gun game.
- HIDDEN: Disable, useful if using your own bezels with their drawn border.
- BORDER COLOR: Change the color of the border either in white (default), red, green or blue.
- CAMERA CONTRAST: Adapt the camera contrast to your setup (daytime/bright, default, dim display/evening)
- CAMERA BRIGHTNESS: Adapt the camera brightness to your setup (daytime/bright, default, dim display/evening)
- CAMERA EXPOSURE: Adjust the camera exposure to your setup (useful for projector/crt)
- RECOIL: Adjust the behaviour and strength of the force-feedback when holding down the trigger.
- No recoil: No force-feedback at all.
- Gun: Recoil, delay, then rapid recoil until trigger is released.
- Quiet gun: Same as “Gun”, but less intensity.
- Machine gun: Rapid recoil until the trigger is released.
- Quiet machine gun: Same as “Gun machine”, but less intensity.
GUN4IR
GUN4IR setup
For the time being, any custom and manual settings must be done inside Windows with GUN4IR tool and burned into the light gun.
If you have the calibration button, press it and shoot all targets in turn.
Emulator support
A table showing which emulators and cores support light guns (must be switched manually for systems using a default core not compatible with light guns).
System | Emulator | Gun support | Crosshair ? | Multi-guns ? | Notes |
---|---|---|---|---|---|
3do | retroarch/opera | v35+ | ✔ | ✘ | Multiplayer unsupported for now |
amstradcpc | retroarch/cap32 | v37+ | ✔ | Supported but not out of the box | |
arcade | mame | v35+ | ✔ | ✔ | |
retroarch/mame | ✘ | ||||
retroarch/mame2003 | v35+ | ✔ | ✔ | ||
retroarch/mame2010 | ✘ | ||||
retroarch/fbneo | v35+ | ✔ | ✔ | ||
atari800 | mame | ✘ | |||
atari2600 | retroarch/stella | v35+ | ✘ | ✔ | |
atari7800 | mame | ✘ | |||
atomiswave | retroarch/flycast | v35+ | ✔ | ✔ | |
flycast | v35+ | ✔ | ✘ | Not out of the box, multiplayer unsupported for now | |
c64 | libretro/vice_x64 | v35+ | ✔ | ||
vice/x64 | v35+ | ✔ | |||
daphne | hypseus | v35+ | ✔ | ✘ | |
dreamcast | retroarch/flycast | v35+ | ✔ | ✔ | |
redream | v35+ | ✔ | ✘ | ||
flycast | v35+ | ✔ | ✘ | Multiplayer unsupported for now | |
gx4000 | retroarch/cap32 | v37+ | ✔ | Supported but not out of the box | |
master system | retroarch/genesisplusgx | v35+ | ✔ | | ~1) |
megadrive | retroarch/genesisplusgx | v35+ | ✔ | ✘ | |
model2 | model2emu | v35+ | ✔ | ✘ | Multiplayer unsupported for now |
model3 | supermodel | v35+ | ✔ | v37+ | |
naomi | flycast | v35+ | ✔ | ✘ | Multiplayer unsupported for now |
retroarch/flycast | v35+ | ✔ | ✔ | ||
namco2x6 | Play! | v38+ | ✘ | ✘ | Namco 2×6 emulation is very early (v38+) |
nes | retroarch/nestopia | v35+ | ✔ | ||
retroarch/fceumm | v35+ | ✔ | |||
retroarch/mesen | v35+ | ✘ | |||
psx | duckstation | v35+ | ✔ | ✘ | Multiplayer unsupported for now |
retroarch/mednafenpsx | v35+ | ✘ | ✘ | Only works with software renderer | |
retroarch/PCSXrearmed | v35+ | ✘ | ✔ | ||
retroarch/swanstation | v35+ | v38+ | ✘ | ||
ps2 | PCSX2 | v37+ | v38+ | v37+ | |
retroarch/PCSX2 | ✘ | ||||
ps3 | RPCS3 | v36+ | ✘ | ✔ | PS Move emulation is very early |
saturn | retroarch/beetle-saturn | v35+ | ✔ | ✔ | |
retroarch/kronos | ✘ | ||||
segacd | retroarch/picodrive | ✘ | |||
retroarch/genesisplusgx | v35+ | ✔ | |||
snes | retroarch/snes9x_next | ✘ | |||
retroarch/snes9x | v35+ | ✔ | | ~2) | |
retroarch/mesen-s | v35+ | ✘ | |||
retroarch/bsnes | v35+ | ✘ | |||
steam | steam | v35+ | ✘ | ||
wii | dolphin | v36+ | ✔ | ✔ | |
windows(wine) | wine/lutris | Untested | ✘ | ||
wine/proton | v35+ | ✘ | |||
xbox | xemu | ✘ | |||
zxspectrum | retroarch/fuse | ✘ |
Games which are light gun compatible will belong to the light gun genre in EmulationStation. Some themes support showing this tag to make it easier to quickly identify which games are light gun games. It is also possible to enable the light gun category as a selectable system.
Button mapping (WIP)
Emulators buttons mapping
Each light gun has its own button code when pressed. This code is translated to a global code in Batocera. When triggered, the global code will be translated into the emulator to a specific command. In the future, it will be possible to customize the mapping.
For example: when pressing the physical MINUS
button on the Wiimote, it triggers the button event KEY_PREVIOUS
, which is translated to the global code event BTN_1
in Batocera, which activates the Coins
value in Naomi and MAME arcade games.
Global code | lr-snes9x | lr-genesisplusgx | lr-beetle-saturn | lr-pcsx_rearmed | lr-fbneo | lr-flycast | PCSX2 | RPCS3 | MAME | Dolphin/Wii | model2emu | Supermodel |
---|---|---|---|---|---|---|---|---|---|---|---|---|
BTN_LEFT | FIRE | TRIGGER | TRIGGER | TRIGGER | TRIGGER | TRIGGER | Trigger | T | TRIGGER | B | TRIGGER | TRIGGER |
BTN_RIGHT | CURSOR | 1 | RELOAD | A | SECONDARY | SECONDARY/B | C | MOVE (∼) | SECONDARY | A | RELOAD | RELOAD |
BTN_MIDDLE | TURBO | 2 | START | B | START | START | A | START | START | PLUS | COIN | COIN |
BTN_1 | PAUSE | PAUSE | COIN | COIN | B | CROSS (X) | COIN | MINUS | START | EVENT/START | ||
BTN_2 | Recalibrate shot | CIRCLE (O) | 1 | |||||||||
BTN_3 | Start | 2 | ||||||||||
BTN_4 | Select | HOME | ||||||||||
BTN_5 | D-Pad Up | D-Pad Up | TRIANGLE (△) | D-Pad/Up | ||||||||
BTN_6 | D-Pad Down | D-Pad Down | SQUARE (□) | D-Pad/Down | ||||||||
BTN_7 | D-Pad Left | D-Pad Left | SELECT | D-Pad/Left | ||||||||
BTN_8 | D-Pad Right | D-Pad Right | D-Pad/Right |
Default global mapping
Global code | Wiigun btn | Wiigun code | Sinden btn | Sinden code | GUN4IR btn | GUN4IR code | AimTrack btn | AimTrack code | AElightgun btn | AElightgun code | Dolphinbar btn | Dolphinbar code | GunCon2 btn | GunCon2 code |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
BTN_LEFT | B | BTN_EAST | Trigger | BTN_LEFT | Trigger | BTN_LEFT | Trigger | BTN_LEFT | Trigger | BTN_LEFT | B | BTN_LEFT | Trigger | BTN_LEFT |
BTN_RIGHT | A | BTN_SOUTH | Pump/Front left | BTN_RIGHT | Offscreen/A/C | BTN_RIGHT | Right side | BTN_RIGHT | Front left | BTN_RIGHT | A | BTN_RIGHT | C | BTN_C |
BTN_MIDDLE | PLUS | KEY_NEXT | Back left | BTN_MIDDLE | B | BTN_MIDDLE | Left side | BTN_MIDDLE | 1 | BTN_MIDDLE | A | BTN_RIGHT | ||
BTN_1 | MINUS | KEY_PREVIOUS | Back right | KEY_2 | START | KEY_1 | 2 | BTN_1 | B | BTN_MIDDLE | ||||
BTN_2 | 1 | BTN_1 | Front right | KEY_1 | SELECT | KEY_5 | 3 | BTN_2 | SELECT | KEY_5 | ||||
BTN_3 | 2 | BTN_2 | 4 | BTN_3 | START | KEY_1 | ||||||||
BTN_4 | HOME | BTN_MODE | 5 | BTN_4 | ||||||||||
BTN_5 | ↑ | KEY_UP | ↑ | KEY_UP | ↑ | KEY_UP | Back 1 | KEY_UP | ↑ | KEY_UP | ||||
BTN_6 | ↓ | KEY_DOWN | ↓ | KEY_DOWN | ↓ | KEY_DOWN | Back 2 | KEY_DOWN | ↓ | KEY_DOWN | ||||
BTN_7 | ← | KEY_LEFT | ← | KEY_LEFT | ← | KEY_LEFT | ← | KEY_LEFT | ||||||
BTN_8 | → | KEY_RIGHT | → | KEY_RIGHT | → | KEY_RIGHT | → | KEY_RIGHT |
Per-game testing spreadsheet
A list of tested light gun games (and any notes that pertain to them specifically) can be found on its own spreadsheet.
Beta testing, bug-finding and workarounds are welcomed on the Discord channel #lightguns
or on the mega-issue report.
Per-emulator notes
Although most light gun games will be plug and play, certain titles/emulators require extra actions (typically calibration in the emulated game itself). These are limitations of the software, but will be automated in the future for games that require it.
3DO (lr-opera)
In-game recalibration is required, located in the game menu options. This is different per-game. This only needs to be done once.
Arcade (general)
Arcade gun games don't need recalibration. If you want to nonetheless, this is done in the service menus of the game once launched. This only needs to be done once, even if switching light guns later.
For most games, press either [F1]
or [F2]
on the keyboard to access the service menu specific to the game. Some games may require additional keys to be held while pressing the service keys (eg. Point Blank requires pressing [9]
while holding [F2]
). Navigate the menus by repeatedly pressing [F1]
or [F2]
. The calibration process is different per-game.
Example game with screenshots. Multiple if possible.
Flycast
Flycast arcade games are already calibrated out of the box. However, it is still possible to recalibrate them, if you wish to do so.
Launch the game and complete its calibration process by opening the service menu ( which button?). This is done on a per-game basis, and the exact process is different per-game.
Screenshots. Example game calibration as well.
libretro: flycast
Flycast arcade games are already calibrated out of the box. However, it is still possible to recalibrate them. To do so, you need to enable the service menu.
- Open the Quick Menu with
[HOTKEY]
+.
- Go to Options → (
finish this sequence) and enable Allow Naomi service Buttons.
- Exit the emulator.
This only needs to be done once ( confirm)
Then, for each game:
- Launch the game.
- Press in
[L3]
or[R3]
on the controller (or[F1]
or[F2]
key) to open the service menu. - Navigate (
how?) to light gun calibration.
For Atomiswave, once the ROM is launched:
- Open Quick Menu with
[HOTKEY]
+.
- Go to Controls → Port 1 → Device type.
- Change it from Light Gun to Arcade Stick.
- Close he Quick Menu and press
L3
to bring the ROM menu. - Navigate to Test Mode with
L3
and select it withR3
. - Navigate and select I/O TEST.
- Open Quick Menu once again and change the Device Type back to Light Gun and close the Quick Menu.
- Pull the trigger and calibrate.
- Once done, exit the calibration menu with trigger, open the Quick Menu and change Device Type back to Arcade Stick.
- Navigate to exit the ROM menu.
- Once back in the game, open Quick Menu for the last time and change the Device Type back to Light Gun.
Example game calibration with screenshots.
libretro: mame
The light gun buttons must be mapped in RetroArch's input menu first. ( which input menu? there's two…) This will be fixed in the future. It is recommended to use MAME standalone or libretro: mame078plus
MAME
A few games have an offscreen reload system which does not work well with the Wiimote. The system can be forced to perform a manual reload action with a press of the primary button (in the Wiimote's case, [A]
):
- While in the MAME gamelist, press
[SELECT]
. Then go to ADVANCED SYSTEM SETTINGS. - Go to OFF-SCREEN RELOAD and set it to “ON”.
Hopefully, this issue will be fixed in future versions such that offscreen reloading works out of the box with the Wiimote.
Redream
Configure the emulator first (controller to Lightgun, map missing buttons) ( how? step-by-step)
Commodore 64
Commodore 64 games were released in various mediums. It was very common for all tape ROMs (TAP files) light gun games to also feature a joystick version on the other side of the tape. In order to use light guns, the light gun version of the game is needed. Disk images usually support both.
Model 2 (model2emu)
By default, the crosshair is on in Batocera from v35 to v37. This crosshair does not follow where the light gun is actually pointing.
To disable it, open /SHARE/saves/model2/model2emu/EMULATOR.ini
and search for the line DrawCross = 1
. Change the value to 0
and save the file.
In Batocera v35 to v37, the default bezels are broken for the Sinden Lightgun for this emulator. This can be worked around:
- If it is not done yet, run for the first time a model2 rom to download the required files.
- Download the Model 2 Sinden Bezel Pack.
- Open the archive file and extract
artwork
andscripts
folders from either 720p or 1080p into/userdata/saves/model2/model2emu
. Overwrite existing files if prompted to do so. - Play!
This is fixed in Batocera since v38.
If the game's video resolution is changed (such as changing display or by using the “video mode” setting), per-game recalibration is necessary for this system. This can be done by opening the service menu with the [F2]
key. Navigate to () with
[F1]
, and then press [F2]
again to enter. Perform the calibration and then ().
Model 3 (Supermodel)
Supermodel comes precalibrated, but can be recalibrated. Press either [5]
or [7]
on the keyboard to access the service menu specific to the game. Navigate the menus by repeatedly pressing [6]
or [8]
. The calibration process is different per-game.
Example game with screenshots. Multiple if possible.
PSX (all)
All PSX emulators are only compatible with GunCon ROMs (with exception to libretro: mednafen, which should be compatible with all ROMs but a bug prevents the use of any light guns), so any non-GunCon ROMs require the Nuvee patch in order to function with light guns in the emulators: https://forums.pcsx2.net/Thread-Nuvee-PS1-PS2-input-plugin-supporting-lightguns-by-Shalma. Instructions are in the .7z file, respectively for each patchable ROM.
Otherwise, light gun games with justifiers are playable with libretro: mednafen psx
core, but need to have the following settings adjusted:
- Open RetroArch quick menu with
[HOTKEY]
+ - Select Core Options
- Change Renderer (Restart Required) to “Software”
- Go back and select Controls option
- In Port # controls change the Device Type to “Justifier”
- Restart the game in the RetroArch quick menu
Area 51 has no known working patch.
Saturn (only libretro: beetle-saturn)
In-game recalibration is required, located in the game menu options. This is different per-game. This only needs to be done once.
SNES
The Justifier controller type does not work in libretro: mesen-s and libretro: bsnes, rendering Lethal Enforcers unplayable with these cores.
A note about the controller type option
Veteran users may recall the controller type option in the advanced system settings for each system needing to be set to a particular light gun (specific to that system) in order to play light gun games. As of v35, this is no longer necessary, as Batocera will automatically use the appropriate controller type if a light gun is connected. The crosshair option will also be automatically disabled for the light guns - except if you play with the Mayflash Dolphinbar, which will be automatically enabled.
Two new options have been added to the global game options:
- USE GUNS: The magic that enables all of this to be configured automatically.
- SHOW LIGHTGUN CROSSHAIRS: Opt to manually show the crosshairs (perhaps to assist with aiming in general), manually remove the crosshairs or let Batocera decide for you.
Troubleshooting
Wiimote issues
I can't aim at the upper-left target! I've moved as far back as I can
The Wiimote works by sending a video feed of its IR camera to the machine. This sensor is very poor, and can fail to see the IR LED if too far away. So, there's a “sweet spot” for each display where you are both far enough away to see the IR bar when aiming at the extreme corner opposite the IR bar, while still being close enough for the IR camera of the Wiimote to pick it up.
To debug this to get an accurate reading, connect via SSH and run the following:
xwiishow 1
This will show a video feed of the IR camera in the upper-right of the SSH session:
To visualize what this information represents, imagine this being a flipped version of the position being aimed at on the display:
But I'm not using a Wiimote!
Make sure there are no reflective surfaces or other obstructions that can interfere with the visual. If placing the LED on a flat surface like the top of the entertainment unit, ensure it is as close to the edge as possible to make sure it's not obscured by its edge when aiming from a lower position (you may want to prop up the IR bar on some rubber stoppers).
My Wiimote is appearing as a regular controller instead of a light gun
First, ensure you are running Batocera v35 or higher.
Otherwise, ensure that CONTROLLER & BLUETOOTH SETTINGS → WIIMOTE GUN SETTINGS → MODE and set it to “GUN”.
My recoil isn't working
Replug the light gun or change recoil settings.
My second Sinden crosshair is stuck upper-left corner
Avoid using a USB hub when connecting both guns. Use different USB speed port for each (ex.: USB 2.0/USB 3.0) or different pair (ex.: one in front of the PC, one in the back). If using a Raspberry Pi, make sure you have enough power voltage.
A reboot might be necessary if hot plugged in.
RPi4:
Plug your first sinden in USB3 port.
Wait 10s.
Plug your second sinden in USB2 port.
Wait 10s.
Steam Deck dock: Most issues are fixed with a good quality SDCard and the official Steam Deck dock with good amount of power voltage.
My aiming accuracy in certain games is much worse than others
Some games offer a recalibration menu in-game. Use that to work around such issues. This will be different per-game of course.
Arcade games typically require the use of the service menu, refer to the exceptions section above.
I'm having another issue
Check out the mega-issue report, it's probably already been reported.
If having issues with ROM loading itself, check out the generic troubleshooting page.
- emulators/lightgun_games.txt
- Last modified: 5 days ago
- by tovarichtch