RimWorld

RimWorld

91 ratings
Bed Ownership Tools
5
2
   
Award
Favorite
Favorited
Unfavorite
Mod, 1.5, 1.6
File Size
Posted
Updated
1.812 MB
Aug 29 @ 2:15pm
Oct 12 @ 3:41pm
15 Change Notes ( view )

Subscribe to download
Bed Ownership Tools

Description
Bed Ownership Tools reduces micromanagement of colonists' bed assignments by introducing new ownership controls on beds.

(New) Version 1.1 adds deathrest features. Sanguophages and colonists with the deathrest gene can now own multiple deathrest chambers and optionally follow automatic deathrest schedules.

Steam Workshop

GitHub[github.com]

Features
Core
Communal beds - Assignment-free beds that are automatically shared between colonists.
Pinned assignments - Prevent colonists from forgetting their bed assignments unless manually reassigned by the player.
Assignment groups - Allow colonists to own and automatically switch between multiple beds during travel or zoning.
Deathrest (Biotech DLC only)
Spare deathrest bindings - Allow deathresters to switch between multiple sets of deathrest buildings.
Automatic deathrest - Assign exhaustion-based or calendar deathrest schedules to individual deathresters.

Individual features can be disabled in the mod's settings.

Communal beds
Communal beds are good for situations when colonists need a bed, but cannot access a permanent bed due to travel, zoning restrictions, or limited availability of permanent bedrooms.

Instead of assigning named owners to beds, you can now mark a bed for "communal" use. When a colonist cannot access or claim an owned bed, they'll use a communal bed before sleeping on the ground. While using a communal bed, they'll still remember their previous bed.

Colonists will coordinate use of single and double communal beds to allow couples to sleep together.



Pinned assignments
Perhaps you've sent several colonists to a quest site and mass-claimed buildings before. A brief undraft to have the (exhausted) troops perform some deconstruction, and half of your colony has suddenly forgotten their home beds in favour of some dead tribals' bed rolls.

Pinned assignments prevent colonists from forgetting prior bed assignments, unless manually reassigned by the player (or arrested, killed, divorced, etc.) By pinning those colonists' home bed assignments beforehand, they'll sleep on the ground instead. This gives you a chance to intervene.



Assignment groups
Assignment groups allow colonists to own and automatically switch between multiple beds based on priority rankings.

You may find multiple assignments useful for late-game colonies where colonists have personalized bedrooms.

Perhaps you have a large gravship and wish to build second bedrooms on the ship. But, you might have a greedy colonist whose bedrooms should be just slightly fancier than your archon's. Or many couples whose bed assignments are painful to redo.

With assignment groups, you can set up ownership associations once per bed and have the game automatically switch between them.



Getting started with assignment groups
Let's say you wish for your colony to normally sleep in their home base, but also have dedicated beds on their gravship.

1. Shift-select all the beds in the base, and click "Assign group" > "Home".
2. Then, do the same for the beds on the ship, with "Assign group" > "Ship".
3. Set each bed's ownership with "Set owner". You should notice that assignments within the Home group and Ship group don't conflict with each other.

Now, when your gravship is landed at your home base, your crew will sleep in their Home bedrooms.
When a crew member is on a mission, or if they've been zoned into the gravship, they'll use their Ship bed instead.

Let's say you want your ship's captain to sleep in their quarters when possible (for the fun of it), while the rest of the crew prefer to sleep at home. To do this, you can create another assignment group.



1. To do this, click on any bed, and select "Assign group" > "Edit...".
2. A dialog will appear where you can add/rename/remove groups, and reorder their priorities.
3. Create a new untitled group, rename it to "Cap'n", and prioritize it above Home.
4. Click on the captain's intended bed on the gravship, and select "Assign group" > "Cap'n".

Maybe the captain got malaria and is out of commission for an urgent quest. No worries at all.

- While the ship is away, the captain will automatically use their Home bed instead.
- The crew members who leave for the quest will switch from their Home to Ship beds on the first night out.

Spare deathrest bindings
Spare deathrest bindings allow colonists to switch between multiple deathrest caskets and buildings beyond their serum binding capacity.



You can use this feature by constructing two sets of deathrest buildings for a deathrester and ordering them to deathrest in both. Unlike the base game, they won't be blocked from using the second casket.

Once a building is bound, it normally cannot be reassigned to another user. This behaviour can be disabled by unchecking "Deathrest bindings are permanent" in the mod's settings.

Automatic deathrest
Automatic deathrest allows colonists to follow a given schedule for deathrest.



The mod provides two kinds of schedules:

Exhaustion-driven - The deathrester will deathrest after their need falls below a certain level.
Calendar - The deathrester will always deathrest in the specified "weeks" of the year or when almost exhausted.

Exhaustion-driven schedules are straightforward to use. Calendar scheduling allows you to prevent deathrest period overlap between multiple colonists.

Beds can be used for automatic deathrest by unchecking "Ignore beds for automatic deathrest" in the mod's settings.

Deathrest auto-scheduling controls can be accessed by selecting:
- one of the colonist's deathrest caskets
- the colonist while they are deathresting
- the colonist while they are awake (by unchecking "Hide deathrest auto-controls on pawn while awake" in the mod's settings)

Save compatibility
It's safe to add or remove this mod at any time. You may see harmless one-time errors printed to the game's console following mod removal.

Upon mod removal:
- colonists with multiple bed assignments will own the last non-communal bed they used.
- colonists with spare deathrest bindings will be bound to the last set of buildings they used.

Mod compatibility
Bed Ownership Tools has built-in support for a growing list of mods that interact with bed assignments. These include:
- Hospitality
- One bed to sleep with all - Polycule Edition
- Loft Bed
- Bunk Beds
- MultiFloors

An updated list is available on GitHub[github.com].

If you encounter a compatibility problem with another mod, please report it through the comments or as an issue.

Issues
Please post in the Bug Reports thread on the mod's Steam Workshop bug thread, or file an issue on GitHub[github.com].

Licensing
This mod is released under the terms of the MIT license.

The following notice is posted from the RimWorld EULA.
Portions of the materials used to create this content/mod are trademarks and/or copyrighted works of Ludeon Studios Inc. All rights reserved by Ludeon. This content/mod is not official and is not endorsed by Ludeon.
Popular Discussions View All (1)
9
Sep 15 @ 2:29pm
PINNED: Bug reports
lazerboy
48 Comments
Hugalafutro Oct 15 @ 6:54am 
Thank you for the fixes all seems well now!
lazerboy  [author] Oct 12 @ 3:44pm 
Android-human lovin' should be fixed in version 1.1.4. :D

(couples can share communal beds and switch between ship/home beds)
lazerboy  [author] Oct 12 @ 10:07am 
You're welcome. :) The issue with the android/human lovers not lovin' is a miss on my part. I'll fix that (it won't work with communal beds and for beds on which the android's name is grey). You can mitigate the problem by giving the couples just one permanent bed for now.

I didn't document the white/grey label colours before but I'll give a explainer (it's technical, so feel free to skip below text wall).

The base game and other mods only know about one bed owned by a pawn at any time (which are the names labelled in white). This mod stores a roster of beds per pawn to try when they want to use a bed. The assignments in that roster that aren't known to the base game are labelled in grey.

In order to make bed routines use the roster, I add code patches to search for an accessible bed and make that the pawn's owned bed when needed. Without those patches, the game only uses the white label assignments. I probably need to patch the custom lovin' job in VRE Androids.
Hugalafutro Oct 12 @ 4:43am 
Thank you!

Another issue I'm running into (might be android related too, but to my best recall I was running into similar issue with humanoid colony too) is: I have 3 android+humanoid lover pairs. As I mentioned they require double bed assigned on top of the rest spot, but the android only uses it to bonk.

So I build a double bed on base, double bed on gravship. Set the base one to group Home, the one on gravship to group Ship. Assign the 2 lover pawns to home bed first, the names on bed are white, assign the gravship bed the names on gravship bed are gray

Then i go on the gravship mission, after landing even if both pawns are on gravship one name will be grey and one white and I have to reassign to get both names white and get the pawns to get in together. Same back at base with their home bed after the gravship returns.

How to best handle gravship? Assigne them home beds on base and leave the gravship beds communal? Or the other way around ?
lazerboy  [author] Oct 11 @ 12:22pm 
@Hugalafutro I added support for VRE Androids in 1.1.3. If you mark all the android stands in your base as "communal", androids should only walk to the nearest ones to clear memory.
lazerboy  [author] Oct 9 @ 7:08pm 
@Hugalafutro I'll take a look at VRE Androids. I think I can port the communal bed feature to the stands so that androids don't run halfway across the base to free memory.
Hugalafutro Oct 9 @ 5:48am 
Hi, would you consider extending the functionality to the Android stand from Vanilla Races Expanded - Androids? Tthey don't sleep per se, but need to free memory every few hours and run to the stand (they can do it anywhere, but on the stand it's much faster.

For all intents and purposes the stand is considered a bed and can be assigned as such in gui (can even be assigned for guests from Hospitality continued). To complicate things, once 2 androids marry they require a double bed assigned to them despite never using it to remove the Sleeping alone moodlet. Married android and human will use the bed for lovin' after which the android immediately leaves leaving the wife snorin' in the bed :D

Thing is once I built gravship, the androids that were on last mission on gravship keep running to the stands on the gravship all the way outside the colony instead of using the stand that is few tiles away.
lazerboy  [author] Oct 8 @ 9:55pm 
I released an update (1.1.2) that allows couples to sleep together each night in a pool of communal beds, to fix a limitation that @DerGeissler identified earlier.

When there are double beds marked as communal beds, couples will use them to sleep together (as long as their sleep schedules align). Single pawns will prefer single beds. Unrelated pawns will still pack double beds when there aren't enough empty beds.

I enabled some mood effects on the communal beds ("Sharing bed" or "Sleeping alone") that previously only applied to owned beds, since they fit with the new sophisticated bed finding routine.

These changes can be reverted in mod settings by unchecking "Communal bed selection considers relationships".
Deggial Sep 29 @ 8:58am 
Awesome!
I just wanted to suggest that you could take a look at Deathrest.
I'm glad I didn't dismantle all the colony instalments now.

On the other hand, though, those Deathrest linkables aren't exactly cheap.
And that poor guy in the drain casket!

I've decided to limit myself to the ship's Deathrest chamber in future runs, since my Sanguiophage has access to it when visiting the main colony.
lazerboy  [author] Sep 28 @ 8:28pm 
Hello. I just released two new features relating to deathrest.

Spare deathrest bindings - Allow deathresters to switch between multiple sets of deathrest buildings.
Automatic deathrest - Assign exhaustion-based or calendar deathrest schedules to individual deathresters.

As always, the features shouldn't change vanilla behaviour unless you opt to use them, and can be fully disabled through the mod's settings.

I apologize in advance for any new bugs. I'll try to fix any that are discovered.
I hope the new features are interesting enough to make up for it!