Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
VisualItemSpawner
Browse items with actual game pictures, names and descriptions. Give or drop items, preview creatures, and control multiplayer spawning permissions.
By PoedilMod
| Last updated | a week ago |
| Total downloads | 266 |
| Total rating | 1 |
| Categories | Utility Mods AI Generated Gear Misc Tools |
| Dependency string | PoedilMod-VisualItemSpawner-1.0.1 |
| Dependants | 0 other packages depend on this package |
This mod requires the following mods to function
denikson-BepInExPack_Valheim
BepInEx pack for Valheim. Preconfigured with the correct entry point for mods and preferred defaults for the community.
Preferred version: 5.4.2351README
Visual Item Spawner
Browse Valheim items by their actual game pictures, readable names and descriptions. Search the catalog, select an item, and give it to your inventory or drop it nearby. A separate creature browser lets you preview and spawn creatures.
Features
- Real inventory pictures with localized item names and descriptions.
- Search, categories, adjustable card sizes and favorites.
- Quantity, quality and variant controls where supported by the item.
- Give/drop sets, recipe ingredients and creature loot.
- Creature previews, level controls and an optional tamed toggle.
- Configurable creature cap within 50 metres, enforced by the host/server.
- Multiplayer requests checked against the host/server's permissions and limits.
- Internal
FW_andSP_copies and Dvergr NPC weapons, suits and hair excluded from the item catalog.
Screenshots
Item spawner

Creature spawner

Configuration menu

Installation
Requires Valheim and BepInEx 5. Install using Thunderstore Mod Manager or r2modman to obtain the declared BepInEx dependency automatically.
For manual installation, copy plugins/VisualItemSpawner/VisualItemSpawner.dll
from this ZIP to BepInEx/plugins/VisualItemSpawner/ in your game or mod profile.
For multiplayer, install the same release on the host/server and every client that wants to use the browsers and spawn actions. This release uses protocol 5. Older protocol versions are incompatible. A dedicated server runs without browser UI.
Controls
| Action | Default control |
|---|---|
| Item browser | F6 |
| Creature browser | F7 |
| Search | Type; Backspace deletes; Delete clears |
| Clear search / close | Escape clears search first, then closes |
| Select item | Click, arrows or Tab |
| Change page | Page Up / Page Down |
| Spawn selected entry | Enter or double-click |
| Quantity / quality / level | Use the details-panel controls |
| Favorites | Star in the details panel |
Button labels automatically fit their available space, including when a wider game font is loaded. Hotkeys are configurable. Creature pictures are generated from game prefabs; items use their own inventory sprites. Missing artwork may use a fallback.
Configuration and multiplayer permissions
The config is generated at BepInEx/config/visualitemspawner.cfg.
Restart the game or server after changing settings. Changing a joining
client's permissions does not override the server's policy.
| Section | Purpose |
|---|---|
| 01 - General | Enable or disable the mod |
| 02 - Browser | Hotkeys, ingredient exclusions and default tame toggle |
| 03 - Catalog | Creature name exclusions |
| 04 - Server spawning | Destinations, quantity and level limits |
| 05 - Server permissions | Non-admin item and creature access |
| 06 - Network | Request rate limits and handshake retry timings |
Non-admin item and creature access default to false. Enable them separately
with AllowNonAdminItems and AllowNonAdminCreatures on the host/server.
Admins retain access regardless of those two non-admin settings.
The default rate limit is 20 requests per player per 5 seconds.
Set and ingredient actions send multiple requests and can reach that limit.
Keep MarkItemsAsCheated consistent on client and server. Server limits and
permissions govern requests; some inventory work occurs on the receiving client.
The mod enforces its own operations and is not a general anticheat.
All settings and defaults
BepInEx creates the config automatically when the mod first loads. No default config is included in the ZIP, so installation does not replace your settings. With a mod manager, the file belongs to the selected profile. On a dedicated server, edit that server's own config. Stop the game/server before editing, then start it again to apply changes. Existing legacy settings migrate to the numbered sections; values already present in the new sections take precedence.
| Section | Setting | Default | Effect |
|---|---|---|---|
| General | Enabled | true | Enables the mod |
| Browser | ToggleKey | F6 | Opens the item browser |
| Browser | CreatureToggleKey | F7 | Opens the creature browser |
| Browser | ExcludedIngredientNames | idol | Comma-separated ingredient exclusions |
| Browser | CreaturesTamedByDefault | false | Initial tamed toggle |
| Catalog | ExcludedCreatureNames | empty | Comma-separated creature exclusions; match client/server values |
| Catalog | IncludedItemPrefabs | empty | Exact prefab IDs to retain despite NPC equipment filtering |
| Catalog | ExcludedItemPrefabs | empty | Exact prefab IDs to hide; takes precedence over included IDs |
| Server spawning | MaxQuantityPerRequest | 100 | Quantity ceiling, clamped to 1–1000 |
| Server spawning | AllowInventory | true | Allows Give |
| Server spawning | AllowGround | true | Allows Drop |
| Server spawning | MarkItemsAsCheated | false | Marks delivered items as cheated; match client/server values |
| Server spawning | MaxCreatureLevel | 10 | Creature level ceiling, clamped to 1–50 |
| Server spawning | MaxCreaturesInArea | 20 | Maximum living creatures within 50 metres of each spawn position; 0 disables |
| Server permissions | AllowNonAdminItems | false | Allows non-admin item spawning |
| Server permissions | NonAdminMaxQuantityPerRequest | 20 | Non-admin quantity ceiling, capped by server maximum |
| Server permissions | AllowNonAdminCreatures | false | Allows non-admin creature spawning |
| Server permissions | NonAdminMaxCreatureLevel | 1 | Non-admin creature level ceiling, capped by server maximum |
| Network | RequestsPerWindow | 20 | Requests per player per window, clamped to 1–200 |
| Network | RateWindowSeconds | 5 | Rate-limit window, clamped to 1–60 seconds |
| Network | HandshakeRetrySeconds | 2 | Client connection retry interval, clamped to 1–10 seconds |
| Network | HandshakeTimeoutSeconds | 15 | Missing-server warning after 5–120 seconds; retries continue |
The generated config includes BepInEx descriptions for each setting. Those are config help text, separate from source-code comments.
Creature area limit
Set MaxCreaturesInArea under [04 - Server spawning]. The default is 20;
set it to 0 to disable the limit. Restart the host/server after changing it.
The host/server counts all living non-player creatures within 50 metres of each intended spawn location: wild, tamed, summoned, friendly NPCs and bosses, including creatures that were not spawned by this mod. Players and dead creatures do not count. Distance includes height. Loaded creatures and nearby synchronized network creature records are counted without counting the same creature twice.
The entire requested batch is checked before creation. If it would exceed the cap at any spawn position, the whole request is refused with a message showing the existing count, incoming count and maximum. This also applies to admins. For example, 19 existing creatures plus a request for 2 is refused at a cap of 20.
This limits creature spawning through this mod. It does not remove existing creatures, stop natural spawning, or prevent births or additional creatures created independently by game/mod scripts. The server's known network state is used; live client/server counts may briefly differ during synchronization.
NPC equipment filtering
The mod scans the equipment assigned to non-player Humanoid prefabs: default items, random weapons/armor/shields, random sets/items and unarmed weapons. An item referenced there is omitted if it has no registered player source. Player sources include crafting outputs and ingredients, trader inventories, world pickups, character loot, chest loot, destruction drops and player loadouts. An item is not hidden just because it has no recipe or shares an NPC's name. Confirmed NPC-only exclusions remain as a fallback.
This is a data-based rule, not proof of usability for every modded item. Mods can add equipment through scripts or custom containers that this scan cannot see. Use IncludedItemPrefabs for such exceptions; use ExcludedItemPrefabs for remaining unusable entries. Both settings take comma-separated exact prefab IDs, ignore case, and default to empty. Exclusion wins when an ID is in both. Explicit includes bypass only NPC filtering, not internal-data filtering, quantity limits or multiplayer permissions. Use matching settings on clients and server, then restart. Excluded entries are removed before spawn authorization.
The BepInEx log records each filtered item as Item excluded: prefab: reason.
The index refreshes when the scene prefab list or recipe count changes. Changes
to existing prefab fields without a count change require a restart.
Troubleshooting
- No spawning access: check the server admin list or its non-admin settings, restart the host/server, and reconnect.
- Server does not answer: confirm the server has the mod and both sides use
the same release. Check each side's
BepInEx/LogOutput.log. - Old DLL installed twice: remove duplicate VisualItemSpawner DLLs before upgrading. Keep one copy per game/server instance.
- Inventory full: free space or use Drop. If a different prefab sharing the same item name is already in your inventory, use Drop to avoid name-based merging.
- Items missing: NPC equipment copies, building pieces and internal engine entries are intentionally excluded. Usable Dvergr items such as the circlet, lantern and extractor component remain available. Other mods must register their items in the game's item database; matching content is needed on client and server.
Compatibility and limitations
Developed and tested locally on Windows with Valheim 1.0.17 and BepInExPack Valheim 5.4.2351 (BepInEx 5.4.23.5). Game updates can change APIs; support for every game build, mod combination or server platform has not been verified. There is no dedicated controller navigation support. Creature preview generation may briefly pause when browsing new entries. Permission/config changes require a restart. World-object spawning is outside scope.
Reporting problems
Include the mod version, Valheim version, mod list, whether this is single-player or multiplayer, the steps to reproduce, and relevant client/server log excerpts. Remove private details before sharing logs.
This is an unofficial Valheim mod and is not affiliated with Iron Gate. The implementation and release preparation used AI assistance.
License
MIT. See the included LICENSE file. This covers the mod's code and original release materials; it does not grant rights to Valheim or third-party assets.
Author
Poedil.
The mod identifier is visualitemspawner. Configuration is saved as BepInEx/config/visualitemspawner.cfg and favorites as BepInEx/config/visualitemspawner.favorites.json. A single legacy file is copied on first load when there are no existing new settings; existing new settings and favorites take precedence. If multiple legacy files exist, migration is skipped to avoid choosing the wrong file. Original files are retained.