I think it's all messed up. Which is unfortunate, because if there's no solution then I'll have to figure out how to transfer all my code to a new .cap and I've noticed that copying events between .caps usually doesn't work.
But shouldn't I have to place a MouseKeyboard somewhere in the game initially in order to make it global? I can't just go and start a new application and see the MouseKeyboard already available to use-- I just tried it.
Unless you meant after the inital placement, in which case I don't think the object realizes it's global. Because it will not function in any layout in which I can't see it in the object list in the layout editor. And I don't except in my initial gameplay frame I made and placed the MouseKeyboard object in to start.
update: ok I was about to post this and another reply popped up, which I'll now cover.
It's not really a problem with "run layout" because it doesn't do anything in "run all" either.
Now is the issue that I placed my global MouseKeyboard in the second layout of the app to start? I had been messing around and didn't need the keyboard input yet, so I didn't place it, but then did and made it global in the second layout where the game is.