Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/notnite/gdweave
Mod loader & runtime script patching for Godot
https://github.com/notnite/gdweave
godot godot-engine mod modding webfishing
Last synced: about 21 hours ago
JSON representation
Mod loader & runtime script patching for Godot
- Host: GitHub
- URL: https://github.com/notnite/gdweave
- Owner: NotNite
- License: mit
- Created: 2024-10-16T16:42:55.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-12-31T23:15:56.000Z (about 1 month ago)
- Last Synced: 2025-02-08T23:07:41.978Z (about 21 hours ago)
- Topics: godot, godot-engine, mod, modding, webfishing
- Language: C#
- Homepage:
- Size: 241 KB
- Stars: 166
- Watchers: 3
- Forks: 12
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# GDWeave
![GitHub downloads](https://img.shields.io/github/downloads/NotNite/GDWeave/total?label=GitHub%20downloads) [![Thunderstore downloads](https://img.shields.io/thunderstore/dt/NotNet/GDWeave?label=Thunderstore%20downloads)](https://thunderstore.io/c/webfishing/p/NotNet/GDWeave/) [![Build](https://github.com/NotNite/GDWeave/actions/workflows/build.yml/badge.svg)](https://github.com/NotNite/GDWeave/actions/workflows/build.yml)
GDWeave is a mod loader & runtime script patcher for [the Godot Engine](https://github.com/godotengine/godot).
## Installation
Download [the latest release](https://github.com/NotNite/GDWeave/releases/latest/download/GDWeave.zip) and extract it to your game install. You should end up with a `GDWeave` folder and `winmm.dll` next to the game files.
You can also [install from Thunderstore](https://thunderstore.io/c/webfishing/p/NotNet/GDWeave/).
After GDWeave is installed, you can [install/create some mods](https://github.com/NotNite/GDWeave/blob/main/MODS.md)!
## Troubleshooting/tips
- Do not download GDWeave from the "Code" button on the GitHub page. Download it through [GitHub](https://github.com/NotNite/GDWeave/releases/latest/download/GDWeave.zip) or [Thunderstore](https://thunderstore.io/c/webfishing/p/NotNet/GDWeave/).
- You can open the folder the game is installed into with Steam - right click > "Manage" > "Browse local files".
- You may need to install [.NET 8](https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/sdk-8.0.403-windows-x64-installer) manually, if the installer from GDWeave doesn't work.
- You may also need to install [Microsoft Visual C++ 2015-2022 Redistributables](https://aka.ms/vs/17/release/vc_redist.x64.exe).
- Users of Proton / Steam Play (i.e. those who are on a Steam Deck, a Chromebook, or are otherwise running Steam for Linux) will need to set their Steam launch arguments to `WINEDLLOVERRIDES="winmm=n,b" %command%`.
- If you're using Wine or Proton, and nothing appears when you attempt to start a game with GDWeave, try downloading [this .gz file](https://github.com/binarylandia/wine_bcryptprimitives_dll_mock/releases/download/2024-11-04_16-27-34/bcryptprimitives.dll-2024-11-04_16-27-34.gz), extracting it, renaming the resulting .dll file to `bcryptprimitives.dll`, and then placing it next to the game files.## Supported versions
Currently, GDWeave only supports one version (for the game [WEBFISHING](https://store.steampowered.com/app/3146520/WEBFISHING/)), but support for more versions can be added.
- GodotSteam 3.5.2
## FAQ
### How?
GDWeave uses a Rust proxy DLL to start a C# library in the target game's address space, then hooks functions in the Godot engine itself. It then parses the GDScript "bytecode" (really a syntax tree) and runs its own processors over it, rebuilding it in place.
### Why not fork Godot?
Because compiling a modified engine for every Godot version isn't feasible, especially when game developers can use their own forks of Godot.
## Credits
GDWeave's logo is U+1F9F5 "Spool of Thread" in [Twemoji](https://github.com/twitter/twemoji/blob/d94f4cf793e6d5ca592aa00f58a88f6a4229ad43/assets/svg/1f9f5.svg?plain=1).