Rooms

From RimWorld Wiki
Revision as of 22:41, 14 November 2018 by Yilette (talk | contribs) (→‎Cleanliness)
Jump to navigation Jump to search
Basics Menus Game Creation Gameplay Pawns Plants Resources Gear Mods
Gameplay Menu Caravan Combat Cover Drafting Environment Events Factions Firefighting Quality Quests Research Rooms Time Trade

Room stats are automatically calculated values of a room that passively affects thoughts about and events in the room. Room stats can be inspected with the Room inspection tool. Room roles, which also can be inspected with the same tool, may be affected by all, some or none of the room stats.

Room stats are:

  • Impressiveness (an aggregate of other stats)
  • Wealth
  • Space
  • Beauty
  • Cleanliness

Room stats affect things like:

  • Medical treatment quality (indirectly, as cleanliness is the deciding factor)
  • Research speed
  • Room stats create many variants on thoughts like:
    • Ate in impressive dining room
    • Own impressive bedroom
    • Own bed in impressive barracks
    • Did joy activity in impressive rec room

Related traits:

  • Greedy: Unhappy without sufficiently impressive room.
  • Jealous: Unhappy if anyone has a noticeably better room.
  • Ascetic: Unhappy if room is too impressive. Happy if room is dull or worse.

Room roles

Basics Menus Game Creation Gameplay Pawns Plants Resources Gear Mods
Gameplay Menu Caravan Combat Cover Drafting Environment Events Factions Firefighting Quality Quests Research Rooms Time Trade

Room stats are automatically calculated values of a room that passively affects thoughts about and events in the room. Room stats can be inspected with the Room inspection tool. Room roles, which also can be inspected with the same tool, may be affected by all, some or none of the room stats.

Room stats are:

  • Impressiveness (an aggregate of other stats)
  • Wealth
  • Space
  • Beauty
  • Cleanliness

Room stats affect things like:

  • Medical treatment quality (indirectly, as cleanliness is the deciding factor)
  • Research speed
  • Room stats create many variants on thoughts like:
    • Ate in impressive dining room
    • Own impressive bedroom
    • Own bed in impressive barracks
    • Did joy activity in impressive rec room

Related traits:

  • Greedy: Unhappy without sufficiently impressive room.
  • Jealous: Unhappy if anyone has a noticeably better room.
  • Ascetic: Unhappy if room is too impressive. Happy if room is dull or worse.

Room roles

Template loop detected: Room roles

Impressiveness

The value for impressiveness is based off of the four other stats with a heavy weighting towards the weakest of the four. The actual formula for calculating impressiveness involves multiple steps using a piecewise continuous function, so it's best to start with the basics.

First, each of the four stats has a corresponding divisor that's used to calculate that stat's base contribution.

Wealth: Wb = Wealth/1500
Beauty: Bb = Beauty/3
Space: Sb = Spaciousness/125
Cleanliness: Cb = 1 + (Cleanliness/2.5)

So, a room with a Wealth stat of 3000 gives a Wb value of 2 and a room with a Cleanliness of 0 gives a Cb of 1.

Now the fancier part starts. If these base contributions are between -1 and 1, the contribution does not get further modified. However, if it's above 1 (Or below -1 in the case of cleanliness, though that exact equation will be different), the value is modified to slow down the rate the impressiveness changes. The modified values become as follows:

modified = 1 + ln(base)       ; when base is greater than or equal to 1.
modified = base                 ; when base is less than 1 and greater than -1.
modified = -(1 + ln(-base))   ; when base is less than or equal to -1

These are natural logs here, and what this means in practice is that a stat's contribution to the impressiveness continues to grow more slowly as the base stat continues to increase. Here's an example with Wealth:

Start with a room with a Wealth value of 3000.
Wb = 3000/1500 = 2
Wm = 1 + ln(Wb) = 1 + ln(2) = 1.69


Once you have the modified values, you can calculate the impressiveness by:

Impressiveness = (65 * (Wm + Bm + Sm + Cm)/4) + (35 *min(Wm, Bm, Sm, Cm))

if(Impressiveness > 500 * Sm)
then: Impressiveness = 0.25*Impressiveness + 0.75 * 500 * Sm

In practice: This all means that the smallest contribution is more than the half of the value. And when the room is too small impressiveness takes a big hit.


Value Description
< 0 awful
>= 0 and < 20 repulsive
>= 20 and < 30 dull
>= 30 and < 40 mediocre
>= 40 and < 50 interesting
>= 50 and < 65 little bit impressive
>= 65 and < 85 impressive
>= 85 and < 120 very impressive
>= 120 and < 170 extremely impressive
>= 170 and < 240 unbelievably impressive
>= 240 wondrously impressive

Wealth

This is the sum of the market value of all items in the room and all walls (but not doors) surrounding the room.

Value Description
< 500 impoverished
>= 500 and < 700 somewhat poor
>= 700 and < 2000 mediocre
>= 2000 and < 4000 somewhat rich
>= 4000 and < 10000 rich
>= 10000 and < 40000 luxurious
>= 40000 and < 100000 very luxurious
>= 100000 and < 1000000 extremely luxurious
>= 1000000 unbelievably luxurious

Beauty

Includes the beauty value of the floors underneath the room's walls, so it is recommended to construct flooring as a foundation for the walls before building a room.

Value Description
< -3.5 hideous
>= -3.5 and < 0 ugly
>= 0 and < 2.4 neutral
>= 2.4 and < 5 rather nice
>= 5 and < 15 beautiful
>= 15 and < 50 very beautiful
>= 50 and < 100 extremely beautiful
>= 100 unbelievably beautiful

Space

Indicates how much free space is available in the room. A room's Space score is 1.4 times the number of tiles in the room. Objects that prevent a pawn from standing in a space will decrease the available space in the room by 0.9 per tile the object covers. Thus, an occupied tile contributes a total of 0.5 to space. Objects that reduce space include beds, tables, workbenches, lamps, and heaters. Stools and chairs do not reduce space.

Value Description
< 12.5 cramped
>= 12.5 and < 29 rather tight
>= 29 and < 55 average-sized
>= 55 and < 70 rather spacious
>= 70 and < 130 spacious
>= 130 and < 349.5 very spacious
>= 349.5 extremely spacious

Cleanliness

This stat affects medical outcomes, research speed, and the chance that cooked meals will cause food poisoning. A room's cleanliness is the average cleanliness score of all tiles in the room. It is determined by the type of flooring including under walls, the presence of filth, and the cleanliness value of some furniture such as the Butcher table.

Room Cleanliness Description
< -1.1 very dirty
>= -1.1 and < -0.4 dirty
>= -0.4 and < -0.05 a little bit dirty
>= -0.05 and < 0.4 clean
>= 0.4 sterile


Object Cleanliness
Value
Sterile Tile floor 0.6
Steel, Silver or Gold floor 0.2
Bridge and all other constructed flooring 0
Smooth or Rough stone 0
Dirt floor (soil, gravel, etc) -1
Marshy soil -2
Blood -10
Insect blood, vomit, fuel puddle -15
Dirt, rubble, all other filth -5
Chunks -6


Using "Toggle the beauty display" the player can locate filth in a given room, which will be highlighted due to its negative "beauty value".

The beauty value is NOT equal to the cleanliness value but gives a very rough idea of the actual dirtiness. The Beauty value is heavily affected by other furniture in the room, especially sculptures or plant pots; a room or tile can be hideously dirty but somehow still look pleasant.

Test

The following content is the result of a study on the Effect of filth over sterile rooms. Results are raw observations, take with caution:

Effect of filth over sterile rooms
Size m^2 Measurements Dirt beauty Cleanliness
Value
Cleanliness
Value Difference
1 1*1 -15 -4.40/0.60 -5
25 5*5 -15 0.40/0.60 -0.20
50 5*10 -15 0.50/0.60 -0.10
100 10*10 -15 0.55/0.60 -0.05

Spilling behavior (observed in hospital):

  • When a tile has a -30 beauty value of blood on it, new blood will spill on another tile. It may be random or have something to do with a possible filth stacking limit.

Spilling test:

  • Method: 20 alpacas in a 5*5 room. All killed and body deleted using "damage 10 tool".
  • Result: Blood never stacks over 5, with -30 beauty. If no tile free to spill blood, nothing happens.

Observation:

  • Blood stacking on the same tile will not further decrease the room cleanliness and beauty. Only blood stacking on previously non bloody tiles will.

After further observations:

  • This mechanism works with any type of filth. Stacking them with the same type of filth does not increase their effect. Different types of filth stacking on the same tile will add the effects together.
  • Example : 2 x blood + 2 x firefoam on one tile will gives the same cleanliness than 1 x blood + 1 x firefoam on one tile.

Stacking of dirt and filth test

  • Method: 5*5 room, stacking as much filth as possible over all tiles.
    • Adding blood (-30) from Spilling test.
    • Adding fire foam (-25) using dev tools.
    • getting rid of the floor (-1).
    • Adding vomit (-41).
    • Adding dirt (-11, should be -15. Dirtiness values seems to be locked at -107 at most, to check).
    • insect fluids have not been tested.
  • Results:
    • From the given results it seems that the tiles can not have a beauty value past -107.
    • It has been observed that the "beauty value" does not decrease when stacking the same type of filth together. Would lock at -30 with the blood. cleanliness locks as beauty does.
    • Filth stack up to 5 time for a given type of filth. After that, if no space is available to spill filth, the action is cancelled.

Observation: During this study it has been observed that beauty values from indoor filth and outdoor filth are very different. Being indoor/outdoor has an effect on the beauty values.

Beauty values by type of filth (sample) :
Filth Beauty (outdoor) Beauty (indoor)
blood -8 to -10 -15 to -30
dirt -4 to -5 -15
vomit -11 to -13 -40
fire foam -8 -25
item on floor -6 to -7 -6 to -7
meat on floor -20 -20
chunk -20 -20
soil -1 -1
mud -2 -2

As we can observe, most filth have an increased beauty debuff when inside. Also, chunks do have an influence of -6 cleanliness (tested in a clean 1x1 room with wood floor).

Note that mud can not be built over, so you will rarely have the occasion to build a room filled with mud (why would you?). Test done by surrounding a small mud chunk with walls and building a roof over.

Also good to mention, items and raw meat do NOT have any effect on cleanliness. You can store medicine in your hospitals.

Conclusion

  • After a fight, colonists in need of treatment will often bleed huge amounts of blood. A proper hospital should be able to withstand up to -35 cleanliness (-105 beauty) per patients to keep cleanliness at 0. It counts as most patients will bleed up to 2-3 times (-10 cleanliness per bloody tiles and -30 beauty) and the doctor or the patient may add in -5 cleanliness (or -15 beauty) due to dirt.
    • The cheapest design to keep at least [0 <= cleanliness] would be to opt for a 6 x 10 (for at least 59 tiles) hospital for one bed.
    • The most effective option to keep at least [0.40 < cleanliness] would be to use a 14 x 14 (for at least 195 tiles) hospital for one bed.
  • Better to note, long term health care do not need such rooms. If you can afford to clean the hospital before healing/operating on a patient you might only need to worry about -20 debuff for cleanliness as you will only have to worry about the new blood spilling form the patient in bed (bleeds slower).
    • The cheapest design to keep at [0 <= cleanliness] would be 4x5 (for at least 17).
    • The most effective to keep at [0.40 < cleanliness] would be 6x5 (for at least 34).

Impressiveness

The value for impressiveness is based off of the four other stats with a heavy weighting towards the weakest of the four. The actual formula for calculating impressiveness involves multiple steps using a piecewise continuous function, so it's best to start with the basics.

First, each of the four stats has a corresponding divisor that's used to calculate that stat's base contribution.

Wealth: Wb = Wealth/1500
Beauty: Bb = Beauty/3
Space: Sb = Spaciousness/125
Cleanliness: Cb = 1 + (Cleanliness/2.5)

So, a room with a Wealth stat of 3000 gives a Wb value of 2 and a room with a Cleanliness of 0 gives a Cb of 1.

Now the fancier part starts. If these base contributions are between -1 and 1, the contribution does not get further modified. However, if it's above 1 (Or below -1 in the case of cleanliness, though that exact equation will be different), the value is modified to slow down the rate the impressiveness changes. The modified values become as follows:

modified = 1 + ln(base)       ; when base is greater than or equal to 1.
modified = base                 ; when base is less than 1 and greater than -1.
modified = -(1 + ln(-base))   ; when base is less than or equal to -1

These are natural logs here, and what this means in practice is that a stat's contribution to the impressiveness continues to grow more slowly as the base stat continues to increase. Here's an example with Wealth:

Start with a room with a Wealth value of 3000.
Wb = 3000/1500 = 2
Wm = 1 + ln(Wb) = 1 + ln(2) = 1.69


Once you have the modified values, you can calculate the impressiveness by:

Impressiveness = (65 * (Wm + Bm + Sm + Cm)/4) + (35 *min(Wm, Bm, Sm, Cm))

if(Impressiveness > 500 * Sm)
then: Impressiveness = 0.25*Impressiveness + 0.75 * 500 * Sm

In practice: This all means that the smallest contribution is more than the half of the value. And when the room is too small impressiveness takes a big hit.


Value Description
< 0 awful
>= 0 and < 20 repulsive
>= 20 and < 30 dull
>= 30 and < 40 mediocre
>= 40 and < 50 interesting
>= 50 and < 65 little bit impressive
>= 65 and < 85 impressive
>= 85 and < 120 very impressive
>= 120 and < 170 extremely impressive
>= 170 and < 240 unbelievably impressive
>= 240 wondrously impressive

Wealth

This is the sum of the market value of all items in the room and all walls (but not doors) surrounding the room.

Value Description
< 500 impoverished
>= 500 and < 700 somewhat poor
>= 700 and < 2000 mediocre
>= 2000 and < 4000 somewhat rich
>= 4000 and < 10000 rich
>= 10000 and < 40000 luxurious
>= 40000 and < 100000 very luxurious
>= 100000 and < 1000000 extremely luxurious
>= 1000000 unbelievably luxurious

Beauty

Includes the beauty value of the floors underneath the room's walls, so it is recommended to construct flooring as a foundation for the walls before building a room.

Value Description
< -3.5 hideous
>= -3.5 and < 0 ugly
>= 0 and < 2.4 neutral
>= 2.4 and < 5 rather nice
>= 5 and < 15 beautiful
>= 15 and < 50 very beautiful
>= 50 and < 100 extremely beautiful
>= 100 unbelievably beautiful

Space

Indicates how much free space is available in the room. A room's Space score is 1.4 times the number of tiles in the room. Objects that prevent a pawn from standing in a space will decrease the available space in the room by 0.9 per tile the object covers. Thus, an occupied tile contributes a total of 0.5 to space. Objects that reduce space include beds, tables, workbenches, lamps, and heaters. Stools and chairs do not reduce space.

Value Description
< 12.5 cramped
>= 12.5 and < 29 rather tight
>= 29 and < 55 average-sized
>= 55 and < 70 rather spacious
>= 70 and < 130 spacious
>= 130 and < 349.5 very spacious
>= 349.5 extremely spacious

Cleanliness

This stat affects medical outcomes, research speed, and the chance that cooked meals will cause food poisoning. A room's cleanliness is the average cleanliness score of all tiles in the room. It is determined by the type of flooring including under walls, the presence of filth, and the cleanliness value of some furniture such as the Butcher table.

Room Cleanliness Description
< -1.1 very dirty
>= -1.1 and < -0.4 dirty
>= -0.4 and < -0.05 a little bit dirty
>= -0.05 and < 0.4 clean
>= 0.4 sterile


Object Cleanliness
Value
Sterile Tile floor 0.6
Steel, Silver or Gold floor 0.2
Bridge and all other constructed flooring 0
Smooth or Rough stone 0
Dirt floor (soil, gravel, etc) -1
Marshy soil -2
Blood -10
Insect blood, vomit, fuel puddle -15
Dirt, rubble, all other filth -5
Chunks -6


Using "Toggle the beauty display" the player can locate filth in a given room, which will be highlighted due to its negative "beauty value".

The beauty value is NOT equal to the cleanliness value but gives a very rough idea of the actual dirtiness. The Beauty value is heavily affected by other furniture in the room, especially sculptures or plant pots; a room or tile can be hideously dirty but somehow still look pleasant.

Test

The following content is the result of a study on the Effect of filth over sterile rooms. Results are raw observations, take with caution:

Effect of filth over sterile rooms
Size m^2 Measurements Dirt beauty Cleanliness
Value
Cleanliness
Value Difference
1 1*1 -15 -4.40/0.60 -5
25 5*5 -15 0.40/0.60 -0.20
50 5*10 -15 0.50/0.60 -0.10
100 10*10 -15 0.55/0.60 -0.05

Spilling behavior (observed in hospital):

  • When a tile has a -30 beauty value of blood on it, new blood will spill on another tile. It may be random or have something to do with a possible filth stacking limit.

Spilling test:

  • Method: 20 alpacas in a 5*5 room. All killed and body deleted using "damage 10 tool".
  • Result: Blood never stacks over 5, with -30 beauty. If no tile free to spill blood, nothing happens.

Observation:

  • Blood stacking on the same tile will not further decrease the room cleanliness and beauty. Only blood stacking on previously non bloody tiles will.

After further observations:

  • This mechanism works with any type of filth. Stacking them with the same type of filth does not increase their effect. Different types of filth stacking on the same tile will add the effects together.
  • Example : 2 x blood + 2 x firefoam on one tile will gives the same cleanliness than 1 x blood + 1 x firefoam on one tile.

Stacking of dirt and filth test

  • Method: 5*5 room, stacking as much filth as possible over all tiles.
    • Adding blood (-30) from Spilling test.
    • Adding fire foam (-25) using dev tools.
    • getting rid of the floor (-1).
    • Adding vomit (-41).
    • Adding dirt (-11, should be -15. Dirtiness values seems to be locked at -107 at most, to check).
    • insect fluids have not been tested.
  • Results:
    • From the given results it seems that the tiles can not have a beauty value past -107.
    • It has been observed that the "beauty value" does not decrease when stacking the same type of filth together. Would lock at -30 with the blood. cleanliness locks as beauty does.
    • Filth stack up to 5 time for a given type of filth. After that, if no space is available to spill filth, the action is cancelled.

Observation: During this study it has been observed that beauty values from indoor filth and outdoor filth are very different. Being indoor/outdoor has an effect on the beauty values.

Beauty values by type of filth (sample) :
Filth Beauty (outdoor) Beauty (indoor)
blood -8 to -10 -15 to -30
dirt -4 to -5 -15
vomit -11 to -13 -40
fire foam -8 -25
item on floor -6 to -7 -6 to -7
meat on floor -20 -20
chunk -20 -20
soil -1 -1
mud -2 -2

As we can observe, most filth have an increased beauty debuff when inside. Also, chunks do have an influence of -6 cleanliness (tested in a clean 1x1 room with wood floor).

Note that mud can not be built over, so you will rarely have the occasion to build a room filled with mud (why would you?). Test done by surrounding a small mud chunk with walls and building a roof over.

Also good to mention, items and raw meat do NOT have any effect on cleanliness. You can store medicine in your hospitals.

Conclusion

  • After a fight, colonists in need of treatment will often bleed huge amounts of blood. A proper hospital should be able to withstand up to -35 cleanliness (-105 beauty) per patients to keep cleanliness at 0. It counts as most patients will bleed up to 2-3 times (-10 cleanliness per bloody tiles and -30 beauty) and the doctor or the patient may add in -5 cleanliness (or -15 beauty) due to dirt.
    • The cheapest design to keep at least [0 <= cleanliness] would be to opt for a 6 x 10 (for at least 59 tiles) hospital for one bed.
    • The most effective option to keep at least [0.40 < cleanliness] would be to use a 14 x 14 (for at least 195 tiles) hospital for one bed.
  • Better to note, long term health care do not need such rooms. If you can afford to clean the hospital before healing/operating on a patient you might only need to worry about -20 debuff for cleanliness as you will only have to worry about the new blood spilling form the patient in bed (bleeds slower).
    • The cheapest design to keep at [0 <= cleanliness] would be 4x5 (for at least 17).
    • The most effective to keep at [0.40 < cleanliness] would be 6x5 (for at least 34).