[RESOLU]Pinball FX3

Ici se règle les problèmes concernant la configuration des différents émulateurs.

Modérateurs : Porko, Modérateurs

Avatar de l’utilisateur
heroscool
Passionné
Passionné
Messages : 197
Inscription : 21 mars 2017 - 17:50
Localisation : 16200 Merignac
A remercié : 2 fois
A été remercié : 17 fois

Pinball FX3

Message par heroscool » 16 mars 2018 - 18:07

Salut à tous,

Je voulais savoir si quelqu'un avait réussi à intégrer Pinball FX3 dans Hyperspin ?
J'ai déjà Pinball FX2 (j'ai réussi à paramétrer de manière a ce que chaque table se lance automatiquement. mais pas pour Pinball FX3. Voici le module que j'ai :

Code : Tout sélectionner

MEmu := "Pinball FX3"
MEmuV := "N/A"
MURL := ["http://www.pinballfx.com/"]
MAuthor := ["djvj","bleasby"]
MVersion := "2.1.3"
MCRC := "3C64C037"
iCRC := "489E4B10"
MID := "635244873683327777"
MSystem := ["Pinball FX3","Pinball"]
;----------------------------------------------------------------------------
; Notes:
; If launching as a Steam game:
; When setting this up in RocketLauncherUI under the global emulators tab, make sure to select it as a Virtual Emulator. Also no rom extensions, executable, or rom paths need to be defined. You can put an extension of pxp if you want RLUI audit to work however. It will not affect launching.
; Set Skip Checks to "Rom and Emu" when using this module as roms do not exist.
;
; If not launching through Steam:
; Add this as any other standard emulator and define the PInball FX2.exe as your executable, but still select Virtual Emulator as you do not need rom extensions or rom paths
; Set Skip Checks to "Rom and Emu" when using this module as roms do not exist.
;
; When setting this up in RocketLauncherUI under the global emulators tab, make sure to set rom extensions to pxp
; Also make your rom path the Pinball FX2\data_steam folder if you want audit to show green
;
; DMD (Dot Matrix Display)
; The module will support and hide the window components of detached DMD
; To see it, you must have a 2nd monitor connected as an extension of your desktop, and placement will be on that monitor
; To Detach:
; Run Pinball FX2 manually, and goto Help & Options -> Settings -> Video
; Set Dot Matrix Size to Off, and close Pinball FX2
; The module will automatically create the dotmatrix.cfg file in the same folder of the "Pinball FX2.exe" (your installation folder) for you
; Edit the module's settings in RLUI to customize the DMD size and placement of this window
;----------------------------------------------------------------------------
StartModule()
BezelGUI()
FadeInStart()

; primaryExe := new Emulator(emuPath . "\" . executable)					; instantiate emulator executable object
primaryExe := new Emulator(If executable ? emuPath . "\" . executable : "Pinball FX3.exe")	; instantiate emulator executable object
emuPrimaryWindow := new Window(new WindowTitle("","PxWindowClass"))				; instantiate primary emulator window object
emuDMDWindow := new Window(new WindowTitle("Pinball FX3 DotMatrix","PxWindowClass"))

fullscreen := moduleIni.Read("Settings", "Fullscreen","true",,1)
fullscreenWidth := moduleIni.Read("Settings", "Fullscreen_Width",A_ScreenWidth,,1)
fullscreenHeight := moduleIni.Read("Settings", "Fullscreen_Height",A_ScreenHeight,,1)
externalDMD := moduleIni.Read("Settings", "External_DMD","false",,1)
dmdX := moduleIni.Read("Settings", "DMD_X",A_ScreenWidth,,1)
dmdY := moduleIni.Read("Settings", "DMD_Y",0,,1)
dmdW := moduleIni.Read("Settings", "DMD_Width",0,,1)
dmdH := moduleIni.Read("Settings", "DMD_Height",0,,1)

BezelStart()

fullscreen := fullscreen = "true" ? " -fullscreen" : " -borderless"	; -window is also supported but not used in this module
resolution := " -resolution" . fullscreenWidth . "x" . fullscreenHeight

If (externalDMD = "true") {
	RLLog.Info("Module - Updating external DMD window placement values")
	If (!executable && !steamPath)
		GetSteamPath()
	dotmatrixCFGFile := new File(If executable ? emuPath . "\dotmatrix.cfg" : steamPath . "\SteamApps\common\Pinball FX3\dotmatrix.cfg")
	If !dotmatrixCFGFile.Exist()
		dotmatrixCFGFile.Append()	; create a new blank file if one does not exist
	RLLog.Info("Module - Using this dotmatrix.cfg: " . dotmatrixCFGFile.FileFullPath)
	dotmatrixCFG := LoadProperties(dotmatrixCFGFile.FileFullPath)
	WriteProperty(dotmatrixCFG, "x", dmdX, 1)
	WriteProperty(dotmatrixCFG, "y", dmdY, 1)
	WriteProperty(dotmatrixCFG, "width", dmdW, 1)
	WriteProperty(dotmatrixCFG, "height", dmdH, 1)
	SaveProperties(dotmatrixCFGFile.FileFullPath, dotmatrixCFG)	
}

hideEmuObj := Object(pinballTitleClass,1)	; Hide_Emu will hide these windows. 0 = will never unhide, 1 = will unhide later
HideAppStart(hideEmuObj,hideEmu)

If executable {
	RLLog.Info("Module - Running Pinball FX3 as a stand alone game and not through Steam as an executable was defined.")
	primaryExe.Run("  -table_" . romName . fullscreen . resolution)
} Else {
	RLLog.Info("Module - Running Pinball FX3 through Steam.")
	Steam(226980,,romName . fullscreen . resolution)
}

emuPrimaryWindow.Wait()
emuPrimaryWindow.WaitActive()

; Attempt to hide window components of the detached DMD
If (externalDMD = "true") {
	Gui +LastFound
	hWnd := WinExist()
	DllCall("RegisterShellHookWindow", UInt,hWnd)
	MsgNum := DllCall("RegisterWindowMessage", Str,"SHELLHOOK")
	OnMessage(MsgNum, "ShellMessage")
}

BezelDraw()
HideAppEnd(hideEmuObj,hideEmu)
FadeInExit()
primaryExe.Process("WaitClose")
; Process("WaitClose", "Pinball FX3.exe")
BezelExit()
FadeOutExit()
ExitModule()
    

ShellMessage(wParam, lParam) {
	RLLog.Debug("Module - DMD external window - " . wParam)
	If (wParam = 1)
		If emuDMDWindow.Exist()
		{
			emuDMDWindow.RemoveBorder()				; hide title bar
			emuDMDWindow.Set("Style", "-0x800000")	; hide thin-line border
			emuDMDWindow.Set("Style", "-0x400000")	; hide dialog frame
			; emuDMDWindow.Set("Style", "-0xC00000")	; hide title bar
			; emuDMDWindow.Set("Style", "-0x40000")	; hide thickframe/sizebox
			; emuDMDWindow.Move(0,0,1920,1080)
		} 
}

CloseProcess:
	FadeOutStart()
	emuPrimaryWindow.Close()
Return
Pour le moment avec ce module ça lance le jeux uniquement
Merci d'avance pour votre aide
Dernière modification par heroscool le 21 août 2018 - 18:26, modifié 1 fois.

Avatar de l’utilisateur
heroscool
Passionné
Passionné
Messages : 197
Inscription : 21 mars 2017 - 17:50
Localisation : 16200 Merignac
A remercié : 2 fois
A été remercié : 17 fois

Re: Pinball FX3

Message par heroscool » 04 mai 2018 - 10:36

j'ai du nouveau, normalement avec ce fichier ahk ça fonctionne :

Code : Tout sélectionner

MEmu := "Pinball FX3"
MEmuV := "N/A"
MURL := ["http://www.pinballfx.com/"]
MAuthor := ["djvj","bleasby"]
MVersion := "2.1.3"
MCRC := ""
iCRC := ""
MID := ""
MSystem := ["Pinball FX3","Pinball"]
;----------------------------------------------------------------------------
; Notes:
; If launching as a Steam game:
; When setting this up in RocketLauncherUI under the global emulators tab, make sure to select it as a Virtual Emulator. Also no rom extensions, executable, or rom paths need to be defined. You can put an extension of pxp if you want RLUI audit to work however. It will not affect launching.
; Set Skip Checks to "Rom and Emu" when using this module as roms do not exist.
;
; If not launching through Steam:
; Add this as any other standard emulator and define the Pinball FX3.exe as your executable, but still select Virtual Emulator as you do not need rom extensions or rom paths
; Set Skip Checks to "Rom and Emu" when using this module as roms do not exist.
;
; When setting this up in RocketLauncherUI under the global emulators tab, make sure to set rom extensions to pxp
; Also make your rom path the Pinball FX3\data_steam folder if you want audit to show green
;
; DMD (Dot Matrix Display)
; The module will support and hide the window components of detached DMD
; To see it, you must have a 2nd monitor connected as an extension of your desktop, and placement will be on that monitor
; To Detach:
; Run Pinball FX3 manually, and goto Help & Options -> Settings -> Video
; Set Dot Matrix Size to Off, and close Pinball FX3
; The module will automatically create the dotmatrix.cfg file in the same folder of the "Pinball FX3.exe" (your installation folder) for you
; Edit the module's settings in RLUI to customize the DMD size and placement of this window
;----------------------------------------------------------------------------
StartModule()
BezelGUI()
FadeInStart()

primaryExe := new Emulator(If executable ? emuPath . "\" . executable : "Pinball FX3.exe")	; instantiate emulator executable object
emuPrimaryWindow := new Window(new WindowTitle("","PxWindowClass"))				; instantiate primary emulator window object
emuDMDWindow := new Window(new WindowTitle("Pinball FX3 DotMatrix","PxWindowClass"))

fullscreen := moduleIni.Read("Settings", "Fullscreen","true",,1)
fullscreenWidth := moduleIni.Read("Settings", "Fullscreen_Width",A_ScreenWidth,,1)
fullscreenHeight := moduleIni.Read("Settings", "Fullscreen_Height",A_ScreenHeight,,1)
externalDMD := moduleIni.Read("Settings", "External_DMD","false",,1)
dmdX := moduleIni.Read("Settings", "DMD_X",A_ScreenWidth,,1)
dmdY := moduleIni.Read("Settings", "DMD_Y",0,,1)
dmdW := moduleIni.Read("Settings", "DMD_Width",0,,1)
dmdH := moduleIni.Read("Settings", "DMD_Height",0,,1)
offlineMode := moduleIni.Read("Settings", "Offline_Mode","false",,1)

BezelStart()

fullscreen := fullscreen = "true" ? " -fullscreen" : " -borderless"	; -window is also supported but not used in this module
resolution := " -resolution" . fullscreenWidth . "x" . fullscreenHeight
offlineMode := offlineMode = "true" ? " -offline" : ""

If (externalDMD = "true") {
	RLLog.Info("Module - Updating external DMD window placement values")
	If (!executable && !steamPath)
		GetSteamPath()
	dotmatrixCFGFile := new File(If executable ? emuPath . "\dotmatrix.cfg" : steamPath . "\SteamApps\common\Pinball FX3\dotmatrix.cfg")
	If !dotmatrixCFGFile.Exist()
		dotmatrixCFGFile.Append()	; create a new blank file if one does not exist
	RLLog.Info("Module - Using this dotmatrix.cfg: " . dotmatrixCFGFile.FileFullPath)
	dotmatrixCFG := LoadProperties(dotmatrixCFGFile.FileFullPath)
	WriteProperty(dotmatrixCFG, "x", dmdX, 1)
	WriteProperty(dotmatrixCFG, "y", dmdY, 1)
	WriteProperty(dotmatrixCFG, "width", dmdW, 1)
	WriteProperty(dotmatrixCFG, "height", dmdH, 1)
	SaveProperties(dotmatrixCFGFile.FileFullPath, dotmatrixCFG)	
}

hideEmuObj := Object(pinballTitleClass,1)	; Hide_Emu will hide these windows. 0 = will never unhide, 1 = will unhide later
HideAppStart(hideEmuObj,hideEmu)

If executable {
	RLLog.Info("Module - Running Pinball FX3 as a stand alone game and not through Steam as an executable was defined.")
	primaryExe.Run("  -table_" . romName . fullscreen . resolution . offlineMode)
} Else {
	RLLog.Info("Module - Running Pinball FX3 through Steam.")
	Steam(442120,,"-table_" . romName . fullscreen . resolution . offlineMode)
}

emuPrimaryWindow.Wait()
emuPrimaryWindow.WaitActive()

; Attempt to hide window components of the detached DMD
If (externalDMD = "true") {
	Gui +LastFound
	hWnd := WinExist()
	DllCall("RegisterShellHookWindow", UInt,hWnd)
	MsgNum := DllCall("RegisterWindowMessage", Str,"SHELLHOOK")
	OnMessage(MsgNum, "ShellMessage")
}

BezelDraw()
HideAppEnd(hideEmuObj,hideEmu)
FadeInExit()
primaryExe.Process("WaitClose")
BezelExit()
FadeOutExit()
ExitModule()
    

ShellMessage(wParam, lParam) {
	RLLog.Debug("Module - DMD external window - " . wParam)
	If (wParam = 1)
		If emuDMDWindow.Exist()
		{
			emuDMDWindow.RemoveBorder()				; hide title bar
			emuDMDWindow.Set("Style", "-0x800000")	; hide thin-line border
			emuDMDWindow.Set("Style", "-0x400000")	; hide dialog frame
			; emuDMDWindow.Set("Style", "-0xC00000")	; hide title bar
			; emuDMDWindow.Set("Style", "-0x40000")	; hide thickframe/sizebox
			; emuDMDWindow.Move(0,0,1920,1080)
		} 
}

CloseProcess:
	FadeOutStart()
	emuPrimaryWindow.Close()
Return
fichier ISD

Code : Tout sélectionner

<?xml version="1.0" encoding="UTF-8"?>
<INISCHEMA>
	<INIFILES>
		<INIFILE name="%ModuleName%" required="false">
			<INITYPE>Module</INITYPE>
			<SECTIONS>
				<SECTION name="settings" required="false">
					<SECTIONTYPE>Global</SECTIONTYPE>
					<KEYS>
						<KEY name="Fullscreen" required="false" nullable="false">
							<KEYTYPE>Boolean</KEYTYPE>
							<DESCRIPTION>Enables/Disables Fullscreen. Borderless windowed mode is used when fullscreen is disabled.</DESCRIPTION>
						</KEY>
						<KEY name="Fullscreen_Width" required="false" nullable="false">
							<KEYTYPE>Integer</KEYTYPE>
							<DESCRIPTION>The width you want to force in fullscreen mode. If an unsupported width is used, the default will be used, which is your monitor's width.</DESCRIPTION>
						</KEY>
						<KEY name="Fullscreen_Height" required="false" nullable="false">
							<KEYTYPE>Integer</KEYTYPE>
							<DESCRIPTION>The height you want to force in fullscreen mode. If an unsupported height is used, the default will be used, which is your monitor's height.</DESCRIPTION>
						</KEY>
						<KEY name="External_DMD" required="false" nullable="false">
							<KEYTYPE>Boolean</KEYTYPE>
							<DESCRIPTION>Turning this on will allow the module to hide the window components of the external DMD. To customize placement on the screen, set the other DMD settings in this window. Default is false.</DESCRIPTION>
						</KEY>
						<KEY name="DMD_X" required="false" nullable="true">
							<KEYTYPE>Integer</KEYTYPE>
							<DESCRIPTION>The X location you want the DMD to appear at. Default is the right side of your primary monitor. So if your desktop width is 1920, this value will default to 1920.</DESCRIPTION>
						</KEY>
						<KEY name="DMD_Y" required="false" nullable="true">
							<KEYTYPE>Integer</KEYTYPE>
							<DESCRIPTION>The Y location you want the DMD to appear at.</DESCRIPTION>
						</KEY>
						<KEY name="DMD_Width" required="false" nullable="true">
							<KEYTYPE>Integer</KEYTYPE>
							<DESCRIPTION>The horizontal width of the DMD.</DESCRIPTION>
						</KEY>
						<KEY name="DMD_Height" required="false" nullable="true">
							<KEYTYPE>Integer</KEYTYPE>
							<DESCRIPTION>The vertical height of the DMD.</DESCRIPTION>
						</KEY>
						<KEY name="Offline_Mode" required="false" nullable="false">
							<KEYTYPE>Boolean</KEYTYPE>
							<DESCRIPTION>Disables the server check at startup for machines without an internet connection. Default is false.</DESCRIPTION>
						</KEY>
					</KEYS>
				</SECTION>
			</SECTIONS>
		</INIFILE>
	</INIFILES>
</INISCHEMA>
il faut demander la clé pour activer le mode arcade cabinet ici

ça permet d'activer le mode commande et donc de charger une table directement.

Avatar de l’utilisateur
Stamba
noob
noob
Messages : 2
Inscription : 23 mai 2016 - 19:00
A remercié : 1 fois
A été remercié : 1 fois

Re: Pinball FX3

Message par Stamba » 21 août 2018 - 12:14

Salut !

As-tu reçu rapidement le code d'activation pour utiliser le mode cabinet ?

Merci !

Avatar de l’utilisateur
heroscool
Passionné
Passionné
Messages : 197
Inscription : 21 mars 2017 - 17:50
Localisation : 16200 Merignac
A remercié : 2 fois
A été remercié : 17 fois

Re: Pinball FX3

Message par heroscool » 21 août 2018 - 15:34

Bonjour,

Oui en 48h je l'avais.

Avatar de l’utilisateur
Bliberche
Apprenti
Apprenti
Messages : 11
Inscription : 09 juin 2017 - 01:03
A remercié : 4 fois

Re: [RESOLU]Pinball FX3

Message par Bliberche » 20 sept. 2019 - 13:52

Salut salut tous le monde j'espère être au bonne endroit 😜💪 je me suis intégré pinball fx3 niquel bon reste à rajouté les nouvelle table mai ça c'est du peaufinage 😁
Quand je lance pinball fx3 avec steam il se connecte bien à internet mai quand je le lance avec HP il ne se connecte pas..
Avec vous une solution à ça 👀👀
Bisou bisou

Répondre

Revenir à « Aide Configuration d'Emulateurs »