Difference between revisions of "Installing WA on macOS"
From Worms Knowledge Base
(→Compatibility/experiences) |
(→Compatibility/experiences) |
||
Line 177: | Line 177: | ||
− | + | What this script essentially does it making sure only one instance of WA.exe is running (otherwise the game freezes when the second instance is launched). If it detects wine WA.exe already running, the script just makes XQuartz window foreground. The "> /dev/null 2>&1 &" part cancels all text output of the wine process, and launches the process in the background. | |
− | + | ||
Click File->Export->Application, save it to /Applications/ and drag it to your Dock from the Launchpad. Now you can click the dock icon when you want to play Worms. You can put a WA icon (but you need to convert WA.ico to WA.icns first) into the bundle if you like so you'll have a nice Worms icon instead of the default "script" one. | Click File->Export->Application, save it to /Applications/ and drag it to your Dock from the Launchpad. Now you can click the dock icon when you want to play Worms. You can put a WA icon (but you need to convert WA.ico to WA.icns first) into the bundle if you like so you'll have a nice Worms icon instead of the default "script" one. |
Revision as of 09:20, 30 November 2015
This page details how to install Worms Armageddon on Mac OS X via wine. Please note that, unlike in previous versions of Worms Armageddon, 3.6.30.0 and above require no special patches to wine in order to run satisfactorily. However, there is still a number of things you may need to do, depending on your configuration - and there are still some known bugs. This page should provide a good guide to get you started. Do not be put off by its length - much of it probably won't apply to you.
Contents
Getting started
Version requirement
Note: I had bad luck with the 1.3.x builds of wine, so I cannot guarantee this information is correct. (Koen)
First of all, you need to have a recent version of wine, as there have been some relatively major wine-side fixes recently. If your wine version starts with 1.3 and is 1.3.3 or later, or it starts with 1.2 and is 1.2.1 or later, you already have a recent enough version of wine to run Worms Armageddon to a satisfactory standard. If you are not sure about which version you have, open a terminal and enter the following command:
wine --version
This should report your version of wine. If you get a "command not found" response then you probably don't have wine installed.
Installing Wine
MacPorts Method
You will need:
- Xcode - these are the development tools for OS X. Xcode is available for free from the Mac App Store.
- MacPorts - this will download and compile all the packages for us.
- XQuartz - an open source X Window System for OS X. Your Mac might have Apple's native X11.app installed, which can be used but is not recommended.
To install Wine:
We will start by updating MacPorts. Type the following command into a terminal window:
sudo port -v selfupdate
This will update the list of ports that are available. Do a search for wine to see which packages are available:
sudo port search wine
Out of the available packages, you should see two versions of Wine:
wine @1.4.1 (x11) - This is the latest official release wine-devel @1.5.14 (x11) - The development version
Start the installation of the Wine version of your choice by running the following command:
sudo port install wine-devel
MacPorts will then start downloading, unpacking and compiling all of the dependencies that Wine requires. Be warned, though, as this process may take several hours before completing.
Configure wine (Optional)
By default WA will, at it's first launch, ask you if you would like to enable a set of tweaks which should help with wine compatibility. If you choose not to do this, remember to run winecfg from a terminal and manually set wine to emulate a desktop.
Installing WA
Install the game
Using a CD
Your CD will be automatically mounted into /Volumes/WA/. You can start the installation with the following command:
wine /Volumes/WA/Install/Install.exe
Using a disk image
You can create a disk image with the Disk Utility application. Open Disk Utility, and select the WA partition attached to your Superdrive. From the menu, create a new disk image. You can double click this image to mount it, or use Disk Utility to do so as well. If you eject your CD and mount the image it will use the same mountpoint (/Volumes/WA/).
Using the Steam version
Download and install the Steam version as follows:
curl -O http://cdn.steampowered.com/download/SteamInstall.msi wine msiexec /i SteamInstall.msi
If after the installation of Steam the UI buttons are empty, open winecfg and in the "Libraries" tab add an override for "dwrite". Then click edit and set it to Disable. If your wine process continues to run in your terminal window, press Ctrl+C to force cancel it and run Steam:
wine ~/.wine/drive_c/Program\ Files/Steam/Steam.exe
Install WA via Steam as you would normally. Do not install the update with the Steam version.
Install the latest update
Download the latest update. Use the following command to install it:
wine ~/Downloads/WA_update-3.7.2.1_Installer.exe
Starting WA
CD Version
Make sure your disc is mounted, and run:
wine ~/.wine/drive_c/Team17/Worms\ Armageddon/wa.exe
Steam version
wine ~/.wine/drive_c/Program\ Files/Steam/Steam.exe
Hopefully everything works. If you encounter problems, play around with the Tweaks in your WA installation folder. Also take a look at the compatibility overview below.
What's next?
Automating startup and replay playback
If you want to playback replays or do other fancy stuff, you will need to make a launch script. You can also choose to automate certain steps of the launching process. Take a look at mine for inspiration. Paste this into the AppleScript editor and compile it as an application. It will automatically mount and unmount your image, start WA when you open it, and play back replays if you choose to "open with" or "drop onto".
Fullscreen mode
If you prefer to run in fullscreen mode, configure Wine to emulate a virtual desktop as usual. Start XQuartz and in your Preferences enable fullscreen mode. After you start WA, press Command+Option+A or use the menubar to switch to fullscreen view. Set the resolution for WA to your native resolution, even if it's larger than the virtual desktop you're emulating it will show the entire game without the window border. Note: there is no scaling this way, so the menus won't be centered or zoomed.
Alternative methods
Virtual Machine
Parallels
Performance is good, be sure to enable 3D acceleration and change your renderer (use one of the Renderer_Direct3D registry keys in the Tweaks folder). See the compatibility list for the configuration I used (Koen).
Compatibility/experiences
Please add your configuration here, to give others an insight into what works and what does not.
Koen:
Configuration: mid 2011 iMac; 27", 3.1GHz i5, HD6970M - wine-1.5.14 (MacPorts), XQuartz 2.7.4, WA 3.7.0.0
Tweaks: Renderer_DirectDraw_32bit.reg, FrontendUseDesktopWindow_Enable.reg, SkipIntro_On.reg
Notes: I had to change my DirectDraw renderer, after doing this everything works flawlessly. Update: works fine with wine-1.5.27, Steam version also confirmed to work.
Using Parallels Desktop 8: Windows 7 x64 guest, take a look at the relevant settings I use within my gaming VM. Running from a BootCamp partition on a SSD.
Zemke:
Configuration: iMac 27-inch, late 2012, OS X 10.8.3, 2.9 GHz i5, 660M 512 MB graphics, wine-1.5.27 (MacPorts), XQuartz 2.7.43, WA 3.7.2.1
Tweaks: Default tweaks when first running WA under Wine.
Notes: Just followed this wiki's instructions and now it's working like a charm.
Prankster:
Configuration: MacBook Pro Retina 13", late 2013, 2.8GHz i7, Intel Iris 1.5GB, OSX 10.11 / wine-1.6.2, MacPorts 2.3.4, XQuartz 2.7.7, WA 3.7.2.1
Tweaks: Default tweaks when first running WA under Wine.
Notes: W:A starts, sounds are OK, I can see the cursor, but the rest of the screen is blank.
MrBean: (how to fix the blank [white] screen problem on OS X 10.10/10.11)
On newer versions of OS X (10.10, 10.11) you may get white screen. So you start Worms using wine, you hear the sound of the intro and "main menu", you may even see the mouse cursor, but all the buttons and the background are just blank white. This is because for some reason wine cannot render WA properly using the default OS X driver (I also tried switching to direct3d renderer and enabled direct3d for the menu using wkdrdwnd.dll and i could see the picture of the menu but it didn't react to the mouse. weird). To fix the problem, you should switch to the x11 driver. You may install it using mac ports, but i just downloaded XQuartz from [1]. After installing XQuartz, you need to instruct wine to use X11 and not Mac driver. So I edited the registry. Start wine registry editor using terminal command
regedit
then go to
HKEY_CURRENT_USER\Software\Wine\Drivers
create a new string parameter named "Graphics" (if is not there) and set its value to "x11" Do not forget to reboot your mac - a simple log out/log in didn't work for me. After the reboot you can go into your worms directory and launch worms by typing "wine wa.exe". The first start of XQuartz may take some time, it were a few minutes for me. Then the worms menu should be displayed in an x11 window and the game hopefully will work. Note that you may need to play with the "Tweaks" to get it working. I had to disable wkD3DWnd module (in the wkD3DWnd.ini set EnableModule to 0). I also removed all the other wk*.dll files except the ones I needed (like wkRubberWorm.dll), and enabled WormKit, by typing in
regedit Tweaks/LoadWormKitModules_Enabled.reg
when in the Worms directory.
To be able to type text in russian language, you need to go to XQuartz preferences (Cmd+,) and select there "Follow system keyboard layout". Also, when starting worms with wine, use this command in terminal (otherwise instead of russian/cyrillic characters you will see ?????):
LC_MESSAGES=ru_RU.UTF-8 /opt/local/bin/wine ~/.wine/drive_c/Worms/WA.exe"
(/opt/local/bin/wine and ~/.wine/drive_c/Worms/WA.exe are the paths to your wine and worms. Wine path will most likely be the same if you used macports to install wine, and worms path can be different - you may wanna rename your "Worms Armageddon" directory to "Worms" and move it to ~/.wine/drive_c/). Instead of "LC_MESSAGES=ru_RU.UTF-8" you can use the "LANG=ru_RU.UTF-8", which will force your worms to speak russian, and your flag will be russian (overriding the system locale set in regedit) Now instead of typing these in Terminal everytime you want to play worms, you can create an AppleScript and put it in Dock so its easier to start worms. Open Script Editor, and enter the following (change the paths if necessary):
tell application "Terminal" do shell script "if [ -z \"$(pgrep -f WA.exe)\" ]; then LC_MESSAGES=ru_RU.UTF-8 /opt/local/bin/wine ~/.wine/drive_c/Worms/WA.exe > /dev/null 2>&1 & else osascript -e 'tell application \"XQuartz\" to activate'; fi" end tell
What this script essentially does it making sure only one instance of WA.exe is running (otherwise the game freezes when the second instance is launched). If it detects wine WA.exe already running, the script just makes XQuartz window foreground. The "> /dev/null 2>&1 &" part cancels all text output of the wine process, and launches the process in the background.
Click File->Export->Application, save it to /Applications/ and drag it to your Dock from the Launchpad. Now you can click the dock icon when you want to play Worms. You can put a WA icon (but you need to convert WA.ico to WA.icns first) into the bundle if you like so you'll have a nice Worms icon instead of the default "script" one.