Difference between revisions of "Rooms"

From RimWorld Wiki
Jump to navigation Jump to search
(Corrected spelling of 'effected' to 'affected')
(updated formula and table of impressiveness)
Line 38: Line 38:
 
First, each of the four stats has a corresponding divisor that's used to calculate that stat's base contribution.
 
First, each of the four stats has a corresponding divisor that's used to calculate that stat's base contribution.
  
: Wealth: '''W'''<sub>b</sub> = Wealth/3500
+
: Wealth: '''W'''<sub>b</sub> = Wealth/1500
: Beauty: '''B'''<sub>b</sub> = Beauty/6
+
: Beauty: '''B'''<sub>b</sub> = Beauty/3
 
: Space: '''S'''<sub>b</sub> = Spaciousness/125
 
: Space: '''S'''<sub>b</sub> = Spaciousness/125
 
: Cleanliness: '''C'''<sub>b</sub> = 1 + (Cleanliness/2.5)
 
: Cleanliness: '''C'''<sub>b</sub> = 1 + (Cleanliness/2.5)
Line 53: Line 53:
 
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:
 
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 7000.
+
: Start with a room with a Wealth value of 3000.
: '''W'''<sub>b</sub> = 7000/3500 = 2
+
: '''W'''<sub>b</sub> = 3000/1500 = 2
: '''W'''<sub>m</sub> = 1 + ln('''W'''<sub>b</sub>) = 1 + ln(2) =  1.69
+
: '''W'''<sub>m</sub> = 1 + ln('''W'''<sub>b</sub>) = 1 + ln(4) =  1.69
  
Or, for a list going the other direction, he's the values for Wealth you need to get certain modified values:
 
  
: '''W'''<sub>m</sub> = 2 : Wealth of 9513 (2.718x divisor)
+
Once you have the modified values, you can calculate the impressiveness by:
: '''W'''<sub>m</sub> = 3 : Wealth of 25862 (7.389x divisor)
 
: '''W'''<sub>m</sub> = 4 : Wealth of 70301 (20.086x divisor)
 
: '''W'''<sub>m</sub> = 5 : Wealth of 519435 (148.41x divisor)
 
  
Once you have the modified values, you can calculate the impressiveness by:
+
Impressiveness = (65 * ('''W'''<sub>m</sub> + '''B'''<sub>m</sub> + '''S'''<sub>m</sub> + '''C'''<sub>m</sub>)/4) + (35 *min('''W'''<sub>m</sub>, '''B'''<sub>m</sub>, '''S'''<sub>m</sub>, '''C'''<sub>m</sub>))<br />
  
Impressiveness = 100[('''W'''<sub>m</sub> + '''B'''<sub>m</sub> + '''S'''<sub>m</sub> + '''C'''<sub>m</sub>)/4 + min('''W'''<sub>m</sub>, '''B'''<sub>m</sub>, '''S'''<sub>m</sub>, '''C'''<sub>m</sub>)]/2
+
if(Impressiveness > 500 * '''S'''<sub>m</sub>)<br />
 +
then: Impressiveness  = 0.25*Impressiveness + 0.75 * 500 * '''S'''<sub>m</sub>
  
In English: You take the average of the four modified stats and then average ''that'' with the smallest of the four modified stats. After that, you multiply by 100 to get the room's impressiveness.
+
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.
  
In practice: This all means that the smallest contribution is weighted ''five'' to one compared to the other stats (5/8 for the smallest, 1/8 for each of the other three).
 
  
So, when a room has base stats all equal to their corresponding divisors, the Impressiveness will be 100. But if Size gets dropped to 50, both Beauty and Wealth need to have a ''modified'' value of 2.5, which means an unmodified value of 4.48x their divisors. This isn't particularly difficult in practice, but growth beyond this point continues to slow down and so it's incredibly difficult for small rooms to build up impressiveness.
 
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 80: Line 76:
  
 
|-  
 
|-  
| < -150
+
| < 0
 
| awful
 
| awful
 
|-
 
|-
| >= -150 and < -40
+
| >= 0 and < 20
 
| repulsive
 
| repulsive
 
|-
 
|-
| >= -40 and < 30
+
| >= 20 and < 30
 
| dull
 
| dull
 
|-
 
|-
| >= 30 and < 60 
+
| >= 30 and < 40
 
| mediocre
 
| mediocre
 
|-  
 
|-  
| >= 60 and < 80
+
| >= 40 and < 50
 
| interesting
 
| interesting
 
|-
 
|-
| >= 80 and < 95
+
| >= 50 and < 65
 
| little bit impressive
 
| little bit impressive
 
|-
 
|-
| >= 95 and < 115
+
| >= 65 and < 85
 
| impressive
 
| impressive
 
|-
 
|-
| >= 115 and < 130
+
| >= 85 and < 120
 
| very impressive
 
| very impressive
 
|-
 
|-
| >= 130 and < 160
+
| >= 120 and < 170
 
| extremely impressive
 
| extremely impressive
 
|-
 
|-
| >= 160 and < 180
+
| >= 170 and < 240
 
| unbelievably impressive
 
| unbelievably impressive
 
|-
 
|-
| >= 180 and < 215
+
| >= 240
| miraculously wonderful
 
|-
 
| > 215
 
 
| wonder of the World
 
| wonder of the World
 
 
|}
 
|}
  

Revision as of 17:42, 11 January 2017

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 Room inspection 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 Room inspection 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 7000 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 1.
modified = base, when base is greater than or equal to -1 and less than or equal to 1.
modified = -(1 + ln(-base)), when base is less than -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(4) = 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 wonder of the World

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

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 factors such as whether a floor has been constructed, and whether there is dirt, blood, animal filth or vomit present.

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
Constructed floor 0
Sterile Tile floor 0.6
Rough stone 0
Natural floor (soil, gravel, etc) -1
Blood -10
Insect blood, vomit, fuel puddle -15
Dirt, rubble, all other filth -5

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 7000 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 1.
modified = base, when base is greater than or equal to -1 and less than or equal to 1.
modified = -(1 + ln(-base)), when base is less than -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(4) = 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 wonder of the World

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

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 factors such as whether a floor has been constructed, and whether there is dirt, blood, animal filth or vomit present.

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
Constructed floor 0
Sterile Tile floor 0.6
Rough stone 0
Natural floor (soil, gravel, etc) -1
Blood -10
Insect blood, vomit, fuel puddle -15
Dirt, rubble, all other filth -5