Enhanced Client Custom Icons

Revision as of 22:08, 27 February 2026 by ArrothThaiel (Talk | contribs) (Created page with "This is a walkthrough for creating custom icons in the Ultima Online Enhanced Client. This information was taken from forums.uo.com prior to the forums closing on 27/02/2026....")

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This is a walkthrough for creating custom icons in the Ultima Online Enhanced Client.

This information was taken from forums.uo.com prior to the forums closing on 27/02/2026.

The first three images display the discussion which prompted the walkthrough. Following the first three images is the walkthrough itself.



ECCustomIconsWalkthrough1.jpg

ECCustomIconsWalkthrough2.jpg

ECCustomIconsWalkthrough3.jpg



--Walkthrough for creating custom icons--


Arroth_Thaiel April 2022

I've been thinking about doing a walkthrough for creating icons but haven't had the time. Since this thread is current and Petra asked a direct question that has a straightforward answer, I'm going to post some steps here (a very skimpy walkthrough, if you will).

What TimSt and Petra have worked out above is great way to replace an icon. Like with most things in the EC, there are multiple ways to do the same thing.

Rather than replacing a file, I'm going to post some instructions for how to add custom icons to your macro icon selection.

To edit/create the icon files, you might want GIMP, the GNU Image Manipulator Program. I see that both Petra and I are using it. The button/icons in the EC are saved as ".dds" files, which GIMP can interact with. For reference, "dds" stands for "direct draw surface", and now my knowledge of dds is exhausted.


First, go into your EC install directory, into the UserInterface folder, and unzip "default.zip" to somewhere you can keep a copy of your un-modified UI files, like your desktop. Your EC install directory will be something like: C:\>Program Files (x86)>Electronic Arts>Ultima Online Enhanced Client>UserInterface

Since you are already in the EC install UserInterface folder, create a folder for your custom UI. We'll go with Petra's UI from earlier in the thread.

Within the Petra's UI folder, create two (2) additional folders: Icons, and Source. Within the Icons folder create another folder named Petra's Icons. Don't worry, I'll post a picture of the directory structure in a few steps. For right now it should look like this:

Petra's UI
 Icons
  Petra's Icons
 Source

To add icons to the list of macro icons available in game you will need to change information in two EC files. Go into the files you unzipped from "default.zip". Go to Default>Icons and copy icons.xml into Petra's UI>Icons. Then go to Default>Source and copy MacroPickerWindow.lua into Petra's UI>Source. Your directory should now look like this:

Petra's UI
 Icons
  Petra's Icons
  icons.xml
 Source
  MacroPickerWindow.lua

That's it, you've setup your custom UI to be able to add icons. Now, let's make and add an icon.


In your default files, in Default>Icons>actions, you will find the grey button background, "blank2.dds", that is used in all the default EC's hotbar icons, etc. Open "blank2.dds" in your editing software.

[[File: ]]

Next we need an image to put on the background. Since Petra wanted something with fishing, and she has mentioned being a 69 year old grandmother a couple times, we'll find something typical of a 69 year old woman with 3 three kids and a fishing theme.

[[File: ]]

No judging.

Now, we'll resize the pic, merge it into the background button, and save it with a name we'll remember (CB_Pirate.dds) to Petra's UI>Icons>Petra's Icons.

[[File: ]]

That should do. Directory structure should now look like so:

Petra's UI
 Icons
  Petra's Icons
   CB_Pirate.dds
  icons.xml
 Source
  MacroPickerWindow.lua

Directory structure as an image: [[File: ]]

With the button/icon created, we'll edit icons.xml (in our custom UI folder) to tell the EC what number to associate with that file (Notepad will work to edit the .xml). As you look through icons.xml you will see a ton of numbers. We want to make sure any number we choose will not interfere with previous numbers. It's easiest to go to the bottom of the list and start with a higher number sequence, as in the highlighted line in the image below: [[File: ]]

Notice that not only have we input the number, 900000, but we've also input the directory and the filename "Icons/Petra's Icons/CB_Pirate.dds". We've also assigned a name "Happy Pirate" that may or may not show on mouse over.

Finally, we'll tell the EC to actually call the icon we've assigned number 900000. Open MacroPickerWindow.lua (Notepad will work) and add the number 900000 to the list of numbers, as in the highlighted line below. [[File: ]]

We're done. Save the files and load the client. At the login screen choose Petra's UI from the Custom UI button. If you've followed the instructions correctly, the new button/icon will appear at the bottom of the list when selecting a macro icon. [[File: ]]



I hope people have fun with icons (which are technically called buttons depending on where you are in UO's code).

Good luck!

-Arroth