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.
ValheimDepositAll
在制作台界面添加「分发」按钮:一键把身上的物品分发到范围内的所有箱子中,箱子满了就留在身上。Adds a Deposit button to the crafting panel that distributes your inventory into nearby chests.
| Date uploaded | a month ago |
| Version | 1.0.1 |
| Download link | SuperVikingDepartment-ValheimDepositAll-1.0.1.zip |
| Downloads | 151 |
| Dependency string | SuperVikingDepartment-ValheimDepositAll-1.0.1 |
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.2350README
ValheimDepositAll
在制作台界面里添加一个「分发」按钮:点一下就把身上的物品自动分发到范围内的所有箱子中。箱子满了就留在身上,不会丢东西。
适合「工作台旁边摆了一排分类箱子」的基地布局——做完东西不用再一个个开箱手动归类,一键把背包清空进箱子。
功能
- 一键分发:打开工作台 / 熔炉 / 切石机 / 工匠台 / 黑锻炉 / 铁锅等任意制作类建筑的界面,点击「分发」按钮即可。按钮就位于原版制作按钮的正下方。
- 自动找箱子:以玩家为中心(打开制作台时还额外以制作台为中心,按台子自身的建造半径)搜索范围内的所有容器,把物品分发进去。
- 只进同类箱子:只把物品放进「已经收着同类物品」的箱子。不会把全新种类的东西随口塞进恰好有空位的箱子,从而保持你自己给箱子分的类。如果附近没有对应分类的箱子,物品就留在身上。
- 保留装备与快捷栏:默认不碰身上已穿戴的武器、护甲、腰带、工具,也不碰快捷栏(按键 1-8 切换的背包第一行)里的物品——方便保留常用的食物、药水、工具。两者均可在配置里改成参与分发。
- 满了就留在身上:所有同类箱子都放不下的物品留在背包里,绝不丢弃。完成后在屏幕中央提示结果,并区分原因:
已分发 20 件到 2 个箱子,5 件没有对应分类的箱子,3 件因箱子已满,留在身上。 - 可拆分堆叠:一个箱子能塞多少塞多少,剩下的继续尝试下一个箱子,不浪费任何剩余空间。
- 就近优先:优先填充离玩家最近的箱子。
- 精确计算容量:按物品名称 + 品质 + 世界等级判断箱子的剩余空间,不会出现"算着能放、实际放不进"的情况。
- 多人安全:默认只分发到你有权访问的容器,私人箱子(仅建造者可用)不会被他人误塞;写入前会先取得容器所有权,保证改动正确同步。
兼容范围
- 覆盖所有
CraftingStation:工作台、锻造台(熔炉)、切石机、工匠台、黑锻炉、铁锅,以及各类扩展(StationExtension)提升等级后的范围。 - 目标容器是游戏里所有
Container:普通箱子、木箱、铁箱、推车等。 - 与 ValheimCraftFromContainers 互补:那个 mod 是"从箱子里取材料做东西",本 mod 是"把身上的东西放回箱子",范围判定逻辑一致,可同时使用。
- 不涉及冶炼炉 / 炭窑的放矿放燃料操作。
操作
打开任意制作台界面,点击「分发」按钮即可。无需快捷键,也无需逐个打开箱子。
配置
配置文件:BepInEx/config/SuperVikingDepartment.ValheimDepositAll.cfg
| 配置项 | 默认值 | 说明 |
|---|---|---|
General.Enabled |
true |
总开关,关闭后按钮不再出现。 |
General.Range |
10 |
以玩家为中心搜索容器的半径(米)。 |
General.UseStationBuildRange |
true |
额外以当前制作台为中心、按台子建造半径搜索。 |
General.RequireAccess |
true |
只分发到你有权访问的容器(私人箱子仅建造者可用)。 |
General.KeepEquipped |
true |
保留已装备的物品,不放进箱子。 |
General.SkipHotbar |
true |
保留快捷栏(按键 1-8 对应的背包第一行)里的物品,不放进箱子。 |
General.AddButton |
true |
是否添加「分发」按钮(关闭后本 mod 不改动界面)。 |
General.ButtonLabel |
空 | 按钮文字。留空 = 中文界面显示「分发」,其他语言显示「Deposit」。 |
General.ShowMessage |
true |
完成后是否在屏幕中央提示结果。 |
Diagnostics.DebugLogging |
false |
输出分发细节日志,排查问题用。 |
安装
方式一:r2modman / Thunderstore Mod Manager(推荐)
- 在 r2modman 中安装
ValheimDepositAll。 - 确保已安装依赖
BepInExPack_Valheim。 - 启动游戏。
方式二:手动安装
- 安装 BepInExPack for Valheim。
- 把
ValheimDepositAll.dll放到Valheim/BepInEx/plugins/。 - 启动游戏。
启动后在 BepInEx/LogOutput.log 里可见:
Loading [ValheimDepositAll 1.0.1]
[DepositAll] 已挂载补丁 InventoryGui.UpdateRecipe
[DepositAll] ValheimDepositAll loaded (v1.0.1)
从源码构建
需要 .NET SDK。仓库放在 Valheim 安装目录下的子文件夹里,直接构建即可:
dotnet build -c Release
若在其他位置构建:
dotnet build -c Release -p:ValheimDir="C:\...\steamapps\common\Valheim\"
打包发布 zip:
./build-package.sh
常见问题
按钮没出现?
确认 General.AddButton 与 General.Enabled 都是 true,并检查日志里是否有 InventoryGui.UpdateRecipe 的挂载记录。游戏大版本更新可能改变该方法签名,届时日志会明确报出。
箱子就在旁边,但没被分发到?
分两步看:一是 General.Range(默认 10 米)与箱子隐私设置——私人箱子只有建造者本人能分发进去,General.RequireAccess 关闭后会尝试所有箱子,但原版对 Group 权限的箱子本身也不可访问;二是该箱子里是否已经有同类物品——本 mod 只往同类箱子里放,新种类不会开新分类。提示信息会告诉你是哪一类原因。
有些东西没进箱子? 屏幕提示会区分「没有对应分类的箱子」和「同类箱子已满」两种情况。无论哪种,物品都安全地留在你身上,不会丢失。
许可
MIT
CHANGELOG
Changelog
1.0.1
- 新增:默认跳过快捷栏里的物品。 按键 1-8 切换的背包第一行不再被分发进箱子,方便保留常用的食物、药水、工具。可通过
General.SkipHotbar配置关闭(改为连快捷栏一起分发)。 - 其余行为不变:已装备物品默认保留(
KeepEquipped)、只进同类箱子、放不下的留在身上。
1.0.0
- 首个版本:在制作台界面(工作台 / 熔炉 / 切石机 / 工匠台 / 黑锻炉 / 铁锅等所有
CraftingStation)里添加一个「分发」按钮。 - 按钮位置在原版制作按钮的正下方(界面位置由制作面板的父节点布局决定:带布局组时按兄弟顺序排到下方,否则由定位组件贴到正下方)。
- 点击按钮后,自动把玩家背包里的物品分发到范围内的所有箱子中,无需逐个开箱搬运。
- 只分发到「已经有同类物品」的箱子:不会把全新种类的物品随口塞进恰好有空位的箱子,保持你自己给箱子分的类。没有对应分类的箱子时,物品留在身上。
- 分发结果提示会区分原因:「没有对应分类的箱子」与「同类箱子已满」,方便判断为什么有些东西没进箱子。
- 默认保留身上已装备的物品(武器 / 护甲 / 腰带 / 工具),不会把自己扒光;可通过配置改为连装备一起分发。
- 箱子放不下时留在身上,绝不丢弃;完成后提示「分发了几件、有几件未能放入」。
- 单个堆叠可以拆开分发:一个箱子塞多少算多少,剩下的继续尝试下一个箱子。
- 优先填充离玩家最近的箱子;箱子的「剩余空间」按物品名称 + 品质 + 世界等级精确计算,不会高估容量后放不进去。
- 可配置搜索半径、是否使用制作台建造半径、是否限制为有权访问的容器(多人游戏防止把东西塞进他人私人箱子)。
- 多人游戏安全:写入容器前先取得 ZDO 所有权,保证改动正确同步、不会被覆盖。
- 不改任何配方、产量或物品属性,不给物品打作弊标记,不影响成就。