Webfishing MacOS Installer#
An installer for a native version of webfishing on macos
Why??#
Webfishing is a game I love, however, it is poorely running on Whisky for macOS due to some unknown reason.
While searching for some solutions I stumbled across a blog article made by @vimaexd, it worked well in singleplayer, however as of now the multiplayer no longer works and this is why I decided to make this installer after figuring out how to patch this issue.
Prerequisite#
- Root privileges
- Steam
Installation#
To run the app, you can double-click on it, doing so will put the build folder inside your home directory /Users/[you]/build
You can also run it from the command line and doing so will put the build folder inside the current working directory.
Implemented Patches#
- renaming
steam_id_remotedictionnary key toremote_steam_idto fix network spam detection that resulted in timeouts - prevent the game from crashing when saving the options by not setting any values to
OS.windowed_borderlessbecause setting a value to it crashes the game somehow
How to install a mod?#
When running the software for the first time and building webfishing, you'll notice that a mods folder has appeared in the folder where the installer is.
In order to install a mod, just copy a mod folder in it, a mod folder has a manifest.json file in it.
After that, run the installer again ! It will tell you in the terminal if the mod is installed or if something went wrong.
Here's a small mod list : link to the mod list
How to make a mod?#
As you can see in the example_mods folder, a mod has typically two folders and a single manifest.json file having the following structure:
{
"name": "Ship Mod", // Mod name
"author": "Estym", // Author
"pck_info": { // (Optional)
"directory": "pck", // Relative folder path to where the mod resources are
"resource_prefix": "res://Mods/Ship/" // Resource path prefix for the mod resources
},
"patches": [ // Array of patches
{
"resource": "res://Scenes/Entities/Player/player.gdc", // Resource to patch
"patch_file": "patch/player.patch" // relative file path to the patch file
}
],
"deps": [] // Dependencies for the mod (Optional)
}
Notes:#
- The patch files are made by using
$ git diff [original_file] [modded_file] > file.patch
Credits#
@vimaexd for their blog post !
Godot RE Tools for the amazing tooling that allows me to patch the game !