Jump to content
SpesoftPinballXConvert-It

Recommended Posts

Success!  - I have Zaccaria tables launching from PinballX.    I have tested about 20 different tables and things are working great  for me.     I will probably do some more cleanup and improvements down the road but for now I am content.

My sample shows how to launch a table from each Zaccaria pinball table  type.

They have EM, SS, Retro, Remake and Award.      

I still need to go through and confirm all the table names for each and every table but I wanted to get this script out there for others to test so please as you add to PBX lets keep a running list of all the table names with the "group" they are under.

The key to using the script is in game manager make sure to put the correct table name in and most importantly the Type.    My scripts looks for EM,SS,RT,RM and AW.    The script will exit if you do not put the type in Game manager correctly.  ( I am converting the case to upper so EM, em, Em, eM are all valid)

EM=Electro Mag, SS=Solid State, RT=Retro, RM=Remake, AW=Award

 

Update: 12/1/18  -  There is a optional change you can make to your script if you normally leave your playfield in landscape mode and then rotate to portrait when playing Zacarria.     If your playfield is already in portrait then you will not need to modify this.    There is a parameter to Zaccaria to automatically rotate the screen. (Stopping the need to rotate it via a launch before/after script) 

Original line:


Run, "%SteamDirPath%\Steam.exe" -applaunch 444930 

 

Change to: 

Run, "%SteamDirPath%\Steam.exe" -applaunch 444930 -rotate right    (Or -rotate left depending on your configuration)

 

NoteThere will be one thing that needs to be changed in the LaunchZaccaria.ahk script.    On Line 17 you will need to update the directory/filename of your Zaccaria PBX database file.   Make sure to save your changes and compile again.

Line to edit:

FileRead, xmldata, C:\Pinball\PinballX\Databases\Zaccaria\Zaccaria.xml ;change to your zaccaria PBX database

 

PBX config for Zaccaria:

zac-settings.png

A single table from each "group" configured.

zac-game-list-manager.png


 

 

LaunchZaccaria.ahk

  • Like 3
  • Thanks 2

Share this post


Link to post
Share on other sites

Here are all the Zaccaria table descriptions,  names and types to add to Game list in PBX.    There is one award table that is locked still on my Steam so I am not sure about the name.    

Zaccaria_Tables.csv

 

Enjoy!

 

  • Like 1

Share this post


Link to post
Share on other sites

Awesome, glad people are giving it a try.   It's working great and I hacd a few others who said they are up and running.    

Share this post


Link to post
Share on other sites

I'd love to get this to work as well, but I have some issues. The game does start, but it doesn't go to the table (I only have Time Machine right now, to test things). PBX says it can't find the game.

Also, I have my 2nd screen set up to be on the right side of my 1st screen, so the backglass doesn't work either, since it needs to be on the left side for Zaccaria, but not for VP or FP. So I'd need a script to change that before launching, and changing it back afterwards. I figured I'm probably not the only one with this setup, so this might be helpful for a lot of people. Thank you.

Share this post


Link to post
Share on other sites

Upload your pinballx.ini and database file and zaccaria settings. Xml file.  Sounds like you config is off somehow. 

If you mean Zacacaris in game backglass there isn't anything I can really do script wise. 

I have a three monitors plus a real dmd on my system.  I only use 2 monitors for my cabinet but I have a 27" 4K monitor that I use on the PC for other stuff as a 3rd screen.    The 4K monitor would always set itself as monitor 1 and my playfield and backglass were 2 and 3.  With monitor 2 set as primary display.   This made the zaccaria backglass always display on monitor 1 no matter where I set the monitor positions in windows.  Unfortunately there is no options in zaccaria to define your second screen so your at windows mercy. 

It took me about 2 hours but after moving display cables around, deleting registry settings multiple times and countless reboots I finally got this problem fixed by getting the 4K playfield set to monitor 3.

Now my backglass works in zaccaria and I just had to quickly go back and change display settings for all VPX, VP9, TPA, etc

 

Share this post


Link to post
Share on other sites

There you go. Nevermind the screen setup, I figured that out.

So, if I press "Launch" on any of these tables in the Game Manager, first Game Manager says "Game not found", and than  the pop-up LaunchZaccaria.exe says "Invalid Table type: Valid types are SS,EM,RT,RM,AW".

If I try to launch the table from PinballX the game does start, but that's it.

Yeah... i got no idea why it doesn't work. Thanks a lot for having a look.

PinballX.ini

Zaccaria.xml

Share this post


Link to post
Share on other sites

@JammitNothing is jumping out at me on your Settings.Ini file or your Databse.XML.   I have a feeling it is probably because it can't find your PBX Zaccaria.XML file

Did you edit your LaunchZaccaria.AHK and confirm you are pointing to where it is stored on your system?    See underlined text below.    Look at line 17 and confirm that the script is pointing to the right directory/filename for your system.   That is the only line everyone will have to update for their system.

If not, edit the file and update the directory, recompile the file and I bet you will be good to go.

 

; Updated launcher for Zaccarai by GAH1068  10/16/18.     
; Modified from original Gigalula
; Tested with PBX V3.29
; Update path to your Zaccaria XML file as needed.   No other modification should be needed by default
;--------Run Before (Need to be compiled)----Start------

#SingleInstance force
SetTitleMatchMode 2
DetectHiddenWindows On
DetectHiddenText, On
; User inputs
SetWorkingDir %A_ScriptDir%

table = %1%
xml_table = %1%

FileRead, xmldata, C:\Pinball\PinballX\Databases\Zaccaria\Zaccaria.xml ;change to your zaccaria PBX database

Share this post


Link to post
Share on other sites

@GAH1068 Yeah, I did edit and double-check it, and it's definately right... besides, that would result in a different error-msg, right?

path.png

Share this post


Link to post
Share on other sites

Hmmmm, the error about the invalid type means that it isn't parsing out your zacarria PBX database to get the type. 

 

Two more things to try wouid be to make sure to run the launcher as Administrator.    Another is to delete you database file and create it again in game list manager. 

You should be able to run the launcher right from a command prompt too just to make sure it isn't something in PBX.   

Example:  LaunchZacaaria.Exe timemachine 

 

 

 

 

 

 

 

 

 

 

 

Share this post


Link to post
Share on other sites
11 minutes ago, GAH1068 said:

Hmmmm, the error about the invalid type means that it isn't parsing out your zacarria PBX database to get the type. 

 

Two more things to try wouid be to make sure to run the launcher as Administrator.    Another is to delete you database file and create it again in game list manager. 

You should be able to run the launcher right from a command prompt too just to make sure it isn't something in PBX.   

Example:  LaunchZacaaria.Exe timemachine 

 

 

 

 

 

 

 

 

 

 

 

Running the launcher from cmd works just fine, but also doesn't launch the table, just the game. I'm more concerned about Line 63, "Settings_File=%A_MyDocuments%\Zaccaria_Pinball\settings.xml", since I don't have that file anywhere on my system... ?

Share this post


Link to post
Share on other sites

That's the actual zaccaria game file that saves its Config and the file my script modifies to launch the table directly .   By default it is created in the documents folder in a directory called zaccaria_pinball.   Not sure why yours would not be there.  You can see if you can locate it elsewhere on your system and update the path here to point to it instead of it using the variable name. 

Share this post


Link to post
Share on other sites

I'm seeing some inconsistencies when starting games as you stated. Some start - some get to the screen, highlight the game selected from vp and then nothing else. I've been playing with the timing, i'll post if i find anything worth while

Share this post


Link to post
Share on other sites

@hawkeyez88 I was seeing the same thing.   I have made a few changes to the script so give this version a try.    One is to make sure the Zaccaria window is active and then set the mouse cursor on top of the Zaccaria logo.  Instead of sending an enter button press I have it send a left mouse click instead.   I also changed some of the delays in sending keys using the sleep command.   Things working reliably for me. I haven't had a table fail to start again now.

I kept having problems today where I could hear the beeps (rem'd out in the script by putting ; in front)  sending the keys but it wouldn't leave the opening menu.   I finally figured out if the mouse cursor wasn't on the logo things were working sporadically.   I am calling SetCursorPos to move the mouse to my playfield and then sending a mouse click instead of an Pressing enter.   

For the SetCursor position on MY cabinet.   This puts the mouse clear in the Zaccaria logo.   I am running 1080X1920 on my playfield and it is monitor 1.   You may have to change this value to suit your system.    You can easily create a new script with just the DLL("SetCursorPos..." line and test values and see where it goes on your system.   Once you get it dialed in you can update your Launcher .   The input is the X and Y coordinate.

 

Sleep, 15000

DllCall("SetCursorPos", int, 560, int, 920)  ; The first number is the X-coordinate and the second is the Y (relative to the screen).

WinActivate, ahk_class GLFW30
;SoundBeep, 440, 200 
MouseClick , left
Sleep, 600
;SoundBeep, 400, 200 
Send {Enter down}{Enter up}
Sleep, 600
;SoundBeep, 400, 200 
Send {Enter down}{Enter up}
;SoundBeep, 500, 200 

 

Share this post


Link to post
Share on other sites

Final version for tonight.    I really believe it is a timing issue with the way keypresses are being sent to Zacarria.    This version has launched 10 tables from PBX in a row without getting stuck after the opening  menu where the table is highlighted.

Based on your computer you may need to change these but hopefully this cleans things up a bit more and makes it more stable.   I am going to keep on seeing what else can be done.

 

 

  • Like 1

Share this post


Link to post
Share on other sites
2 minutes ago, GAH1068 said:

Final version for tonight.    I really believe it is a timing issue with the way keypresses are being sent to Zacarria.    This version has launched 10 tables from PBX in a row without getting stuck after the opening  menu where the table is highlighted.

Based on your computer you may need to change these but hopefully this cleans things up a bit more and makes it more stable.   I am going to keep on seeing what else can be done.

 

LaunchZaccaria.ahk

I'll keep beating this version up too - thanks for all of your work on this - this is beyond cool.

Share this post


Link to post
Share on other sites

Does anyone know what the heck the text on the bottom left of their tables are? Is there a way to get rid of it?

Share this post


Link to post
Share on other sites

Yes, it is high scores.  There is a menu screen to turn if off.   I believe it was the same one screen where you could choose if you wanted commas or periods in the score seperatorm.  There is also a good setting there to turn off a lot of the other onscreen menu items 

Share this post


Link to post
Share on other sites
42 minutes ago, GAH1068 said:

Final version for tonight.    I really believe it is a timing issue with the way keypresses are being sent to Zacarria.    This version has launched 10 tables from PBX in a row without getting stuck after the opening  menu where the table is highlighted.

Based on your computer you may need to change these but hopefully this cleans things up a bit more and makes it more stable.   I am going to keep on seeing what else can be done.

 

LaunchZaccaria.ahk

Thanks a lot for improve this!!!

Share this post


Link to post
Share on other sites
51 minutes ago, GAH1068 said:

Yes, it is high scores.  There is a menu screen to turn if off.   I believe it was the same one screen where you could choose if you wanted commas or periods in the score seperatorm.  There is also a good setting there to turn off a lot of the other onscreen menu items 

AHHH I see it now! Thanks!

Share this post


Link to post
Share on other sites
8 hours ago, GAH1068 said:

That's the actual zaccaria game file that saves its Config and the file my script modifies to launch the table directly .   By default it is created in the documents folder in a directory called zaccaria_pinball.   Not sure why yours would not be there.  You can see if you can locate it elsewhere on your system and update the path here to point to it instead of it using the variable name. 

Huh. I looked for it on a different pc where zaccaria is installed and it's right there. So the question is, why doesn't zaccaria create the file on my system, and if it's not able to, why doesn't it generate an error message. But I guess I'll just create the folder myself and take the files from the other pc, see if that works. Thanks again for the help.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×