GithubHelp home page GithubHelp logo

Comments (15)

franciselliott avatar franciselliott commented on June 1, 2024 2

Deleting the TCC.db file completely in recovery mode did it. Thanks for your help! Happy that I can BOOM again. :)

I downloaded and reinstalled just in case, it prompted me to give permissions and then worked perfectly.

from lifish.

franciselliott avatar franciselliott commented on June 1, 2024 1

Ah okay. Thanks so much for the response! Maybe I'll give it a look then. Can't be too hard surely... cheers!

from lifish.

stacksjb avatar stacksjb commented on June 1, 2024 1

I've been meaning to come back and test this for a while and figure out what is going on, but I recently re-downloaded the latest version from (https://silverweed.github.io/boom/) (BOOM REMAKE). Upon launching it in windowed mode, I immediately got the prompt to allow global events, I then went into system preferences and clicked allow. Then I clicked the button to re-launch it, and it worked.

Note: To execute on OS versions past Big Sur (including Monterrey), you have to control/right click and then select Open for the first time (to bypass codesigning). Otherwise you'll get a "Unable to validate app for malware" message.

I did recently have issues with other apps and permissions not working, so I recently fully reset my TCC database and PRAM (https://recoursive.com/2020/03/03/reset_macos_privacy_permissions/), which might have been a factor.

Can anyone else give this a test and see? I found that two-player works as well with a joystick once I set controls.

from lifish.

silverweed avatar silverweed commented on June 1, 2024

Hello,

yes I am aware that the game stopped working out of the box on mac but I also decided to stop supporting it since it became impossible for me to test the game on it (I don't have access to an apple computer anymore. Even if I did have access to a mac, I'm not sure I'd bother to work on it to be honest, it's got too inconvenient to develop on apple in my opinion).

I'll gladly accept any contributions from people who do have access to it, but I'm afraid I'm not gonna personally fix any mac-specific issues anytime soon :(

from lifish.

stacksjb avatar stacksjb commented on June 1, 2024

This is due to the privacy changes in Big Sur which change the way keyboard input is monitored, allowed and accepted.

While it should ultimately be fixed in code, a workaround which should resolve the issue is to add Lifish under the "input Monitoring" section under System Preferences -> Security and Privacy -> Input Monitoring

I'm happy to help with Mac specific issues and will see what I can do to assist.

from lifish.

silverweed avatar silverweed commented on June 1, 2024

@stacksjb thank you for your input (no pun intended). What kind of code changes are we talking about? The thing is, Lifish itself doesn't do much work about inputs as it relies on SFML for that, so I'm not sure what should be done about that at this level.

from lifish.

MegaChriz avatar MegaChriz commented on June 1, 2024

When searching for "SFML big sur", I found the following on https://en.sfml-dev.org/forums/index.php?topic=27734.0:

Keep in mind that since macOS Catalina, you'll get a popup at start, that requires keystrokes permission whenever you're using sf::Keyboard::isKeyPressed(). If you just use events, then you don't need to provide that permission.

So that could mean you need to use events? I'm not familiar with SFML or writing code for the Mac, so I don't know if above is going to help any.

from lifish.

silverweed avatar silverweed commented on June 1, 2024

Thanks for the reminder @MegaChriz : now that I remember it, I had actually already done a thing to use events on OSX: 9241e04

So either it's not working or it's not sufficient for some other reason...

from lifish.

MegaChriz avatar MegaChriz commented on June 1, 2024

I see the code is doing something different when IS_APPLE is defined (if I read the code correctly - I'm not even sure which language the code is in. Is it C++?)

The first thing I would then try is if #ifdef IS_APPLE is TRUE on Big Sur. Maybe @stacksjb could test that?

from lifish.

silverweed avatar silverweed commented on June 1, 2024

In theory IS_APPLE is defined by the core SFML headers, which should be included whenever an SFML header is (and in this case I'm including SFML/Window)... I wouldn't exclude that that define is missing for whatever reason though.

from lifish.

franciselliott avatar franciselliott commented on June 1, 2024

The program is able to receive inputs to set keys in preferences, which suggests that input monitoring is working okay. It prompted for permissions originally, and the program is right there in the list in system preferences.

from lifish.

silverweed avatar silverweed commented on June 1, 2024

I will reopen this while the discussion goes on. I would first try to verify that the polyfill function is actually being used.

from lifish.

franciselliott avatar franciselliott commented on June 1, 2024

I can see that BOOM Remake has access to input monitoring on my mac. I'm actually on Monterray 12.3 M1 2020. I wasn't able to reset TCC due to an error

"executable_is_endpoint_security_client failed for path file:///Users/frankbook/Library/Application%20Support/Steam/steamapps/common/Empires%20of%20the%20Undergrowth/EotU.app/Contents/MacOS/EotU with error: code object is not signed at all"

A similar issue occurs when trying to reset the TCC just for BOOM Remake as well. The app actually recognises the inputs in the preferences menu but it doesn't move at all in game.

Is it actually worth reseting PRAM? I don't really want to do so just for the sake of it.

from lifish.

stacksjb avatar stacksjb commented on June 1, 2024

I'm on Monterrey 12.3 as well (but a 2018 intel Macbook Pro)

The above error isn't related to TCC or to Boom Remake, it would just indicate that you have an app that isn't signed (Empires of Undergrowth in this case).

You could remove that app and try again, or you could just bootinto recovery mode and deleting the entire database (bottom command/instructions). Apps will automatically re-prompt for permissions. It would be great if you can give that a shot. I would also recommend deleting and re-downloading the app before you re-launch it so it can re-initialize the app into the security db.

Resetting PRAM doesnt' remove much that you would rely on (the settings that come to mind are things like screen positions and resolution (if you have multiple displays), date/time (which will automatically update when you boot again), volume level and sound output device settings).

from lifish.

orazioedoardo avatar orazioedoardo commented on June 1, 2024

For those that are still subscribed to this issue, #20 will allow keyboard input without giving any permission.

from lifish.

Related Issues (17)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.