Skip to content

TazUO.XML Gumps

Tad Taylor edited this page Dec 3, 2023 · 21 revisions

We've added the ability for you to create your own custom gumps via XML

ℹ️ v3.15.0 and up required.

This feature will expand over time, it is not finished.

Instructions

Your xml files will go under /TazUO/Data/XmlGumps/ and must be named ----.xml

Example gump

image

<?xml version="1.0"?>
<gump x="100" y="100">
	<colorbox hue="1" width="400" height="200" alpha="0.65"/>
	<colorbox hue="32" width="400" height="20" alpha="0.65"/>
	<text x="15" y="2" hue="0">XML Gump</text>
	<text x="15" y="22" hue="32">With some more text for an example</text>
	<text x="15" y="35" hue="35" updates="true">{charname} has /c[green]{hp}/cd hits!</text>
	<image id="9819" hue="0" x="20" y="120"/>
	<image_progress_bar background_image="40" foreground_image="41" value="{hp}" max_value="{maxhp}" x="15" y="57" updates="true"/>
	<color_progress_bar background_hue="32" foreground_hue="60" width="100" height="20" value="{hp}" max_value="{maxhp}" x="15" y="77" updates="true"/>
</gump>

Options

All elements accept the following attributes

ℹ️ Text element is the only exception here, it does not have all of these applied
x Left position
y Top position
width Width of the element
height Height of the element
acceptmouseinput true/false (false will act like mouse pass through to whatever is behind it)
canmove true/false (If false, dragging on this element will not move the gump as a whole)

Text <text> tag accepts the following attributes

x Left position
y Top position
width Width of the element
size Font size
font Name of the font(Must be installed in your fonts folder of TazUO)
hue Hue for the font
updates true/false weather or not this needs to be updated, only use this when necessary to keep resource usage down.
align left/center/right

Text options

The following can be used inside your text, for example: Hits {hp}/{maxhp}
{charname}
{hp} {maxhp}
{mana} {maxmana}
{stam} {maxstam}
{weight} {maxweight}
{str} {dex} {int}
{damagemin} {damagemax}
{hci} {di} {ssi} {defchance} {defchancemax}
{sdi} {fc} {fcr} {lmc} {lrc}
{phyres} {phyresmax} {fireres} {fireresmax}
{coldres} {coldresmax} {poisonres} {poisonresmax}
{energyres} {energyresmax}
{maxstats} {luck} {gold}
{pets} {petsmax}

Colorbox <colorbox> accepts the following

hue Hue for the color
alpha Transparency from 0-1 (0.5 is 50% transparency)

Image <image> accepts the following

id The graphic id, you can get this from UOFiddler or similar programs
hue The hue for the image(0 is original hue)
rect To only use a rectangle area of a graphic rect="x;y;width;height"
For example:

<image id="40251" hue="0" x="70" y="120" rect="0;0;25;25"/>
<image id="9819" hue="0" x="20" y="120"/>

Image progress bars <image_progress_bar> accepts the following

background_image The background image of the progress bar
foreground_image The foreground image of the progress bar
background_hue
foreground_hue
value The current value of the progress bar, can use any of the Text Options or a plain number
max_value The max value of the progress bar, can use any of the Text Options or a plain number
updates true/false If you want the progress bar to update if you expect the value to change
An example:

<image_progress_bar background_image="40" foreground_image="41" value="{hp}" max_value="{maxhp}" x="15" y="57" updates="true"/>

Animation

Color progress bars <color_progress_bar> accepts the following

background_hue
foreground_hue
value The current value of the progress bar, can use any of the Text Options or a plain number
max_value The max value of the progress bar, can use any of the Text Options or a plain number
updates true/false If you want the progress bar to update if you expect the value to change
An example:

<color_progress_bar background_hue="32" foreground_hue="60" width="100" height="20" value="{hp}" max_value="{maxhp}" x="15" y="77" updates="true"/>

image

Control tag <control>

The control tag can be used with child tags, the child tag positions will be relative to the control's position.
image

	<control x="300" y="50">
		<colorbox hue="99" width="10" height="10" alpha="0.65"/>
		<text y="11" hue="981" width="100">This is an example of items positioning being relative to the control it is inside of</text>
	</control>

Simple border <simple_border>

hue -> The color of the border
image

	<control x="300" y="50">
		<simple_border x="-1" y="-1" width="100" height="150" hue="981"/>
		<colorbox hue="99" width="10" height="10" alpha="0.65"/>
		<text y="11" hue="981" width="100">This is an example of items positioning being relative to the control it is inside of</text>
	</control>

Macro buttons <macro_button_color>

hue -> Normal button hue
hue_hover -> Hue when mouse over
alpha -> Opacity, 0-1
macro -> The name of the macro to run
Animation
An example to run a macro named f12:

	<control x="200" y="50">
		<macro_button_color macro="f12" width="100" height="20" hue="60" hue_hover="32"/>
		<text hue="60">Macro button</text>
	</control>

Macro buttons <macro_button_graphic>

id && id_hover -> Graphic id numbers
hue && hue_hover
alpha Opacity, 0-1
macro The name of the macro to run
Animation

<macro_button_graphic y="30" macro="f12" hue="0" hue_hover="32" id="251" id_hover="252"/>