Getting Started

So you wanna make you first YOMI Hustle mod, do ya? Well hold your horses bucko, you got to setup your environment first.

Setup

Tip

Setup instructions are text and image based. Below is a Youtube video, if you would like to watch one instead.

Watch the "YomiHustle Tutorials - Part 1 - Setup - [The Beeg Series] - (No Coding Series)" by `@Nuion on Youtube <https://www.youtube.com/@Nuion>`_!

YomiHustle Tutorials - Part 1 - Setup - [The Beeg Series] - (No Coding Series)

Prerequisites

Below are some prerequisite you need to have downloaded and installed to start modding:

If already have those installed, you can skip the following.

Installing Godot Steam 3.5.1

These are the instructions for installing Godot Steam, a Godot fork that has steam combatably built in. It also includes raw Steamworks SDK file witch is required for YOMIH to work.

In our case YOMIH specifically uses version 3.5.1 of this program, so we will be installing that.

Windows:

  1. Download Godot Steam 3.5.1 64bit (or 32bit ) .zip into your Downloads folder.

  2. Make a new folder to store Godot Steam in. (Name it something like yomi-godot as this will most likely only be used for modding)

    Godot Steam is a portable application it is recommended to put it in your portable installation folder, if you have one. If you don’t have one, we highly recommend making one, as you will come across applications like this pretty often.

    (Personally I just have a folder named Programs in my Desktop to place them in)*

  3. Extract the *Godot Steam* ``.zip`` into the new folder.

  4. Run the windows-351-editor-64bit.exe file.

    This will the executable you open to run the Godot Steam Editor. (ie. What you will open to actually mod)

  5. (Optional) Create a shortcut to windows-351-editor-64bit.exe on your Desktop.

    Name it YOMI Godot if you want.

    Tip

    Here is an icon for the shortcut you can download for the shortcut.

    ../_images/yomi-godot.ico

Linux

  1. Download Godot Steam 3.5.1 Linux .zip into your Downloads directory.

    curl --output-dir ~/Downloads/ -o https://codeberg.org/godotsteam/godotsteam/releases/download/g351-s155-gs3184/linux64-g351-s155-gs3184.zip
    
  2. Make a new directory to store Godot Steam in. (Name it something like yomi-godot as this will most likely only be used for modding)

    Godot Steam is a portable application it is recommended to put it in your portable installation folder, if you have one. If you don’t have one, we highly recommend making one, as you will come across applications like this pretty often.

    (Personally I just have a directory named Programs in ~/Documents to place them in)

    Important

    Set YOMI_GODOT_DIR= to the full path you want to store Godot Steam inside. (Path starting from root)

    YOMI_GODOT_DIR="!Enter path here!"
    mkdir -p "$YOMI_GODOT_DIR"
    
  3. Extract the Godot Steam .zip into the new directory.

    unzip ~/Downloads/linux64-g351-s155-gs3184.zip -d "$YOMI_GODOT_DIR"
    
  4. Give executable permissions to ``linux-351-editor.64`` and run it.

    This will the executable you open to run the Godot Steam Editor. (ie. What you will open to actually mod)

    Warning

    Make sure to run it in the same directory as yomi-godot as the editor uses your current working directory ( pwd ) to find libsteam_api.so.

    cd "$YOMI_GODOT_DIR""
    chmod +x linux-351-editor.64
    ./linux-351-editor.64
    
  5. (Optional) Create a shortcut to windows-351-editor-64bit.exe on your Desktop.

    For more exact steps, read Speeding up Development with Linux.

Mac:

Note

Instructions, Coming Soon

Installing GDSDecomp

Windows:

  1. Find and Download the latest GDSDecomp .zip ( Windows v2.6.0 Download ) into your Downloads folder.

  2. Make a new folder to store GDSDecomp in. (You technically don’t have to, but personally i would)

    GDSDecomp is a portable application it is recommended to put it in your portable installation folder, if you have one. If you don’t have one, we highly recommend making one, as you will come across applications like this pretty often.

    (Personally I just have a folder named Programs in my Desktop to place them in)

  3. Extract the GDSDecomp .zip into the new folder.

  4. Run gdre_tools.x86_64.

    Tip

    Make sure to remember the location of this executable. You will use it in the Decompiling YOMI Hustle Section.

Linux:

  1. Find and Download the latest GDSDecomp .zip ( Linux v2.6.0 Download ) into your Downloads directory.

    curl --output-dir ~/Downloads/ -o https://github.com/GDRETools/gdsdecomp/releases/download/v2.6.0/GDRE_tools-v2.6.0-linux.zip
    
  2. Make a new directory to store GDSDecomp in. (You technically don’t have to, but personally i would)

    GDSDecomp is a portable application it is recommended to put it in your portable installation folder, if you have one. If you don’t have one, we highly recommend making one, as you will come across applications like this pretty often.

    (Personally I just have a directory named Programs in ~/Documents to place them in)

    Important

    Set GDSDECOMP_DIR= to the full path you want to store GDSDecomp inside. (Path starting from root)

    GDSDECOMP_DIR="!Enter path here!"
    mkdir -p "$GDSDECOMP_DIR"
    
  3. Extract the GDSDecomp .zip into the new folder.

    unzip ~/Downloads/GDRE_tools-v2.6.0-linux.zip -d "$GDSDECOMP_DIR"
    
  4. Give executable permissions to ``gdre_tools.x86_64`` and run it.

    Tip

    Make sure to remember the location of this executable. You will use it in the Decompiling YOMI Hustle Section.

    cd "$GDSDECOMP_DIR""
    chmod +x gdre_tools.x86_64
    ./linux-351-editor.64
    

Mac:

Note

Instructions, Coming Soon


Decompiling YOMI Hustle

Warning

The below steps do require you to know the folder path to where YOMI Hustle is installed. If you don’t know, find it by following these steps:

Here is how you can decompile your (yes, YOUR) install of YOMI Hustle.

Warning

Each time YOMI Hustle updates, you may need to do this process again! (Unless you want outdated mods)

Tip

If you want to skip this, you can download the official source code at https://github.com/uzkbwza/hustle.

  1. Create a new folder for where you want to store the decompiled code of YOMI Hustle in.

    Note

    Remember the full path of this location, as it will be used in step 4.

  2. Open the GDSDecomp executable.

    (Previously remembered from the Installing GDSDecomp Section)

  3. Select RE Tools then Recover Project… .

    ../_images/tutorials-start-1.png
  4. Navigate to/paste the folder location of your YOMI Hustle installation, and select the file named YourOnlyMoveIsHUSTLE.pck.

    ../_images/tutorials-start-2.png
  5. Wait for it to load, click the Select button near the bottom of the screen, then navigate to/paste the folder you CHOSE to store the decompiled code of YOMI Hustle in. Finally, Open it and hit Extract.

    ../_images/tutorials-start-3.png
  6. Wait a while as the decompilation process runs. You may see warning or errors popup in the log area you can ignore them. Once the popup appers, hit OK and close GDSDecomp.

    Tip

    If you want to varify your decompilation, you can do that by opening the folder you chose to store the compilation in, and checking to see if everything looks good.

    ../_images/tutorials-start-4.png
  7. Navigate back to the location of your YOMI Hustle installation, open the lib folder, and copy the file named tbfg.dll.

Note

On Linux, tbfg.dll is actually named tbfg.so.

Warning

If you forget to do this, the game will crash as soon as you try to run it.

tbfg stands for Turn Based Fighting Game.

  1. Navigate back to the location of the folder you chose to store the decompiled code of YOMI Hustle in. Then open the lib folder in there, and paste tbfg in there.

  2. Now Navigate back to the location of your GDSDecomp installation, and copy the file named steam_api64.dll (or steam_api32.dll in the 32bit version) and copy it.

Note

On Linux, steam_api64.dll is actually named libsteam_api.so.

Warning

If you forget to do this, running the project will do nothing and won’t even give you an error message. Also hitting Quit to project list won’t open the project list after quitting.

  1. Finally, navigate back to the decompiled code folder, and paste the steam library directly into the root of the project.

Congratulations! You have successfully decompiled YOMI Hustle. Now you can continue to Setting up Godot.

Tip

We recommended creating a copy of the decompilation folder, prefixing with the phrase -backup to backup your decompilation.

Find where YOMIH is Downloaded

  1. Open Steam.

  2. Go to Library and select the game Your Only Move Is HUSTLE from the sidebar or shelf.

    ../_images/tutorials-start-5.png
    ../_images/tutorials-start-6.png
  3. Click the Settings Icon, then hover over Manage and click Browse local files.

    ../_images/tutorials-start-7.png
  4. Focus on the file Explorer window then copy the folder path from on the top bar.

    ../_images/tutorials-start-8-1.png

    Windows Screenshot of the Windows File Explore (Cropped from @Nuion on Youtube ).

    ../_images/tutorials-start-8-2.png

    Linux Screenshot of Dolphin File Explore on the KDE Plasma Desktop environment.


Setting up Godot

  1. Open the Godot Steam Editor executable.

    Note

    On Linux, you may be required to run "$YOMI_GODOT_DIR/linux-351-editor.64" in your terminal to get it to accually run.

  2. Click the Import button on the sidebar, then navigate to/paste the folder path for your :ref`YOMI Hustle <yverb-yomih>` decompilation. Finally click the Import & Edit button.

    ../_images/tutorials-start-9.png

After doing that, it should automatically show the splash screen and open the project. If it looks something like this you did everything correct:

../_images/tutorials-start-10.png

To open the Decompiled YOMI from now on, just select it from the Project Manager window, and click the Edit button on the sidebar.

../_images/tutorials-start-11.png

Tip

Now if you want to make Mod development a little faster, you can install some of the recommended plugins.

And if you want to streamline the launching process (specifically on Linux), read Speeding up Development with Linux.



Extra setup (Optional)

Speeding up Development with Linux

You can create a shortcut to automatically open the project on your terminal and the Desktop by following the below steps:

Creating shortcuts in Linux can be a little more confusing then in Windows. Here is a mini tutorial on how to do so: 1. Create the helper script.

First you will need to create a bash script in the editor of your choice. This script will automatically open the* YOMIH decompiled project.

Name the file yomi-godot.sh, and paste the following:

#!/bin/bash

YOMIGDPATH="Enter full yomi-godot path"
YOMIDECOMP="Enter full yomi-decomp path"

cd $(dirname $YOMIGDPATH)
$YOMIGDPATH --editor --path $YOMIDECOMP

We now have to make sure it has the execute permission with the chmod.

chmod +x yomi-godot.sh

After that, move it to the yomi-godot path:

mv yomi-godot.sh $YOMI_GODOT_DIR
  1. Create the .desktop file.

    In your text editor of choice, create a file called yomi-godot.desktop.

    Tip

    Now if you don’t know, .desktop is the file format used by most distros as what is essentially shortcuts on Linux (specifically for applications). Whats nice is that the .desktop file is basically just a .cgf file, so we can vary easily modify it and write our own completely from scratch.

    Important

    Paste the following, replacing all mentions of [YOMI_GODOT_DIR] with the full path for the directory storing Godot Steam.

    [Desktop Entry]
    Categories=Development
    Comment[en_US]=Godot Steam Engine 3.5.1
    Comment=Godot Steam Engine 3.5.1
    Encoding=UTF-8
    Exec=[YOMI_GODOT_DIR]/yomi-godot.sh
    GenericName[en_US]=
    GenericName=
    Icon=
    MimeType=
    Name[en_US]=YOMI Godot
    Name=YOMI Godot
    Path=[YOMI_GODOT_DIR]
    StartupNotify=true
    Terminal=true
    TerminalOptions=
    Type=Application
    

    Tip

    ../_images/yomi-godot.ico

    If you want it to use the above custom icon, download it here and place it into the yomi-godot directory. Then in yomi-godot.desktop, Edit the Icon= line to be Icon=[YOMI_GODOT_DIR]/yomi-godot.ico instead.

    Now technically you can just move yomi-godot.desktop to your Desktop and it would work, however, continuing uses a better option.

  2. Add it to your user’s system applications.

    In most Linux distros, you can add .desktop files to ~/.local/share/applications/ to get them to show up in system menus.

    mv yomi-godot.desktop ~/.local/share/applications/
    

    After doing that, to make is show up on the Desktop, just create a symbolic link <https://linuxvox.com/blog/what-are-symlinks-in-linux/#1-what-are-symbolic-links> from it, to the Desktop.

    ln -s ~/.local/share/applications/yomi-godot.desktop ~/Desktop/yomi-godot.desktop
    

    Warning

    If you want to edit/copy/delete the shortcut, remember that this is a and that any actions you do to the one on the Desktop, gets mirrored to the one in ~/.local/share/applications/.

    This can especially get confusing when trying to make a copy of the shortcut, as both the original, and the copy will link to the same file. (Even if they have different names)

    To fix this, make sure to make the copy inside of ~/.local/share/applications/ instead, then create a new link from there.

  3. (Super Optional) Link your script to the “``PATH``”

    If you also want to be able to acces yomi-godot from the terminal, create a symbolic link from the script to ~/.local/bin/ with the file name yomi-godot. (No extension)

    ln -s "$YOMI_GODOT_DIR/yomi-godot.sh" ~/.local/bin/yomi-godot
    

    Then reload your terminal.

    Now you can run the command yomi-godot from anywhere and it will automatically start yomi-godot.sh

    [user@host]$ yomi-godot
    Godot Engine v3.5.1.stable.custom_build.6fed1ffa3 - https://godotengine.org
    Found discrete GPU, setting DRI_PRIME=1 to use it.
    Note: Set DRI_PRIME=0 in the environment to disable Godot from using the discrete GPU.
    OpenGL ES 3.0 Renderer: HAINAN (radeonsi, , ACO, DRM 2.51, 6.17.0-35-generic)
    Async. shader compilation: OFF
    ...
    

Next Steps

Great job land-lubber, you have valiantly built a grand vessel to sail the two seas abroad, however a great parting is afoot. Witch path will you voyage hence forth: