Mac Support

From Flashpoint Datahub
Revision as of 00:05, 10 July 2023 by Maoijoon (talk | contribs) (→‎JavaScript Error on First Launch: Making it more clear that you have to move the folder and not the app)
Jump to navigation Jump to search

This page provides information about the first official Flashpoint release for MacOS! For information about older releases, see the Beta 2022-06-22 subpage.

Please join our Discord and provide your feedback in the flashpoint-help forum channel: http://discord.gg/S9uJ794

Compatibility

Flashpoint is compatible with MacOS Mojave (10.14) and later. If you have an earlier MacOS version, you will need to use the older Beta 2022-06-22 version of Flashpoint. See the table below for detailed information, or skip to the next section to begin installing Flashpoint.

Supported macOS versions
High Sierra (10.13) & older Not supported; use Beta 2022-06-22 instead
Mojave (10.14) Supported; requires an app like The Unarchiver
Catalina (10.15) Supported
Big Sur (11) Supported
Monterey (12) Supported
Ventura (13) Supported; requires a Waterfox update

Installing Flashpoint

  1. Open Finder, then click the Applications tab.
  2. Scroll down and double-click the Utilities folder to open it. Then open the Terminal app.
    TerminalInUtilitiesFolder.png
  3. Copy the following command, then paste it into the Terminal and press Return:
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/FlashpointProject/homebrew-flashpoint/main/DownloadFlashpoint.sh)"

    PasteCommand.png

  4. Flashpoint may need to install some additional dependencies. If so, you will need to enter your password to authorize the Terminal to perform the installation. Your password will not be shared with Flashpoint.
    The terminal will not show anything while you are entering your password - this is normal. Simply type in your password and press Return, just as you usually would.
    EnterPassword.png
  5. Once any dependencies have finished installing, Flashpoint will begin downloading. Wait for the download to complete. The terminal will indicate the download progress as shown below.
    TerminalDownloadingFlashpoint v2.png
  6. When the download completes, your new Flashpoint folder will open. Control-click the downloaded 7Z file, then choose Open With > Archive Utility.
    • Note: This will not work if you are on MacOS Mojave (10.14). Instead, you will need to install The Unarchiver and use it to open the 7Z file. Then once Flashpoint is installed, you will probably need to follow the troubleshooting instructions below. (This is because the Unarchiver causes Flashpoint to be "quarantined.")
  7. When the file finishes expanding, you will see a new folder called "Flashpoint 11 Infinity". Open the folder, then open Flashpoint.app.
    FlashpointFolder.png
  8. After Flashpoint opens, Control-click the Flashpoint icon in the Dock, then choose Options > Keep in Dock.
    KeepInDock.png

Flashpoint is now installed!

Troubleshooting

JavaScript Error on First Launch

An example of the JavaScript error popup.

When launching Flashpoint for the first time, you may encounter a JavaScript error stating the following:

Uncaught Exception: Error: Preferences must be set before you can open a window.

If the launcher does not start upon pressing OK, then Flashpoint doesn't have the necessary permissions to run properly. The easiest way to fix this would be to move the Flashpoint folder (not just the application) to your Applications folder and relaunch Flashpoint. If the error persists, but the launcher starts after pressing OK, the error can be safely ignored. Otherwise, follow the instructions below:

  1. Open the Terminal app.
  2. Type or paste in xattr -rd com.apple.quarantine, then press Space.
  3. Click & drag the Flashpoint folder from your Finder to the terminal. The path of the folder should appear in your terminal window after doing so.
  4. Press Return to run the command. When it's done, try opening Flashpoint again.

UnquarantineFlashpoint.png

White Screen in Corner

An example of the white screen error.

Note: The following information only applies if there are two or more windows on top of each other. If there is only one, you may be experiencing a different error.

Some games and animations may fail to load, even if everything else is working normally. This is because the offending material has spaces in their launch commands, which macOS interprets as multiple different files instead of one. To fix this, the offending material must be patched manually:

  1. Open the Config tab on the top left corner of your launcher, and turn on "Enable Editing".
  2. If not already, go back to either the Games or Animations tab and select the entry that has this problem.
  3. Click the pencil icon on the top right of the right sidebar to begin editing the entry, then scroll until you see "Launch Command".
  4. Replace every space in the launch command with %20, then save the entry by clicking the check mark on the top right.

If done correctly, the entry should now be fixed and should correctly play the associated content when relaunching.

Blank Waterfox on MacOS Ventura

When launching some games on MacOS Ventura, you might get a see-through window like this:

SeeThruWaterfox.png

To fix this problem, you will need to update Flashpoint's copy of Waterfox Classic. Follow these instructions:

  1. Open your Flashpoint Infinity folder, then open the FPSoftware folder within it.
  2. Download the latest Waterfox Classic version from here.
  3. Open the downloaded file if it doesn't open automatically.
  4. Drag the Waterfox Classic app from the DMG window into the FPSoftware folder as shown below. Replace the original file when prompted.

ReplaceWaterfox.png

Blank Flash games in Waterfox

After you have updated Waterfox Classic on MacOS Ventura, the browser window will appear normally, but Flash games themselves may still show up blank. For example, Poptropica looks like this when the problem occurs:

BlankFlashInWaterfox.png

This happens because MacOS Ventura recently removed the Internet Plug-Ins folder that Waterfox uses. You will need to recreate the folder by following these steps:

  1. Open Finder and press Command-Shift-G to open the "Go to folder" dialog.
  2. Copy and paste ~/Library/ into the path box and press Return.
  3. Press Command-Shift-N to create a new folder. Copy and paste this name for the folder: Internet Plug-Ins
    • Be sure to get the name exactly right; capitalization matters!
    • If the folder already exists, that means you are having a different (unrelated) issue. Read through the rest of this guide, and if nothing helps, ask for help in the Discord server.

Once you have recreated the folder, try launching the game again. If all went well, the game will work this time!

Installing Wine

The error message displayed when Wine is not installed and is required to run a game.

If you see an error message about Wine when trying to run a game, that means you need to install Wine. Copy the following command, then paste it into the Terminal and press Return:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/FlashpointProject/homebrew-flashpoint/main/InstallDependencies.sh)"

After Wine is installed, the game should run without further issues.

Flash EOL Screen

If you see the Flash Player EOL information screen (shown below) when you try to play a game, that means that Waterfox Classic is loading your installed Flash Player plugin instead of the plugin that is bundled with Flashpoint. To fix the problem, uninstall Flash Player from your Mac and restart Flashpoint. Games should work in Waterfox Classic now.

FlashTimebomb.png

Fixing Dependencies Error

If you see a "Failed to install Flashpoint dependencies" error when trying to download Flashpoint, that likely means that something is wrong with your Homebrew installation. Run the following command in your terminal:

brew doctor

Next, read through the output and run any commands that it tells you to run.

Finally, try installing Flashpoint again.

Using Flashpoint

See the Flashpoint Manual.

Changelog

2022-08-25: Bundled dependencies with Flashpoint to make Homebrew unnecessary in many cases. Updated install scripts appropriately.

2022-08-17: Flashpoint 11 Infinity for Mac is now available!

Technologies

Currently, only Flashpoint Infinity is available for Mac. We plan to also create a Flashpoint Ultimate package for MacOS in the future. To do this, we will need to set up Apache for use on MacOS, including all of its required modules.

Thanks to the work of volunteer LindirQuenya (Ardil), we now have an equivalent to FlashpointProxy for Mac, aptly named FlashpointProxyMac. This allows us to use the native standalone projectors for most Flash games and eliminates nearly all of the Flash-related bugs that plagued previous Flashpoint Mac builds.

Flashpoint for Mac now includes Wine-crossover as a dependency. This is a version of Wine specially designed to run on MacOS. Thanks to Wine-crossover, Flashpoint for Mac now supports 21 web technologies (Platforms):

  • Flash: Supported natively with standalone projectors. Older 32-bit-only Flash versions are supported through Wine.
  • HTML5: Supported natively with Waterfox Classic and Chromium.
  • Java Applets: Supported natively with the Java Development Kit.
    • Java in the browser is not supported yet.
  • Shockwave: Fully supported with Wine, including Shockwave in the browser.
  • ShiVa3D: Supported with Wine and the help of custom shell scripts.
  • 3DVIA, Authorware, GoBit, PopCap, Silverlight, Vitalize, Tcl, DeepV, LiveMath, AnimaFlex, Visual WebMap, o2c-Player, Squeak, WebAnimator, iPix: All supported in Flashpoint Navigator with Wine!

An attempt was made to support Unity Web Player, but it is not working right now. See Known Issues.

Most of the remaining unsupported technologies rely on Flashpoint Secure Player, which is only compatible with Windows right now. We hope to port some of Flashpoint Secure Player's functionality to a launcher extension to enable support for more platforms; see the Help Wanted List for more information. Another possibility may be to port Flashpoint Secure Player itself to MacOS and Linux, using the cross-platform features of .NET/C#. Regardless, Flashpoint Secure Player's support for ActiveX controls relies on Windows-only features and cannot be ported to other platforms.

Known Issues

  • Launching HTML5 games that use Flashpoint Launcher's Browser Mode fails and shows an error popup.
  • For unknown reasons, if a game fails to launch, the launcher may claim that an update is available and force a restart, as shown below. No update will actually occur.
    LauncherRestart.png
  • Unity Web Player games will get stuck on the loading screen. Audio will play but the graphics will not initialize. We are currently trying to diagnose the cause of this problem.
  • Clicking a link inside a Flash game that launches your default web browser may also crash the browser. This is because the Flash projector is launched with an environment variable telling it to load FlashpointProxyMac, and it passes the variable to its child processes. But the variable value is a relative path to the FlashpointProxyMac library, and the relative path will not resolve correctly for applications in other locations, such as your default web browser. Thus the browser will fail to load the library and will crash.
    • This only happens if the browser is not already open because when launching a new instance of an existing process, it inherits the environment of the existing process.
    • We considered avoiding the problem by referring to the FlashpointProxyMac library with an absolute path, but this would force the launched browser to use Flashpoint's proxy, which is not ideal either.
    • It seems like older Flash projector versions do not have this issue, so we are considering using the Adobe Flash Player 29 projector by default on MacOS if no better solution is found.
  • Flash games that use Waterfox Classic may not work in mainland China due to Adobe's geolocation restrictions, which we have not patched out of the MacOS browser plugin yet. A workaround would be to use Wine to play the games instead. To switch to Wine, click the Config tab of the launcher, scroll down and click the "Native Platforms" dropdown, and uncheck Flash.
  • HTML5 games may perform poorly in Waterfox Classic on Apple Silicon Macs because Waterfox Classic is an Intel binary. In the future, we plan to run HTML5 games using a different browser such as Chromium. Or we may switch from Waterfox Classic to our own build of Flashpoint Navigator for MacOS, if we are able to get that working. Either way, we may need a launcher extension to choose which browser to launch based on a game's Platform, because both Flash and HTML5 games use Basilisk on Windows.
  • The Flashpoint Path box on the Config tab is highlighted in red even though it is valid. This may be confusing but does not impact Flashpoint's functionality.