Jump to content
Unfortunately we had to take download section back offline temporarily. We should have it working normally soon.

FPLaunch MOD: Pause and Loading screens...


samwyze

Recommended Posts

Yes I am using your newest Core.vbs. I haven't played with the timings but I will. Right now I have all my table scripts nudge sensitivity set to 0 so they don't tilt out. But even at that having less multiple nudges in a row will give a more realistic ball movement. Man I really need to get may cab up and running. I am close. Got the new hardware in late last night. Need to install the OS then copy my install folders over. :)

Link to comment
Share on other sites

what do you think is it better to close all these windows or to show them for user to click. not everybody has mouse on cab, or wants to see these nag messages

I think there should be an option to have error nag screens on or off, false or true, if thats at all possible, but always automatically get rid of the legal rom nag screen, if that makes any sense.

With the error screens, like you said , you might want to see what error comes up. Hitting enter gets rid of it anyway.

Link to comment
Share on other sites

yup, i think it will be that way - general errors that can happen i can't predict.

But for those standard nag screens i can get title, ahk class and close it with few keystrokes when they show up

Link to comment
Share on other sites

blitz for your taskbar visible in 20% tables i found this on autohotkey site:

When a window is activated immediately after the activation of some other window, task bar buttons might start flashing on some systems (depending on OS and settings). To prevent this, use #WinActivateForce.

Did you ever had this problem with old scripts?

If not then probably this part of the script is causing problems:

IfWinActive, Visual Pinball Player,, DMD ;Check if visual pinball is Ready

{

WinActivate, ahk_class TBackglass

WinActivate, ahk_class MAME

WinActivate, ahk_class VPPlayer

Break

}

This is in CreateLoadScreen: function, while loading screen is moving i'm waiting for vpplayer to load

after vpplayer is activated, backglass, mame and vpplayer are activated AGAIN and one right after another to make mame visible over backglass.

this could cause problems

you can try to put command #winactivateforce instead of every winactivate or put sleep 50 before every winactivate (and then recompile)

let me know if this helps

Neither the #winactivateforce or sleep 50 made a difference using FPLaunch 1.294. I did find something interesting though. I ran into another issue which was that the Future Pinball backglass was not showing up unless I Alt-Tab to it and even then it was inconsistent. I tried 6 difference Nvidia drivers (for my new GTX 460) and found one that actually fixed the problem (version 260.99). What is interesting is that the drivers also effect how FPLaunch functions. With the newer drivers (which breaks Future Pinball's backglass) the FPLaunch works for the new FP Pause functionality of showing the high scores and the blue Pause text. With the older driver (which solves the FP backglass problem) the FPLaunch Pause / High Score screen on FP does not work. What I see the high scores flash for a brief second then a black background with the blue Pause text. The Exit321 for FP does not work with any of the Nvidia drivers. As a result I have rolled back to FPLaunch 1.293. I can live with this if the Pause was instantaneous. Version 1.294 works good for VP. The taskbar still occasionally ends up on top and I see the desktop for a brief second when exiting tables. Also in both 1.294 and 1.293 when loading FP tables I see the blue rendering screen for about 10 seconds and then it flashes and goes through the full FP loading screen. I wasn't sure if I should still be seeing the original FP loading screen?

For now I am stuck using the Nvidia 260.99 driver as that is the only one that lets me use Future Pinball. I know a lot of others have run into this problem and I have posted the solution into a thread that was already started over on VP. My assumption is that the guys like me that are using Windows 7 and a GTX460 will be using the Nvidia driver version 260.99. Perhaps we can work to a solution for the Pause / High Score screen using that driver version.

Link to comment
Share on other sites

I will try to get backglass in focus with ahk script.

This seams easier then fixing printscreen - blackscreen problem.

What is it that 293 does better then 294? long press on exit key? I will look into this (check what change could cause long press to stop working)

Too bad that taskbar is still flashing.

For desktop flashing - i will check why it is happening (hyperpin should always be behind - so desktop should never appear).

Link to comment
Share on other sites

In 293 Pause in FP shows the HS (but it is a delayed pause which is a bit of a problem) and Exit321 works with FP.

In 294 Pause in FP ends with a black background and the blue Pause text (although it is an instantaneousness pause) and Exit321 does not work. The taskbar staying on top is less frequent.

How is the rendering table load screen suppose to work with FP? Should I still see the original FP rendering screen? With the inclusion of the FPLaunch blue rendering screen and still seeing and waiting for the original FP rendering screen it feels like my load time on FP tables has been doubled.

Thanks for your work on this.

Link to comment
Share on other sites

i was looking at the code and code for exit321 looks unchanged

however pause code is totally different cause only change in 294 was that pause had to be sent to fp first and then print screen, loading of that print screen and so on

this might cause this problem

about fp loading times - just like vp, fp has some time when it loads table from disk - this is where you see loading screen, it is like when you do open file from fp

before during this time you would see black screen or nothing, just HP window (you could even think that nothing is happening).

After that when table loads in FP - you need some time to run the table - this is like when you press F5 in fp. During this period blue loading screen is removed and you see fp loading screen.

as for this pause in 1.293 and in 1.294 - can you send me screenshots how pause looks like in one and the other, maybe from pictures i will get the idea what is happening

i will also try to find win7 machine to test this.

Edited by blur
Link to comment
Share on other sites

Here is a common error window I get when trying to exit FP using 294.

p><p>I don

Pause on:

293 I get a delayed Pause with screen flicker ending up with the original Future Pinball pause screen (high scores overlayed on the table).

294 I get an instant Pause but I see the original Future Pinball High Score screen for a 1/2 second then the whole playfield goes black then the blue FPLaunch Pause image is overlayed on the black background. The whole thing is fairly instantenous. Now, with the newest Nvidia drivers the Pause with High Score worked correctly. But unfortunetly the newest Nvidia driver would leave the Future Pinball table backglass in the background on load.

I hope that helps. Thanks again.

Link to comment
Share on other sites

This error could be helpful. I will check why it could happen.

I tested a little yesterday on windows 7 with ati 4850 and did not have any problems with exit 321 screen with 1.293 or 1.294.

I did notice however that sometimes on first run print screen is executed too slow so when print screen is done, fp window is long gone and screenshot shows desktop.

Looks like little bit more timing will have to be put in script.

For exit321 however since i don't get problems on any comp i will need someone with this problem and authotkey installed to do this:

  • in hyperpin dir create shortcut to fplaunch.ahk (alt + drag and drop)
  • open properties of this shortcut and add "Future Pinball" "2001_V200" to the end of command, so command should now be:

    ..path..fplaunch.ahk "Future Pinball" "2001_V200"



    name of the table has to be exact same as your fpt file name


  • when you get in game press esc and hold it for 5 seconds and release it
  • then press Alt-F4
  • this will close fp player, and give you fp editor and taskbar
  • on taskbar in tray find hotlaunch and double click on it, this will open autohotkey window
  • copy the entire text from this windows and put it here
  • here is example how it looks for me, when all is working:
    Script lines most recently executed (oldest first).  Press [F5] to refresh.  The seconds elapsed between a line and the one after it is in parentheses to the right (if not 0).  The bottommost line's elapsed time is the number of seconds since it executed.
    
    554: }
    570: LoopVal += 1
    571: }
    528: GetKeyState,state,%exitEmulatorKey%,P
    529: if state = D
    531: if (loopVal = 10)  
    542: if LoopVal = 40
    544: if LoopVal = 70
    546: Sleep,%fadespeed% (0.03)
    547: if (loopVal = 100)  
    554: }
    570: LoopVal += 1
    571: }
    528: GetKeyState,state,%exitEmulatorKey%,P
    529: if state = D
    531: if (loopVal = 10)  
    542: if LoopVal = 40
    544: if LoopVal = 70
    546: Sleep,%fadespeed% (0.03)
    ... parts removed
    529: if state = D
    531: if (loopVal = 10)  
    542: if LoopVal = 40
    544: if LoopVal = 70
    546: Sleep,%fadespeed% (0.03)
    547: if (loopVal = 100)  
    554: }
    570: LoopVal += 1
    571: }
    528: GetKeyState,state,%exitEmulatorKey%,P
    529: if state = D
    555: if (LoopVal < 10 && useExitAsPause = "true")  
    561: Loop,5
    562: Gui,%A_Index%: Destroy
    562: Gui,%A_Index%: Destroy
    562: Gui,%A_Index%: Destroy (0.03)
    562: Gui,%A_Index%: Destroy
    562: Gui,%A_Index%: Destroy
    563: WinActivate,Visual Pinball Player,,DMD (0.03)
    564: WinActivate,ahk_class FuturePinballOpenGL (0.11)
    565: }
    566: Transvalue = 0
    567: LoopVal = 0
    568: Break
    572: Return (19.73)
    323: if (Paused = 1)  
    325: WinActivate,ahk_class FuturePinballOpenGL (0.11)
    326: WinWaitActive,ahk_class FuturePinballOpenGL (0.11)
    327: Send,{Esc}
    328: WinWaitClose,ahk_class FuturePinballOpenGL (0.81)
    329: WinShow,ahk_class FuturePinball (0.11)
    330: WinRestore,ahk_class FuturePinball (0.13)
    331: WinActivate,ahk_class FuturePinball (0.11)
    332: WinWaitActive,ahk_class FuturePinball (0.11)
    333: SystemCursor("On")  
    616: if (OnOff = "Init" || OnOff = "I" || $ = "")  
    632: if (OnOff = 0 || OnOff = "Off" || $ = "h" &&  (OnOff < 0 || OnOff = "Toggle" || OnOff = "T"))  
    639: $ = h
    641: WinShow,ahk_class Shell_TrayWnd (0.11)
    642: WinShow,Start ahk_class Button
    643: }
    645: Loop,%c0%
    647: h_cursor := DllCall( "CopyImage", "uint",%$%%A_Index%, "uint",2, "int",0, "int",0, "uint",0 )
    648: DllCall( "SetSystemCursor", "uint",h_cursor, "uint",c%A_Index% )  
    649: }
    ... parts removed
    647: h_cursor := DllCall( "CopyImage", "uint",%$%%A_Index%, "uint",2, "int",0, "int",0, "uint",0 )
    648: DllCall( "SetSystemCursor", "uint",h_cursor, "uint",c%A_Index% )  
    649: }
    650: }
    334: WinShow,ahk_class Shell_TrayWnd (0.11)
    335: WinShow,Start ahk_class Button
    336: Suspend,On
    337: WinWait,ahk_class FuturePinballOpenGL (15.33)
    
    Press [F5] to refresh.


  • then in ahk window select menu: View - Variables and their content, again copy whole text and put here.
    example:
    Global Variables (alphabetical)
    --------------------------------------------------
    0[1 of 3]: 2
    1[14 of 63]: Future Pinball
    2[9 of 63]: 2001_V200
    DMD[0 of 0]:  
    emuPath[39 of 63]: D:\Dean\Games\Emulatori\Future Pinball\
    emuPathBackSlash[1 of 3]: \
    ending[0 of 0]:  
    ErrorLevel[1 of 3]: 0
    executable[18 of 63]: Future Pinball.exe
    Exit[0 of 0]:  
    exitEmulatorKey[3 of 3]: Esc
    exitEmulatorKey2[1 of 3]: 1
    exitEmulatorKey3[5 of 7]: Enter
    Exiting[1 of 3]: 0
    exitpic[10 of 63]: Exit_4.png
    exitScriptKey[5 of 7]: q & s
    fadespeed[2 of 3]: 25
    hExit[4 of 7]: 1011
    hideCursor[4 of 7]: true
    hideDesktop[4 of 7]: true
    hideTaskbar[4 of 7]: true
    hLoad[4 of 7]: 1011
    hLoadProgress[3 of 3]: 255
    hPause[1 of 3]: 0
    hyperini[54 of 63]: D:\Dean\Games\Emulatori\HyperPin\Settings\Settings.ini
    iniEmuPath[39 of 63]: D:\Dean\Games\Emulatori\Future Pinball\
    iniKeys[217 of 259]: exitScriptKey,exitEmulatorKey,hideCursor,toggleCursorKey,hid...
    iniTablePath[46 of 63]: D:\Dean\Games\Emulatori\Visual Pinball\Tables\
    Loading[0 of 0]:  
    loadpic[8 of 63]: 0x18095c
    loadspeed[3 of 3]: 250
    LoopVal[1 of 3]: 0
    Paused[1 of 3]: 0
    pauseFPKey[7 of 7]: RButton
    PausePic[8 of 63]: 0x19095c
    pauseVPinball[1 of 3]: p
    picDir[55 of 63]: D:\Dean\Games\Emulatori\HyperPin\Media\HyperPin\Images\
    PID[0 of 0]:  
    ProgBar[3 of 3]: 125
    romExtension[0 of 0]:  
    romFound[0 of 0]:  
    saveFPNeeded[0 of 0]:  
    saveFPTables[4 of 7]: true
    ScreenPic[0 of 0]:  
    state[1 of 3]: U
    systemName[14 of 63]: Future Pinball
    tableName[9 of 63]: 2001_V200
    tablePath[46 of 63]: D:\Dean\Games\Emulatori\Visual Pinball\Tables\
    tablePathBackSlash[1 of 3]: \
    toggleCursorKey[1 of 3]: t
    Transvalue[1 of 3]: 0
    useExitAsPause[4 of 7]: true
    useExitScreen[4 of 7]: true
    useLoadScreen[4 of 7]: true
    usePauseKey[4 of 7]: true
    wExit[3 of 3]: 253
    wLoad[3 of 3]: 253
    wLoadProgress[2 of 3]: 26
    wPause[1 of 3]: 0
    xecutable[0 of 0]:  
    xExit[3 of 3]: 714
    xLoad[3 of 3]: 714
    xLoadProgress[3 of 3]: 190
    xPause[3 of 3]: 840
    yExit[2 of 3]: 20
    yLoad[2 of 3]: 20
    yLoadProgress[3 of 3]: 378
    yPause[3 of 3]: 525
    


  • then View -> Hotkeys and Methods
    example:
    Type    Off?    Running    Name
    -------------------------------------------------------------------
    k-hook            q & s
    reg(no)            t
    k-hook            $*Esc
    k-hook            $*p
    k-hook            $*Pause
    k-hook        1    $!F4
    k-hook            $ScrollLock
    


  • and then get back to fp player with f5 or play, press Esc in FP for five seconds again, get back to this window (alt-f4) and now choose
    View - Key History and script info
    it is important that you get back to fp player first so that i can see esc (or e or your button for exit) key press and how it is interpreted, since only 40 newest keys are shown in here. You can put command
    #KeyHistory 500
    somewhere in the script to get more keys in history. Again copy this text and put it here
    example:
    Window: D:\Dean\Games\Emulatori\HyperPin\FPLaunch.ahk - AutoHotkey v1.0.48.05
    Keybd hook: yes
    Mouse hook: no
    Enabled Timers: 0 of 0 ()
    Interrupted threads: 1 (preempted: they will resume when the current thread finishes)
    Paused threads: 0 of 2 (2 layers)
    Modifiers (GetKeyState() now) = 
    Modifiers (Hook's Logical) = 
    Modifiers (Hook's Physical) = 
    Prefix key is down: no
    
    NOTE: To disable the key history shown below, add the line "#KeyHistory 0" anywhere in the script.  The same method can be used to change the size of the history buffer.  For example: #KeyHistory 100  (Default is 40, Max is 500)
    
    The oldest are listed first.  VK=Virtual Key, SC=Scan Code, Elapsed=Seconds since the previous event.  Types: h=Hook Hotkey, s=Suppressed (blocked), i=Ignored because it was generated by an AHK script, a=Artificial, #=Disabled via #IfWinActive/Exist.
    
    VK  SC    Type    Up/Dn    Elapsed    Key        Window
    -------------------------------------------------------------------------------------------------------------
    50  019    h    d    6.78    P                  Future Pinball - © 2008 BSP Software Design Solutions
    50  019    s    u    0.09    P                  
    50  019    h    d    1.55    P                  pauseScreen
    50  019    s    u    0.13    P                  Future Pinball - © 2008 BSP Software Design Solutions
    1B  001    h    d    3.14    Esc                
    1B  001    h    d    0.50    Esc                
    1B  001    h    d    0.03    Esc                
    1B  001    h    d    0.05    Esc                
    1B  001    h    d    0.03    Esc                
    1B  001    h    d    0.03    Esc                
    1B  001    h    d    0.03    Esc                
    1B  001    h    d    0.03    Esc                
    1B  001    h    d    0.03    Esc                FPLaunch.ahk
    1B  001    h    d    0.03    Esc                
    1B  001    h    d    0.03    Esc                
    1B  001    h    d    0.05    Esc                
    1B  001    h    d    0.03    Esc                
    1B  001    h    d    0.03    Esc                
    1B  001    h    d    0.03    Esc                
    1B  001    h    d    0.03    Esc                
    1B  001    h    d    0.03    Esc                
    1B  001    h    d    0.03    Esc                
    1B  001    h    d    0.03    Esc                
    1B  001    h    d    0.05    Esc                
    1B  001    h    d    0.03    Esc                
    1B  001    s    u    0.02    Esc                
    A4  038         d    3.58    Alt                Future Pinball - © 2008 BSP Software Design Solutions
    73  03E    h    d    0.30    F4                 
    73  03E    s    u    0.19    F4                 
    11  01D    i    d    0.03    Ctrl               
    11  01D    i    u    0.00    Ctrl               
    A4  038    i    u    0.00    Alt                
    1B  001    i    d    0.00    Esc                
    1B  001    i    u    0.00    Esc                
    11  01D    i    d    0.00    Ctrl               
    A4  038    i    d    0.00    Alt                
    11  01D    i    u    0.00    Ctrl               
    A4  038         u    0.02    Alt                
    A2  01D    i    d    0.00    Ctrl               
    A2  01D    i    u    0.00    Ctrl               
    Press [F5] to refresh.


  • press play to get back to fp and then exit from the game to get autohotkey and fp closed cleanly (if you just close fp editor - autohotkey will stay suspended in the tray - but you can close it manually)

Edited by blur
Link to comment
Share on other sites

Blur,

Check this out at vpforums:

http://www.vpforums.org/index.php?showtopic=12906

ever since I upgraded to VP911 I started experiencing bunch of issues. If you could include a capability of starting certain tables with VP9.08 similarly to what is described in the topic above, it would be simply awesome. Unfortunately it is way over my head, but it would be absolutely great to be able to do it. Pretty please look into this.

Thanks.

Link to comment
Share on other sites

Hi Guys,

Just wondering if it would be possible to also include the modded fplaunch that is need to run Rosve`s em active backglasses.

At the moment i have 2 fp launches - the one needed to play Rosve`s backglasses through Hyperpin, and the other one which specifies which version of vp to use ? At the moment I can use one or the other.

Cheers Buzz

Link to comment
Share on other sites

Hi,

just as some feedback, in that i have not had any error messages on my cab that runs win7 32bit.

And also have no issues with hi score screens, but do have taskbar appear for a split second sometimes but its not really an annoyance to me.

Thanks again for all the hard work!

Link to comment
Share on other sites

Tnx for info.

FYI just o a short note, what i was afraid of was true - samwyze lives in Cristchurch - city that was hit by major earthquake recently.

Luckily Sam and his family are ok, and house is still standing, he just got power yesterday.

Sam our thoughts are with you.

Edited by blur
Link to comment
Share on other sites

Here is a common error window I get when trying to exit FP using 294.

fplauncherrorusingfpandexit321_t.jpg

Blitz here is quick solution for problem from this image.

Every gui has to be destroyed first before it is used (because old one could exist).

So add gui destroy in every section that has creation of new gui without destroying it first, namely CreateBlackScreen and CreateExitScreen.

It should look like this:

CreateBlackScreen:
   CaptureScreen(3)
   [b]Gui 5: Destroy[/b]
   Gui 5: Color, 000000
...
CreateExitScreen:
    Gui, Destroy
   Loop, 4
     {
       ExitPic = Exit_%A_Index%.png
       [b]Gui %A_Index%: Destroy[/b]
       Gui %A_Index%: Color, EEAA99
...

try if this will fix anything else, maybe exit321 in 294 in fp will work now?

Link to comment
Share on other sites

Blur, your scripting skills with autohotkey are very good.

It's safe to say we are all glad to have you here and making time for us noobs to adapt things to all of our needs.

A big thank you is in place ! :flowers:

Link to comment
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
×
×
  • Create New...