BlueberryWolfiAPIs
Comfy APIs for Webfishing Mods
About this mod Author’s original text
Comfy APIs for WEBFISHING Mod Development
A collection of APIs designed for use in the Comfy WEBFISHING mod within GDWeave, providing streamlined management for player interactions, keybinds, and more.
Installation (for the peeps)
- Ensure GDWeave is installed and working properly
- Download the latest release
- Extract the zip to BlueberryWolfi.APIs and be careful to not rename it.
- Place the folder in WEBFISHING/GDWeave/Mods/BlueberryWolfi.APIs
- Install any other mods which use my API, like
Developer Usage (for the nerds)
- Import the downloaded source code folder into your godot project directory as mods/BlueberryWolfi.APIs.
- Add an autoload entry in your project settings named BlueberryWolfiAPIs (no dot) to ensure that the APIs load before your mods.
- Important: When exporting your project, be careful not to include the source code of these APIs.
Code Integration
PlayerAPI Example:
Importing PlayerAPI
var PlayerAPI
func _ready():
PlayerAPI = get_node_or_null("/root/BlueberryWolfiAPIs/PlayerAPI")
PlayerAPI.connect("_player_added", self, "init_player")
func init_player(player: Actor):
example:
print(PlayerAPI.get_player_name(player))
KeybindsAPI Example:
Importing KeybindsAPI
var _keybinds_api
func _ready():
_keybinds_api = get_node_or_null("/root/BlueberryWolfiAPIs/KeybindsAPI")
var pushtalk_mic_signal = KeybindAPI.register_keybind({
"action_name": "toggle_ptt",
"title": "Toggle Push to Talk",
"key": KEY_T,
})
_keybinds_api.connect(pushtalk_mic_signal, self, "_on_to_talk_button_down") # key down signal is automatically created.
_keybinds_api.connect(pushtalk_mic_signal + "_up", self, "_on_to_talk_button_up") # key up signal is automatically created.
func _on_to_talk_button_down() -> void:
print("Push to talk on")
func _on_to_talk_button_up() -> void:
print("Push to talk off")
PlayerAPI
The PlayerAPI simplifies player-related tasks such as managing actors, steam IDs, and player states.
Variables
PlayerAPI.local_player # Local player as an actor
PlayerAPI.in_game # Checks if the player is in the game
PlayerAPI.players # List of player actors in the game
Signals
_player_added(player) # Triggered when a player joins, returns the player actor
_player_removed(player) # Triggered when a player leaves, returns the player actor
_ingame() # Triggered when the local player is in-game
Functions
is_player(node: Node) -> bool # Checks if a node is a Player
get_player_from_steamid(steamid: String) -> Actor # Gets player by Steam ID
get_player_name(player: Actor) -> String # Returns player's name
get_player_title(player: Actor) -> String # Returns player's title
get_player_steamid(player: Actor) -> String # Returns player's Steam ID
KeybindsAPI
The KeybindsAPI allows mods to register custom keybinds and trigger signals for input events. Configurable in the in-game controls menu.
Signals
_keybind_changed(keybind: String, title: String, input_event: InputEventKey)
Functions
register_keybind(keybind_data: Dictionary) -> String # Registers a keybind, returns the signal name
Note: A signal with "_up" appended to the signal name is automatically created for key release.
Requirements
- Ensure GDWeave is properly installed to use these APIs.
Install & use Install: follow the bundled instructions
- Unzip the archive from playbuff and read the bundled readme / instructions first.
- Most mods rely on the game's mod loader — the usual route is a community mod manager (such as r2modman): pick this game, install, and it handles the loader and dependencies.
- For a manual install, put the mod files into the matching Mod / plugins folder inside the game directory.
- Launch the game to confirm it loaded; mods with listed dependencies need those installed as well.
Install locations vary a lot between mods — the bundled readme is the most reliable guide. Most WEBFISHING mods need the GDWeave loader; the bundled readme explains where files go.
Install these first, or the mod will not work: