Warhammer client. What directory holds what?

The point of this post is to help you with debugging or moving preferences from one install/computer to another. I’ve determined what I’m writing just from poking around and you’ll probably want to confirm this data with someone smarter than me.

Let’s start with the Logs directory. Inside it is a Communications directory. A level deeper is a directory for each server you have characters on, and then inside that a directory for each character. So for my character Meglivorn I’m looking in:

\Program Files\Electronic Arts\Warhammer Online – Age of Reckoning\logs\communication\Averheim\Meglivorn

Averheim being the name of the server. Anyway inside here are 4 log files. chat.log, combat.log, guildnews.log and system.log. These are all text files and contain a *ton* of information if you feel like writing a parser for them. Here’s a snippet of the system log:

[08/09/14][12:55:57]You receive Druchii War Pendant.
[08/09/14][12:58:02]You sold Worked Highstaff to Galmaer Silvermoon for 1 silver and 20 brass coins.
[08/09/14][12:58:06]You sold Druchii War Pendant x2 to Galmaer Silvermoon for 24 brass coins.
[08/09/14][12:58:28]You have purchased a new ability.
[08/09/14][13:00:51]Jobildo has invited you to join the Casualties of WAR guild.

and the combat log:

[08/09/14][12:26:45]You have learned about Eltharin, Language of the High Elves
[08/09/14][12:26:45]You gain 104 experience.
[08/09/14][12:27:40]You gain 700 experience.
[08/09/14][12:28:19]You gain 700 experience.
[08/09/14][12:29:02]Your Eagle Eye hits Dark Sprite for 52 damage. (21 mitigated)
[08/09/14][12:29:02]Dark Sprite’s attack hits you for 9 damage.
[08/09/14][12:29:03]Your Grim Slash hits Dark Sprite for 28 damage. (11 mitigated)
[08/09/14][12:29:04]Dark Sprite’s attack critically hits you for 13 damage.

And so on. The only odd thing I’ve found is that /tells *seem* to go into a separate directory, named your character name + ^M. So for Meglivorn, his private chats are in \logs\communication\Averheim\Meglivorn^M Inside that directory is a file for each person you exchanged /tells with.

Check out the logs though. There’s a lot of data to play with in there.

The notes directory holds the current patch notes from the launcher, in case you don’t feel like logging in to read them

Next is the interface directory. You might not have one of these yet, but if you’re going to install modes they go in interface\addons\{nameOfMod}. e.g.:

\Program Files\Electronic Arts\Warhammer Online – Age of Reckoning\interface\addons\CurseProfiler\

These are the ‘static’ files for addons.

Now let’s look at the user directory. Inside it is your UserSetttings.xml file. This contains screen resolution, key mapping, and a lot of other stuff controlled by the User Settings GUI in-game. There’s an audio_log_settings.xml file too, which I assume holds audio settings. Rocket science this ain’t.

But when moving clients, you probably really want to bring over
\Program Files\Electronic Arts\Warhammer Online – Age of Reckoning\user\UserSettings.xml

Inside the user directory is a nested interface directory, and inside that an AllCharacters directory. And inside that, a huge list of subdirectories, including ones matching the names of your addons. This is where all the settings for addons and various chunks of the UI are held.

I think a lot of this gets auto-loaded from the server. For instance inside EA_ActionBars is a SavedVariables.lua file (standard name for UI setting files) with the hotbars slots indicated, but there’s no character name attached to them. It possibly contains hot bar settings for all characters, but still, I quickly logged into my freshly installed client and although the UI was in its default layout, the hotbars were correct for that character, so that data must’ve been loaded from the server. On the other hand, the physical layout of the windows themselves didn’t. The EA_BackpackWindow has a SavedVariables.lua that contains the items in each characters backpack, and we *know* that info is held on the server, so this must be some kind of caching mechanism.

An important file is the settings file in EASystem_ActionBarClusterManager. This file contains all your UI layout settings, so you’ll probably want to bring that over.

Also, if you’ve ever tried to scale ActionBars using the mouse you probably found it to be tedious to get them all the same size. It looks to me like you could edit this by hand:

EA_ActionBar1 =
buttonCount = 12,
columns = 12,
buttonXSpacing = 0,
barId = 1,
modificationSettings =
buttonXPadding = 6,
buttonYSpacing = 0,
show = true,
buttonYPadding = 5,
showEmptySlots = 46,
caps = true,
buttonFactory = "ActionButton",
background = true,
scale = 0.93,
selector = 43,

Change the scale factor to be the same for each action bar, and voila. I’m intrigued by the other options here, too. If you made the bar 10 columns and 20 buttons, would it have 2 rows of 10, or just have half the bars hidden? Some experimentation is in order.

By the way, this is all in an AllCharacters directory. It appears that you can make custom settings for your characters by putting them in interface\{server_name}\{character_name} if you like. You’d have to do this by hand; as far as I know there’s no way to do it using the GUI.