DDO Server Transfers 2025
New 64-bit servers will go live on July 15th and you will have until August 31st to transfer characters off the 32-bit servers before they are closed.
At a later date TBD, SSG will reopen the 32-bit game worlds only for players to prepare their characters for transfer with no questing or other gameplay available for two years.
In preparation for the transfer, use the code 100SLOTS to gain a free 100 Shared Account Bank slots on all servers! edit

Game mechanicsNewbie guideIn developmentDDO StoreSocial Media


ChallengesClassesCollectablesCraftingEnhancementsEpic DestiniesFavorFeats

GlossaryItemsMapsMonstersPlacesQuestsRacesReincarnationSkillsSpells


Please create an account or log in to remove ads, build a reputation, and unlock more editing privileges and then visit DDO wiki's IRC Chat/Discord if you need any help!

DDO on MacOS

From DDO wiki
Jump to navigation Jump to search
⇑   ⇑   Back to top   ⇑   ⇑
Play DDO


Wine[edit]

The following instructions describe how to install the DDO on macOS 10.15 or higher. It requires using the Terminal which can be found at: /Applications/Utilities/Terminal. Intel and Apple Silicon based Macintosh computers are supported.

From a high level perspective you will be installing the package manager brew, the wine framework, and then DDO itself. The game is subsequently launched from the Terminal whenever you want to play.

Installation[edit]

Open the Terminal and paste the bolded lines one at a time. Hit "return" after each line pasted. Answer "yes" anytime you are asked to grant permissions. You will need your password one time to remove the "quarantine" flag from wine.

Installing the package manager 'brew'[edit]

If you don't have brew already, or are not sure whether you do, execute these commands:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

hb=/usr/local; if [[ $(uname -p) == 'arm' ]]; then; hb=/opt/homebrew; fi

(echo; echo 'eval "$('$hb'/bin/brew shellenv)"') >> ~/.zprofile

eval "$($hb/bin/brew shellenv)"

If you do have brew already, execute this command:

brew update

Installing the 'wine' framework[edit]

Once you have an up to date installation of brew, execute these commands:

# DDO only works in the first release of Wine 10.0. Remove any newer or older versions of wine.
brew uninstall wine-stable

# Installing from a URL is no longer supported so download the Wine 10.0 "cask" to your local machine.
curl -o wine-stable.rb https://raw.githubusercontent.com/Homebrew/homebrew-cask/3b6f8acd9c1f8aad5616223b781c5be240dc16f8/Casks/w/wine-stable.rb

# There were some useful updates in the 10.0_1 cask. Add those.
sed -i '' 's/wine64/msidb/g' wine-stable.rb

# Install wine 10.0.
brew install --no-quarantine --cask wine-stable.rb

# If you are on Apple Silicon, install Apple's x86 emulator. Ignore any errors.
/usr/sbin/softwareupdate --install-rosetta --agree-to-license

Install DDO[edit]

Execute these commands to install DDO:

Note:
The installer will ask for the language to use when you run the 'wine' command. The dialog may be hidden behind all other windows when you run the installer. You will need to move the other windows aside to find it and confirm your language so that the installer can proceed.
curl https://files.ddo.com/ddo/installers/ddolive.exe --output ~/Downloads/ddolive.exe

wine ~/Downloads/ddolive.exe
Note:
You will end up in the DDO Launcher and can play the game now if you so choose. It will be better at this point in time to quit the Launcher and play DDO as described in the next section.

Playing DDO[edit]

This is how you will launch the game directly from the Terminal going forward:

wine ~"/.wine/drive_c/Program Files (x86)/StandingStoneGames/Dungeons & Dragons Online/DNDLauncher.exe"

Hit the "up" arrow in the Terminal to repeat the previous command. This can be quite the time saver once you start launching the game this way.

macOS security considerations[edit]

macOS occasionally tightens security requirements on apps downloaded from the web. One symptom of these restrictions is that the DDO Launcher will not have permission to patch any files in the DDO program folder. Running the Launcher will unexpectedly quit. To resolve the issue, open System Preferences, click "Privacy and Security", and scroll down to where it says "Wine". Choose Open / Open Anyway. Enter your admin password. This will allow the Launcher to complete patching on the next attempt.

DX-11 support[edit]

The standard version of wine described above only supports DX-9. DX-11 can be enabled using Apple's wine variation "Game Porting Toolkit". It is significantly more difficult to install and should not be undertaken lightly. There will also be some lost functionality using this approach. Details are provided in the DDO on macOS using Apple's Game Porting Toolkit section.

Launcher Script[edit]

The Launcher Script allows you to bypass the standard DDO Launcher. You can use it to launch a fresh copy of the game in a new window for as many characters as you have accounts. You must have either the wine installation completed, or the Game Porting Toolkit installed in order for the Launcher Script to work.

The Launcher Script is executed from the /Applications/Utilities/Terminal. For example:

/Applications/DNDLauncher.sh Kaytis
/Applications/DNDLauncher.sh Sienlee

These commands launch characters "Kaytis" and "Sienlee" from two different accounts in separate windows. They can join the same party and quest together. You can have as many windows open as you have accounts. Most Macs based on Apple Silicon can easily support up to 6 party members even at the highest graphics settings. There is support for a tool called "Dungeon Helper" in the script, which allows characters to follow any other party member around, greatly simplifying movement to and through quests. Instructions for installing Dungeon Helper on macOS can be found in a later section.

Creating the launcher script[edit]

  1. Open TextEdit and create a new document.
  2. Select menu item "Format" > "Make Plain Text" (if you don't see this option, ignore this step).
  3. Paste all of the text from the "DNDLauncher" script.
  4. Save the file as /Applications/DNDLauncher.sh
  5. Open /Applications/Utilities/Terminal and type:
    chmod 755 /Applications/DNDLauncher.sh

Playing the game using the launcher script[edit]

# To start from the character selection screen, type:
/Applications/DNDLauncher.sh -u username -p 'password' -w world
# To start in world with a specific character, type:
/Applications/DNDLauncher.sh -u username -p 'password' -w world -c character

Personalizing the launcher script[edit]

Earlier versions of the launcher script encouraged users to personalize it by typing defaults for usernames, passwords, worlds, and character names directly in to the script. This made it very difficult to upgrade to a new version because all the customization had to be transcribed from the old version in to the new version. To make this easier, the script will now look for a configuration file named "DNDLauncherPersonal.sh" in the same folder as the script. If found, the configuration file will be loaded before the login process begins. Going forward, upgrading the Launcher Script should now be a matter of pasting the new script over the old one and saving it. The configuration file is created the same way as above. Save it with the name "DNDLauncherPersonal.sh" to the same folder as the Launcher Script. Here is an example configuration file:

Launcher script command line options[edit]

usage: DNDLauncher [-u username] [-p 'password'] [-n subscription] [-w world] [-c character]

-u username       : account username
-p 'password'     : account password. Surround with single quotes.
-n subscription   : account subscription. Usually 0. Omit if unknown.
-w world          : world e.g. Orien. Capitalize only the first letter
-c character      : character to log in. '-c' is optional
-x32              : use 32-bit client (not recommended)
-x64              : use 64-bit client (default)
-l                : run the launcher instead. Use this on update days
-d                : run DungeonHelper before launching the game
-gpt              : use Apple's Game Porting Toolkit (must be installed)

Example:

 /Applications/DNDLauncher.sh -u username -p 'password' -w Orien -c Kaytis

or with an appropriate personalization script:

 /Applications/DNDLauncher.sh Kaytis

DungeonHelper[edit]

About DungeonHelper[edit]

DungeonHelper is a tool that, amongst other things, enables a "follow me" mode for characters in your party. The characters must be open in separate windows on the same computer. When the "followed" character moves, all the other characters in the party will move with them. The tool offers other features as well. Refer to the DungeonFinder website, https://dungeonhelper.com, for more information.

Note:
DungeonHelper does not work in Apple's Game Porting Toolkit. It will only work with the DDO on macOS using Wine standard wine installation

Installing DungeonHelper[edit]

In /Applications/Utilities/Terminal type:

curl https://s3.amazonaws.com/downloads.dungeonhelper.com/public/DH/4.0/DungeonHelper.4.2.0.146.msi --output ~/Downloads/DungeonHelper.4.2.0.146.msi

If that download succeeds, type:

wine ~/Downloads/DungeonHelper.4.2.0.146.msi

This will launch the installer. Follow the onscreen instructions.

DungeonHelper has a self-update feature. If there is a newer release version available, it will offer to install it for you.

Using DungeonHelper[edit]

Make sure you are in windowed mode. If you need to, open a client and switch to "Windowed" mode under the Options>Graphics panel. You must quit the client for the change to be permanent (the client wont write your preference to disk until it closes). If you are not using the Launcher Script, you will need to use the Terminal to launch DungeonFinder before you open any game window. In the Terminal type:

wine "C:/users/${USER}/AppData/Roaming/Dungeon Helper/DungeonHelper.exe"

Now launch a game client for every character you want in the group.

If you are using the Launcher Script, simply add a -d flag to the end of the first character opened. For example:

/Applications/DNDLauncher.sh Kaytis -d

This will open DungeonFinder first, then the specified character.

Now open any other characters you would like to group with. Do not include the -d option:

/Applications/DNDLauncher.sh Sienlee
/Applications/DNDLauncher.sh Zalim

Remember each character must belong to a different game account. You cannot group with other characters on the same account.

Arrange the windows so that you can click the title bars or edge of each one so that you can bring it forward quickly. Alternatively, you can use the Dock, but that is fairly tedious.

In each of the game windows, you will see a "DungeonHelper" tool. Click on that to reveal a large list of options. The ones you will be using most are "All Follow Me, Now" and "All Stop". The character clicking these buttons will have all nearby characters start to follow the character, or stop following the character respectively.

The "DungeonHelper" tool has a peculiar habit of disappearing from windows from time to time. If you click on the DungeonHelper application, then back into the game window, it will reappear.

The only way to dismiss the options list is to click the "DungeonHelper" tool again. After doing so, it can take a couple clicks in the game window to get things active again. This might be a quirk of macOS, wine, or both. But it's minor inconvenience compared to the incredible time-savings that this tool offers when multiboxing.

Apple's Game Porting Toolkit[edit]

Warning:
Installation of Apple's Game Porting Toolkit is non-trivial due to the shifting nature of the underlying software. DDO on macOS using Wine is easier and is the recommended approach for anyone uncomfortable with complex installations. Apple's Game Porting Toolkit does not support anti-aliasing in DX-11, nor does it support DungeonHelper.

Apple's Game Porting Toolkit uses an older version of wine adapted for 64-bit architectures. It contains custom extensions written by Apple that convert graphics calls into native "Metal" API calls. Metal is a set of interfaces that allow macOS applications to use the underlying hardware for graphics rendering. The net benefit to using these extensions is lower CPU consumption and DX-11 support allowing higher quality rendering options.

These instructions will guide you through installing the Game Porting Toolkit and installing a fresh copy of DDO into a separate wine prefix to avoid contamination with any existing copy of DDO you might already have.

This is a non-trivial exercise. Follow the instructions to the letter. If you receive an unexpected response from the system that you do not understand, you would be well-advised to proceed no further. Feel free to PM Kaytis on the DDO forums for guidance.

Installation[edit]

Open the Terminal and paste the bolded lines one at a time. Hit "return" after each line pasted. Answer affirmatively anytime you are asked to grant permissions or generally proceed forward.

Preparing to install or upgrade the Intel version of the package manager 'brew'[edit]

If you are on Apple Silicon, and even if you already have brew installed, you will need to install or upgrade the Intel version of brew. The Apple Silicon version of brew is installed in /opt/homebrew. The Intel version of brew is installed in /usr/local.

First determine if you are using Apple Silicon. Type this:

uname -a | awk '{print $NF;}'

If you see:

x86_64

you are on an Intel hardware and should skip to the next section "Installing or upgrading the Intel version of the package manager 'brew'".

However, if you see:

arm64

you are using Apple Silicon and must now execute these commands:

# Install the x86_64 emulator. There is a good chance it is already installed. Ignore any errors.
softwareupdate --install-rosetta --agree-to-license
 
# Run a new shell emulated in x86_64:
arch -x86_64 zsh
Note:
YOU MUST STAY IN THIS SAME TERMINAL WINDOW UNTIL TOLD OTHERWISE.
You are now running in an x86_64 emulated zshell. This will cause brew to install into /usr/local instead of /opt/homebrew.

Installing or upgrading the Intel version of the package manager 'brew'[edit]

Double check that you are running Intel hardware OR you are in an x86 emulated zshell. Type:

uname -a | awk '{print $NF;}'

This should return:

x86_64

If it does not, then STOP. Something has gone wrong and it will need to be debugged.

If it does, proceed to install or update brew. Type:

which brew

Read the response carefully. If it returns:

/usr/local/bin/brew

then type:

brew upgrade

If it returns anything else, then type the following to install the x86_64 brew package:

Note:
Upon completion, brew will give you advice about how to add Homebrew to your PATH. Ignore this advice.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

After finishing installation type:

eval "$(/usr/local/bin/brew shellenv)"

Now type:

which brew

This should return:

/usr/local/bin/brew

If it does not, then STOP. Something has gone wrong and it will need to be debugged.

If you just installed brew for the first time, regardless of what platform you are using, type:

echo >> /Users/${USER}/.zprofile
echo 'eval "$(/usr/local/bin/brew shellenv)"' >> /Users/${USER}/.zprofile

If you already had brew installed AND you are on Apple Silicon, you can get some semblance of compatibility by having your /Users/${USER}/.zprofile brew entry look like this:

eval "$(/usr/local/bin/brew shellenv)"
eval "$(/opt/homebrew/bin/brew shellenv)"

Intel users should have only eval "$(/usr/local/bin/brew shellenv)" as the first line.

Note:
Apple Silicon users only: The order above ensures that the arm64 brew installation will be searched first for your brew installed packages which is generally what you would expect. The x86_64 Game Porting Toolkit version of wine is launched using the "wine64" command, which conveniently does not exist in the arm64 installation, so it will find the correct version in the x86_64 installation instead. The only thing to watch out for is that the x86_64 brew folder might contain some other tool that is not installed in your arm64 brew folder, so you might get a version you did not expect when launching some unrelated tool.

If you got this far, you are still running in an x86_64 zshell, and brew is now installed in /usr/local/bin. You should use the validation commands again to be completely certain:

uname -a | awk '{print $NF;}' # Should return "x86_64"
which brew                    # Should return "/usr/local/bin/brew"

Installing the Game Porting Toolkit[edit]

Building Apple's version of the Game Porting Toolkit is currently not even possible without using an older macOS and older tools. Additionally, the provided instructions are unhelpful to say the least. To be fair, virtually every other source of instructions are outdated, misleading and, in many cases simply wrong. Nevertheless, it is possible to install a working copy of the Game Porting Toolkit using prebuilt artifacts:

Install the "gcenx/homebrew-apple" formulae into brew:

brew tap gcenx/homebrew-apple

Install the prebuilt version of the Game Porting Toolkit:

brew install gcenx/wine/game-porting-toolkit
Note:
The installation creates "/Applications/Game Porting Toolkit". This application contains within it a very old version of wine that has been modified to run on 64-bit architectures and includes several extensions provided by Apple. These extensions support low level rendering to Apple's hardware using native Metal APIs. This reduces CPU load, reduces power draw, and more practically for the player, enables DX-11 support for DDO. The installation is somewhat quirky in that it installs things outside of the /usr/local/bin folder. The wine64 file inside /usr/local/bin is in fact just a symlink to the wine64 file installed in the application.

As of writing, the metal extensions being installed by the prebuilt package are more current than the ones being provided by Apple.

For the sake of completeness, create a symbolic link that the Game Porting Toolkit brew formula neglected to:

ln -s "/Applications/Game Porting Toolkit.app/Contents/Resources/wine" /usr/local/opt/game-porting-toolkit

If, and only if, you are on Apple Silicon, you should now exit the x86_64 shell:

exit

Install DDO in a new wine prefix[edit]

We need to create a new "prefix" (Windows "volume" for want of a better word) for exclusive use by Game Porting Toolkit. The Game Porting Toolkit wine version is old and although it appears to work interchangeably with the standard wine installation, it can get confused when switching from DX-11 to DX-9. It is best to keep them separate.

Warning:
Both the standard version and the Game Porting Toolkit version share a common DDO preferences file. If you enable DX-11 in the Game Porting Toolkit version of DDO, and then try to launch the standard version, the standard version will fail outright. Relaunch the Game Porting Toolkit version and switch back to DX-9. You will then be able to launch the standard version again.

Create the new wine prefix. When you execute this command a dialog will appear. Choose Windows 10, then dismiss the dialog:

WINEPREFIX=~/.wine_gpt /usr/local/bin/wine64 winecfg

Download the DDO installer. You might already have this from the standard instructions, but it is quick, so you can just do it again:

curl https://files.ddo.com/ddo/installers/ddolive.exe --output ~/Downloads/ddolive.exe

Install DDO into the new wine prefix:

Note:
The installer may be hidden behind other windows when it runs. If necessary, move things around to find it. After installation the launcher will run and update the game. This will take a long time. A great deal of material must be downloaded. Advanced users could just copy their existing copy from the standard ~/.wine prefix, but reinstalling is the safer option.
WINEPREFIX=~/.wine_gpt /usr/local/bin/wine64 ~/Downloads/ddolive.exe
Note:
You will end up in the DDO Launcher and can play the game now if you so choose. It will be better at this point in time to quit the Launcher and play DDO as described in the next section.

Playing DDO[edit]

This is how you will launch the game directly from the Terminal going forward:

WINEPREFIX="/Users/${USER}/.wine_gpt" /usr/local/bin/wine64 "C:/Program Files (x86)/StandingStoneGames/Dungeons & Dragons Online/DNDLauncher.exe"
Note:
Users of Kaytis' launching script prior to version 3.0, will not be able to use it to run the Game Porting Toolkit version of DDO. The latest script is available in the Launcher Script section of this page. Even with the new script, you must pass the -gpt flag on the command line. Launching using the Game Porting Toolkit is not the default behavior.