Jump to content

All my products and services are free. All my costs are met by donations I receive from my users. If you enjoy using any of my products, please donate to support me. My bare hosting costs are currently not met so please consider donating by either clicking this text or the Patreon link on the right.

Patreon

Recommended Posts

Posted

Yoku's Island Express is a charming little platformer from 2018 with pinball elements.

It needs a few keys, but if you have the standard buttons on your cab, you should be able to play it.

 

In this post, I'll show you the way I have set it up on my cabinet. Your mileage may vary, of course, but I'll explain the scripts I use as best I can. You also have to edit the game's config file, but it's a simple text file, so no problems there.

 

Part 1: THE KEYS

 

Required keys:

- Flippers (obviously)

- Walking left and right

- Enter (Interact)

- Space (Inventory)

- Tab (Map)

- Escape (Go to Menu)

 

I've used an AutoHotKey script to remap the keys on my cab as follows:

- Flippers remain Left Shift and Right Shift.

- Walking is mapped to the Magnasave buttons, Left Control and Right Control

- Enter remains mapped to the Launch Ball button, but I've also mapped it to all the other game buttons I have on my lockbar, namely F, H and J.

- Escape is mapped to my Start button (1). The start button brings up the pause menu in most console games, so why not here too :-)

- The Exit button kills the game process and the key mapping script.

- Inventory and Map are mapped to my Coin (5) and "Change View" (i) respectively. If you don't have a "Change View" button, you could try mapping it to a buy-in button if you have one.

Note that I also have a joystick on my cab, which can be useful for up and down movement in the pause menu and when selecting your game slot in the beginning. If you don't have up and down movement, you should still be able to play, but you can only select slot 1 at start.

 

Here is the script I use:

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

~LControl::Left

~RControl::Right

$1::Esc

$Esc::
{
Process, Close, Yoku.exe
}
Return

~f::Enter

~h::Enter

~j::Enter

~5::Tab

i::Space

 

Part 2: THE CONFIG FILE

You should find the game's config file, config.csv, in C:\Users\[YOUR USERNAME]\AppData\Roaming\Villa Gorilla\Yoku's Island Express . Simply open it with Notepad or a similar text editor.

saveslot;0
language;
video_mode;windowed
video_resolution;0,0
video_exclusive_fullscreen_resolution;0,0
video_hud_enabled;1
video_trilinear_filtering_enabled;1
video_colorgrading_enabled;1
video_bloom;0
video_vingette_enabled;1
video_grass_enabled;1
video_grass_physics_enabled;1
video_shrubbery;1
video_caustics_enabled;1
video_extrude_enabled;1
video_maximum_frame_latency;1
video_texture_quality;0
video_vsync;1
video_gpu_skinning;0
volume_sfx;10
volume_music;10
volume_rumble;10
ui_platformicons;-1
ui_show_options;0
ui_show_quit_to_desktop;0
ui_show_boot_logos;0
demo_attract_mode;0
demo_demo_timer;0
demo_idle_timer;0
timer_enabled;0

The important changes are:

video_mode needs to be set to windowed

ui_show_options needs to be set to 0: This will stop players fiddling with your windowed/fullscreen/settings.

ui_show_quit_to_desktop can be set to 0 but doesn't have to. Since the Exit button quits the game, showing a quit option in the menu is not really needed.

ui_show_boot_logos speeds up the start, the Team17 and Villa Gorilla Intro videos are skipped and the game starts right away.

 

Part 3: GETTING THE GAME ON THE BACKGLASS

Here is where more AutoHotKey scripting comes in.

I'll paste the script with annotations explaining what everything does.

#NoEnv Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn Enable warnings to assist with detecting common errors.
; SendMode Input Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% Ensures a consistent starting directory.


#SingleInstance force

; Stop user input from being registered until the script has done everything it needs to do

BlockInput, on

; Run the game. You need to change this line to fit your directory.

Run, C:\games\YokusIslandExpress\Yoku.exe

; Cover the playfield monitor in black

Gui, Color, black
Gui +AlwaysOnTop
Gui -Caption
Gui, Show, x0 y0 w%A_ScreenWidth% h%A_ScreenHeight%

; Wait a bit, then set the game window as active

Sleep, 500
WinActivate, Yoku's Island Express
Sleep, 500

; Wait a bit more to make sure everything is active so far (you may have to change the 3000 value depending on how fast your machine is), then run two important scripts

Sleep, 3000

; Run a script that will monitor the game process and will kill all necessary programs if the game is no longer running

run, ifitexists_yoku.exe

; Run the key remapping script

run, keys_yoku.exe

; Just some precautions that helped me in the past on other Windows games...
; These may not even be needed here, but this should remove any Windows-style frames around the window.
; You can probably delete these lines now that I think about it, since the game is set to windowed fullscreen.

WinSet, AlwaysOnTop, ON, A
WinGet, id1, ID, A
WinSet, Style, -0xC00000, ahk_id %id1%

; Move the game window to the Backglass monitor.
; This assumes that your Backglass is monitor 2 and your Playfield is monitor 1.
; Change the 1920 value to whatever the width of your Playfield monitor is. My resolution happens to be 1920x1080.

Sleep, 100
WinMove, Yoku's Island Express, , 1920, 0


; Maximize the game window, resizing it to the width of your Backglass monitor.
; I need this step because my Backglass has a resolution of 1600x1200.
; If I moved the game window without resizing, it would bleed over onto my 3rd screen,
; since the game window would still be at a width of 1920.

Sleep, 100
WinMaximize, Yoku's Island Express


; Again, not sure if this is still needed.
; In some other Windows games, a command input window would pop open in the background, and this will hide it.
Sleep, 1000
WinHide, C:\Windows\System32\cmd.exe

; Finally, re-enable user input.

BlockInput, off

 

Part 4: THE "IF IT EXISTS" SCRIPT

As you can see above, the start script not only runs a key remapping script, but also another script to see if the game is still running.

This script monitors the yoku.exe process. While it's running, the script will take no action.

If yoku.exe is no longer running, the script will kill the start script and the key mapping script, and also remove the black GUI that was put over the playfield.

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

ProcessName = Yoku.exe

loop {
	Process, Exist, %ProcessName% ; check to see if it is running
	If (ErrorLevel = 0) ; If it is not running
	   {
		Gui, Destroy
		Process, close, keys_yoku.exe
		Process, close, run_yoku.exe
		ExitApp
	   }
	Else ; If it is running, do nothing.
	   {
	   }
}

 

Part 5: THAT'S IT

So here you are. I know some parts of the scripts may be clunky and/or redundant (which is partly a result of me recycling some of my scripts for other games and partly a result of me not being a programmer), but they work for me. Have fun and let me know if it worked for you!

config.csv ifitexists_yoku.ahk keys_yoku.ahk run_yoku.ahk

  • Like 1
  • Draco1962 changed the title to [GUIDE] Running Yoku's Island Express on your cab's backglass

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...