Saturday, April 18, 2020

How to Install and Run Fall from Heaven 2 on a Mac in Just 32 Mildly Complex Steps

Last month I finally achieved a dream I've held for many years: playing Fall from Heaven 2 on a Mac laptop. Fall from Heaven 2 is my favorite game and I really like the idea of being able to take it with me wherever I go. (In our current environment, that means whether I'm in the living room, or the bedroom, or the kitchen, or...). Years ago I bought Civilization IV Complete on Steam specifically to do this, only to discover that, while Civ IV itself runs on Mac, FfH2 requires modding the DLL, which only exists in the Windows version.

For my own future reference, and anyone else searching for how to do this on Google, here are the steps I took in 2020. We'll use WINE to install Steam, Civ IV and FfH2 and play this insanely fun game. The earlier steps can probably be used to play other Windows-only Steam games on OS X.

Step 1: Get a Mac, ideally a MacBook Pro. Civ IV is a very old game so you don't need a very high-end graphics card, but the emulation does add a lot of overhead. I'm running a 2016 MBP with a ~3GHz CPU, 16GB RAM and a Radeon Pro 460 with 4 GB video RAM. FfH2 runs just as smoothly on this machine as it does on my dedicated Windows gaming box, but the fan runs constantly and I can only play for maybe an hour or so before draining the battery.

Step 2: Stay on Mojave (10.14), not Catalina (10.15). The Mac has never been a great gaming machine, but the 32-bit-apocalypse has annihilated what few options existed for the platform. If you're planning on doing any sort of gaming on your Mac, even pure native gaming, you'll want to stay on Mojave. If you've already taken the plunge and are regretting it, you can follow these steps to go back, provided you have a flash drive.

Step 3: Download the Steam installer for Windows. Visit the main download page, but instead of the nice big appealing "Install Steam" button, click the tiny Windows icon below it. This will download SteamSetup.exe, which you can put in your Downloads folder or anywhere else.



Step 4: Install the Wineskin Winery Unofficial Update. I used version 1.8.4 but you should probably grab whatever the latest stable (non-testing) version is. The specific file to download will have a name like "Unofficial.Wineskin.Winery.zip".  Unzip this. You can keep the .app file in your Downloads folder.


Step 5: Run the Unofficial Wineskin Winery. This is basically an installer for setting up Winery, which in turn creates a stand-alone emulated environment. You're essentially making a Windows environment on your Mac.

Step 6: Next to "New Engine(s) available!", click the plus sign. Find an engine to download. Specifically, you'll likely want the latest version. In my case that was WS11WineCX19.0.1. The "WS11" is for "Wineskin 11", which is newer than "WS9" or "WS10". You'll also want to click the button to update the Wrapper.


Step 7: Click "Create New Blank Wrapper". I'm naming mine "SteamGames" and will use that for the rest of these steps. Your computer will freeze and you'll see some ugly Linux-style dialog windows. That means it's working! Once it's created, view it in the finder.




Step 7: Double-click SteamGames.app. This will bring up a Wineskin window. Click Install Software, Choose Setup Executable, and then navigate to the SteamSetup.exe you downloaded in Step 3 above.


Step 8: Follow through the setup steps, accepting the defaults for everything. Select the option to run Steam when it finishes. The auto-updater will now run and download the actual latest version of Steam, which may take some time.




Step 9: This might be a good point to review what software we're actually running. Winery is what manages all of your Windows installations. You will probably only run it once and can close it any time. Wineskin is your virtual emulated environment; while it's running, your fake Windows box is running. Finally, any Windows programs that are running within your Wineskin will also get their own entries in the Dock. You can also find them in the Activity Monitor, which can be useful for troubleshooting.


Step 10: Once Steam updates and exits, Wineskin will ask you to select what is the actual .exe you want it to use when launching in the future. Click the drop-down and select steam.exe, then click OK.


Step 11: Quit Wineskin, then double-click SteamGames.app again to launch Steam.

Step 12: Log in to your Steam account. This is running the real, actual Steam from Valve and so it will prompt you for the Steam Authenticator or any other items you have on your account.


Step 13: After logging in, you will see the Steam icon and maybe some windows with friend requests and/or featured games. But... where is Steam itself?? It's complicated! Quit Steam (either by right-clicking its icon in the Dock or left-clicking and then selecting Steam from the top menu bar). If you come from the future and do see Steam here, you can skip down to step X.


Step 14: Right-click on SteamGames.app and select "Show Package Contents". This will open a new window with links to your C: drive and Wineskin.app. From now on, you can click Wineskin.app to return to the Install screen, or you can click on SteamGames.app to launch Steam. While setting things up, I like to keep both windows open so I can quickly select either one.


Step 15: Open Wineskin.app, then select "Advanced". We're going to modify a few things here, for both Steam and (eventually) FfH2.
  • Under Configuration, In "Custom Commands", paste in the argument "-no-cef-sandbox" (without quotes). This will let the Steam interface appear properly.



  • Switch to the Tools tab, then open Config Utility and select the Libraries tab. In "New override for library:" select "msvcr81" and click "Add". Then select it, click "Edit...", and change from "Native then builtin" to "Native (Windows)". This will fix a crash when starting new games in FfH2.


  • Still in the Tools tab, click "Winetricks". Type in "msxml3". Expand the results, there should just be a single one. Click "Run" and wait for it to finish. This will fix a crash when launching with MNAI installed.

  • While we're in here, click "Options" and check the option "Use F1, F2, etc. as standard function keys". (This is optional, but is really nice for games like Civ4/FfH2 which make heavy use of the function keys.)


Step 16: Exit Advanced, then double-click SteamGames.app. Hooray, now we can see Steam!! But... it's blank?! If you're coming from the future it might be fixed and you can skip to step 18. Otherwise, read on!



Step 17: Click the Steam menu in the upper left, then open Settings and select Interface. Uncheck the options:
  • Enable GPU accelerated rendering in web views
  • Enable smooth scrolling in web views
  • Enable DirectWrite for improved font smoothing and kerning
Click "OK" and restart Steam when prompted. Huzzah, you should now see your Steam library!



Step 18: Assuming you already own Sid Meier's Civilization IV: Beyond the Sword, you can select it from your Library and click "Install". If you haven't bought it yet, you should be able to grab it from the Store. The actual install process works exactly like it would on Windows and may take a while.


Step 19: Once it's installed, run the game from within Steam. Assuming you prefer playing in windowed mode: click Advanced and then Options, uncheck the Full Screen option. You may need to adjust the resolution to find something you like; on my 15" monitor, the 1440x900 resolution gives me a good-sized window. Higher resolutions can push the window beyond the desktop space, so it's better to start smaller and work your way up than vice-versa. You can probably also set the graphics options to High; as usual, old games have a hard time recognizing superior modern hardware. Exit and restart to apply graphic changes. Once back in the game, click Single Player and then Play Now! and start a new game with all the default settings to ensure that the game runs properly; if there are issues with video playback or sound or anything, this is the perfect time to troubleshoot.


Step 20: Save your game, then reload that saved game. If this all works and nothing crashes: Congratulations! You have a stable install of Civ IV: BTS running on your Mac! Exit the game and Steam.




Step 21: Optional, but if you happen to be a software developer or are otherwise familiar with Git, I recommend initializing a git repo in the root of your Civ IV install (under steamapps) as well as in your My Games folder (under Documents). Commit and save a snapshot of what everything looks like. This will make it way easier in the future to roll things back if your setup becomes unstable. You can make other branches or commits to support switching between different stable configurations; for example, you could try out Magister Modmod in a separate Git branch while keeping vanilla FfH2 safe.

Step 22: Now, we're going to install FfH2. I'm specifically going to install the latest official release and MNAI-U, which is basically the best "vanilla" experience available today (no new gameplay features but tons of quality-of-life improvements, AI upgrades, and bugfixes). You can put all of these into your Downloads folder.
  • Click "Download Now" for the official mod.
  • Directly download Patch "O" or follow the link from the above page.
  • Click "Download Now" for the Media Pack.
  • Note that we are not downloading nor installing Blue Marble. It's a really nice UI, and would technically work with our setup, but isn't compatible with other modmods. So we're omitting it now so we can try other modmods in the future.
  • Click "Download Now" to get version 2.7.1 of More Naval AI. Unlike the previous downloads, this is a zip file instead of an EXE.
  • Download the latest version of MNAI-U. As of this writing, that is 2.8.1. 
Step 23: Re-open Wineskin.app. Click "Install Software" again, "Choose setup executable", and then navigate to FallfromHeaven2041n.exe and start the installation. If you have followed all the defaults so far, you should install into the folder "C:\Program Files\Steam\steamapps\common\Sid Meier's Civilization IV Beyond the Sword\Beyond the Sword\Mods\Fall from Heaven 2\". IMPORTANT: Double-check that it is installing into "Sid Meier's Civilization IV Beyond the Sword/Beyond the Sword/Mods" and not the higher-level "Sid Meier's Civilization IV Beyond the Sword/Mods" folder! Once the install finishes, you will see an error from Wineskin warning that no new executables were found. This is totally fine! We're just applying our changes to the game we previously installed.



Step 24: Repeat the above step for FfH2041o.exe. This will look pretty much identical to before, but with a much smaller required space of ~60MB. You still want to select the "Beyond the Sword/Mods" folder for this step, not "Beyond the Sword/Mods/Fall from Heaven 2".







Step 25: Repeat the above step for FfH2media.exe. Again, install into "Mods".

Step 26: Quit the installer, re-launch SteamGames.app, then launch Civ IV. Click "Advanced", "Load a Mod". Verify that "Fall from Heaven 2" appears here. Select it and click "OK". Civ IV should exit and then re-launch. You will soon see Hyborem, scary!




Step 27: Click "Single Player" and "Play Now!" to start a new game. Accept all the default options. Observe whether the intro video plays. Once in the game, save the game, then load the game. If that works, congratulations! You have a stable version of FfH2 running on your Mac! Exit the game. If you're using Git, now is a great time to take a snapshot of your setup.
* If your game is crashing here, double-check that you have the msvcr71 override from Step 15 set up.



Step 28: It will be tedious to switch mods each time we want to play, especially since once you've played FfH2 it's incredibly hard to go back to regular Civ. In Steam, right-click on "Sid Meier's Civilization IV - Beyond the Sword" and select Properties. In Launch Arguments, put "mod=\Fall from Heaven 2" (without the quotes), then OK. Click Play. This time you should directly go into the FfH2 Hyborem title screen instead of the BTS Apostolic Palace. Hooray! Exit the game and Steam.

Step 29: If you're satisfied with playing pure-vanilla FfH2, you can stop here and be happy for the rest of your life. But if you've ever played with MNAI and BUG and the rest, you can never go back. So we're going to go one step further and install MNAI-U.
  • Switch back to the folder with Wineskin.app. (Remember, you got here by right-clicking SteamGames.app and selecting "Show package contents.") 
  • Look for "drive_c" which is, you guessed it, the C:\ drive. 
  • Navigate all the way down to "drive_c/Program Files/Steam/steamapps/common/Sid Meier's Civilization IV Beyond the Sword/Beyond the Sword/Mods/Fall from Heaven 2/Assets" (phew!).
  • Now, in a separate Finder window, go to your Downloads. 
  • Unzip "MNAI 2-71.zip" if you haven't already. 
  • Select all the contents (not the folder itself), right-click and copy. 
  • Now, switch back to the "Assets" folder in your drive_c. This should include a "CvGameCoreDll.dll" file. 
  • Right-click in this folder and click "Paste". 
  • You should see a warning that "Art" already exists. Click "Apply to All" and then "Merge". 
  • Finished!


Step 30: We're almost done, I promise! We're going to do the same as Step 29, but this time copy from "mnai-2.8.1u", and paste into "Fall from Heaven 2" (one level above "Assets"). Once again, Apply to All and Merge.










Step 31: Re-launch SteamGames.app. You know the drill by now: Start BTS, Single Player, Play Now!, all default options. Once in the game, look in the upper-left of your screen, just to the right of your civilization's banner. If you see a red-and-black ant-looking icon, congrats! You have access to BUG and, not coincidentally, More Naval AI Unofficial. You can click the BUG icon to open up an extremely thorough list of options; personally I'm happy with the defaults. Save your game and load the save to confirm that everything is kosher.



Step 32: We got it done in five bits! That took a lot of effort, but was well worth it to get access to such an endlessly entertaining game. If I was in quarantine for the rest of my life and could only play one game, this would be it, hands-down.

No comments:

Post a Comment