Discord GIFs
Capture 4-second Valheim GIFs manually or on death and share to Discord. Separate sender names, avatars and optional footers, bold player names and ConfigurationManager support. Windows client only.Discord GIFs
Capture moments from Valheim as looping, silent 4-second GIFs and share them to a Discord channel through your own webhook.
Features
- F8 saves the previous 4 seconds.
- Death capture waits 2 seconds after death, producing approximately 2 seconds before and 2 seconds after the event.
- F1 opens shudnal's ConfigurationManager; select Discord GIFs.
- Separate sender names and avatar URLs for manual and death captures; optional GIF footers and automatically bold player names.
- Portuguese setting labels, editable hotkey, capture quality, local folder, upload size and cooldown.
- GIFs are saved locally even when uploading fails. An empty webhook means local-only capture.
- Default GIF output: 10 FPS, up to 480 pixels wide, looping continuously.
- File size is checked before uploading. Resolution is reduced when required.
- Default upload cap: 20 decimal MB; change it to match your channel. This is not an automatically detected Discord entitlement.
- No microphone, system audio capture or MP4 output.
Installation
Install with your mod manager. BepInExPack Valheim and shudnal's ConfigurationManager are listed as dependencies; the manager also installs their dependencies.
Windows client only. Install on each player's PC that should capture GIFs, not just on the server.
On first launch, the mod automatically downloads FFmpeg from Gyan's HTTPS distribution, verifies its published SHA-256 and extracts the encoder alongside the plugin. Internet access is required once. FFmpeg is a separate executable; OBS is not required. The mod does not bundle FFmpeg or game binaries.
Enter a world, keep the game focused for at least 5 seconds and press F8.
Configuration
Press F1, select Discord GIFs, then adjust:
| Group | Options |
|---|---|
| Geral | Enable capture, capture on death, hotkey |
| GIF | Capture FPS/height, vertical orientation, focus-only capture; advanced buffer settings |
| Discord | Webhook, sender name, death/manual messages, maximum file size, cooldown |
| Discord manual | Manual sender name, avatar image URL, optional footer |
| Discord morte | Death sender name, avatar image URL, optional footer |
| Arquivos | Output folder, automatic FFmpeg download; advanced executable path |
To send GIFs, copy a webhook URL from your Discord channel's integration settings, then use Colar beside the masked webhook field. Clear it to save only on your PC.
Use {player} in either message to insert the player name in bold automatically. Existing **{player}** templates are also accepted without doubling the formatting. The two capture types use the same webhook. Mentions are disabled.
In Discord manual and Discord morte, set independent sender names and avatar URLs. An empty sender name keeps the existing shared sender setting; an empty avatar uses the webhook's default avatar. Supply a direct public HTTP/HTTPS image URL, not a local path. An invalid URL is omitted; Discord still needs to be able to retrieve a valid image from the address.
Footers are optional. A nonempty footer puts the GIF in an image embed with the footer below it. {player} in a footer inserts the plain player name because Discord footer text does not support Markdown. Clear the footer to use the simple GIF attachment layout.
Changes apply to subsequent captures. Capture pauses and clears its buffer while the configuration window is open; after closing it, wait 5 seconds.
The webhook is masked in our normal menu field but remains plain text in the configuration file and its local migration backup. Do not share those files.
The default output folder is clips next to DiscordClips.dll. The existing DLL filename and plugin ID hugo.valheim.discordclips are retained so that prototype upgrades keep their configuration.
Updating from a manually installed prototype
Close the game and replace the DLL in your existing Hugo-DiscordClips folder. Keep ffmpeg.exe and your GIFs.
If switching to installation through the mod manager, remove the old manually installed DLL only to avoid two copies of the same plugin. Keep the old captures. You can set an absolute GIF folder and FFmpeg path in the new configuration.
On first startup, the mod backs up and cleans the prototype configuration. Active preferences and webhook are retained; obsolete audio, microphone, movie encoder and duration settings are removed. Old saved captures are not deleted.
Requirements and limitations
- Windows Valheim client with BepInEx 5 and asynchronous GPU readback support.
- A focused game window and a full capture buffer.
- One export at a time; default cooldown is 15 seconds.
- Capture and GIF encoding use CPU and memory. Lower settings if gameplay is affected.
- Focus loss or opening configuration clears the buffer, including during the death delay.
- The GIF capture and death delay were tested by the author in game. The new sender/avatar/footer options still need in-game and live Discord verification.
- Automated validation covers GIF export/decoding, migration and simulated upload responses; it does not post to Discord.
Credits
Created by Hugo. MIT license for this mod's original code. ConfigurationManager, BepInEx, Harmony, Valheim, Unity and FFmpeg remain separate projects with their own licenses.
