Thread: New feature in Dolphin wont work with actual module.

Results 1 to 15 of 15
  1. Collapse Details
    New feature in Dolphin wont work with actual module. 
    #1
    Junior Member
    MainSecondary
    Join Date
    Mar 2016
    Posts
    12
    Contribute If you enjoy reading the
    content here, click the below
    image to support our site.
    Click Here To Contribute To Our Site
    Hi everyone. Just a few days ago a new great feature is include in Dolphin emulator and is call Ubershaders:
    https://es.dolphin-emu.org/blog/2017/07/30/ubershaders/
    Ill try yesterday and works flawless removing slowdowns and stuttering almost completely in games like Tatsunoko vs Capcom and Metroid. The thing is that when i load the game via Rocketlauncher wont uses this feature. I really apreciate if someone fix this so everyone can enjoy this huge improvement. Thanks a lot.
    Sin título1.png
    Captura.PNG
    Last edited by codetvirus ; 08-05-2017 at 11:19 AM.
     

  2. Collapse Details
    Re: New feature in Dolphin wont work with actual module. 
    #2
    RocketLauncher Developer

    MainSecondary
    Join Date
    Apr 2014
    Posts
    4,550
    If you can figure out where this info is stored support for it can be added.
     

  3. Collapse Details
    Re: New feature in Dolphin wont work with actual module. 
    #3
    Junior Member
    MainSecondary
    Join Date
    Mar 2016
    Posts
    12
    By the way is configured i think is a pluging thing. I kinda noob in this
     

  4. Collapse Details
    Re: New feature in Dolphin wont work with actual module. 
    #4
    Senior Member cID67's Avatar
    MainSecondary
    Join Date
    Jun 2014
    Posts
    217
    ubershaders works fine with the module. Do you mean there is no setting to enable or disable it in the module? If that's what you mean, there really is no reason that I can see to not have it always enabled. doesn't seem to have any regressions that I can find and provides a healthy performance boost in the areas you described.
     

  5. Collapse Details
    Re: New feature in Dolphin wont work with actual module. 
    #5
    Senior Member cID67's Avatar
    MainSecondary
    Join Date
    Jun 2014
    Posts
    217
    if any way becomes available to turn ubershaders on and off, it will likely be through the system and game ini files. here is a link to the appropriate forum thread, https://forums.dolphin-emu.org/Threa...tings-per-game A very informative read for anyone looking to add features to the module as dolphin stores setting in a global ini file as well as a game by game basis through ini files for each game.

    here is the development build command line syntax

    Usage: Dolphin [-h] [-d] [-l] [-e <str>] [-b] [-V <str>] [-A <str>]
    -h, --help Show this help message
    -d, --debugger Opens the debugger
    -l, --logger Opens the logger
    -e, --exec= Loads the specified file (DOL,ELF,WAD,GCM,ISO)
    -b, --batch Exit Dolphin with emulator
    -V, --video_backend= Specify a video backend
    -A, --audio_emulation= Low level (LLE) or high level (HLE) audio
    Available DSP emulation engines are HLE (High Level Emulation) and LLE (Low Level Emulation). HLE is fast but often less accurate while LLE is slow but close to perfect. Note that LLE has two submodes (Interpreter and Recompiler), which cannot be selected from the command line.
    Available video backends are "D3D" (only available on Windows) and "OGL". There's also "Software Renderer", which uses the CPU for rendering and is intended for debugging purposes only.
    Last edited by cID67 ; 08-09-2017 at 11:10 PM.
     

  6. Collapse Details
    Re: New feature in Dolphin wont work with actual module. 
    #6
    Junior Member
    MainSecondary
    Join Date
    Mar 2016
    Posts
    12
    Quote Originally Posted by cID67 View Post
    ubershaders works fine with the module. Do you mean there is no setting to enable or disable it in the module? If that's what you mean, there really is no reason that I can see to not have it always enabled. doesn't seem to have any regressions that I can find and provides a healthy performance boost in the areas you described.
    Umm thats weird. When i launch a game directly from the emulator works perfect but when i launch from Rocketlauncher is like the option(uberdshaders) wont work. Ill goin to check. Thanks.
     

  7. Collapse Details
    Re: New feature in Dolphin wont work with actual module. 
    #7
    Senior Member cID67's Avatar
    MainSecondary
    Join Date
    Jun 2014
    Posts
    217
    I don't think there is a mechanism to enable or disable this feature at all in the module. if it was enabled it should stay enabled.
     

  8. Collapse Details
    Re: New feature in Dolphin wont work with actual module. 
    #8
    Member
    MainSecondary
    Join Date
    Nov 2014
    Posts
    61
    Whoa haven't been here in a while. Wanted to chime in and say the current Dolphin module doesn't appear to work with the latest Dolphin 5 release. I don't think it's the ubershaders feature either at fault. Even with it disabled, it's not working. Module just opens Dolphin but won't run the game. Seems to have the same window class name too using djvj's old tool so I'm not sure what is wrong. Here's a log:

    Code:
    15:57:20:948 | RL |      INFO  | +N/A   | Main - RocketLauncher v1.2.0.1 (www.rlauncher.com)
    15:57:21:027 | RL |      INFO  | +78    | Main - System Specs:
    					RocketLauncher Dir: C:\RocketLauncher
    					RocketLauncher is: 32-bit
    					OS: Microsoft Windows 7 Ultimate
    					SKU: Ultimate
    					Total Memory: 8129.40 MB
    					Free Memory: 5954.79 MB
    					Used Memory: 2174.609 MB
    					SystemType: 64-bit
    					Physical Processors: 1
    					Logical Processors: 4
    					GPU 1 Name: NVIDIA GeForce GTX 1060 6GB
    					GPU 1 RAM: -1.00 MB
    					GPU 1 Driver Version: 21.21.13.7570
    					Sound 1 Device: NVIDIA Virtual Audio Device (Wave Extensible) (WDM)
    					Sound 1 Status: Enabled
    					Sound 2 Device: High Definition Audio Device
    					Sound 2 Status: Enabled
    					Sound 3 Device: High Definition Audio Device
    					Sound 3 Status: Enabled
    					OS Language: English_United_States
    					System Locale: en-US
    					Formats Locale: en-US
    					Windows UI Language: en-US
    					Text Encoding: Windows-1252
    					OS Admin Status: Yes
    					RL Compatibility Flags:
    					Latest .Net Version: v4.0.30319
    					Monitor #1 (\\.\DISPLAY1): 1920x1080 (1920x1040 work) [32bit] [60hz] [Landscape]  (Primary)
    					Current AHK Desktop Width: 1920
    					Current AHK Desktop Height: 1080
    					Monitor #1 DPI: 100
    					ErrorMode: 0
    					AutoHotkey Path:
    					AHK Version: 1.1.13.00
    					Unicode: No
    15:57:21:027 | RL |      INFO  | +0     | CheckFile - Checking if C:\RocketLauncher\RocketLauncher.exe exists
    15:57:21:027 | RL |      INFO  | +0     | Main - Raw CLI received: "-s Nintendo Gamecube -r Metroid Prime (USA) -f C:\Hyperspin\HyperSpin.exe -p HyperSpin -c 1 -o 1"
    15:57:21:027 | RL |      INFO  | +0     | Main - Loading Front End Plugin: "HyperSpin"
    15:57:21:027 | RL |      INFO  | +0     | Main - RocketLauncher received "Nintendo Gamecube" and "Metroid Prime (USA)"
    15:57:21:031 | RL |      INFO  | +16    | Main - Did not find a "C:\RocketLauncher\Settings\Nintendo Gamecube\Game Options.ini" file, skipping any game-specific options.
    15:57:21:031 | RL |      INFO  | +0     | Main - Metroid Prime (USA) is using the default emulator: Dolphin
    15:57:21:031 | RL |      INFO  | +0     | Main - Checking for a [Dolphin] section in C:\RocketLauncher\Settings\Nintendo Gamecube\Emulators.ini
    15:57:21:031 | RL |      INFO  | +0     | Main - Checking for a [Dolphin] section in C:\RocketLauncher\Settings\Global Emulators.ini
    15:57:21:032 | RL |      INFO  | +0     | Main - Found [Dolphin] in C:\RocketLauncher\Settings\Global Emulators.ini
    15:57:21:032 | RL |      INFO  | +0     | CheckFile - Checking if C:\RocketLauncher\Modules\Dolphin\Dolphin.ahk exists
    15:57:21:035 | RL |      INFO  | +0     | Main - CRC Check - CRC matches, this is an official unedited module.
    15:57:21:035 | RL |      INFO  | +0     | Main - Metroid Prime (USA) will use module: C:\RocketLauncher\Modules\Dolphin\Dolphin.ahk
    15:57:21:043 | RL |      INFO  | +0     | Main - Using standard method with "Rom Extension" SkipChecks or without any SkipChecks.
    15:57:21:044 | RL |      INFO  | +0     | CheckFile - Checking if C:\Emulation\Emulators\Dolphin\Dolphin.exe exists
    15:57:21:045 | RL |      INFO  | +15    | Main - INI Keys read
    15:57:21:045 | RL |      INFO  | +0     | CheckFile - Checking if C:\RocketLauncher\Module Extensions\7z.exe exists
    15:57:21:046 | RL |      INFO  | +0     | CheckFile - Checking if C:\RocketLauncher\Module Extensions\7z.dll exists
    15:57:21:047 | RL |      INFO  | +0     | Main - "Metroid Prime (USA)" does not qualify for MultiGame. Only roms with any of these strings in their name are acceptable: \(Disc|\(Disk|\(Cart|\(Tape|\(Cassette|\(Part|\(Side
    15:57:21:047 | RL |      INFO  | +0     | CheckPaths - Started
    15:57:21:047 | RL |      INFO  | +0     | CheckPaths - Looking for rom: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).rar
    15:57:21:047 | RL |      INFO  | +0     | CheckPaths - Looking for rom by name in subfolder: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA)\Metroid Prime (USA).rar
    15:57:21:047 | RL |      INFO  | +0     | CheckPaths - Rom not found
    15:57:21:047 | RL |      INFO  | +0     | CheckPaths - Looking for rom: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).lha
    15:57:21:047 | RL |      INFO  | +0     | CheckPaths - Looking for rom by name in subfolder: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA)\Metroid Prime (USA).lha
    15:57:21:047 | RL |      INFO  | +0     | CheckPaths - Rom not found
    15:57:21:047 | RL |      INFO  | +0     | CheckPaths - Looking for rom: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).lzh
    15:57:21:047 | RL |      INFO  | +0     | CheckPaths - Looking for rom by name in subfolder: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA)\Metroid Prime (USA).lzh
    15:57:21:047 | RL |      INFO  | +0     | CheckPaths - Rom not found
    15:57:21:047 | RL |      INFO  | +0     | CheckPaths - Looking for rom: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).gzip
    15:57:21:047 | RL |      INFO  | +0     | CheckPaths - Looking for rom by name in subfolder: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA)\Metroid Prime (USA).gzip
    15:57:21:047 | RL |      INFO  | +0     | CheckPaths - Rom not found
    15:57:21:047 | RL |      INFO  | +0     | CheckPaths - Looking for rom: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).tar
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Looking for rom by name in subfolder: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA)\Metroid Prime (USA).tar
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Rom not found
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Looking for rom: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).7z
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Looking for rom by name in subfolder: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA)\Metroid Prime (USA).7z
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Rom not found
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Looking for rom: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).zip
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Looking for rom by name in subfolder: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA)\Metroid Prime (USA).zip
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Rom not found
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Looking for rom: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).ciso
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Looking for rom by name in subfolder: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA)\Metroid Prime (USA).ciso
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Rom not found
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Looking for rom: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).iso
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Looking for rom by name in subfolder: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA)\Metroid Prime (USA).iso
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Rom not found
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Looking for rom: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).elf
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Looking for rom by name in subfolder: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA)\Metroid Prime (USA).elf
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Rom not found
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Looking for rom: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).dol
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Looking for rom by name in subfolder: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA)\Metroid Prime (USA).dol
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Rom not found
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Looking for rom: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).gcm
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Found rom: E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).gcm
    15:57:21:048 | RL |      INFO  | +0     | CheckPaths - Ended
    15:57:21:048 | RL |      INFO  | +0     | BuildScript - User Variables:
    					;----------------------------------------------------------------------------
    					; INJECTED VARIABLES
    					;----------------------------------------------------------------------------
    
    					#NoTrayIcon
    					#InstallKeybdHook
    					MiscUtils.DetectHiddenWindows("On")
    					SetTitleMatchMode, 2
    					SendMode, Event
    					Global RLLog
    					Global RLObject
    					0 := "12"
    					rlPath := "C:\RocketLauncher"
    					pluginPath := "C:\RocketLauncher\Plugins"
    					pluginName := "HyperSpin"
    					pluginExt := ".plugin"
    					contextOnExit := "1"
    					rlMode := ""
    					rlTitle := "RocketLauncher"
    					rlVersion := "1.2.0.1"
    					rlAuthor := "djvj"
    					rlURL := "www.rlauncher.com"
    					langFile := "C:\RocketLauncher\Data\Language\Localization.ini"
    					primMonitor := "1"
    					frontendPID := ""
    					frontendPath := "C:\Hyperspin"
    					frontendExe := "HyperSpin.exe"
    					frontendExt := "exe"
    					frontendName := "HyperSpin"
    					frontendDrive := "C"
    					exitEmulatorKey := "NumpadIns|H:1joy7&1joy8"
    					restoreFE := "false"
    					exitScriptKey := "q"
    					toggleCursorKey := "~e & ~t"
    					emuFullPath := "C:\Emulation\Emulators\Dolphin\Dolphin.exe"
    					emuPath := "C:\Emulation\Emulators\Dolphin"
    					emuName := "Dolphin"
    					emuExt := "exe"
    					baseRomPath := ""
    					romPath := "E:\Romfiles\Nintendo Gamecube"
    					romPathFromIni := "E:\Romfiles\Nintendo Gamecube"
    					romExtension := ".gcm"
    					romExtensionOrig := ".gcm"
    					romExtensions := "rar|lha|lzh|gzip|tar|7z|zip|ciso|iso|elf|dol|gcm|wad"
    					executable := "Dolphin.exe"
    					systemDbName := "Nintendo Gamecube"
    					systemName := "Nintendo Gamecube"
    					dbPath := ""
    					dbName := "Metroid Prime (USA)"
    					dbExt := ""
    					romFoundByExt := ""
    					romName := "Metroid Prime (USA)"
    					romMapPath := ""
    					romMappingEnabled := "false"
    					romMappingLaunchMenuEnabled := "false"
    					romMappingFirstMatchingExt := "false"
    					romMappingShowAllRomsInArchive := "true"
    					romMappingNumberOfGamesByScreen := "7"
    					romMappingHideParent := "false"
    					romMappingMenuWidth := "300"
    					romMappingMenuMargin := "50"
    					romMappingTextFont := "Bebas Neue"
    					romMappingTextOptions := "cFFFFFFFF r4 s40 Bold"
    					romMappingDisabledTextColor := "ff888888"
    					romMappingTextSizeDifference := "5"
    					romMappingTextMargin := "10"
    					romMappingTitleTextFont := "Bebas Neue"
    					romMappingTitleTextOptions := "cFFFFFFFF r4 s60 Bold"
    					romMappingTitle2TextFont := "Bebas Neue"
    					romMappingTitle2TextOptions := "cFFFFFFFF r4 s15 Bold"
    					romMappingGameInfoTextFont := "Bebas Neue"
    					romMappingGameInfoTextOptions := "cFFFFFFFF r4 s15 Regular"
    					romMappingGameNameTextFont := "Bebas Neue"
    					romMappingGameNameTextOptions := "cFFFFFFFF r4 s40 Regular"
    					romMappingBackgroundBrush := "aa000000"
    					romMappingColumnBrush := "33000000"
    					romMappingButtonBrush1 := "6f000000"
    					romMappingButtonBrush2 := "33000000"
    					romMappingBackgroundAlign := "Stretch and Lose Aspect"
    					romMappingMenuFlagWidth := "40"
    					romMappingMenuFlagSeparation := "5"
    					romMappingDefaultMenuList := "FullList"
    					romMappingSingleFilteredRomAutomaticLaunch := "false"
    					altArchiveNameOnly := ""
    					altRomNameOnly := ""
    					altArchiveAndRomName := ""
    					altArchiveAndManyRomNames := ""
    					altRomNamesOnly := ""
    					romMapScenario := ""
    					skipchecks := "false"
    					romMatchExt := "false"
    					blockInputTime := "0"
    					blockInputFile := "C:\RocketLauncher\Module Extensions\BlockInput.exe"
    					errorLevelReporting := "false"
    					lockLaunch := "false"
    					lockLaunchGame := ""
    					screenRotationAngle := "0"
    					screenRotationAngleGame := ""
    					setResolution := ""
    					logFile := ""
    					logLabel := ["    INFO"," WARNING","   ERROR","   DEBUG","   TRACE"]
    					logLevel := "3"
    					logShowDebugConsole := "false"
    					logShowCommandWindow := "false"
    					logCommandWindow := "false"
    					logIncludeModule := "true"
    					logIncludeFileProperties := "true"
    					logIncludeDLLLogs := "false"
    					errorSounds := "true"
    					rlDebugConsoleStdout := ""
    					sysLang := "English_United_States"
    					sysType := "64-bit"
    					broadcastWindowTitle := ""
    					navUpKey := "Up"
    					navDownKey := "Down"
    					navLeftKey := "Left"
    					navRightKey := "Right"
    					navSelectKey := "Enter|1joy1"
    					navP2UpKey := "Numpad8"
    					navP2DownKey := "Numpad2"
    					navP2LeftKey := "Numpad4"
    					navP2RightKey := "Numpad6"
    					navP2SelectKey := "NumpadEnter"
    					originalWidth := "1920"
    					originalHeight := "1080"
    					vdEnabled := "true"
    					vdFullPath := "C:\Program Files (x86)\DAEMON Tools Lite\DTLite.exe"
    					vdUseSCSI := "true"
    					vdDriveLetter := "F"
    					vdDriveLetterScsi := ""
    					vdAddDrive := "false"
    					demulShooterPath := ""
    					servoStikEnabled := "false"
    					servoStikExitMode := "false"
    					ledblinkyEnabled := "false"
    					ledblinkySystemName := ""
    					ledblinkyFullPath := ""
    					ledblinkyProfilePath := "C:\RocketLauncher\Profiles\LEDBlinky"
    					ledblinkyRLProfile := "C:\RocketLauncher\Profiles\LEDBlinky\RocketLauncher"
    					winIPACFullPath := ""
    					ultraMapEnabled := "false"
    					ultraMapFullPath := ""
    					emuIdleShutdown := "0"
    					launchPasswordHash := "zQJHGuIBD6bt2rEoPola0Rbrl81Ci3lgdm1mxbcm+QfXe+SDPHV0ig=="
    					cursorSize := ""
    					hideCursor := "false"
    					hideEmu := "false"
    					hideFE := "false"
    					suspendFE := "true"
    					fadeIn := "false"
    					fadeInDuration := "500"
    					fadeInTransitionAnimation := "DefaultAnimateFadeIn"
    					fadeInDelay := "1000"
    					fadeInExitDelay := "900"
    					fadeOutExitDelay := "200"
    					fadeOut := "false"
    					fadeOutExtraScreen := "false"
    					fadeOutDuration := "500"
    					fadeOutTransitionAnimation := "DefaultAnimateFadeOut"
    					fadeOutDelay := "200"
    					fadeLyrInterpolation := "7"
    					fadeMuteEmulator := "false"
    					fadeUseBackgrounds := "true"
    					fadeClickThrough := "false"
    					fadeSounds := "true"
    					fade7zProgressMode := "extraction"
    					fadeWidthBaseRes := "1920"
    					fadeHeightBaseRes := "1080"
    					fadeLyr1Color := "FF000000"
    					fadeLyr1AlignImage := "Stretch and Lose Aspect"
    					fadeLyr2Pos := "Bottom Right Corner"
    					fadeLyr2X := "0"
    					fadeLyr2Y := "0"
    					fadeLyr2W := ""
    					fadeLyr2H := ""
    					fadeLyr2Adjust := "1"
    					fadeLyr2PicPad := "0"
    					fadeLyr2Prefix := "Extra Layer 1 - Console"
    					fadeLyr3Pos := "Center"
    					fadeLyr3X := "450"
    					fadeLyr3Y := "450"
    					fadeLyr3W := ""
    					fadeLyr3H := ""
    					fadeLyr3Adjust := "0.75"
    					fadeLyr3PicPad := "0"
    					fadeLyr3Speed := "750"
    					fadeLyr3Animation := "DefaultFadeAnimation"
    					fadeLyr37zAnimation := "DefaultFadeAnimation"
    					fadeLyr3Type := "imageandbar"
    					fadeLyr3ImgFollow7zProgress := "true"
    					fadeLyr3Repeat := "1"
    					fadeLyr3BackImageTransparency := "30"
    					fadeLyr3StaticPos := "No Alignment"
    					fadeLyr3StaticX := "0"
    					fadeLyr3StaticY := "870|1575"
    					fadeLyr3StaticW := ""
    					fadeLyr3StaticH := ""
    					fadeLyr3StaticAdjust := "1"
    					fadeLyr3StaticPicPad := "0"
    					fadeLyr3StaticPrefix := "Info Bar"
    					fadeLyr4Adjust := "1"
    					fadeLyr4X := "1792|952"
    					fadeLyr4Y := "891|1596"
    					fadeLyr4W := "128"
    					fadeLyr4H := ""
    					fadeLyr4Pos := "No Alignment"
    					fadeLyr4FPS := "50"
    					fadeLyr4PicPad := "0"
    					fadeTranspGifColor := "FFFFFF"
    					fadeBarWindow := "Image"
    					fadeBarWindowX := ""
    					fadeBarWindowY := ""
    					fadeBarWindowW := "900"
    					fadeBarWindowH := "180"
    					fadeBarWindowR := "30"
    					fadeBarWindowM := "30"
    					fadeBarWindowHatchStyle := "8"
    					fadeBar := "7zOnly"
    					fadeProgressDuration := "0"
    					fadeBarBack := "true"
    					fadeBarBackColor := "FF555555"
    					fadeBarH := "30"
    					fadeBarR := "10"
    					fadeBarColor := "DD00BFFF"
    					fadeBarHatchStyle := "8"
    					fadeBarPercentageText := "true"
    					fadeBarInfoText := "true"
    					fadeBarXOffset := "0"
    					fadeBarYOffset := "150"
    					fadeRomInfoDescription := "filtered text"
    					fadeRomInfoSystemName := "image"
    					fadeRomInfoYear := "text with label"
    					fadeRomInfoDeveloper := "text with label"
    					fadeRomInfoPublisher := "text with label"
    					fadeRomInfoGenre := "text with label"
    					fadeRomInfoRating := "image"
    					fadeRomInfoOrder := "Description|SystemName|Year|Genre|Manufacturer|Rating"
    					fadeRomInfoTextPlacement := "User Defined"
    					fadeRomInfoTextMargin := "7"
    					fadeRomInfoText1Options := "h90 x165 y870|1575 cFFE1E1E1 r4 s90 Left Regular"
    					fadeRomInfoText2Options := "x8 y15 cFF555555 r4 s60 Bold"
    					fadeRomInfoText3Options := "x165 y960|1665 cFFE1E1E1 r4 s66 Left Regular"
    					fadeRomInfoText4Options := "h66 x460 y960|1665 cFFE1E1E1 r4 s66 Left Regular"
    					fadeRomInfoText5Options := "cFF555555 r4 s42 Bold"
    					fadeRomInfoText6Options := "h135 x15 y885|1590 cFFCFCFCF r4 s120 Regular"
    					fadeRomInfoText7Options := "h135 x15 y885|1590 cFFCFCFCA r4 s120 Regular"
    					fadeStats_Number_of_Times_Played := "text with label"
    					fadeStats_Last_Time_Played := "text with label"
    					fadeStats_Average_Time_Played := "text with label"
    					fadeStats_Total_Time_Played := "text with label"
    					fadeStats_System_Total_Played_Time := "text with label"
    					fadeStats_Total_Global_Played_Time := "text with label"
    					fadeStatsInfoOrder := "Number_of_Times_Played|Last_Time_Played|Average_Time_Played|Total_Time_Played|System_Total_Played_Time|Total_Global_Played_Time"
    					fadeStatsInfoTextPlacement := "topRight"
    					fadeStatsInfoTextMargin := "7"
    					fadeStatsInfoText1Options := "cFFE1E1E1 r4 s22 Bold"
    					fadeStatsInfoText2Options := "cFFE1E1E1 r4 s22 Bold"
    					fadeStatsInfoText3Options := "cFFE1E1E1 r4 s22 Bold"
    					fadeStatsInfoText4Options := "cFFE1E1E1 r4 s22 Bold"
    					fadeStatsInfoText5Options := "cFFE1E1E1 r4 s22 Bold"
    					fadeStatsInfoText6Options := "cFFE1E1E1 r4 s22 Bold"
    					fadeText1X := "0"
    					fadeText1Y := "0"
    					fadeText1Options := "cFF848484 r4 s30 Right Bold"
    					fadeText1 := "Extraction in Progress, Please Wait"
    					fadeText2X := "0"
    					fadeText2Y := "0"
    					fadeText2Options := "cFF848484 r4 s30 Right Bold"
    					fadeText2 := "Extraction Complete, Ready"
    					fadeText3 := "Loading Game"
    					fadeText4 := "Loading Complete"
    					fadeFont := "Bebas Neue"
    					fadeSystemAndRomLayersOnly := "false"
    					fadeExtractionTime := "disabled"
    					fadeExtractionTimeTextX := "0"
    					fadeExtractionTimeTextY := "0"
    					fadeExtractionTimeTextOptions := "cFF555555 r4 s20 Bold"
    					fadeInterruptKey := "~anykey"
    					detectFadeErrorEnabled := "true"
    					fadeImgPath := "C:\RocketLauncher\Media\Fade"
    					RLDataPath := "C:\RocketLauncher\Data"
    					RLMediaPath := "C:\RocketLauncher\Media"
    					RLErrSoundPath := "C:\RocketLauncher\Media\Sounds\Error"
    					modulesPath := "C:\RocketLauncher\Modules"
    					moduleFullName := "C:\RocketLauncher\Modules\Dolphin\Dolphin.ahk"
    					moduleName := "Dolphin"
    					modulePath := "C:\RocketLauncher\Modules\Dolphin"
    					moduleExtension := "ahk"
    					moduleExtensionsPath := "C:\RocketLauncher\Module Extensions"
    					libPath := "C:\RocketLauncher\Lib"
    					sevenZEnabled := "true"
    					sevenZPath := "C:\RocketLauncher\Module Extensions\7z.exe"
    					sevenZDllPath := "C:\RocketLauncher\Module Extensions\7z.dll"
    					sevenZExtractPath := "D:\7z Temp"
    					sevenZExtractPathOrig := ""
    					sevenZAttachSystemName := "false"
    					sevenZDelTemp := "true"
    					sevenZFormats := ".zip|.rar|.7z|.lha|.lzh|.gzip|.tar"
    					sevenZFormatsNoP := "zip|rar|7z|lha|lzh|gzip|tar"
    					sevenZFormatsRegEx := "\.zip|\.rar|\.7z|\.lha|\.lzh|\.gzip|\.tar"
    					sevenZGamesToKeep := ""
    					sevenZDeletePerSystem := "false"
    					sevenZExtensions := "zip|rar|7z|lha|lzh|gzip|tar"
    					7zExtractPath := "D:\7z Temp"
    					mgEnabled := "false"
    					mgKey := "~NumpadSub|H2000:1joy5&1joy6&1joy8"
    					mgBackgroundColor := "FF000000"
    					mgSidePadding := "0.2"
    					mgWidthBaseRes := "1920"
    					mgHeightBaseRes := "1080"
    					mgYOffset := "500"
    					mgFont := "Arial"
    					mgText1Options := "x10p y30p w80p Center cBBFFFFFF r4 s100 BoldItalic"
    					mgText1Text := "Please select a game"
    					mgText2Options := "w96p cFFFFFFFF r4 s50 Center BoldItalic"
    					mgText2Offset := "70"
    					mgUseSound := "true"
    					mgSoundfreq := "300"
    					mgExitEffect := "none"
    					mgSelectedEffect := "rotate"
    					mgUseGameArt := "false"
    					mgCandidate := ""
    					mgValidTypes := "\(Disc|\(Disk|\(Cart|\(Tape|\(Cassette|\(Part|\(Side"
    					mgOnLaunch := "false"
    					pauseEnabled := "true"
    					pauseKey := "H1000:1joy9"
    					pauseBackToMenuBarKey := "X|1joy2"
    					pauseZoomInKey := "C|1joy6"
    					pauseZoomOutKey := "V|1joy5"
    					pauseScreenshotKey := "~PrintScreen"
    					pauseHiToTextPath := "C:\RocketLauncher\Module Extensions\HiToText.exe"
    					pauseSaveStateKeyCodes := "{Shift down}{F1 down}{F1 up}{Shift up}|{Shift down}{F2 down}{F2 up}{Shift up}|{Shift down}{F3 down}{F3 up}{Shift up}|{Shift down}{F4 down}{F4 up}{Shift up}|{Shift down}{F5 down}{F5 up}{Shift up}|{Shift down}{F6 down}{F6 up}{Shift up}|{Shift down}{F7 down"
    					pauseLoadStateKeyCodes := "{Shift down}{F1 down}{F1 up}{Shift up}|{Shift down}{F2 down}{F2 up}{Shift up}|{Shift down}{F3 down}{F3 up}{Shift up}|{Shift down}{F4 down}{F4 up}{Shift up}|{Shift down}{F5 down}{F5 up}{Shift up}|{Shift down}{F6 down}{F6 up}{Shift up}|{Shift down}{F7 down"
    					keyboardEncoder := ""
    					keyboardEncoderEnabled := "false"
    					keymapperEnabled := "true"
    					keymapperAHKMethod := "false"
    					keymapper := "joytokey"
    					xpadderFullPath := "C:\Hyperspin\Utilities\Xpadder\Xpadder.exe"
    					joyToKeyFullPath := "C:\Hyperspin\Utilities\JoyToKey\JoyToKey.exe"
    					profilePath := "C:\RocketLauncher\Profiles"
    					keymapperProfilePath := "C:\RocketLauncher\Profiles\joytokey"
    					keymapperFrontEndProfileName := "HyperSpin"
    					keymapperFrontEndProfile := "false"
    					keymapperRocketLauncherProfileEnabled := "true"
    					joyIDsEnabled := "true"
    					joyIDsPreferredControllersGlobal := "Controller (Xbox 360 Wireless Receiver for Windows)"
    					joyIDsPreferredControllersSystem := "use_global"
    					joyIDsPreferredControllersOnExit := ""
    					CustomJoyNamesEnabled := "false"
    					CustomJoyNames := ""
    					rotateMethod := "false"
    					FEProfile := "C:\RocketLauncher\Profiles\joytokey\HyperSpin"
    					defaultProfile := "C:\RocketLauncher\Profiles\joytokey\_Default"
    					systemProfile := "C:\RocketLauncher\Profiles\joytokey\Nintendo Gamecube"
    					xPadderSystemProfile := "C:\RocketLauncher\Profiles\joytokey\Nintendo Gamecube\_Default"
    					emuProfile := "C:\RocketLauncher\Profiles\joytokey\Nintendo Gamecube\Dolphin"
    					romProfile := "C:\RocketLauncher\Profiles\joytokey\Nintendo Gamecube\Metroid Prime (USA)"
    					RocketLauncherProfile := "C:\RocketLauncher\Profiles\joytokey\RocketLauncher"
    					blankProfile := "C:\RocketLauncher\Profiles\joytokey\blank"
    					ahkFEProfile := "C:\RocketLauncher\Profiles\AHK\HyperSpin"
    					ahkDefaultProfile := "C:\RocketLauncher\Profiles\AHK\_Default"
    					ahkSystemProfile := "C:\RocketLauncher\Profiles\AHK\Nintendo Gamecube"
    					ahkEmuProfile := "C:\RocketLauncher\Profiles\AHK\Nintendo Gamecube\Dolphin"
    					ahkRomProfile := "C:\RocketLauncher\Profiles\AHK\Nintendo Gamecube\Metroid Prime (USA)"
    					ahkRocketLauncherProfile := "C:\RocketLauncher\Profiles\AHK\RocketLauncher"
    					bezelEnabled := "false"
    					bezelICEnabled := "false"
    					shaderName := "false"
    					shaderColor := ""
    					shaderTransparency := ""
    					statisticsEnabled := "true"
    					pressDuration := "-1"
    					emuVolume := "1"
    					dxwndIni := "C:\RocketLauncher\Module Extensions\dxwnd\dxwnd.ini"
    					dxwndFullPath := "C:\RocketLauncher\Module Extensions\dxwnd\dxwnd.exe"
    					qResFullPath := "C:\RocketLauncher\Module Extensions\QRes.exe"
    					mon1O := ""
    					pacDrivedllFile := "C:\RocketLauncher\Module Extensions\PacDrive32.dll"
    					userFadeAnimIniFile := "C:\RocketLauncher\Lib\User Fade Animations.ini"
    					testFile := ""
    					testDuration := ""
    					initialErrorMode := "0"
    
    15:57:21:049 | RL |      INFO  | +0     | BuildScript - Loaded XHotkey Init.ahk scripts
    15:57:21:049 | RL |      INFO  | +0     | BuildScript - Loaded Keymapper Init.ahk scripts
    15:57:21:049 | RL |      INFO  | +0     | BuildScript - Loaded Pause Init.ahk scripts
    15:57:21:049 | RL |      INFO  | +0     | BuildScript - Loaded Statistics Init.ahk scripts
    15:57:21:049 | RL |      INFO  | +0     | BuildScript - Validating module
    15:57:21:052 | RL |      INFO  | +0     | BuildScript - Validation complete
    15:57:21:052 | RL |      INFO  | +0     | BuildScript - Module:
    					MEmu := "Dolphin"
    					MEmuV := "v5.0"
    					MURL := ["https://dolphin-emu.org/"]
    					MAuthor := ["djvj","bleasby"]
    					MVersion := "2.2.0"
    					MCRC := "C7DEEF2C"
    					iCRC := "9DF8C36F"
    					MID := "635038268884477733"
    					MSystem := ["Nintendo Gamecube","Nintendo Wii","Nintendo WiiWare"]
    					;----------------------------------------------------------------------------
    					; Notes:
    					; Be sure you are running at least Dolphin v4.0 or greater.
    					; If you get an error that you are missing a vcomp100.dll, install Visual C++ 2010: http://www.microsoft.com/download/en/details.aspx?id=14632
    					; Also make sure you are running latest directx: http://www.microsoft.com/downloads/details.aspx?FamilyID=2da43d38-db71-4c1b-bc6a-9b6652cd92a3
    					; Dolphin will sometimes crash when connnecting a Wiimote, then going back to the game. After all Wiimotes are connected that you want to use, it shouldn't have anymore issues.
    					; Convert all your games to ciso using Wii Backup Manager to save alot of space by stripping everything but the game partition. http://www.wiibackupmanager.tk/
    					; If you want to keep your Dolphin.ini in the emu folder, create a "portable.txt" file in MyDocuments\Dolphin Emulator\
    					;
    					; Bezels:
    					; If the game does not fit the window, you can try setting stretch to window manually in dolphin.
    					;
    					; Setting up custom Wiimote or GCPad profiles:
    					; First set UseCustomWiimoteProfiles or UseCustomGCpadProfiles to true in RocketLauncherUI for this module
    					; Launch Dolphin manually and goto Options->(Wiimote or Gamecube Pad) Settings and configure all your controls how you want your default setup to look like. This will be used for all games that you don't set a custom profile for. No need to save any profiles.
    					; All your controls are stored in WiimoteNew.ini or GCPadNew.ini and get copied to a _Default_(WiimoteNew or GCPadNew).ini on first launch. This ini contains all the controls for all 4 controllers.
    					; Do not confuse this with Dolphin's built-in profiles as those only contain info for only one controller. The (WiimoteNew or GCPadNew).ini and all the profiles RocketLauncher uses contain info for all controllers in one file.
    					; This new profile now called _Default_(WiimoteNew or GCPadNew).ini will be found in Dolphins settings folder: \Config\Profiles\(Wiimote or GCPad) (RL)\Default.ini
    					; For each game or custom control sets you want to use, edit the controls for all the controllers to work for that game and exit Dolphin. Now copy the (WiimoteNew or GCPadNew).ini to the "(Wiimote or GCPad) (RL)" folder and name it whatever you like.
    					; In RocketLauncherUI's module settings for Dolphin, Click the Rom Settings tab and add each game from your xml you want to use a this custom profile for.
    					; Now for all those games you added, make sure the Profile setting it set to the custom profile you want to load when that game is launched.
    					; Any game not added will use the "_Default_(WiimoteNew or GCPadNew).ini" profile RocketLauncher makes on first launch.
    					;
    					; To Pair a Wiimote:
    					; Highly suggest getting a Mayflash DolphinBar as it makes pairing and using wiimotes as easy as with a real Wii: http://www.amazon.com/TOTALCONSOLE-W010-Wireless-Sensor-DolphinBar/dp/B00HZWEB74
    					; If using the DolphinBar, just make sure Dolphin is set to continuously scan for wiimotes and set controls to use real wiimotes for as many wiimotes you have.
    					; You do not need to pair the wiimote with the PC first as you would with a standard blueooth and wiimote.
    					; DolphinBar should be on Mode 4. Wiimotes don't get paired until after Dolphin is running, not before!!
    					; After Dolphin is running, press 1+2 on each wiimote and after a few moments, the wiimote will pair and vibrate and one led will lock solid. Do this for each wiimote. That's it!
    					;
    					; If using a standard LED Bar:
    					; Make sure all your wiimotes have already been paired with your PC's bluetooth adapter
    					; All 4 leds on the wiimote should be flashing
    					; Press your Refresh key (set in RocketLauncherUI for this module) or enable continuous scanning in Dolphin
    					; Press 1 + 2 on the wiimote and one led should go solid designating the player number
    					;
    					; MultiGame:
    					; Currently unable to get disc swapping to work. See MultiGame section below for additional details.
    					;
    					; Netplay:
    					; If you're using a GameCube game with saves, synchronize your memory cards, Wii NAND needs to be synchronized, and some settings (such as CPU Clock Override) must be either synchronized or disabled.
    					; Because netplay may require different settings than you would normally use with local play, the module will look for any inis in your Dolphin user config folder ending with "_netplay" and use those configs instead of your normal ones.
    					; So for example, after you tweak all your dolphin settings for netplay, copy your dolphin.ini to dolphin_netplay.ini in the same folder.
    					; When the module launches and you choose multiplayer from RocketLauncher on screen menu, the module will backup dolphin.ini and copy dolphin_network.ini to dolphin.IniDelete
    					; On exit, the module will restore your backed up dolphin.ini and any other ini files in this folder (and all subfolders) that had the "_netplay" in the name.
    					; Guide on tweaking performance for netplay: https://dolphin-emu.org/docs/guides/netplay-guide/
    					; Another guide: https://docs.google.com/document/d/1CIkBAGcf_-kBUa4urn4KUj2U4UA6y_2a7stXJz85yiE/
    					;
    					; Linking a GameCube game with VBA-M
    					; Game tested: Legend of Zelda, The - Four Swords Adventures (USA)
    					; VBA-M emulator tested: visualboyadvance-m2.0.0Beta1
    					; dolphin emulator tested: dolphin-master-4.0-6725-x64
    					; On RocketLaunchUI, dolphin, GameCube Module settings set your VBA-M executable and VBA Bios file path on the VBALink tab.
    					; On RocketLaunchUI, dolphin, GameCube, Game name Module Settings enable VBA Link
    					; If your Game Boy Advanced Windows appear frozen after the RocketLauncher fade screen loads, increase the value of the VBADelay on GameCube, VBALink settings. Default value is 500 milliseconds.
    					; A game with one VBA window will use a two screens bezel file, Bezel [2S].png, the first screen for the GameCube game and the second one for the VBA screen. Two VBAs = Bezel [3S].png, again first screen for the GameCube game and second and third for the VBA screens, and so on.
    					;----------------------------------------------------------------------------
    					StartModule()
    					BezelGui()
    					FadeInStart()
    
    					primaryExe := new Emulator(emuPath . "\" . executable)			; instantiate emulator executable object
    
    					Fullscreen := moduleIni.Read("Settings", "Fullscreen","true",,1)
    					UseCustomWiimoteProfiles := moduleIni.Read("Settings", "UseCustomWiimoteProfiles","false",,1)	; set to true if you want to setup custom Wiimote profiles for games
    					UseCustomGCPadProfiles := moduleIni.Read("Settings", "UseCustomGCPadProfiles","false",,1)	; set to true if you want to setup custom GCPad profiles for games
    					HideMouse := moduleIni.Read("Settings", "HideMouse","true",,1)					; hides mouse cursor in the emu options
    					RefreshKey := moduleIni.Read("Settings", "RefreshKey",,,1)						; hotkey to "Refresh" Wiimotes, delete the key to disable it
    					Timeout := moduleIni.Read("Settings", "Timeout","5",,1)							; amount in seconds we should wait for the above hotkeys to timeout
    					renderToMain := moduleIni.Read("Settings", "Render_To_Main","false",,1)
    					enableNetworkPlay := moduleIni.Read("Network", "Enable_Network_Play","false",,1)
    					controlTypePort1 := moduleIni.Read(romName . "|Controls", "Control_Type_Port_1",,,1)
    					controlTypePort2 := moduleIni.Read(romName . "|Controls", "Control_Type_Port_2",,,1)
    					controlTypePort3 := moduleIni.Read(romName . "|Controls", "Control_Type_Port_3",,,1)
    					controlTypePort4 := moduleIni.Read(romName . "|Controls", "Control_Type_Port_4",,,1)
    
    					;options to Gamecube and VBA Link
    					enableVBALink := moduleIni.Read(romName, "enableVBALink", "false",,1)
    					VBAExePath := moduleIni.Read("VBA Link", "VBAExePath",,,1)
    					VBABiosPath := moduleIni.Read("VBA Link", "VBABiosPath",,,1)
    					VBADelay := moduleIni.Read("VBA Link", "VBADelay", 500,,1)
    
    					If (renderToMain = "true") {
    						emuPrimaryWindow := new Window(new WindowTitle("Dolphin","wxWindowNR"))	; instantiate primary emulator window object
    						emuGameWindow := emuPrimaryWindow
    					} Else {
    						emuPrimaryWindow := new Window(new WindowTitle("Dolphin","wxWindowNR"))	; instantiate primary emulator window object
    						emuPrimaryWindow.ExcludeTitle := "FPS"	; when main window doesn't have the game, FPS will not be on the title bar
    						emuGameWindow := new Window(new WindowTitle("FPS","wxWindowNR"))
    					}
    					emuPrimaryWindow := new Window(new WindowTitle("Dolphin","wxWindowNR"))	; instantiate primary emulator window object
    					emuGameWindow := If renderToMain = "true" ? emuPrimaryWindow : new Window(new WindowTitle("FPS","wxWindowNR"))	; Older dolphins used "FPS ahk_class wxWindowClassNR"
    					emuScanningWindow := new Window(new WindowTitle("Scanning for ISOs","#32770"))
    					emuNetPlaySetupWindow := new Window(new WindowTitle("Dolphin NetPlay Setup","wxWindowNR"))
    					emuNetPlayWindow := new Window(new WindowTitle("Dolphin NetPlay","wxWindowNR"))
    					emuWiimoteWindow := new Window(new WindowTitle("Dolphin Controller Configuration","#32770"))
    					emuOpenROMWindow := new Window(new WindowTitle("Select","#32770"))
    					emuErrorWindow1 := new Window(new WindowTitle("Warning","#32770"))
    					emuErrorWindow2 := new Window(new WindowTitle("Error","#32770"))
    					emuWiimoteWindow.CreateControl("OK")
    
    					; Determine where Dolphin is storing its ini, this will act as the base folder for settings and profiles related to this emu
    					dolphinININewPath := new File(A_MyDocuments . "\Dolphin Emulator\Config\Dolphin.ini")	; location of Dolphin.ini for v4.0+
    					dolphinINIOldPath := new File(emuPath . "\User\Config\Dolphin.ini")	; location of Dolphin.ini prior to v4.0
    					portableTxtFile := new File(emuPath . "\portable.txt")
    					If (!portableTxtFile.Exist() && dolphinININewPath.Exist())
    					{	dolphinBasePath := A_MyDocuments . "\Dolphin Emulator"
    						RLLog.Info("Module - Dolphin's base settings folder is not portable and found in: " . dolphinBasePath)
    					} Else If (portableTxtFile.Exist() || dolphinINIOldPath.Exist())
    					{	dolphinBasePath := emuPath . "\User"
    						RLLog.Info("Module - Dolphin's base settings folder is portable and found in: " . dolphinBasePath)
    					} Else
    						ScriptError("Could not find your Dolphin.ini in either of these folders. Please run Dolphin manually first to create it.`n" . dolphinINIOldPath.FileFullPath . "`n" . dolphinININewPath.FileFullPath)
    					dolphinINI := new IniFile(dolphinBasePath . "\Config\Dolphin.ini")
    
    					If (enableVBALink = "true"){
    						VBAExePath := AbsoluteFromRelative(EmuPath, VBAExePath)
    						VBABiosPath := AbsoluteFromRelative(EmuPath, VBABiosPath)
    						StringUtils.SplitPath(VBAExePath, VBAFile, VBAPath)
    						SelectedNumberofPlayers := NumberOfPlayersSelectionMenu(4)
    						If (SelectedNumberofPlayers = 1) {
    							enableVBALink := "false"
    						} Else {
    							; backup original ini
    							dolphinINIBackup := new File(dolphinBasePath . "\Config\Dolphin_Backup.ini")
    							dolphinINI.Copy(dolphinINIBackup.FileFullPath)
    							Loop, % SelectedNumberofPlayers
    							{ 	tempCount := A_Index-1
    								dolphinINI.Write(5, "Controls", PadType%tempCount%)
    							}
    						}
    					}
    
    					If (enableVBALink = "true")
    						BezelStart(SelectedNumberofPlayers+1)
    					Else
    						BezelStart()
    
    					If (enableVBALink = "true" and !bezelPath)   ; disabling fullscreen if VBA Link mode
    						Fullscreen := "false"
    
    					If (renderToMain = "true" && (enableVBALink = "true" || bezelEnabled = "true")) {   ; disabling toolbar and statusbar if bezels or vba link is used as it will show when rendering to the main window
    						dolphinINI.Write("False", "Interface", "ShowToolbar")
    						dolphinINI.Write("False", "Interface", "ShowStatusbar")
    					}
    
    					If (renderToMain = "true")
    						hideEmuObj := Object(emuScanningWindow,0,emuNetPlayWindow,0,emuNetPlaySetupWindow,0,emuErrorWindow1,0,emuErrorWindow2,0,emuGameWindow,1)
    					Else
    						hideEmuObj := Object(emuScanningWindow,0,emuNetPlayWindow,0,emuNetPlaySetupWindow,0,emuErrorWindow1,0,emuErrorWindow2,0,emuPrimaryWindow,0,emuGameWindow,1)
    
    					; Set control types in each port
    					dolphinDevice := 0
    					Loop 4 {
    						If controlTypePort%A_Index%
    							dolphinINI.Write(controlTypePort%A_Index%, "Core", "SIDevice" . dolphinDevice)
    						dolphinDevice++
    					}
    
    					7z(romPath, romName, romExtension, sevenZExtractPath)
    
    					If StringUtils.Contains(romExtension,"\.zip|\.7z|\.rar")
    						ScriptError(MEmu . " does not support compressed roms. Please enable 7z support in RocketLauncherUI to use this module/emu.")
    
    					If RefreshKey {
    						RefreshKey := xHotKeyVarEdit(RefreshKey,"RefreshKey","~","Add")
    						xHotKeywrapper(RefreshKey,"RefreshWiimote")
    					}
    
    					Fullscreen := If Fullscreen = "true" ? "True" : "False"
    					HideMouse := If HideMouse = "true" ? "True" : "False"
    
    					networkSession := ""
    					If (enableNetworkPlay = "true") {
    						RLLog.Info("Module - Network Multi-Player is an available option for " . dbName)
    						dolphinNickname := dolphinINI.Read("NetPlay", "Nickname")
    						dolphinAddress := dolphinINI.Read("NetPlay", "Address")
    						dolphinCPort := dolphinINI.Read("NetPlay", "ConnectPort")
    						dolphinHPort := dolphinINI.Read("NetPlay", "HostPort")
    						netplayNickname := moduleIni.Read("Network", "NetPlay_Nickname","Player",,1)
    						getWANIP := moduleIni.Read("Network", "Get_WAN_IP","false",,1)
    						networkPlayers := 4	; Max amount of networkable players
    
    						If (getWANIP = "true")
    							myPublicIP := GetPublicIP()
    
    						defaultServerIP := moduleIni.Read("Network", "Default_Server_IP", myPublicIP,,1)
    						defaultServerPort := moduleIni.Read("Network", "Default_Server_Port",,,1)
    						lastIP := moduleIni.Read("Network", "Last_IP", defaultServerIP,,1)	; does not need to be on the ISD
    						lastPort := moduleIni.Read("Network", "Last_Port", defaultServerPort,,1)	; does not need to be on the ISD
    
    						If (netplayNickname != dolphinNickname)
    							dolphinINI.Write(netplayNickname, "NetPlay", "Nickname")
    
    						MultiplayerMenu(lastIP,lastPort,networkType,networkPlayers,0)
    						If networkSession {
    							RLLog.Info("Module - Using a Network for " . dbName)
    
    							restoreIniObject := Object()	; initialize object
    							currentObj := ""
    							dolphinConfigPath := dolphinBasePath . "\Config"
    							Loop, % dolphinConfigPath . "\*.ini"
    							{
    								If StringUtils.InStr(A_LoopFileName, "_netplay.ini",,,,0) {
    									RLLog.Info("Module - Found a network specific ini: " . A_LoopFileFullPath)
    									networkIni%A_Index%File := new File(A_LoopFileFullPath)
    									originalIni%A_Index%File := new File(StringUtils.RegExReplace(A_LoopFileFullPath, "_netplay",,,-1,15))
    									backupIni%A_Index%File := new File(originalIni%A_Index%File.FileFullPath . ".backup")
    									originalIni%A_Index%File.Move(backupIni%A_Index%File,1)	; backup original ini
    									networkIni%A_Index%File.Copy(originalIni%A_Index%File)	; copy network ini to original name
    								}
    							}
    
    							moduleIni.Write(lastPort, "GlobalModuleIni", "Network", "Last_Port")
    
    							If (networkType = "client") {
    								moduleIni.Write(lastIP, "GlobalModuleIni", "Network", "Last_IP")	; Save last used IP and Port for quicker launching next time
    								dolphinINI.Write(lastIP, "Network", "Address")
    								dolphinINI.Write(lastPort, "Network", "ConnectPort")
    							} Else	; server
    								dolphinINI.Write(lastPort, "Network", "HostPort")
    
    							dolphinINI.Write(romPath, "Network", "ISOPath0")	; makes browser only show the one game we want to play
    							dolphinINI.Write(1, "General", "ISOPaths")	; makes browser only show the first path set
    							dolphinINI.Write(romPath . "\" . romName . romExtension, "General", "LastFilename")
    							RLLog.Info("Module - Starting a network session using the IP """ . networkIP . """ and PORT """ . networkPort . """")
    						} Else
    							RLLog.Info("Module - User chose Single Player mode for this session")
    					}
    
    					gcSerialPort := 5	; this puts the BBA network adapter into the serial port. If previous launch was Triforce, AM-Baseboard would be set here and would result in Unknown DVD command errors
    
    					; Compare existing settings and if different than desired, write them to the emulator's ini
    					dolphinINI.Write(Fullscreen, "Display", "Fullscreen", 1)
    					dolphinINI.Write(renderToMain, "Display", "RenderToMain", 1)
    					dolphinINI.Write(HideMouse, "Interface", "HideCursor", 1)
    					dolphinINI.Write("False", "Interface", "ConfirmStop", 1)
    					dolphinINI.Write("False", "Interface", "UsePanicHandlers", 1)
    					dolphinINI.Write(gcSerialPort, "Core", "SerialPort1", 1)
    
    					 ; Load default or user specified Wiimote or GCPad profiles for launching
    					If (StringUtils.InStr(systemName, "wii") && UseCustomWiimoteProfiles = "true")
    						ChangeDolphinProfile("Wiimote")
    					If (UseCustomGCPadProfiles = "true")
    						ChangeDolphinProfile("GCPad")
    
    					HideAppStart(hideEmuObj,hideEmu)
    
    					If networkSession
    						primaryExe.Run()	; must be launched w/o /b for browser list to work
    					Else
    						primaryExe.Run(" /b /e """ . romPath . "\" . romName . romExtension . """")	; /b = batch (exit dolphin with emu), /e = load file
    
    					emuGameWindow.Wait()
    					emuGameWindow.Get("ID")
    					emuGameWindow.WaitActive()
    
    					If networkSession {
    						RLLog.Info("Module - Opening NetPlay window")
    
    						; Get the 6-letter ID of the game
    						If (romExtension = ".wbfs")
    							gameID := RLObject.readFileData(romPath . "\" . romName . romExtension,512,6,"UTF8")
    						Else If (romExtension = ".iso")
    							gameID := RLObject.readFileData(romPath . "\" . romName . romExtension,0,6,"UTF8")
    						Else If (romExtension = ".ciso")
    							gameID := RLObject.readFileData(romPath . "\" . romName . romExtension,32768,6,"UTF8")
    
    						; Must wait for Dolphin to finish scanning isos before netplay window can be opened so the game list is populated. Opening too early and the game list will be blank or partially filled.
    						If emuScanningWindow.Exist()
    							emuScanningWindow.WaitClose(60)	; wait 60 seconds max. hopefully doesn't take longer than that to scan your isos...
    						Else {
    							errlvl := emuScanningWindow.Wait(5)	; wait 5 seconds max to appear
    							If errlvl
    								RLLog.Info("Module - Timed out waiting for ""Scanning for ISOs"" window to appear. It may have finished before it could be detected, moving on.")
    							Else
    								RLLog.Info("Module - ""Scanning for ISOs"" window found.")
    						}
    						emuPrimaryWindow.MenuSelectItem("Tools", "Start NetPlay")
    						matchMode := A_TitleMatchMode	; store for restoration later
    						MiscUtils.SetTitleMatchMode(3)	; changes match mode so title must match exactly
    						emuNetPlaySetupWindow.Wait()
    						emuNetPlaySetupWindow.WaitActive()
    						emuNetPlayWindow.ExcludeTitle := emuNetPlaySetupWindow.WinTitle.GetWIndowTitle()		; set emuNetPlayWindow exclude title for the below command
    						If (networkType = "client") {
    							RLLog.Info("Module - Clicking Connect button")
    
    							emuNetPlaySetupWindow.CreateControl("Button1")		; instantiate new control for button1
    							emuErrorWindow1.CreateControl("Button1")
    							emuErrorWindow2.CreateControl("Button1")
    
    							While !breakLoops {
    								emuNetPlaySetupWindow.GetControl("button1").Click()	; click connect button
    								RLLog.Info("Module - Waiting for Host to start game")
    								errlvl := emuNetPlayWindow.Wait(2)	; waits 2 seconds
    								If errlvl {	; 1 if timed out, now check for any error windows and close them
    									Loop, 2		; loop through both error windows
    										If emuErrorWindow%A_Index%.Exist()	; error windows that can appear when host is not running yet
    											emuErrorWindow%A_Index%.GetControl("button1").Click()	; click ok to clear the error
    									RLLog.Info("Module - Host not running yet, trying again")
    									Continue
    								} Else {	; window exists
    									RLLog.Info("Module - Connected to host, waiting for host to start game")
    									Break
    								}
    							}
    						} Else {	; server
    							emuNetPlayWindow.CreateControl("ListBox1")	; create a control called ListBox1
    							emuNetPlayWindow.CreateControl("Button8")	; create a control called Button8 (the Host's Start button)
    							emuNetPlaySetupWindow.CreateControl("ListBox1")	; create a control called ListBox1
    							emuNetPlaySetupWindow.CreateControl("Button3")	; create a control called Button3 (the Host button)
    							emuNetPlaySetupWindow.GetControl("ListBox1").Get("List")	; Get the text from the ListBox
    							loopList := emuNetPlaySetupWindow.GetControl("ListBox1").List	; can't use this object directly on the Parse Loop below
    							Loop, Parse, loopList, `n
    							{
    								If StringUtils.InStr(A_Loopfield, gameID,,,,0) {
    									idLocation := A_Index	; record the location in the ListBox of our game
    									RLLog.Info("Module - Game list shows """ . A_LoopField . """ as item " . A_Index)	; logging each items in ListBox
    								}
    							}
    							If !idLocation {	; game was not found in list
    								ScriptError("Could not find your """ . romName . """ in the game selection window for netplay. Possibly the gameID could not be found in your game. Please check your the RocketLauncher log and report this error.",,,,,1)
    								Gosub, CloseProcess
    								FadeInExit()
    								Goto, CloseDolphin
    							}
    							emuNetPlaySetupWindow.GetControl("ListBox1").Control("Choose",idLocation)	; selects our game in the ListBox
    							RLLog.Info("Module - Clicking Host button")
    							emuNetPlaySetupWindow.GetControl("Button3").Click()	; click host button
    							emuNetPlayWindow.Wait()	; this window should now appear when hosted correctly
    							RLLog.Info("Module - Waiting for " . networkPlayers . " players until the game is started")
    							While !breakLoops {
    								emuNetPlayWindow.GetControl("ListBox1").Get("List")	; Get the text from the ListBox
    								If StringUtils.InStr(emuNetPlayWindow.GetControl("ListBox1").List,"[" . networkPlayers . "]",,,,0) {
    									RLLog.Info("Module - All players have joined, starting game")
    									Break
    								}
    								TimerUtils.Sleep(100,0)
    							}
    							emuNetPlayWindow.GetControl("Button8").Click()	; click Start button
    						}
    						MiscUtils.SetTitleMatchMode(matchMode)	; restore old match mode
    					}
    
    
    					If (enableVBALink = "true") {
    						vbaINI := new IniFile(VBAPath . "\vbam.ini")
    						vbaINI.CheckFile()
    						vbaINIBackup := new File(VBAPath . "\vbam_Backup.ini")
    						vbaINI.Copy(vbaINIBackup.FileFullPath)
    						;removing fullscreen from VBA-M
    						vbaINI.Write(0, "preferences", "fullScreen")
    						;setting other VBA-M ini options
    						VBABiosPathDoubleSlash := StringUtils.Replace(VBABiosPath,"\","\\","all")
    						vbaINI.Write(0, "preferences", "pauseWhenInactive")
    						vbaINI.Write(VBABiosPathDoubleSlash, "GBA", "BiosFile")
    						vbaINI.Write(1, "GBA", "LinkAuto")
    						vbaINI.Write("127.0.0.1", "GBA", "LinkHost")
    						vbaINI.Write(3, "GBA", "LinkType")
    						vbaINI.Write(SelectedNumberofPlayers, "preferences", "LinkNumPlayers")
    						vbaINI.Write(1, "preferences", "useBiosGBA")
    						vbaINI.Write(1, "Display", "Stretch")
    						vbaINI.Write(1, "Display", "Scale")
    
    						;running VBA-M
    						Loop % SelectedNumberofPlayers {
    							currentScreen := A_Index + 1
    							VBA%currentScreen%Exe := new Process(VBAExePath)	; instantiate a new process for each instance of VBA we need to run
    							VBA%currentScreen%Exe.Run(" """ . VBABiosPath . """")
    							; msgbox % "PID: " . VBA%A_Index%Exe.PID . "`nVBABiosPath: " . VBABiosPath
    							VBA%currentScreen%Window := new Window(new WindowTitle(,,,,VBA%currentScreen%Exe.PID))
    							VBA%currentScreen%Window.Wait()
    							TimerUtils.Sleep(VBADelay,0)
    							bezelBottomOffsetScreen%currentScreen% := 24 ; to hide emu bottom bar
    						}
    						;waiting for VBA-M windows bios loading
    						timeout := A_TickCount
    						VBAGBABiosWindow := new Window(new WindowTitle("gba_bios - VisualBoyAdvance-M"))
    						Loop {
    							VBAGBABiosWindow.Get("List")	; Get a list of all vba-m hwnd IDs
    							If (VBAGBABiosWindow.List[0] = SelectedNumberofPlayers){
    								Loop % VBAGBABiosWindow.List[0] {	; loop through each vba-m window
    									currentScreen := A_Index + 1
    									Screen%currentScreen%ID := VBAGBABiosWindow.List[A_Index]	; record each vba-m window's hwnd ID
    								}
    								RLLog.Info("Module - gba_bios Loaded")
    								Break
    							}
    							If (timeout < A_TickCount - 10000) {
    								RLLog.Warning("Module - Timed out waiting gba_bios to load")
    								Break
    							}
    							TimerUtils.Sleep(100,0)
    						}
    						;Resizing Windows to fill screen if no bezel file is found
    						If !(bezelPath) {
    							Loop % (SelectedNumberofPlayers + 1) {
    								If (A_Index = 1) {	; the main Dolphin window
    									X1 := 0
    									Y1 := 0
    									W1 := A_ScreenWidth//2
    									H1 := A_ScreenHeight
    									emuGameWindow.WinTitle.PID := ""	; remove PID from object's WinTitle so only the window hwnd ID is acted upon
    									emuGameWindow.RemoveBorder()
    									emuGameWindow.RemoveTitlebar()
    									emuGameWindow.ToggleMenu()
    									emuGameWindow.Move(X1,Y1,W1,H1)
    								} Else {	; the vba-m windows
    									X%A_Index% := A_ScreenWidth//2
    									Y%A_Index% := (A_Index-2)*(A_ScreenHeight//SelectedNumberofPlayers)
    									W%A_Index% := A_ScreenWidth//2
    									H%A_Index% := (A_ScreenHeight//SelectedNumberofPlayers)+bezelBottomOffsetScreen%A_Index%
    									VBA%A_Index%Window.WinTitle.ID := Screen%A_Index%ID	; set ID of window into object
    									VBA%A_Index%Window.WinTitle.PID := ""	; remove PID from object's WinTitle so only the window hwnd ID is acted upon
    									VBA%A_Index%Window.RemoveBorder()
    									VBA%A_Index%Window.RemoveTitlebar()
    									VBA%A_Index%Window.ToggleMenu()
    									VBA%A_Index%Window.Move(X%A_Index%,Y%A_Index%,W%A_Index%,H%A_Index%)
    								}
    							}
    							TimerUtils.Sleep(50)
    							Loop % SelectedNumberofPlayers {
    								currentScreen := A_Index + 1
    								VBA%currentScreen%Window.Activate()	; put focus on all the VBA windows
    							}
    							VBA1Window.Activate()	; put focus on the first VBA window
    						}
    					}
    
    					BezelDraw()
    
    					emuGameWindow.Activate()
    
    					HideAppEnd(hideEmuObj,hideEmu)
    					FadeInExit()
    					primaryExe.Process("WaitClose")
    
    					CloseDolphin:
    					If networkSession {
    						Loop {
    							If !IsObject(backupIni%A_Index%File)
    								Break
    							RLLog.Info("Module - Restoring the original ini: " . backupIni%A_Index%File.FileFullPath . " to " . originalIni%A_Index%File.FileFullPath)
    							backupIni%A_Index%File.Move(originalIni%A_Index%File.FileFullPath,1)		; restore all backed up inis
    						}
    					}
    
    					7zCleanUp()
    					BezelExit()
    					FadeOutExit()
    					ExitModule()
    
    
    					ChangeDolphinProfile(profileType) {
    						Global settingsFile,romName,dolphinBasePath,RLLog,moduleIni
    						profile := moduleIni.Read(romName, "profile", "Default",,1)
    						RLProfilePath := new Folder(dolphinBasePath . "\Config\Profiles\" . profileType . " (RL)")
    						currentProfileFile := new File(dolphinBasePath . "\Config\" . profileType . "New.ini")
    						defaultProfileFile := new File(RLProfilePath.FilePath . "\_Default_" . profileType . "New.ini")
    						customProfileFile := new File(RLProfilePath.FilePath . "\" . profile . ".ini")
    						If !currentProfileFile.Exist() {
    							RLLog.Warning("Module - You have custom " . profileType . " profiles enabled, but could not locate " . currentProfileFile.FileFullPath . ". This file stores all your current controls in Dolphin. Please setup your controls in Dolphin first.")
    							Return
    						}
    						If !defaultProfileFile.Exist() {
    							RLLog.Warning("Module - Creating initial Default " . profileType . " profile by copying " . profileType . ".ini to " . defaultProfileFile.FileFullPath)
    							RLProfilePath.CreateDir()
    							currentProfileFile.Copy(defaultProfileFile.FileFullPath)	; create the initial default profile on first launch
    						}
    						If (profile != "Default" && !customProfileFile.Exist())
    							RLLog.Warning("Module - " . romName . " is set to load a custom " . profileType . " profile`, but it could not be found: " . customProfileFile.FileFullPath)
    						currentProfileFile.Read()	; read current profile into memory
    						customProfileFile.Read()	; read custom profile into memory
    						If (currentProfileFile.Text != customProfileFile.Text) {	; if both profiles do not match exactly
    							RLLog.Info("Module - Current " . profileType . " profile does not match the one this game should use.")
    							If (profile != "Default") {	; if user set to use a custom profile
    								RLLog.Info("Module - Copying this defined " . profileType . " profile to replace the current one: " . customProfileFile.FileFullPath)
    								customProfileFile.Copy(currentProfileFile.FileFullPath,1)
    							} Else {	; load default profile
    								RLLog.Info("Module - Copying the default " . profileType . " profile to replace the current one: " . defaultProfileFile.FileFullPath)
    								defaultProfileFile.Copy(currentProfileFile.FileFullPath,1)
    							}
    						} Else
    							RLLog.Info("Module - Current " . profileType . " profile is already the correct one for this game, not touching it.")
    					}
    
    					ConnectWiimote(key) {
    						Global Timeout,emuPrimaryWindow,emuGameWindow,emuWiimoteWindow
    						If !emuWiimoteWindow.Exist()
    						{
    							MiscUtils.DetectHiddenWindows("OFF") ; this needs to be off otherwise WinMenuSelectItem doesn't work for some odd reason
    							emuPrimaryWindow.Activate()
    							emuPrimaryWindow.MenuSelectItem("Options","Controller Settings")
    							emuWiimoteWindow.Wait()
    							emuWiimoteWindow.WaitActive()
    						}
    						;emuWiimoteWindow.Activate() ; test if window needs to be active
    						If !emuWiimoteWindow.GetControl(key)
    							emuWiimoteWindow.CreateControl(key)
    						emuWiimoteWindow.GetControl(key).Click()
    						emuWiimoteWindow.GetControl("OK").Click()
    						emuGameWindow.Activate()
    					}
    
    					PairWiimote:
    						ConnectWiimote("Pair Up")
    					Return
    
    					RefreshWiimote:
    						ConnectWiimote("Refresh")
    					Return
    
    					HaltEmu:
    						If RefreshKey
    							XHotKeywrapper(RefreshKey,"RefreshWiimote","OFF")
    					Return
    
    					MultiGame:
    						; MultiGame doesn't work with Dolphin currently because Dolphin hides itself from Winspector Spy and cannot send any commands to the emulator through scripts.
    						If (fullscreen = "True")
    						{	KeyUtils.SetKeyDelay(50)
    							KeyUtils.Send("{Alt Down}{Enter Down}{Enter Up}{Alt Up}")	; go windowed to get the menubar
    						}
    						If bezelEnabled
    							emuGameWindow.ToggleMenu()	; put the menubar back
    						; emuPrimaryWindow.MenuSelectItem("File","Change Disc...")
    						emuPrimaryWindow.MessageUtils.PostMessage("0x111", "00288")	; Change Disc
    						OpenROM(emuOpenROMWindow.WinTitle.GetWindowTitle(), selectedRom)
    						emuPrimaryWindow.WaitActive()
    						If bezelEnabled
    							emuGameWindow.ToggleMenu()	; remove the menubar again
    						If (fullscreen = "True")
    							KeyUtils.Send("{Alt Down}{Enter Down}{Enter Up}{Alt Up}")	; restore fullscreen
    					Return
    
    					RestoreEmu:
    						If RefreshKey
    							XHotKeywrapper(RefreshKey,"RefreshWiimote","ON")
    					Return
    
    					CloseProcess:
    						breakLoops := 1
    						FadeOutStart()
    						If (enableVBALink = "true") {
    							Loop % SelectedNumberofPlayers
    							{	currentScreen := A_Index + 1
    								;VBA%currentScreen%Window.Activate()
    								VBA%currentScreen%Window.Close()
    								TimerUtils.Sleep(100,0)
    							}
    							dolphinINIBackup.Move(dolphinINI.FileFullPath)
    							vbaINIBackup.Move(vbaINI,1)
    						}
    						If networkSession {
    							If emuNetPlaySetupWindow.Exist()
    								emuNetPlaySetupWindow.Close()
    							If emuNetPlayWindow.Exist()
    								emuNetPlayWindow.Close()
    							If !emuGameWindow.Exist()	; if game never launched, close the main emu window
    								emuPrimaryWindow.Close()
    						}
    						If emuGameWindow.Exist()
    							emuGameWindow.Close() ; this needs to close the window the game is running in otherwise dolphin crashes on exit
    					Return
    
    					; Unused messages for reference from Dolphin v4.0 build 6980 x64:
    					; emuPrimaryWindow.PostMessage("0x111", "0261")		; Toggle Fullscreen
    					; emuPrimaryWindow.PostMessage("0x111", "0258")		; Toggle Play/Pause
    					; emuPrimaryWindow.PostMessage("0x111", "0259")		; Stop
    					; emuPrimaryWindow.PostMessage("0x111", "0260")		; Reset
    					; emuPrimaryWindow.PostMessage("0x111", "00539")	; Show Toolbar
    					; emuPrimaryWindow.PostMessage("0x111", "00540")	; Show Statusbar
    					; emuPrimaryWindow.PostMessage("0x111", "05123")	; Refresh List
    					; emuPrimaryWindow.PostMessage("0x111", "0305")		; Change Disc
    					; emuPrimaryWindow.PostMessage("0x111", "00218")	; Load State Slot 1
    					; emuPrimaryWindow.PostMessage("0x111", "00227")	; Load State Slot 10
    					; emuPrimaryWindow.PostMessage("0x111", "00208")	; Save State Slot 1
    					; emuPrimaryWindow.PostMessage("0x111", "00217")	; Save State Slot 10
    					; emuPrimaryWindow.PostMessage("0x111", "00303")	; Start Netplay
    					; emuPrimaryWindow.PostMessage("0x111", "05000")	; Open
    
    					; Unused messages for reference from Dolphin v4.0.2 x86:
    					; emuPrimaryWindow.PostMessage("0x111", "00248")	; Toggle Fullscreen
    					; emuPrimaryWindow.PostMessage("0x111", "00245")	; Toggle Play/Pause
    					; emuPrimaryWindow.PostMessage("0x111", "00246")	; Stop
    					; emuPrimaryWindow.PostMessage("0x111", "00247")	; Reset
    					; emuPrimaryWindow.PostMessage("0x111", "00501")	; Show Toolbar
    					; emuPrimaryWindow.PostMessage("0x111", "00502")	; Show Statusbar
    					; emuPrimaryWindow.PostMessage("0x111", "00217")	; Load State Slot 1
    					; emuPrimaryWindow.PostMessage("0x111", "00226")	; Load State Slot 10
    					; emuPrimaryWindow.PostMessage("0x111", "00207")	; Save State Slot 1
    					; emuPrimaryWindow.PostMessage("0x111", "00216")	; Save State Slot 10
    					; emuPrimaryWindow.PostMessage("0x111", "00286")	; Start Netplay
    					; emuPrimaryWindow.PostMessage("0x111", "05000")	; Open
    					; emuPrimaryWindow.PostMessage("0x111", "05006")	; Exit
    
    15:57:21:052 | RL |      INFO  | +0     | BuildScript - Loaded Pause scripts
    15:57:21:052 | RL |      INFO  | +0     | BuildScript - Loaded Multi-Player scripts
    15:57:21:052 | RL |      INFO  | +0     | BuildScript - Loaded Statistics.ahk script
    15:57:21:052 | RL |      INFO  | +0     | BuildScript - Loaded User Functions script from C:\RocketLauncher\Lib\User Functions\Global.ahk
    15:57:21:052 | RL |      INFO  | +0     | BuildScript - "C:\RocketLauncher\Lib\User Functions\Nintendo Gamecube.ahk" not found
    15:57:21:052 | RL |      INFO  | +0     | BuildScript - "C:\RocketLauncher\Lib\User Functions\Emulators\Dolphin.ahk" not found
    15:57:21:052 | RL |      INFO  | +0     | BuildScript - "C:\RocketLauncher\Lib\User Functions\Nintendo Gamecube\Emulators\Dolphin.ahk" not found
    15:57:21:052 | RL |      INFO  | +0     | BuildScript - "C:\RocketLauncher\Lib\User Functions\Nintendo Gamecube\Metroid Prime (USA).ahk" not found
    15:57:21:052 | RL |      INFO  | +0     | BuildScript - Finished injecting functions into module
    15:57:21:052 | RL |      INFO  | +0     | Main - Module is built
    15:57:21:052 | RL |      INFO  | +0     | CheckFile - Checking if C:\RocketLauncher\AutoHotkey.dll exists
    15:57:21:053 | RL |      INFO  | +0     | Main - Running module
    15:57:21:180 | MD |      INFO  | +N/A   | Module initialized
    15:57:21:181 | MD |      INFO  | +0     | LoadPreferredControllers - Started
    15:57:21:181 | MD |      INFO  | +0     | GetJoystickArray - Started
    15:57:21:201 | MD |      INFO  | +31    | GetJoystickGUID - Started
    15:57:21:201 | MD |      INFO  | +0     | GetJoystickGUID - Ended and found GUID: 908156C12FC3E6118001444553540000
    15:57:21:201 | MD |      INFO  | +0     | GetJoystickArray - Ended
    15:57:21:202 | MD |      INFO  | +0     | LoadPreferredControllers - Sorting Currently Connected joysticks List to match the order of the Preferred Controller List
    15:57:21:202 | MD |      INFO  | +0     | LoadPreferredControllers - Assigning the New Joystick IDs according to the preferred list for the active controllers
    15:57:21:202 | MD |      INFO  | +0     | ChangeJoystickID - Started
    15:57:21:202 | MD |      INFO  | +0     | ChangeJoystickID - Ended
    15:57:21:202 | MD |      INFO  | +0     | LoadPreferredControllers - Ended
    15:57:21:202 | MD |      INFO  | +0     | CheckFile - Checking if C:\Hyperspin\Utilities\JoyToKey\JoyToKey.exe exists
    15:57:21:202 | MD |      INFO  | +0     | Keymapper - Loading joytokey
    15:57:21:202 | MD |      INFO  | +0     | RunKeymapper - Started, using method "load"
    15:57:21:202 | MD |      INFO  | +0     | GetJoystickArray - Started
    15:57:21:204 | MD |      INFO  | +0     | GetJoystickGUID - Started
    15:57:21:204 | MD |      INFO  | +0     | GetJoystickGUID - Ended and found GUID: 908156C12FC3E6118001444553540000
    15:57:21:204 | MD |      INFO  | +0     | GetJoystickArray - Ended
    15:57:21:204 | MD |      INFO  | +0     | GetProfile - Loading Player 1 Profile -> C:\RocketLauncher\Profiles\joytokey\_Default\_Default.cfg
    15:57:21:204 | MD |      INFO  | +0     | RunJoyToKey - Started
    15:57:21:204 | MD |      INFO  | +0     | Process - Exist Xpadder.exe
    15:57:21:205 | MD |      INFO  | +0     | WinClose - Closing: JoyToKey ahk_class TMainForm
    15:57:21:435 | MD |      INFO  | +234   | Process - WaitClose JoyToKey.exe 2
    15:57:21:435 | MD |      INFO  | +0     | Run - Running: C:\Hyperspin\Utilities\JoyToKey\JoyToKey.exe "C:\RocketLauncher\Profiles\joytokey\_Default\_Default.cfg"
    15:57:21:468 | MD |      INFO  | +31    | RunJoyToKey - Ended
    15:57:21:468 | MD |      INFO  | +0     | RunKeymapper - Ended
    15:57:21:468 | MD |      INFO  | +0     | StartModule - Started
    15:57:21:468 | MD |      INFO  | +0     | StartModule - MEmu: Dolphin
    					MEmuV: v5.0
    					MURL: https://dolphin-emu.org/
    					MAuthor: djvj|bleasby
    					MVersion: 2.2.0
    					MCRC: C7DEEF2C
    					iCRC: 9DF8C36F
    					MID: 635038268884477733
    					MSystem: Nintendo Gamecube|Nintendo Wii|Nintendo WiiWare
    15:57:21:468 | MD |      INFO  | +0     | StartModule - You have a supported System Name for this module: "Nintendo Gamecube"
    15:57:21:468 | MD |      INFO  | +0     | LocaleUtils.i18n - Started
    15:57:21:468 | MD |      INFO  | +0     | LocaleUtils.i18n - Ended, using "Open" for "dialog.open"
    15:57:21:468 | MD |      INFO  | +0     | LocaleUtils.i18n - Started
    15:57:21:468 | MD |      INFO  | +0     | LocaleUtils.i18n - Ended, using "Start" for "dialog.start"
    15:57:21:469 | MD |      INFO  | +0     | PluginInit - Started
    15:57:21:469 | MD |      INFO  | +0     | CheckFile - Checking if C:\Hyperspin\Databases\Nintendo Gamecube\Nintendo Gamecube.xml exists
    15:57:21:470 | MD |      INFO  | +0     | BuildAssetsTable - Started - Building Table for: Game Logo|System Logo
    15:57:21:470 | MD |      INFO  | +0     | BuildAssetsTable - Ended
    15:57:21:470 | MD |      INFO  | +0     | BuildAssetsTable - Started - Building Table for: Artwork1|Box Art|Cartridge|Flyers|Letters|Other
    15:57:21:475 | MD |      INFO  | +0     | BuildAssetsTable - Ended
    15:57:21:475 | MD |      INFO  | +0     | BuildAssetsTable - Started - Building Table for: MP4 Game Video|FLV Game Video
    15:57:21:476 | MD |      INFO  | +0     | BuildAssetsTable - Ended
    15:57:21:476 | MD |      INFO  | +0     | PluginInit - Ended
    15:57:21:477 | MD |      INFO  | +0     | StartModule - Ended
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - Fullscreen: true (DEFAULT)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - UseCustomWiimoteProfiles: false (DEFAULT)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - UseCustomGCPadProfiles: false (DEFAULT)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - HideMouse: true (DEFAULT)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - RefreshKey: (NO VALUE)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - Timeout: 5 (DEFAULT)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - Render_To_Main: false (DEFAULT)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - Enable_Network_Play: false (DEFAULT)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - Control_Type_Port_1: (NO VALUE)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - Control_Type_Port_2: (NO VALUE)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - Control_Type_Port_3: (NO VALUE)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - Control_Type_Port_4: (NO VALUE)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - enableVBALink: false (DEFAULT)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - VBAExePath: (NO VALUE)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - VBABiosPath: (NO VALUE)
    15:57:21:478 | MD |      INFO  | +0     | RIniFile.Read - Module - VBADelay: 500 (DEFAULT)
    15:57:21:479 | MD |      INFO  | +0     | Module - Dolphin's base settings folder is not portable and found in: D:\Documents\Dolphin Emulator
    15:57:21:479 | MD |      INFO  | +0     | 7z - Started, received E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).gcm. If rom is an archive, it will extract to D:\7z Temp
    15:57:21:479 | MD |      INFO  | +0     | 7z - This file is not an archive and does not need to be extracted.
    15:57:21:479 | MD |      INFO  | +0     | 7z - Skipping main processing.
    15:57:21:479 | MD |      INFO  | +0     | 7z - Provided rom extension ".gcm" is not an archive type, turning off 7z and running rom directly.
    15:57:21:479 | MD |      INFO  | +0     | 7z - This rom type does not need 7z: ".gcm"
    15:57:21:479 | MD |   WARNING  | +0     | 7z - romPath changed from "E:\Romfiles\Nintendo Gamecube" to "E:\Romfiles\Nintendo Gamecube"
    15:57:21:479 | MD |   WARNING  | +0     | 7z - romName changed from "Metroid Prime (USA)" to "Metroid Prime (USA)"
    15:57:21:479 | MD |   WARNING  | +0     | 7z - romExtension changed from ".gcm" to ".gcm"
    15:57:21:479 | MD |      INFO  | +0     | 7z - Ended
    15:57:21:479 | MD |      INFO  | +0     | Process.Run - Running: C:\Emulation\Emulators\Dolphin\Dolphin.exe  /b /e "E:\Romfiles\Nintendo Gamecube\Metroid Prime (USA).gcm"
    15:57:21:498 | MD |      INFO  | +32    | Window.Wait - Waiting for window "FPS ahk_class wxWindowNR"
    15:58:02:871 | MD |     ERROR  | +41371 | ScriptError - There was an error waiting for the window "FPS ahk_class wxWindowNR". Please check you have the correct version emulator installed for this module, followed any notes in the module, and have this emulator working outside your Frontend first. Also turn off Fade to see if you are hiding your problem.
    15:58:02:871 | MD |      INFO  | +0     | ExitModule - Started
    15:58:02:871 | MD |      INFO  | +0     | UpdateStatistics - Starting Updating Statistics
    15:58:02:913 | MD |      INFO  | +31    | UpdateStatistics - Game section statistics updated.
    15:58:02:913 | MD |      INFO  | +0     | RunKeymapper - Started, using method "unload"
    15:58:02:913 | MD |      INFO  | +0     | GetJoystickArray - Started
    15:58:02:914 | MD |      INFO  | +0     | GetJoystickGUID - Started
    15:58:02:914 | MD |      INFO  | +0     | GetJoystickGUID - Ended and found GUID: 908156C12FC3E6118001444553540000
    15:58:02:915 | MD |      INFO  | +0     | GetJoystickArray - Ended
    15:58:02:915 | MD |      INFO  | +0     | RunJoyToKey - Started
    15:58:02:915 | MD |      INFO  | +0     | Process - Exist Xpadder.exe
    15:58:02:915 | MD |      INFO  | +0     | WinClose - Closing: JoyToKey ahk_class TMainForm
    15:58:03:138 | MD |      INFO  | +234   | Process - WaitClose JoyToKey.exe 2
    15:58:03:138 | MD |      INFO  | +0     | RunJoyToKey - Ended
    15:58:03:138 | MD |      INFO  | +0     | RunKeymapper - Ended
    15:58:03:138 | MD |      INFO  | +0     | ExitModule - Ended
    End of Module Logs
    15:58:03:201 | RL |      INFO  | +42152 | Main - Module ended, exiting RocketLauncher normally
    15:58:03:201 | RL |      INFO  | +0     | ExitScript - Started
    15:58:03:202 | RL |      INFO  | +0     | ExitScript - Restoring taskbar
    15:58:03:415 | RL |      INFO  | +218   | SystemCursor - Restoring mouse cursor
    15:58:03:416 | RL |      INFO  | +0     | ExitScript - Restored cursor
    15:58:03:416 | RL |      INFO  | +0     | ExitScript - Ended
     

  9. Collapse Details
    Re: New feature in Dolphin wont work with actual module. 
    #9
    Senior Member agent47's Avatar
    MainSecondary
    Join Date
    Jan 2016
    Posts
    531
    The current module won't work with recent dev builds because they changed the flag syntax but it's a simple fix I outlined here.
     

  10. Collapse Details
    Re: New feature in Dolphin wont work with actual module. 
    #10
    Member
    MainSecondary
    Join Date
    Nov 2014
    Posts
    61
    Quote Originally Posted by agent47 View Post
    The current module won't work with recent dev builds because they changed the flag syntax but it's a simple fix I outlined here.
    Thanks! This worked perfectly. Really digging this new ubershaders feature, even Metroid Prime is almost perfectly smooth finally.
     

  11. Collapse Details
    Re: New feature in Dolphin wont work with actual module. 
    #11
    Senior Member

    MainSecondary
    Join Date
    Oct 2016
    Posts
    278
    I have my doubts about the latest dev versions though. I tested Resident Evil Remake as my 2nd test game, and it crashed when first entering the mansion. Maybe it was a fluke but crashing on the 2nd test game is not a good sign to me.

    Also, I thought I'd bring something up for people who emulate wii ware - you can't install wads or DLC wads out of the box. I'm using a portable build (create portable.txt in the main emu directory), and I got errors trying to install them. No errors on a non-portable build, but the DLC still wasn't appearing (I used Final Fantasy IV: The After Years as a test), which means it still wasn't working.

    You will either need to install the wii menu (which sucks because then the newly installed Wii Menu imposes space limitations in game with error messages when your 'system memory' is full from installing too many WADs), or copy the cert.sys file from a build where you installed the Wii menu (\Dolphin\User\Wii\sys).

    It's little issues like this why I don't like using dev builds. That's great that Metroid Prime plays smoothly now but I can't help but wonder how many other little things are now broken. I'd almost rather use the stable version.
    Last edited by SupraKarma ; 08-14-2017 at 04:22 AM.
     

  12. Collapse Details
    Re: New feature in Dolphin wont work with actual module. 
    #12
    Junior Member
    MainSecondary
    Join Date
    Mar 2016
    Posts
    3
    Quote Originally Posted by codetvirus View Post
    Hi everyone. Just a few days ago a new great feature is include in Dolphin emulator and is call Ubershaders:
    https://es.dolphin-emu.org/blog/2017/07/30/ubershaders/
    Ill try yesterday and works flawless removing slowdowns and stuttering almost completely in games like Tatsunoko vs Capcom and Metroid. The thing is that when i load the game via Rocketlauncher wont uses this feature. I really apreciate if someone fix this so everyone can enjoy this huge improvement. Thanks a lot.
    Sin título1.png
    Captura.PNG

    I have this same issue. To add to what codetvirus had mentioned here, I had installed a new build and checked my settings again. They showed ubershaders set to "exclusive" still from my old build. Booted a game via hyperspin and got the stuttering. I reopened the emu and booted the same game directly, which then the emu started it's "compiling shaders"" process and everything worked perfectly.

    Following that I again tried through hyperspin,rl and the stuttering returned. It would seem for some reason ubershaders stays disabled booting through RL, whether it is an emu issue or RL issue is beyond me.
     

  13. Collapse Details
    Re: New feature in Dolphin wont work with actual module. 
    #13
    Senior Member cID67's Avatar
    MainSecondary
    Join Date
    Jun 2014
    Posts
    217
    not for me it isn't . ubershaders remains in hybrid mode all the time running from rocketlauncher via hyperspin or directly from within rocketlauncher ui.. I am using dolphin in its portable mode so it doesn't rely on registry entries. don't know if that matters or not.
     

  14. Collapse Details
    Re: New feature in Dolphin wont work with actual module. 
    #14
    Junior Member
    MainSecondary
    Join Date
    Aug 2017
    Posts
    6
    installed the latest nightly after backing up my previous version. turned on ubersahders hybrid mode. Booted through RL and plays everything I've thrown at it so far beautifully. Stuttering gone in Testonuko vs Capcom
     

  15. Collapse Details
    Re: New feature in Dolphin wont work with actual module. 
    #15
    Junior Member
    MainSecondary
    Join Date
    Mar 2016
    Posts
    3
    Working for me now too with latest build. What a difference
     

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •