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.
TempBed
Beds without a workbench and without a roof - they decay after a configurable time.
By P_T_G
| Last updated | 14 hours ago |
| Total downloads | 8 |
| Total rating | 0 |
| Categories | Mods Server-side Client-side AI Generated |
| Dependency string | P_T_G-TempBed-1.3.0 |
| 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.2333README
TempBed
Betten ohne Werkbank und ohne Dach - dafür mit Verfallszeit.
Deutsch
Das Bett ist in Valheim der einzige Weg, einen Spawnpunkt zu setzen, und dafür verlangt das Spiel Werkbank und Dach. Auf längeren Touren heißt das: entweder man baut jedes Mal ein kleines Lager, oder man läuft nach dem Tod wieder von zuhause los. Beides nervt.
Diese Mod erlaubt das Bett ohne Werkbank und unter freiem Himmel. Damit daraus kein Freifahrtschein wird, verfällt so ein Bett nach einer einstellbaren Zeit von selbst. Es ist also ein Zwischenlager, kein Ersatz für eine richtige Basis.
Wie es sich spielt
Bett irgendwo hinstellen, Spawnpunkt setzen, weiterziehen. Nach 15 Minuten (Standard) ist es weg. Solange der Timer läuft, steht die Restzeit rot im Hover-Text, es verschwindet also niemandem unangekündigt unterm Hintern.
Stellt jemand nachträglich eine Werkbank daneben, wird das Bett dauerhaft - das ist der übliche Weg, aus dem Zwischenlager doch noch einen festen Außenposten zu machen.
Einstellungen
| Option | Bedeutung |
|---|---|
AllowPlacementWithoutStation |
Betten lassen sich ohne Werkbank in Reichweite bauen. |
DecayMinutes |
Wie lange ein Bett ohne Werkbank überlebt. Standard 15. |
OnlyBedsPlacedWithoutStation |
Standard an. Nur Betten verfallen, die ohne Werkbank gesetzt wurden. |
PermanentWhenStationBuilt |
Kommt später eine Werkbank dazu, verfällt das Bett nicht mehr. |
DropResources |
Ob beim Verfall die Materialien herausfallen. Standard aus. |
AnyCraftingStation / StationNames |
Welche Stationen ein Bett stützen. Standard nur die Werkbank. |
IgnoreRoofRequirement |
Bett darf unter freiem Himmel benutzt werden. |
IgnoreWetRequirement |
Nass sein blockiert das Schlafen nicht mehr. |
IgnoreFireRequirement |
Nur relevant, wenn eine andere Mod Feuer verlangt. Standard aus. |
ShowTimerInHoverText / TimerText |
Anzeige der Restzeit. |
Zwei Sachen, die ich absichtlich so gebaut habe:
Der Timer läuft über die Weltzeit, nicht über die Zeit, in der das Bett geladen ist. Ein Serverneustart oder Weglaufen verlängert ihn also nicht. Kommt jemand nach zwanzig Minuten in die Gegend zurück, ist das Bett sofort weg statt erst nach weiteren fünfzehn.
Nur ohne Werkbank gesetzte Betten verfallen. Würde jedes Bett ohne Werkbank in Reichweite verfallen, würde es auf einem laufenden Server reihenweise Betten erwischen, bei denen die Werkbank irgendwann abgebaut wurde. Wer die harte Regel will, stellt OnlyBedsPlacedWithoutStation auf false.
IgnoreWetRequirement ist standardmäßig an, weil das Ganze sonst nicht funktioniert: ohne Dach wird man im Regen sofort nass, und nass sein blockiert das Schlafen eigenständig. Ohne den Schalter hättest du ein Bett unter freiem Himmel, das bei Regen trotzdem meckert.
Feinde in der Nähe verhindern weiterhin das Schlafen. Das habe ich bewusst gelassen, sonst wäre das Bett im Wald ein Freifahrtschein durch jede Nacht.
Server und Clients
Die DLL gehört auf den Server und zu jedem Spieler. Der Server schickt seine Konfiguration an alle Verbundenen, lokale Dateien werden ignoriert und die Felder im ConfigurationManager sind gesperrt.
Wer in der adminlist.txt steht, darf die Werte im laufenden Spiel im ConfigurationManager ändern. Die Änderung geht an den Server, der prüft selbst nach, wer da sendet, speichert sie in seiner Config und verteilt sie. Abgelehnte Versuche stehen im Log.
Im Einzelspieler oder als Host gilt die eigene Datei.
Installation
BepInEx vorausgesetzt:
TempBed.dllnachBepInEx\plugins\- Einmal starten, dann liegt
BepInEx\config\flo.tempbed.cfgbereit - Werte anpassen
Kompatibilität
Die Mod arbeitet mit allem, was eine Bed-Komponente hat, also auch mit Betten aus Content-Mods. Sie hängt sich an ZNetScene.Awake, Piece.OnPlaced und die Prüfmethoden von Bed.
Nach dem Start steht im Log, wie viele Bett-Prefabs angepasst wurden. Ist die Zahl 0, hat irgendwas nicht gegriffen - die Zeile ist beim Melden eines Problems hilfreich.
Bekannte Grenzen
- Der Verfall wird von dem Client geprüft, der das Bett gerade besitzt. Liegt es in einer Ecke, in die nie jemand kommt, passiert erstmal nichts. Sobald jemand hinkommt, wird die abgelaufene Zeit nachgeholt und das Bett verschwindet sofort.
- Wer die DLL nicht installiert hat, kann keine Betten ohne Werkbank setzen, sieht aber auch keine Restzeit.
Bug gefunden? Kommentare, am besten mit dem passenden Ausschnitt aus dem LogOutput.log.
English
The bed is the only way to set a spawn point in Valheim, and the game wants a workbench and a roof for it. On longer trips that means either building a small camp every time, or walking back from home after every death. Both are tedious.
This mod allows beds without a workbench and out in the open. To stop that from being a free pass, such a bed decays on its own after a configurable time. It's a temporary camp, not a replacement for a real base.
How it plays
Put the bed down anywhere, set your spawn, move on. After 15 minutes (default) it's gone. While the timer runs, the remaining time shows in red in the hover text, so it never vanishes unannounced.
If someone builds a workbench next to it later, the bed becomes permanent - that's the usual way of turning a temporary camp into a proper outpost after all.
Settings
| Option | What it does |
|---|---|
AllowPlacementWithoutStation |
Beds can be built with no workbench in range. |
DecayMinutes |
How long a bed without a workbench survives. Default 15. |
OnlyBedsPlacedWithoutStation |
On by default. Only beds placed without a workbench decay. |
PermanentWhenStationBuilt |
A workbench added later stops the decay for good. |
DropResources |
Whether materials drop when a bed decays. Off by default. |
AnyCraftingStation / StationNames |
Which stations support a bed. Workbench only by default. |
IgnoreRoofRequirement |
Beds can be used under open sky. |
IgnoreWetRequirement |
Being wet no longer blocks sleeping. |
IgnoreFireRequirement |
Only relevant if another mod requires fire. Off by default. |
ShowTimerInHoverText / TimerText |
Remaining-time display. |
Two things I built deliberately this way:
The timer runs on world time, not on the time the bed spends loaded. A server restart or walking away doesn't extend it. Come back to the area twenty minutes later and the bed is gone immediately instead of fifteen minutes after that.
Only beds placed without a workbench decay. If every unsupported bed decayed, a running server would lose a pile of beds whose workbench had been removed at some point. Want the strict rule? Set OnlyBedsPlacedWithoutStation to false.
IgnoreWetRequirement defaults to on because otherwise the whole thing doesn't work: without a roof you get wet in the rain immediately, and being wet blocks sleeping on its own. Without that switch you'd have a bed under open sky that still refuses when it rains.
Enemies nearby still prevent sleeping. I left that in on purpose, otherwise a bed in the woods would be a free pass through every night.
Server and clients
The DLL goes on the server and to every player. The server sends its configuration to everyone connected, local files are ignored and the fields in ConfigurationManager are locked.
Anyone in adminlist.txt can change values through ConfigurationManager while playing. The change goes to the server, which checks for itself who is sending, stores it in its config and distributes it. Rejected attempts show in the log.
Solo or hosting, your own file applies.
Installation
Requires BepInEx:
- Drop
TempBed.dllintoBepInEx\plugins\ - Launch once,
BepInEx\config\flo.tempbed.cfgappears - Adjust
Compatibility
The mod works with anything carrying a Bed component, so beds from content mods are covered. It hooks ZNetScene.Awake, Piece.OnPlaced and the check methods on Bed.
After startup the log says how many bed prefabs were adjusted. If that number is 0, something didn't take - that line is useful when reporting a problem.
Known limits
- Decay is checked by whichever client currently owns the bed. If it sits in a corner nobody visits, nothing happens for the time being. As soon as someone arrives, the elapsed time is caught up and the bed goes right away.
- Anyone without the DLL installed can't place beds without a workbench, and won't see the timer either.
Found a bug? Comments, ideally with the relevant part of your LogOutput.log.