Although it's not obvious at first glance, my template uses the ultimate fullscreen object and produces the same issues when it comes to using the desktop mouse pointer. Ultimate fullscreen scales up your game window to fit your desktop size, but this is only a visual effect. The active clickable window stays the original size, so mouse coordinates will be offset. That's my theory on the issue, I think there are separate threads that discussed it too as well as possible workaraounds. I took the probably simplest solution and made a custom mouse pointer for my game using the "mouse controlled" movement, which will disable the windows mouse pointer in favour of your custom movement. The downfall is you'll have to custom-code commands like double klicking after this. With a mouse-controlled object in your frame only "single klick" and "repeat while mouse key is pressed" are recognized. But that's not really a problem in the end and your game looks pretty advanced anyway, so you`ll be able to do it. I also tried to keep the windows mouse pointer using offset calculations, but did not manage to get this working. Two more side notes if you go with a mouse-controlled custom pointer:
1. You should make sure your window minimizes to the taskbar if the user is alt-tabbing out of your game (the template does this by default). An open Fusion window running in the background with mouse-controlled objects in it will still disable the windows mouse pointer in some cases until you kill the app through the task manager. If you minimize the window when not active, everything will be fine though and my code auto-recalls the scaling routine after maximizing anyway, so in case the user changes desktop resolution or switches to another monitor the new display will still be pixel perfect.
2. The Steam Overlay is NOT affected by this, still works fine as intended and the mouse pointer is not blocked. There's a separate thread out there about Ultimate Fullscreen issues with the steam overlay, those never occurred to me using my template.
Ah okay. I have a few questions about this solution though:
1) How do you decrease the speed of the mouse controlled object?
2) Just to make sure I am doing this right. Will I need to have 2 objects, with one that is 1 pixel, and whenever that 1 pixel object is overlapping something I want to click on test if Player 1 Fire 1 key is pressed? And then I will also need to have a 1 pixel object for every layer I will be clicking?
3) If I won't be releasing my game until around May probably, should I just wait until Fusion 3 comes out and see if it fixes this whole issue?
Thanks again for all your help!
2) You don't need to test fire 1, the normal mouse actions "user clicks - single click" and "repeat while mouse key is pressed" are still available. As I said: Double clicks won't be recognized anymore (but maybe this was fixed meanwhile, don't know). The mouse wheel also still works.
Yes, I would create a pixel on every layer you need to check. What comes next and how many different click and drag options you make would highly depend on your specific needs.
3) No, I don't think F3 will be stable and feature complete enough out of the box to directly release a commercial product with it, but that's just my opinion