Did some more experimenting.
Scrolling seems to lock whenever the screen reaches the edge of the room. When it locks, the screen can still be scrolled along the other axis, but cannot move along the one it had original moved. That is, if the screen scrolled horizontally and reached the right edge of the map, it then can only scroll vertically. If the screen scrolled vertically all the way to the bottom edge of a room, it then can only scroll horizontally. When the screen hits a corner (both horizontal and vertical edges of the room) it cannot be scrolled at all. I've tried all commands possible to free the camera from this locked state (scroll to position, scroll to object, center screen on character, scroll when mouse reaches the screen edge.) Nothing works.
All this seems to be tied to the currently running FPS, as observed using Fraps.
The frame rate (that is, the amount of frames pushed by the video card, not to be confused with a monitor's refresh rate) seems to be dictated by the v-sync settings on display adapter control panels.
When using the v-sync settings "default on," "default off," or "application controlled," Visionaire caps the framerate at 60. Scrolling works fine, and there are no additional problems.
When using the v-sync settings "force off" or "force on," the framerate seems to have no cap at all, apparently going as high as the display hardware allows.
This causes the scrolling lock as described above. In addition, it creates problems when running scripts. We had scripts to move objects, and one to control hover-over inventory scrolling. With the uncapped framerate, the objects moved noticeably faster than intended, and the inventory scrolling was so fast that it made selecting some items difficult or impossible. My codesigner was able to make a script to solve those last two problems, but the scrolling lock problem still remains unsolved.
I also noticed that ALT-TABing out of the game and back unlocks the camera.
I could simply tell players to change their v-sync settings if they experience scrolling problems, but many people detest v-sync and may be turned off by such a requirement. Also, v-sync creates a fairly noticeable amount of mouse lag.
So, I'm wondering if anyone has ideas about this issue or knows of a workaround. I suppose I could always just remove scrolling from the game all together, but the parallax effect really does a lot to make the location feel alive and I'd rather not lose out on that.
Thanks in advance.