NOTE: HTML rendered via /Compile/MdToHtml.sh with pandoc and .md is viewable in Microsoft Visual Studio. This will not look correct on Github.
Hollow Knight Silksong: Plugin Developer Tools (SilkDev)
The backbone of all my Silksong mods — with handy player utilities and a massive quality-of-life toolkit for modders.
✨️ Player-Facing Goodies ✨️
- Skip intro & auto-load save slot
- Block game input while typing (great with Unity Explorer)
- Force-show mouse cursor (F10 by default)
- Extract individual sprites — single frame, rendered sprite, or full sheet (see “Extracting Sprites” section below)
- User interfaces translated [via LLM] into 20 languages
- One-click extraction of all textures
- Press F1 → Extract all textures
- Dumps to PLUGIN_PATH/Textures/NAME-MD5.png (no duplicates)
🛠️ Modder-Facing Power Tools 🛠️
Debugging
Configurations
Input
Events
Textures
Windows
- Configurable log levels + full stack traces on errors
- Tons of classes and functions to make development easier. Most useful include:
- Configs
- Configuration translations and properly sorted by order
- Configurable delayed saving (instant on exit)
- Dynamic string→string entries
- Per-user-saveslot configs with backups
- Input helpers (mouse visibility, joystick vector, input repeat delays, block specific input actions, etc.)
- Priority-based event system with callbacks for major game events
- Texture/sprite extraction and other texture extensions
- Robust IMGUI window base class
- Proper ordered mouse handling even over Unity Explorer windows
- New mouse events: MouseMove, MouseEnterWindow, MouseLeaveWindow
- Overridable event callbacks for GameEvents and all OnGUI event types
- Strict event call ordering by window z-order and priority
- Priority flagging to force windows topmost or bottommost
- Safe drag/resize with config saving
- Fake windows for mouse-only capture
- Simple dialog, popup & progress bar windows
- Screen-space geometry drawing
- Reflection shortcuts, safe callbacks and coroutines, JSON utilities, translations & more
Full source + detailed class docs in the GitHub repo (coming soon)
⚙️ Installation ⚙️
- Install BepInEx
- Extract this mod’s zip into Hollow Knight Silksong/BepInEx/plugins/dakusan/
- You should now have (for example): Hollow Knight Silksong/BepInEx/plugins/dakusan/SilkDev.dll
- If you use my other mods — NoClip — move them into the same dakusan folder.
- Run the game – done!
You may also want to check out my NoClip mod for development help.
🧩️ Extracting Sprites 🧩️
- Set a shortcut in config (default: none – I ship it disabled because it’s included in many of my mods)
- L/R/M-click (when window open) OR press shortcut key → Shows list ordered by cursor distance (closest auto-selected and on top)
- Config Show boxes around sprites …: red outlines on hovered sprites, blue fill + name on closest [required for in-game-sprite clicking]
- Click list item OR in-game-sprite to display:
- Left → single sprite from sprite sheet (may include surrounding sheet parts)
- Right → rendered sprite (can be twitchy)
- Middle → full sprite sheet (lots of sprites)
- Double-left → open sprite in Unity Explorer (if installed; list item only)
- Repeated clicks on animated sprites cycle through different frames
- Left click image to save to: PLUGIN_PATH/Textures/DATE_TIME·NAME.png
- Right click sheet to toggle highlight
