About EasyBuild
From Thunderstore[AI-generated] Build, repair (boats included) and remove with the hammer without needing a workbench nearby. Client-only, no server sync.
EasyBuild —— 随处建造(免工作台)
> AI 生成声明:本模组由 AI 智能体(WorkBuddy)在用户的明确需求与逐项验收下编写; > 功能设计、真机测试与发布决定均由用户主导。
用建筑锤 建造 / 修复(含船、车)/ 拆除 时,不再要求工作台、熔炉、石匠台等制造站在附近。 顺手也解除了「你得先发现过该工作站,部件才会出现在锤子菜单里」这条门槛。
纯客户端模组:无 Jotunn 依赖、无 ServerSync、无 NetworkCompatibility 声明。
1. 效果一览
| 动作 | 原版行为 | 装了这个之后 | |---|---|---| | 放置需要工作台的部件(石墙、铁梁、熔炉件、传送门件…) | 工作台不在附近 → 点击无法放置,弹出提示 | 任意地点都能放置 | | 修复建筑 / 船(维京长船等)/ 车 | 同上,判定失败就不给修 | 远航途中、野外都能修 | | 拆除已建部件 | 同上 | 任意地点都能拆 | | 锤子菜单里"需要你还没见过的工作台"的部件 | 灰掉 / 不出现 | 全部可见可选 |
不会变:材料照样消耗(不是免费建造)、地形/支撑/水深/阻挡判定照旧、禁建区照旧、守卫石(私人区域)保护照旧、工作台等级与配方系统照旧。
2. 原版的门槛到底在哪(IL 反汇编实证)
| 动作 | 原版判定链 | |---|---| | 建造放置 | Player.UpdatePlacement() → Player.HaveRequirements(piece, RequirementMode.CanBuild),返回 false 就弹提示并中止 | | 修复 | Player.Repair() → 先过 Player.CheckCanRemovePiece(piece) | | 拆除 | Player.RemovePiece() → 同样先过 Player.CheckCanRemovePiece(piece) |
两处判定最终都落在同一个条件上:
if (piece.m_craftingStation != null // 这个部件需要某个制造站
&& !CraftingStation.HaveBuildStationInRange(stationName, 玩家位置)) // 而附近没有
{
// 建造:HaveRequirements 返回 false
// 修复/拆除:CheckCanRemovePiece 返回 false 并提示
}
关键事实:Piece.m_craftingStation 在整个 assembly_valheim.dll 里只有 3 个读取者、没有任何写入者—— 就是上面这两处判定,加上 Hud.SetupPieceInfo(部件信息面板里"需要 工作台 xxx"那一行)。
所以只要把这个字段清掉,"需要工作台"这个概念就从这个部件上彻底消失了。
3. 实现方式(核心只有几行)
在 Piece.Awake 的 postfix 里把 m_craftingStation 置为 null:
- 建筑部件 prefab 一被激活就生效;
Instantiate出来的实例继承 null,
所以旧存档里已经盖好的建筑、船也自动适用。
ZNetScene.Awake兜底:场景加载后再把所有 prefab 扫一遍(防其它模组动态塞值)。
因为原版三处判定读的是同一个字段,这一个改动同时覆盖了建造、修复、拆除和菜单解锁。
4. 配置
文件:BepInEx/config/easybuild.client.only.cfg
| 分区 | 键 | 默认 | 说明 | |---|---|---|---| | 1 - 随处建造 | Enabled | true | 总开关。关掉即完全回到原版行为。 | | 1 - 随处建造 | SweepAllPrefabsOnSceneLoad | true | 场景加载时兜底扫描所有部件 prefab。 | | 2 - 日志 | VerboseLog | false | 每剥离一个部件打一行。平时建议关掉。 |
> 注意:建造 / 修复 / 拆除 三项是一体生效的,没法单独关其中一项 —— > 因为原版这三条路径读的是同一个字段(见第 2 节)。
5. 联机说明(重要)
- 纯客户端:没有
NetworkCompatibility声明,不引 Jotunn,不嵌 ServerSync / ConditionalConfigSync
→ 放在 BepInEx/plugins/ 里不会让你连不上任何主机,纯原版主机也能进。
- 只影响你自己:建造/修复的资格判定是在每个客户端本地算的。
所以 主机和队友不装这个模组也照样用;反过来,他们仍然受原版"要工作台"限制。
- 你放下去的部件、修好的耐久都是正常的 ZDO 变更,主机照常接受,不会掉线或回滚。
6. 安装与卸载
r2modman:Settings → Install from file,选 EasyBuild-1.0.0.zip。
手动:把 EasyBuild.dll 丢进 BepInEx/plugins/ 即可。
卸载:r2modman 里禁用/卸载,或删掉 DLL。纯运行时改动,不写存档、不留残留。
7. 怎么确认它生效了
日志(BepInEx/LogOutput.log)里应该能看到:
[Info : EasyBuild] EasyBuild 1.0.0 开始挂载 Harmony 补丁……
[Info : EasyBuild] 已挂载补丁类:PieceAwakePatch
[Info : EasyBuild] 已挂载补丁类:ZNetSceneAwakePatch
[Info : EasyBuild] Harmony 补丁挂载完成:2/2 成功。
[Info : EasyBuild] ---- 补丁挂载自检 ----
[Info : EasyBuild] Piece.Awake() prefix=0 postfix=1 OK
[Info : EasyBuild] ZNetScene.Awake() prefix=0 postfix=1 OK
[Info : EasyBuild] -----------------------
[Info : EasyBuild] 兜底扫描完成:检查了 N 个部件 prefab。
[Info : EasyBuild] 已剥离工作台需求:M 个部件(见过的部件共 K 个)。例:wood_wall / stone_wall / ship_karve …
游戏内自测(建议走一遍):
- 跑到离家很远的地方,造石墙 / 铁梁(原版需要石匠台 / 熔炉)→ 应该能成功。
- 开新档、从没做过工作台 → 锤子菜单里应该能看到全部部件。
- 在海上用锤子修船 → 应该能修。
- 拆掉远处的部件 → 应该能拆。
- 反向验证:材料不足时仍然失败(说明不是免费建造);
在别人守卫石范围内仍然不能建造/拆除(说明保护没被顺带解除)。
8. 已知限制
- 本模组针对当前版本(Valheim 1.0 程序集,Unity 6000.0.75f1 / BepInEx 5.4.x)。
如果以后游戏改了字段名,插件会在日志里打印「找不到字段 Piece.m_craftingStation」而不是崩溃 —— 届时把日志发我即可。
- 与其它"改建造规则 / 改工作台范围"的模组同时使用时可能互相覆盖(例如放大工作台范围的模组会变得没意义)。
- 与"物品耐久 / 修复"类模组不冲突(本模组不碰
WearNTear)。
MIT 精神,自用为主。有问题带着 LogOutput.log 找我就行。
Highlights
From source dataLoaders
Runs on BepInEx.
Footprint
Rated a light load on a server.
Last update
Its author last shipped an update 48d ago.
EasyBuild on Nxeon
From our catalogue- One-click install
- Supported on Nxeon Valheim servers, for BepInEx servers. We download it from Thunderstore, place it, and restart the server.
- Server type needed
- BepInEx
- Server load
- light
- Smallest plan we suggest
- Valheim — 4 GB (4 GB RAM). This follows our own load rating above, not a benchmark.
- Latest build
- 1.0.0, released 2026-09-17
Game versions by loader
| Loader | Game versions | Newest |
|---|---|---|
| BepInEx |
From 1 recorded build of EasyBuild.
Dependencies
- Required: BepInExPack Valheim
Declared by the newest build that lists any. Required ones are installed with it on one-click installs.
Run EasyBuild on a Valheim server
Pick a server or deploy a new one above; it is installed in one click.
What kind of mod it is
From the catalogVehicles & ships
Cars, boats, aircraft, ships and other things to drive or fly.
Compatibility
- Game
- Valheim
- Loaders
- BepInEx
- Requires
- One-click install needs a BepInEx server.
Verified at the source
- ✓ThunderstoreOfficial listing, checked 2026-10-01Open ↗
- ✓Authors6652289, as published on Thunderstore
- ✓LicenseNot published by the sourceFree






