CultUI help page
CultUI Help Page
Guide to editing index.xml in order to optimise performance
Within the index.xml file contained within any interface that Vanguard uses, are entries for each and every element of that particular interface. The XML file can be opened and edited using notepad, though it is easiest to understand the structure when using a dedicated editor such as eclipse.
When looking at index.xml it is possible to see how it is structured, but the important sections are as follows:
- <SystemWindows directory="..\Default\Windows"> Within this section are system windows, that are generally not edited due to the risky nature of this. You will never normally need to change this section!
- <GameplayWindows directory="..\Default\Windows"> Within this section, are elements from the default interface, that are used within this particular custom interface. Only edit entries in this section if you are replacing a default window, with a custom one.
- <SystemWindows directory="Windows"> Within this section, are the modified and added system windows for the custom interface. Once again, this isn't something that you will need to edit.
- <GameplayWindows directory="Windows"> This is where most changes will be made, as it contains options for windows that you might not be using.
You may wonder why you need to edit this file at all, as the author of the interface has already done all of the work! Well, Vanguard handles its interface very poorly, an example of which would be, using CultUI there are several options for things such as Target Debuffs, Buffs, Encounter Displays etc etc. When Vanguard updates the interface with new information, for example every time a spell is cast on a mob, every single window in the interface is updated, regardless of its visibility on screen! This makes for some very choppy performance in raids.
Editing windows out
The easiest way to edit a window out of the interface, is to add two small bits into the entry for that window. I will now provide an example:
You want to remove the horizontal encounter window from the game. The entry within the XML is normally very self explanatory, in this case it looks like:
- <Window filename="Drox_EncounterHUDHorizontal.xml"/>
To make this entry disappear from those that the game loads, the easiest method is to turn it into an XML comment, which is invisible to the game. To do this, add <!-- before the entry and --> after it. Producing the following example:
- <!--Window filename="Drox_EncounterHUDHorizontal.xml"/-->
Then to enable it, simply remove the change, leaving just < and /> at the beginning and end! A good example of how this works can be seen below, showing that the entry has now become a comment within the XML (screen shot from eclipse, notepad will not show colours!).
Why optimising index.xml helps performance
Vanguard's Interface works by loading all of the windows within index.xml, the options within game will then hide and show the windows that are loaded, note that I use hide/show rather than load/unload! All windows that are loaded into the client are updated, even if they are not being seen. When taking CultUI's various spell interfaces into account, this means that instead of the required 6 windows that are being updated, there are actually 19!
In the image seen below, the options for CultUI's spell display interfaces can be seen. In green, you can see the windows that I personally don't use, and in blue you can see the windows that are being loaded into the game. By doing this, the client only has to update 6 windows, and isn't working any harder than it absolutely has to!
The screenshot above is from a new version of the index.xml that I intend to release soon, allowing a much simpler file to work with!