Socks

v0.1001.5·Updated 2025-12-05

Community Mod

About this mod Author’s original text

S☃️cks

(Original) Sockpuppet pixel art by okayo top hat

Socks is the _best_ library for Webfishing modders writing GDWeave mods.

Our motivation publishing this library is primarily to share these solutions and utilities we've written to address

problems we've personally encountered while making mods,

with the hopes you might be able to spend more time focused on fun than overcoming technical roadblocks.

You may also like to check out Better Webfishing Mod Template for a template/guide to making

patch mods that write over the game's code.

Example Usage of building a mod with Socks

onready var Players = get_node("/root/ToesSocks/Players")

onready var Chat = get_node("/root/ToesSocks/Chat")

var currently_worn_hat:= "hat_none"

var is_lobby_owner:= false

func _ready():

Chat.connect("player_messaged", self, "_on_player_messaged")

Players.connect("ingame", self, "_on_ingame")

Players.connect("outgame", self, "_on_outgame")

func _on_player_messaged(message: String, player_name: String, is_self: bool):

if is_self: return

Chat.send("Hi, %s!" % player_name)

func _on_ingame() -> void:

Initialize mod, once we are in-game

currently_worn_hat = Players.get_cosmetics()["hat"]

is_lobby_owner = Players.local_player == Players.get_lobby_owner()

func _on_outgame() -> void:

Teardown in prep for next lobby

currently_worn_hat = "hat_none"

is_lobby_owner = false

Modules

GDScriptify has started breaking when generating our docs - forgive our outdated docs in the meantime until we fix that...

Chat

Players

Hotkeys

tablecopter.gd

var enabled:= false

func _ready():

T Hotkey

var toggle_signal_name = Hotkeys.add(

{"name": "toggle_tablecopter", "label": "Toggle Tablecopter", "key_code": KEY_T, "repeat": false }

)

Hotkeys.connect(toggle_signal_name, self, "_handle_toggle")

CTRL+T Hotkey

var mode_toggle_signal_name = Hotkeys.add(

{"name": HOTKEY_NAME + "_mode", "label": HOTKEY_LABEL + " Mode", "key_code": KEY_T, "repeat": false, "modifiers": ["control"] }

)

Hotkeys.connect(mode_toggle_signal_name, self, "_handle_mode_toggle")

func _handle_toggle():

enabled =!enabled

See Hotkey Configuration Documentation for all hotkey options

Example projects

  • Finapse X
  • Jarvis
  • Trivia
  • Pip Pals

📚 Project Links

  • Changelog
  • Contributing (PRs welcome)
  • Known Issues
  • Feedback & Bug Reports (Discord)
  • Roadmap & Feature Requests

Install & use Install: follow the bundled instructions

  1. Unzip the archive from playbuff and read the bundled readme / instructions first.
  2. 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.
  3. For a manual install, put the mod files into the matching Mod / plugins folder inside the game directory.
  4. 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.

Dependencies

Install these first, or the mod will not work:

toes-NoNameFix

File & checksum

Filename
Socks-0.1001.5.zip
File size
40.7 KiB
SHA-256
e12fa03ed9fdb269ac1eb82e0d4d3620551424268aa53ac90c77e360620c69e9
Stored at
2026-10-06 19:09