User Tools

Site Tools


alt_mode

Differences

This shows you the differences between two versions of the page.


alt_mode [2021/05/25 18:15] (current) – created pinupadmin
Line 1: Line 1:
 +====== PinUP Popper Alt-Mode Option ======
 +
 +Starting in v1.4 there's an easy method to allow one-wheel (one game) to have an alternate launch/run mode.
 +
 +How it works is that for each game in GamesManager you can specifiy in the "Alternate Run Modes" field a list of comma separated values that the Front-End will display inside the GamesMenu. So on the front-end you can start the table directly which will make the altmode value empty, or you can press the **Menu select key**   __"//See Controller setup//"__   (bringinup that games menu with all other options), and you will see each Alt-Mode Launch option as a separate wheel.
 +
 +----
 +
 +<font inherit/inherit;;#27ae60;;inherit>Also, by default the launch icons will be the default 'Launch' wheel.\\
 +if you'd like to use your own wheel for an altmode. Then do the following:</font>
 +
 +<font inherit/inherit;;#27ae60;;inherit>Global Settings/Script add a new custom option: **useAltWheels=1**</font>
 +
 +<font inherit/inherit;;#27ae60;;inherit>then make a wheel.png named exactly same as altmode.\\
 +So if one of your altmodes is "classic" then create/copy classic.png\\
 +into the POPMEDIA/default/system folder.</font>
 +
 +----
 +
 +==== Pinball FX3 ====
 +
 +This new optional variable for individual games presents alternative launch modes selectable from within Popper. Here are a few examples of how this can be used with a few different emulators:
 +
 +Then in launch script you can do things depending on the value of [ALTMODE]. best to see example below for FX3.
 +
 +**AltRunModes:** For each of your FX3 tables, you want to put in the Alternate Run Modes : classic,hotseat2,hotseat3,hotseat4
 +
 +Then in Popper, instead of directly starting the wheel, you press the "Menu Select Key" to get to the game menu and launch the Alt-Mode Wheel from there.
 +
 +You need to change your FX3 Launch script to something like this: remember this is just an example, you will need to keep your dmdext and other commands from before.
 +<code>
 +
 +START "" "[STARTDIR]Launch\VPXSTARTER.exe" 5 10 20 "Pinball FX3"
 +
 +SET ALTPARAM=
 +if "[ALTMODE]"=="classic"  (SET ALTPARAM=-class )
 +if "[ALTMODE]"=="hotseat2" (SET ALTPARAM=-hotseat_2 )
 +if "[ALTMODE]"=="hotseat3" (SET ALTPARAM=-hotseat_3 )
 +if "[ALTMODE]"=="hotseat4" (SET ALTPARAM=-hotseat_4 )
 +
 +START "" "[DIREMU]\steam.exe" -applaunch 442120 %ALTPARAM% -table_[GAMENAME]
 +
 +</code>
 +
 +==== Visual Pinball ====
 +
 +AltRunMode origsound: launches VP tables with internal rom sounds, as an alternative to altsound/pinsound default
 +
 +<code>
 +Launch script:
 +
 +if "[ALTMODE]"=="origsound" (
 +    REG ADD "HKCU\Software\Freeware\Visual PinMame\[?ROM?]" /v sound_mode /t REG_DWORD /d 0 /f
 +    REG ADD "HKCU\Software\Freeware\Visual PinMame\[?ROM?]" /v resampling_quality /t REG_DWORD /d 0 /f
 +)
 +
 +Close script:
 +REM Reset sound mode
 +IF "[ALTMODE]"=="origsound" (
 +    REG ADD "HKCU\Software\Freeware\Visual PinMame\[?ROM?]" /v resampling_quality /t REG_DWORD /d 1 /f
 +    IF "[CUSTOM1]"=="pinsound" (
 +                REG ADD "HKCU\Software\Freeware\Visual PinMame\[?ROM?]" /v sound_mode /t REG_DWORD /d 2 /f
 +    )
 +    IF "[CUSTOM1]"=="altsound" (
 +                REG ADD "HKCU\Software\Freeware\Visual PinMame\[?ROM?]" /v sound_mode /t REG_DWORD /d 1 /f
 +    )
 +)
 +
 +</code>
 +
 +AltRunMode origdmd: launches VP tables with default DMD settings (monochrome, orange)
 +
 +<code>
 +launch script:
 +if "[ALTMODE]"=="origdmd" (
 +    REG ADD "HKCU\Software\Freeware\Visual PinMame\[?ROM?]" /v dmd_colorize /t REG_DWORD /d 0 /f
 +)
 +
 +Close script:
 +if "[ALTMODE]"=="origdmd" (
 +    REG ADD "HKCU\Software\Freeware\Visual PinMame\[?ROM?]" /v dmd_colorize /t REG_DWORD /d 1 /f
 +)
 +
 +</code>
 +
 +AltRunMode modBG: launches alternative backglass file for a given table. If the backglass requires scoring to be moved to DMD for an SS table (eg. Robocop Fantasy BG), it does so.
 +
 +<code>
 +Launch script:
 +if "[ALTMODE]"=="modBG" (
 +    copy "[DIRGAME]\[GAMENAME].directb2s.modBG" "[DIRGAME]\[GAMENAME].directb2s" /Y
 +    timeout /T 1
 +     IF "[?GameType?]"=="SSDMD" (
 +    REG ADD "HKCU\Software\Freeware\Visual PinMame\[?ROM?]" /v showpindmd /t REG_DWORD /d 1 /f
 +     )
 +)
 +
 +Close script:
 +REM Reset Mods adjustments
 +if "[ALTMODE]"=="modBG" (
 +    timeout /T 1
 +    copy "[DIRGAME]\[GAMENAME].directb2s.origBG" "[DIRGAME]\[GAMENAME].directb2s" /Y
 +    IF "[?GameType?]"=="SSDMD" (
 +    REG ADD "HKCU\Software\Freeware\Visual PinMame\[?ROM?]" /v showpindmd /t REG_DWORD /d 0 /f
 +    )
 +)
 +
 +</code>
 +
 +==== Future Pinball: ====
 +
 +**AltRunMode**: "static" launches Future Pinball/BAM, but disables head tracking. Usefull when playing with spectators. Note: as of 1/2/19 this functionality is still in Beta. Look for a BAM release past this date.
 +<code>
 +START "" "[STARTDIR]Launch\VPXSTARTER.exe" 5 5 20 "Future Pinball"
 +rem          This will load Future Pinball and your selected table using BAM (Better Arcade Mode).
 +if "[ALTMODE]"=="static" (
 +    START "" "[DIREMU]\FPLoader.exe" /open "[GAMEFULLNAME]" /play /exit /arcaderender /STAYINRAM /disableheadtracking
 +    )
 +else (
 +    START "" "[DIREMU]\FPLoader.exe" /open "[GAMEFULLNAME]" /play /exit /arcaderender /STAYINRAM
 +)
 +
 +</code>
 +
 +===== Prevent auto exit table: =====
 +
 +if you'd like to launch a table and prevent the system to automatically exit to popper (eg for a Jukebox table, single table demo?party, etc). you can add the "noexit" AltRunMode and launch the nosleep.exe tool before launching the table
 +
 +Launch script:
 +
 +<file>
 +if "[ALTMODE]"=="noexit" (
 +start "" "c:\Pinball\PinupSystem\Support Files\nosleep.exe" 30000 u
 +)
 +
 +</file>
 +
 +Close script:
 +
 +<file>
 +if "[ALTMODE]"=="noexit" (
 +Taskkill.exe /IM "nosleep.exe" /F
 +)
 +
 +</file>
 +
 +grab nosleep here: [[https://www.nailbuster.com/uploads/nosleep.zip|https://www.nailbuster.com/uploads/nosleep.zip]]
 +
 +nosleep.exe source code: AHK
 +
 +#Persistent\\
 +SetTimer, PressTheKey, %1%\\
 +Return
 +
 +PressTheKey:\\
 +Send, {%2%}\\
 +Return
 +
 +First parameter is a timer in miliseconds (should be smaller than your autoexit value), second parameter is a alowercase character not used by your emulators or Popper
 +