Reading Bonus
This article is suggested to be rewritten. Reason: Subheadings, cleanup. reasearch speed implementation mechanics. You can help the RimWorld Wiki by improving it. |
This article is a stub. You can help RimWorld Wiki by expanding it. Reason: 1) Two-way links. |
Reading Bonus is a stat: Provides a bonus to research speed, XP gained from reading, and recreation gained from reading in the same room as the bookcase. This is increased by placing more and higher quality books in the bookcase. Its minimum allowed value is 100%. Its default value is 100%.
The research bonus applies to both Hi-tech and Simple research benches, and is applied multiplicatively, similar to Room Cleanliness.
This is only used to communicate information in the special stats page for bookcases.
It depends entirely on the following room stat:
Room Stat | Custom Label |
---|---|
Reading bonus | Reading bonus |
Reading Bonus is determined by the number of books in bookcases in a room. Books on the floor do not count towards this stat.
There are diminishing returns on reading bonus for the number of books:
Books | Reading Bonus Offset Per Book |
---|---|
1-5 | +0.8% |
6-10 | +0.4% |
11-15 | +0.2% |
16+ | +0.1% |
Books 1-5 give a total of +4%, books 6-10 a total +2, 11-15 a total +1%, and 16+ a mere +0.1% per book. To reach the maximum bonus of 120%, it would require a total of 155 books.
Although the stat description might imply that higher quality books give higher reading bonuses, there is no evidence within the code that supports that case. However, there are several factors that do depend on book quality when reading a book:
Schematic research experience gain:
Quality | Research Exp/Tick |
60 ticks (1 sec) | 2,500 ticks (1 in-game hour) | 60,000 ticks (1 in-game day) |
---|---|---|---|---|
Awful | 0.008 | 0.48 | 20 | 480 |
Poor | 0.012 | 0.72 | 30 | 720 |
Normal | 0.016 | 0.96 | 40 | 960 |
Good | 0.02 | 1.2 | 50 | 1200 |
Excellent | 0.024 | 1.44 | 60 | 1440 |
Masterwork | 0.028 | 1.68 | 70 | 1680 |
Legendary | 0.032 | 1.92 | 80 | 1920 |
Tome Knowledge experience gain:
Quality | Knowledge Exp/Tick |
60 ticks (1 sec) | 2,500 ticks (1 in-game hour) | 60,000 ticks (1 in-game day) |
---|---|---|---|---|
Awful | 0.00003 | 0.0018 | 0.075 | 1.8 |
Poor | 0.00006 | 0.0036 | 0.15 | 3.6 |
Normal | 0.00009 | 0.0054 | 0.225 | 5.4 |
Good | 0.00012 | 0.0072 | 0.3 | 7.2 |
Excellent | 0.00015 | 0.009 | 0.375 | 9 |
Masterwork | 0.00018 | 0.0108 | 0.45 | 10.8 |
Legendary | 0.00021 | 0.0126 | 0.525 | 12.6 |
Textbook skill experience gain:
Quality | Skill Exp/Tick |
60 ticks (1 sec) | 2,500 ticks (1 in-game hour) | 60,000 ticks (1 in-game day) |
---|---|---|---|---|
Awful | 0.05 | 3 | 125 | 3000 |
Poor | 0.075 | 4.5 | 187.5 | 4500 |
Normal | 0.1 | 6 | 250 | 6000 |
Good | 0.125 | 7.5 | 312.5 | 7500 |
Excellent | 0.15 | 9 | 375 | 9000 |
Masterwork | 0.175 | 10.5 | 437.5 | 10500 |
Legendary | 0.2 | 12 | 500 | 12000 |
Novel recreation factor:
Quality | Joy Factor |
---|---|
Awful | 1.2 |
Poor | 1.4 |
Normal | 1.6 |
Good | 1.8 |
Excellent | 2 |
Masterwork | 2.25 |
Legendary | 2.5 |
All of these factors are further multiplied by the Reading Bonus of the room.
Calculating Reading Bonus
For reference, bookcases hold 5 books per cell, where Bookcases have 2 cells and Small bookcases have 1. Cells Filled Percentage refers to the ratio of books held within a bookcase cell to the maximum, i.e. 5, so each book adds 20%.
Since Reading Bonus depends on Room Reading Bonus, they are essentially the same thing.
Room Reading Bonus is calculated with:
num = 0
num2 = 0
for each bookcase in the room: add Cells Filled Percentage for each cell to num2
num2 = sum of all bookcase cells filled percentages.
num4 = 0
while num2 > 0 and num < 0.2:
- num5 = num2, or 1 if num2 is >= 1
- subtract num5 from num2
- add (num5 * CellFilledFactor[index = the smaller of num4 and 3]) to num
- add 1 to num4
Index | Factor |
---|---|
0 | 0.04 |
1 | 0.02 |
2 | 0.01 |
3 | 0.005 |
Room Reading Bonus = 1 + the smaller of num and 0.2
So if you have 20 cells worth of full bookcases (100 total books):
num2 = 20
Iteration | num5 | num2 | num |
---|---|---|---|
1 | 1 | 19 | 0.04 (0 + 0.04) |
2 | 1 | 18 | 0.06 (0.04 + 0.02) |
3 | 1 | 17 | 0.07 (0.06 + 0.01) |
4 | 1 | 16 | 0.075 (0.07 + 0.005) |
5 | 1 | 15 | 0.08 (0.075 + 0.005) |
6 | 1 | 14 | 0.085 (0.08 + 0.005) |
With our current example, this would be repeated 14 more times, to where num = 0.155
The Room Reading Bonus would therefore be 1.155, or 115.5%, for 100 books.
Here is a table with the total number of books (in bookcases) in a room, and the resulting room reading bonus:
Books | Room Reading Bonus |
---|---|
0 | 1 |
1 | 1.008 |
2 | 1.016 |
3 | 1.024 |
4 | 1.032 |
5 | 1.04 |
6 | 1.044 |
7 | 1.048 |
8 | 1.052 |
9 | 1.056 |
10 | 1.06 |
11 | 1.062 |
12 | 1.064 |
13 | 1.066 |
14 | 1.068 |
15 | 1.07 |
16 | 1.071 |
17 | 1.072 |
18 | 1.073 |
19 | 1.074 |
20 | 1.075 |
25 | 1.08 |
100 | 1.155 |
155 | 1.2 |
Stat Def Data
Def Name Label Label For Full Stat List Offset Label Attributes |
Description | Category | Parameters | Complex Parameters |
Display Priority In Category |
---|---|---|---|---|---|
|
Provides a bonus to research speed, XP gained from reading, and recreation gained from reading in the same room as the bookcase. This is increased by placing more and higher quality books in the bookcase. |
|
|
|
4200 |
Version history
- 1.5.4062 - Added.