An open API service indexing awesome lists of open source software.

https://github.com/estyms/webfishing-macos-installer

A native webfishing installer for macos
https://github.com/estyms/webfishing-macos-installer

installer macos webfishing

Last synced: about 2 months ago
JSON representation

A native webfishing installer for macos

Awesome Lists containing this project

README

          

# 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](https://mae.wtf/blog/28102024-webfishing-mac) made by [@vimaexd](https://github.com/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_remote` dictionnary key to `remote_steam_id` to 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_borderless` because 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](modlist.md)

## 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:
```jsonc
{
"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](https://github.com/vimaexd) for their blog post !

[Godot RE Tools](https://github.com/GDRETools/gdsdecomp) for the amazing tooling that allows me to patch the game !