Warning: Long post.
Some of you may have already seen the upcoming changes in v1.82 in the What's New page on the Oolite website. This thread discusses in a bit more detail some changes pertaining specifically to the Windows port. These are mostly related to interaction of the game with the Windows environment and the objective is to simply make the gamer's experience a better one. All of this information has been already posted at some time or another in the Progress thread while the features were being implemented, but I am concentrating everything here for easy reference. So here it goes:
- Improved multi monitor support: This generic description in the What's New page includes a group of changes targeted to improving the experience for those using multiple monitor setups. This does not refer to running the game across many screens (this has been possible since at least 2009), but rather to how the game behaves when more than one monitors are present.
-- Oolite on Windows starts up always on the primary monitor. The first change related to multiple monitors is how the game behaves when full screen is activated. 1.80 and earlier would always go fullscreen on the primary monitor. This means that if you had a 1366x768 laptop connected to a 1920x1080 TV and the laptop screen was the primary one, you would not be able to play fullscreen at 1920x1080, unless you switched primary monitor from the OS. Moving the game window to the second monitor and activating full screen would always end up in full screen returning to the primary monitor. Not anymore. Now you can chose the monitor you want to use for fullscreen and it is as simple as moving the game window to the monitor you want and then switching to full screen either via the Game Options menu or via the F12 hotkey. Oolite now senses which monitor it is running on and whether that monitor is the primary one or not. Fullscreen is limited to the monitor's native resolution on a secondary monitor; you will find your screen resolution option in Game Options will display the native resolution that has been detected, will be automatically greyed out and become unselectable as soon as the game window enters the area of the secondary monitor. This is what you will see:
Moving the game window back to the primary monitor will give you back your original full screen resolution options.
-- Behaviour of fullscreen: The Windows Aero interface has introduced a number of hotkeys for enabliing instant moving of application windows either between monitors or to the edges of the screen etc. This is all nice and dandy, but it has a side effect that can be a problem for a lot of applications, which are not "prepared" for it: It means that a fullscreen window can now be moved, while before it was not possible (no title bar or borders to grab it from). If you have multi-monitor setup and feel like it, try this: Start up 1.80, go fullscreen and then press Shift + <Windows Key> + Left or Right Arrow. The fullscreen jumps to the secondary monitor and it looks like it's the wrong size. Things get only worse if you bring it back to the original monitor in the same way. Internet Explorer suffers from this and Notepad++ as well. Oolite 1.82, well, no When 1.82 goes fullscreen on any monitor, it will take ownership and will not allow hotkey-movements to another screen. This behaviour is modeled on how Google Chrome does it and I think it is the most sensible one. You want to move it to another monitor? Get out of fullscreen first.
-- Mouse grabbing: We have had complaints from players using mouse on multiple monitors that they were accidentally clicking outside the monitor where the game was running from and this resulted in the game losing focus, usually at the worst possible moment during combat. This was happening in windowed mode (if mouse control was enabled there), but also in fullscreen (which is basically a borderless window, sized to desktop dimensions). This problem can now be solved in v1.82. Using the "grab-mouse-on-mouse-control" setting in the .GNUstepDefaults file, one can ask the game to restrict the mouse cursor inside its window when mouse control is active. Alt-tab or disabling mouse control will liberate the mouse cursor and make it available for normal use. The reason this setting is defaulted to NO is because it is considered very bad form for applications to take ownership of the common OS pointing device. Therefore we want the user to specifically request it.
- Another change coming up on Windows, which is probably more of interest to OXP writers, is how the patcher app from Deployment to Test Release works. Till now it was acting on the deployment build installer, from 1.82 onwards it will be more like the patching apps you are used to. It will patch the already installed game. You will just have to point it to the folder where Oolite is installed. The app will then verify that it is indeed an Oolite v1.82 Deployment installation that it is being pointed to, then proceed to backup the original oolite.exe deployment executable and install the Test Release executable and the Basic Debug OXP. It should be more straightforward this way and allows you to have both executables in the same folder and alternate between them if you so wish.
Told you it was going to be a long post!