Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: [40c] Dog Discovered Ambusher While Paused (related: Bug 768)  (Read 574 times)

Exponent

  • Bay Watcher
    • View Profile
[40c] Dog Discovered Ambusher While Paused (related: Bug 768)
« on: August 25, 2008, 02:11:04 pm »

I was doing some mining designations with the mouse somewhere underground, and suddenly the screen was above ground, and I was no longer in the designation menu (I was in no menu at all at that point).  After a few seconds of confusion, I checked the message log (a)*, and saw that the last item had something to do about discovering a thief.  I went to the units screen, scrolled down until I found a kobold, (c) to view it, and sure enough, it was right there above ground where my view had moved to, about two or three tiles away from a chained dog.  Apparently it was far enough away to not instantly get detected, but there was a small chance of detection that was getting repeatedly checked while I was doing my mining designations, and eventually the dog succeeded at detecting the creature.

It is almost definitely related to bug #768, where cats adopt dwarves, meetings happen really fast, and dwarves gain (certain types of) experience while the player is doing mining designations with the mouse.  There are probably a whole class of different activities that the program is working on from this same section of code.

*Has anyone else noticed that the messages at the bottom of the screen cycle much more slowly than before?  It could just be a modified duration that is intended to be better for people, but it is actually problematic for me, as I will see messages quite a while after the action that caused them occured, at least whenever there are a lot of messages popping up in quick succession.  I end up checking the message log more often, because it is quicker that way.  Just curious about whether or not I'm alone in this.
Logged

Draco18s

  • Bay Watcher
    • View Profile
Re: [40c] Dog Discovered Ambusher While Paused (related: Bug 768)
« Reply #1 on: August 25, 2008, 03:08:37 pm »

The game currently runs (really really slowly) while paused.
Logged

Exponent

  • Bay Watcher
    • View Profile
Re: [40c] Dog Discovered Ambusher While Paused (related: Bug 768)
« Reply #2 on: August 25, 2008, 03:45:13 pm »

I tried to experiment, to see if this was indeed the case.  I started up a new game, set up a food stockpile so that I knew the dwarves would have jobs to do, pressed the one step key (.) a few times (around 40) to make sure that the dwarves were indeed moving around, and then I simply waited, with the game paused.  After around 10 minutes, nothing had changed at all.  The cats hadn't even adopted any dwarves.

I then terminated the program, so that I could start from the beginning again precisely the same as before.  I began designating stuff for mining using the mouse.  Cats quite quickly adopted dwarves, but no one moved, not even a single tile, even after a few minutes of constant mouse designation.

Finally, I tried designating stuff using the keyboard, but nothing happened, even after over 5 minutes of tedious keyboard tapping (enter, enter, left, enter, enter, left...).  No cat adoptions, no movements of any kind.

When I have more time, I'll leave it paused for a lot longer to see if things do indeed happen, but I would have expected at least one tile movement (which takes fewer than 40 single steps of the game) during a 10 minute period of time if indeed the game runs really really slowly while "paused".  I have to admit, I'm rather skeptical of that claim.
Logged

MMad

  • Bay Watcher
    • View Profile
Re: [40c] Dog Discovered Ambusher While Paused (related: Bug 768)
« Reply #3 on: August 25, 2008, 05:25:26 pm »

When I have more time, I'll leave it paused for a lot longer to see if things do indeed happen, but I would have expected at least one tile movement (which takes fewer than 40 single steps of the game) during a 10 minute period of time if indeed the game runs really really slowly while "paused".  I have to admit, I'm rather skeptical of that claim.

This was discussed in a relatively recent thread on the bug forums:
http://www.bay12games.com/forum/index.php?topic=22719.0

There was some interesting experiments done there too.
Logged
"Ask not what your fortress can do for you - ask what you can do for your fortress."
Unapologetic ASCII abolitionist.

Cryten

  • Bay Watcher
    • View Profile
Re: [40c] Dog Discovered Ambusher While Paused (related: Bug 768)
« Reply #4 on: August 26, 2008, 12:45:29 am »

To be honest this problem is mainly because the calculation of the units in the program is happening on refreshes. Since the game engine is running through the GUI when changes occur in the GUI forcing it to refresh even while paused a refresh step occurs sending a recheck through everything thats been programmed to activate on a new graphical frame.

I dont see this changing as its a core design. The only thing I think toady can do is put down a flag that will skip these bits of logic when the game is paused (but this is very repedative)
Logged