View Single Post
03-16-09, 11:38 AM   #1
Zyonin
Coffee powered Kaldorei
 
Zyonin's Avatar
AddOn Author - Click to view addons
Join Date: May 2006
Posts: 1,443
Guide: Packaging up your UI to share with others.

Preface: I originally posted this guide back in January of 2007 on the old UI forums hosted by Incgamers under my old handle "Xinh". Sadly, that post is no longer searchable. That post was modified slightly and added to a stickied FAQ for those boards by Tunga, a then moderator, with more input from me. However I have noticed that these boards do not have a guide like the one I wrote for WoWUI except for some bits buried in various threads. Thus I have grabbed my old guide from the WoWUI forums and have transplanted here (with some updates and revisions).

Packing your UI to share with others

So you have this great UI that you want to share with the rest of the WoW player community. Sounds tough, right?. This is easier than you might think.

CAUTION This Guide was written with the current retail release (10.x, Dragonflight) in mind. If you are sharing a UI for World of Warcraft Classic or WotLK Classic, then you need to make the appropriate adjustments. It's nothing difficult. Replace "_retail_" with "_classic_" in your file paths.

First, your AddOns:
  • First, in Windows Explorer, open up your WoW folder to locate your AddOns. In Windows XP it's located at
    Code:
    C:\Program Files\World of Warcraft\_retail_\Interface\AddOns
    In Windows Vista/7/8/10, if you installed WoW to the default location, it's located at:
    Code:
    C:\Users\<name>\AppData\Local\VirtualStore\Program Files\World of Warcraft\_retail_\Interface\AddOns
    If you installed WoW in a location other than the Program Files folder, then your Interface folder will use a similar path as a Windows XP WoW install, just switch out "Program Files" for the name of the folder where your WoW folder is living.

    Note: The folder "AppData" is usually hidden by default so you will need to enable "View Hidden Items" from the View menu

    On MacOS, WoW uses the same file structure as on Windows XP, only the root install folder (Applications instead of Program Files) will be different).

    On GNU/Linux, WoW uses the same file structure as on Windows XP so it will be wherever you installed WoW. For example:
    Code:
    ~/home/yourusername/Games/World of Warcraft/_retail_/Interface/AddOns
  • Copy the Interface folder (the parent of your AddOns folder) onto your Desktop or something other working area.
  • Now dive into the copied AddOns folder and weed out* any mods that are unnecessary or are personal mods. This would be a good time to check on whether or not you can distribute AddOns in your UI compilation. Most authors don't care, however some do. Please respect our AddOn author's wishes. If in doubt, either contact the AddOn's author or don't include the AddOn. If you do obtain permission to use the AddOn in your UI, then include the permission note AS IT WAS RECIEVED from the Author in your ReadMe file.

    AddOns whose TOC file you or other non Authors (aka some "updaters") have altered should not be included in your UI. Why? When it comes to updating mods, changed TOCs can play havoc with some site specific updaters (such as MMOUI Minion, Twitch/Overwolf, and others). These updaters are polite and do not bulldoze mods whose structure/signature has changed as that usually indicates custom changes such as code or artwork/textures.

    Note: Those who use TukUI or ElvUI as a base, neither can be distributed via WoWInterface as they are exclusive to TukUI.com. You can still upload your UI here but the TukUI/ElvUI addons MUST be removed. You will want to put in your description that you use TukUI/ElvUI as a base and that you need to download it seperately.

    * If you are including mods that need dependencies (like oUF, etc) or stand alone libraries (Ace2, LibBabble, etc) then make sure you include those in your AddOns folder. Since the demise of ancient frameworks like Cosmos and the transition of Ace2 to Ace3, this is less likely to be the case as most users will be running with libraries embedded in their AddOns.

    AddOns that contain hidden or obfuscated code MUST be removed from your UI.

Next, your UI settings

Note: this section was written prior to 3.0 (WotLK) and the release of WoW Classic. For Windows Vista/7/8/10 users, there are some slight changes which have been incorporated into this guide.


If you want to include your UI settings then you want to include your WTF folder in the zip file. Just make sure to change the ACCOUNT, SERVER and CHARACTER folder names to something generic (like "YOUR ACCOUNT", "YOUR SERVER", "YOUR CHARACTER") and remove all but one CHARACTER folder (unless you are including different settings for different classes, in that case name the folders accordingly such as DRUID, WARRIOR, TANK, HEALER, etc.). Again this is a good time to weed out any unused SavedVariables files as they will just clutter up your UI compilation and increase the size of the final file.

Windows Vista/7/8/10 Users:

For Windows Vista/7/8/10 users, if you installed WoW in the default location (C:\Program Files\) then your WTF folder will be located in
Code:
C:\Users\<Username>\AppData\Local\VirtualStore\Program Files\World of Warcraft_retail_\Interface\WTF
However if you installed WoW in a different folder, then your WTF file will use a similar path to that of a Windows XP WoW install.

Note: The folder "AppData" is usually hidden by default so you will need to enable "View Hidden Items" from the View menu

For OS X, your WTF folder is located in the same location as on a Windows XP install. Likewise for GNU/Linux.

Code:
~/home/yourusername/Games/World of Warcraft/_retail_/Interface/WTF
The Vista file paths, where swiped from Shirik's post regarding UAC and WoW

As per the updated WoWI rules (03 Apr 2009), you must change the names of these folders to a generic name (like Your Account, YOUR SERVER, YOUR CHARACTER). You cannot have personal information in the WTF folder.

A quick interlude

Why use the Interface (and WTF folder if included) folder as opposed to just the AddOns folder? Simple, it makes it real easy for your users to install as all they have to do is drop the unpacked Interface (and WTF folder if included) into their WoW directory. The Interface folder can contain more than just AddOns, things like custom Minimap button borders and other modified UI graphics/textures can be included here. If you do include the WTF folder, then your users also have to rename the files I listed.


Fonts

If your UI uses a custom Fonts folder to override WoW's fonts, then be sure to include it as well. However please check for any commercial fonts that may be in use, you should not include them as they could result in your UI being rejected. Try to use fonts that allow you to include them in your UI, include the font's license with your ReadMe. Most freeware font authors are pretty generous in regards to the usage of their fonts, however play it safe and check first. You don't want your UI to get taken down due to IP violations. If in doubt choose fonts which are open source either under the GPL/LGPL (or similar open source licence), Creative Commons or the SIL Open Font License.

This also applies to fonts in SharedMedia or within individual AddOns.

Package and upload

Now that you have your Interface and WTF (and Fonts if you are including a Fonts folder) folders safely parked on your Desktop, it's time to prepare the actual file you will upload to WoWInterface.
  • Create a new folder on your Desktop. Name with the name you wish to use for your UI
  • Drag the Interface and WTF folder into your new folder.
  • Create a ReadMe text file or HTML page with instructions on how to set up your UI. Include any /commands to mods if you know them. This a good place to have a list of AddOns used in your UI. Also include any license information that apply to AddOns, fonts, artwork, etc in your ReadMe. Use the license's exact wording.
  • At this point check for the following inside your new UI folder

    - WoWMatrix DAT files (please don't use WoWMatrix in the first place)
    - Zip/Rar files
    - .exe files
    - user created "patch" MPQ files. This per the EULA and ToS. See this post for details. Those should not even exist with the demise of MPQs in WoW.
    - Other "strange" files.
    - Files with the .old extension (these are archive files), md5 files (used for MD5 hashes so you can check the integrity of a file) and macro-cache files (unless you are including custom macros with your UI) and .bak (back up files that are found in your SavedVariables folder.
    - Images, Sounds, or AddOns that would violate the "T" (US ESRB) or "12+" (Europe PEGI) rating

    If you find any of the above, delete them. Be sure to check inside any subfolders as well.

    Note regarding sounds and images used in AddOns: You must remove any sound or image that is copyrighted and you do not have permission to redistribute.. Blizzard derived sounds and images are the expectation provided you are using according them to the ToS. Any other sounds or images should either be your own work (with a limited licence to allow WoWI to distribute said works) or be either public domain or released under a copy-left licence like Creative Commons. Any licence used should be noted in your ReadMe file. Don't let your hard work fall prey to the hordes of hungry lawyers!

    The only files that should be in your UI folder are the followng:

    - .lua
    - .toc
    - .xml
    - .txt (or .htm, html, .css if your ReadMe is a HTML formated page)
    - .tga and/or .blp
    - Image formats such as .png, .jpg, .gif are OK.
    - Fonts in a .ttf format are also OK.

    If you don't see the file extensions, then you will need to enable "View File Extensions" which is located in the View menu.

    Your UI file structure should look something like the following example:
    Code:
        MyUI.zip
    
            ReadMe.txt
            Interface
    
                AddOns
                    AddOn No.1
                    AddOn No.2
    
            WTF
    
                Account
    
                    YOUR ACCOUNT
    
                        SavedVariables
    
                            SavedVariableFile1.lua
                            SavedVariableFile2.lua
                            
                        YOUR SERVER
    
                            YOUR CHARACTER
    
                                SavedVariables
    
                                    SavedVariableFile1.lua
                                    SavedVariableFile2.lua
                                    
                Config.wtf
          
            Fonts (if included)
  • Pack your UI folder. For best results use Zip compression as it is universally supported across all platforms (Win 32/64, MacOS, GNU/Linux).

Once your is zipped up, it's time to upload. Make sure you have a good screenshot (or more) of your UI to upload as you will need it (WoWI rules require at least one image). Both an out of combat and an in combat screenshot is a good idea. Also a screenshot of your AddOns folder showing all the AddOns in your UI is a good idea as it saves quite a bit of typing when you list the AddOns in your compilation.

Before you upload, read the WoWI Upload Rules & Guidelines (I chose this particular post as it highlights a few areas of concern to a UI uploader). Your UI must conform to Blizzard's EULA, ToU and UI Add-On Development Policy. If your UI meets those guidelines, upload it.

NOTE for first time UI compilers: If you are a first time uploader and your UI has serious issues, it may be simply deleted and you may not be contacted. If you do not see your UI on the site in a few days after you upload, double (or triple) check your UI for any of the issues I have listed. If you have questions, please PM an Admin or SMod.


Take a bit of time when you type up your UI's description. Put yourself in a potential users's place. Sell your UI to him/her! However tell the truth! If your UI likes to eat CPU cycles for breakfast or will be difficult for novice users, then say so. Likewise if the UI is great for some classes/roles and terrible for others. Otherwise the truth will come out in the comments users will leave and they may not be gentle about it!


Success!

Once uploaded, it may take a couple of days before it shows up on the site. Have a bit of patience and let the Admins and SMods do their jobs as all uploads are human checked (as normal Homo sapiens using the ol' Mk. I Eyeball) for problem files and scanned for viruses. While you are waiting, you may want check for PMs as if the Admins/SMods discover an issue, this is the route you will likely be contacted by.

Once your UI is approved, keep an eye on any comments that may appear. If users have problems, the comments section for your UI will be the first place that they will look (users will usually post question/comments first, look later). If you notice repeated questions about one thing, then that should be a clue to change a thing or two (either an AddOn, or maybe just some better documentation).

Keep your UI up to date. When mods change, then your UI needs to change to accommodate the AddOns. When you do make changes to your UI, take advantage of the Change Log to document changes to your UI. You may wish to add this Change Log to your ReadMe as well.

In addition, start a thread in the Released Compilations forums (http://www.wowinterface.com/forums/f...play.php?f=141) to provide a central point for folks who have support issues, suggestions, or just plain old thank yous.
__________________
Twitter

Last edited by Zyonin : 03-28-23 at 01:51 PM. Reason: Slight update to reflect recent changes including the bump to Dragonflight (10.xx) and to add licencing info.
  Reply With Quote