A smaller lotro for Mac

So this is another random post that maybe 2 or 3 people on the planet would care about, basically if you aren’t a mac user, who plays lotro (Lord of the Rings Online) and has a separate windows SSD with the game already installed, then you won’t care about this.

That said, I found out today that it’s possible to symlink the .dat/.datx files from Lotro on windows inside the lotro app package on mac, so you don’t need to duplicate the full ~20GB install if you want to be able to play on both OS’s.

Please note, these steps ensure maximum paranoia; you could easily just drag and drop the LotroLauncher.app out of your steam library and into /Applications, and then delete all the .dat files inside of it, but I prefer to keep backups of everything, multiple if necessary.

  1. Install Steam for Windows, and add Lotro to your library if it isn’t already.
  2. Install lotro through steam on windows.
  3. Once installed, patch the lotro client to latest version
  4. Verify the game runs ok on windows, then reboot into OSX
  5. Make sure your OSX install sees your NTFS/Windows drive in read-only mode
  6. Find the path to your lotro installation on windows, the default steam path will be:
    /Volumes/your_windows_volume/Program\ Files\ \(x86\)/Steam/SteamApps/common/Lord\ of\ the\ Rings\ Online
  7. Install Steam for Mac, and add lotro to your library again
  8. Install lotro for mac (yep, have to waste the whole ~20GB at least once)
  9. An optional step, if you have a backup drive, backup the full mac lotro client so you never need to do this again:
    $HOME/Library/Application\ Support/Steam/steamapps/common/Lord\ of\ the\ Rings\ Online/LotroLauncher.app
    Your location might be different if you’ve moved your default steam library, regardless, find LotroLauncher.app and back it up if you can. I have it backed up on a physical 2TB HDD, e.g. /Volumes/Storage/Gaming/LotroLauncher.app
  10. Copy the LotroLauncher.app into your /Applications folder, without the internal/embedded .dat or .datx files:
    cd $HOME/Library/Application\ Support/Steam/steamapps/common/Lord\ of\ the\ Rings\ Online
    rsync -aP --exclude="*.dat*" ./* /Applications

    The resulting LotroLauncher.app in your /Applications folder should be around 4.5GB in size instead of ~20GB
  11. Now symlink in all the .dat and .datx files from your windows drive:
    find /Volumes/your_windows_volume/Program\ Files\ \(x86\)/Steam/SteamApps/common/Lord\ of\ the\ Rings\ Online -maxdepth 1 -mindepth 1 -name "*.dat*" -exec ln -s '{}' /Applications/LotroLauncher.app/Contents/Resources/lotroclient.app/Contents/Resources \;
    Depending on how you have your permissions setup, you may need to run that command with/as sudo.
  12. Launch /Applications/LotroLauncher.app and make sure it runs. You may need to disable gatekeeper (e.g. allow applications from anywhere) for it to work.

Lastly, a couple of notes/thoughts. With this setup, you need to remember that for any future game/client updates, you MUST patch the client via the windows launcher first, else your client may try to re-download all the .dat files since OSX can’t write to NTFS natively.

Also, this same idea could almost certainly be implemented with a third SSD, formatted fat32, to share the .dat/.datx files between both OS’s, you’d just change the ln taret path, and then make use of the hardlink function in windows, though I’m not familiar with windows command line tools anymore to automate this like above with find -exec, etc.. The syntax for a link is something like:

mklink /D "C:\Program Files (x86)\Steam\SteamApps\common\Lord of the Rings Online\some.dat" "D:\some\random\path\to\real\file\some.dat"

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s