Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: How can I hack to get more (and longer) research and art books to be written?  (Read 134 times)

Tachytaenius

  • Bay Watcher
    • View Profile

This is all for version 47.05 on my end, but please chime in with any info learned in 50, it's very likely to be useful!

I've got a DFHack'd-up save with 4 humans in a fortress cooperating on stuff. One feature of it is that none of my citizens rust in skills or age. Made some scripts to get all that working right.
I made a library and one immediately wrote a (one page) novel. Nice!
Now I want them to write more. I wanna see new poems and novels and historical documents! I hope to get codices with more than one page, lol.

But... they're just pondering and discussing topics instead. I know they will eventually make discoveries, and then eventually write about them, but... This is just way too slow!
So I have some questions for fellow !!SCIENTIST!!s, especially ones who use DFHack a lot:

1. What determines whether they will write art or history books? I've never had trouble with getting them to ponder/research/discuss, but I wonder if personality/values/needs make a difference, like how a MakeMerry need is required for dancing. They all value art at 50 (max) and have a need to be creative...
2. Can multiple-page codices be made in fortress mode? To be clear: a DFHack edit or a custom reaction or whatever would be a very welcome thing to try.
3. Are there timers on units or histfigs or anything like that which I can subtract from to my heart's content to encourage far far far more frequent writing?

Also, a useful thing to make in-game discoveries really fast is to get DFHack to run the following repeatedly:
Code: (lua) [Select]
for _, activity in ipairs(df.global.world.activities.all) do
for _, event in ipairs(activity.events) do
if event._type == df.activity_event_ponder_topicst then
event.timer = 1
end
end
end
Can also subtract x then math.max with 1. That kind of thing is basically what I will do for #3 if a variable can be found.
Logged
"Even if they are natural laws, I cannot allow it!"