PDA

View Full Version : XP Bar UI


mystang89
07-27-2015, 11:01 PM
I was wondering if there were any mods out there that changed only the xp bar to where you saw a percentage? I already use...Velious mod or something like that, honestly can't remember what it is but I like it. Just wish the xp bar had percentages on it too.

Vaye
07-27-2015, 11:36 PM
Duxa UI. (http://www.project1999.com/forums/showthread.php?t=28335)

phacemeltar
07-28-2015, 01:23 AM
just take the player window out of duxa and you will be ok

mystang89
07-28-2015, 03:00 PM
No, there are too many dependencies and most pieces of the UI will not work by themselves.

I posted on Duxa thread and got this response so i guess I'll need to keep looking.

Sorn
07-28-2015, 03:11 PM
I experimented with this a little bit earlier and could not get the percentage going in my inventory window.

It's fairly easy to get the EXP bar and percentages to show up in your player window and should only require modifying one file, I think.

mystang89
07-28-2015, 10:41 PM
Any tips for what to modify and how? I'm no modder by any means so any help would be appreciated.

Sorn
07-28-2015, 10:59 PM
So to make a custom UI, you only need to save the modified files into a new folder named whatever you want to name the custom UI, not the whole package. In uifiles in your EQ folder, you will find various UI folders labeled default and default_old, plus others if you've installed those.

In default, the file you want to grab is EQUI_PlayerWindow. DON'T overwrite the original. Save it in your custom UI folder. They're all XML files, so they're set up like so:

<XML>
<Whatever></Whatever>
<Whatever>
<More Whatever></More Whatever>
</Whatever>
</XML>

You're looking for the section that has words like <Gauge item="Player_HP">. There are three parts to each bar: the gauge itself, the label, and the percent label. The gauge, of course, is the graphic of the bar itself. The label is the number, or the value itself. The percent label is just the % character after the label.

What I ended up doing was copying and pasting my stamina bar and changing the EQTYPE of the label to 26, which is the number for the exp percentage value. You have to also change the XML info of the bar so it isn't trying to overwrite the bar you copied the code from, ex: change "Player_HP" in the Gauge item to "Player_EXP", "Player_HPLabel" to "Player_EXPLabel", etc. The naming convention should match what's already there in case you decide to go back and modify some more stuff.

The last thing you need to do that may require some experimentation is figuring out the location of all three of those elements you just added. You have to find and increase the size of the entire player window (labeled Player Window or something along those lines, down near the bottom of the file) and then position the elements. It should be relatively easy for this since you just need to modify the Y axis if you copy and paste.

Once you have all the code modified, save it into your custom UI folder and start up the game. If you're testing out positioning, you may need it in windowed mode if you usually go fullscreen. After that you just type /loadskin and select your custom UI from the list. If the game doesn't find the files it wants, it'll pull from default so everything should be the same otherwise. If the game can't handle your file due to syntax errors or the like, it will simply use the default skin and show none of your mods at all.

WARNING: If you try to reload your UI in succession too quickly while experimenting, the game will quit on you in protest and you'll be locked out until the server syncs up, just like if you go LD.

Hope that helped!

mystang89
07-30-2015, 09:45 AM
Thanks for the detailed walkthrough. I seem to be having problems with the syntax though as it keeps reverting back to the default and I can't find the location on my screen even though I changed it a few times. I copied the part I had been working on if you wouldn't mind taking a look and seeing if you find any problems. I did you what you recommended and copy/pasted the fatigue bar.

<Gauge item="PlayerEXP">
<ScreenID>PlayerFatigue</ScreenID>
<!--<Font>3</Font>-->
<RelativePosition>true</RelativePosition>
<Location>
<X>4</X>
<Y>62</Y>
</Location>
<Size>
<CX>108</CX>
<CY>10</CY>
</Size>
<GaugeOffsetY>0</GaugeOffsetY>
<Style_VScroll>false</Style_VScroll>
<Style_HScroll>false</Style_HScroll>
<Style_Transparent>false</Style_Transparent>
<!--<TooltipReference/>-->
<FillTint>
<R>240</R>
<G>240</G>
<B>0</B>
</FillTint>
<LinesFillTint>
<R>0</R>
<G>220</G>
<B>0</B>
</LinesFillTint>
<DrawLinesFill>false</DrawLinesFill>
<EQType>3</EQType>
<GaugeDrawTemplate>
<Background>A_GaugeBackground</Background>
<Fill>A_GaugeFill</Fill>
<Lines>A_GaugeLines</Lines>
<LinesFill>A_GaugeLinesFill</LinesFill>
<EndCapLeft>A_GaugeEndCapLeft</EndCapLeft>
<EndCapRight>A_GaugeEndCapRight</EndCapRight>
</GaugeDrawTemplate>
</Gauge>
<Label item="Player_EXP">
<ScreenID>FatigueLabel</ScreenID>
<EQType>26</EQType>
<Font>1</Font>
<RelativePosition>true</RelativePosition>
<Location>
<X>32</X>
<Y>62</Y>
</Location>
<Size>
<CX>31</CX>
<CY>12</CY>
</Size>
<Text>100</Text>
<TextColor>
<R>255</R>
<G>255</G>
<B>255</B>
<Alpha>255</Alpha>
</TextColor>
<NoWrap>true</NoWrap>
<AlignCenter>false</AlignCenter>
<AlignRight>true</AlignRight>
<AlignLeft>false</AlignLeft>
</Label>
<Label item="Player_EXPLabel">
<ScreenID>FatiguePercLabel</ScreenID>
<Font>1</Font>
<Text>%</Text>
<TextColor>
<R>255</R>
<G>255</G>
<B>255</B>
</TextColor>
<Size>
<CX>16</CX>
<CY>12</CY>
</Size>
<AlignCenter>false</AlignCenter>
<Location>
<X>61</X>
<Y>62</Y>
</Location>
</Label>
<Screen item="PlayerWindow">
<!--<ScreenID/>-->
<RelativePosition>false</RelativePosition>
<Location>
<X>1000</X>
<Y>1000</Y>
</Location>
<Size>
<CX>147</CX>
<CY>92</CY>
</Size>
<Style_VScroll>false</Style_VScroll>
<Style_HScroll>false</Style_HScroll>
<Style_Transparent>false</Style_Transparent>
<DrawTemplate>WDT_Filigree3</DrawTemplate>
<Style_Titlebar>true</Style_Titlebar>
<Style_Closebox>false</Style_Closebox>
<Style_Minimizebox>false</Style_Minimizebox>
<Style_Border>true</Style_Border>
<Style_Sizable>false</Style_Sizable>
<Pieces>Player_HP</Pieces>
<Pieces>Player_Mana</Pieces>
<Pieces>Player_Fatigue</Pieces>
<Pieces>Pet_HP</Pieces>
<Pieces>Player_HPLabel</Pieces>
<Pieces>Player_HPPercLabel</Pieces>
<Pieces>A_AttackIndicatorAnim</Pieces>
<Pieces>Player_ManaLabel</Pieces>
<Pieces>Player_FatigueLabel</Pieces>
<Pieces>Player_ManaPercLabel</Pieces>
<Pieces>Player_FatiguePercLabel</Pieces>
</Screen>
</XML>

Sorn
07-30-2015, 10:32 AM
I just realized I forgot a step, maybe that's the problem. Derp derp, sorry about that.

So in the PlayerWindow section you have here, there's a portion of it with <Pieces></Pieces>, where it lists each gauge, label, and percent label. You should add in all three of the new ones in there. It tells the player window to look for and use the code you've added.

You may also want to change the ID of the ScreenID of each to reflect the fact that it's the EXP bar.

The rest of it looks correct. :)

shuklak
03-18-2017, 08:43 AM
Is it possible to just somehow add the exp bar (anywhere up top or a side) to the default old UI? I like the classic'esque ness of it... just want to add the EXP bar.

leewong
03-19-2017, 12:49 PM
Is it possible to just somehow add the exp bar (anywhere up top or a side) to the default old UI? I like the classic'esque ness of it... just want to add the EXP bar.

Not without coding it yourself or copying and pasting a "EQUI_PlayerWindow.xml" from an existing UI into the UI you are using.

If you want take a look at my custom UIs and they may be of some help:
http://www.project1999.com/forums/showthread.php?t=268108

Copy and pasting code wont do much good unless you know where to place each line AND adjust the player window size and the location of the items displayed within.

Here are relevant lines in my UIs EQUI_PlayerWindow.xml:

<Label item ="PW_EXP">
<ScreenID>EXPLabel</ScreenID>
<EQType>26</EQType>
<Font>2</Font>
<RelativePosition>true</RelativePosition>
<Location>
<X>132</X>
<Y>132</Y>
</Location>
<Size>
<CX>25</CX>
<CY>20</CY>
</Size>
<Text>100</Text>
<TextColor>
<R>255</R>
<G>255</G>
<B>255</B>
</TextColor>
<NoWrap>true</NoWrap>
<AlignRight>true</AlignRight>
</Label>
<Label item ="PW_EXP_Label">
<ScreenID>EXPLabel</ScreenID>
<EQType>-1</EQType>
<Font>2</Font>
<RelativePosition>true</RelativePosition>
<Location>
<X>1</X>
<Y>132</Y>
</Location>
<Size>
<CX>25</CX>
<CY>20</CY>
</Size>
<Text>EXP</Text>
<TextColor>
<R>255</R>
<G>255</G>
<B>255</B>
</TextColor>
<NoWrap>true</NoWrap>
<AlignRight>false</AlignRight>
</Label>

<Gauge item = "PW_ExpGauge">
<ScreenID>ExpGauge</ScreenID>
<Font>2</Font>
<RelativePosition>true</RelativePosition>
<Location>
<X>23</X>
<Y>135</Y>
</Location>
<Size>
<CX>108</CX>
<CY>8</CY>
</Size>
<GaugeOffsetY>0</GaugeOffsetY>
<Style_VScroll>false</Style_VScroll>
<Style_HScroll>false</Style_HScroll>
<Style_Transparent>false</Style_Transparent>
<!--<TooltipReference/>-->
<FillTint>
<R>255</R>
<G>110</G>
<B>0</B>
</FillTint>
<LinesFillTint>
<R>0</R>
<G>255</G>
<B>0</B>
</LinesFillTint>
<DrawLinesFill>true</DrawLinesFill>
<EQType>4</EQType>
<GaugeDrawTemplate>
<Background>A_GaugeBackground</Background>
<Fill>A_GaugeFill</Fill>
<Lines>A_GaugeLines</Lines>
<LinesFill>A_GaugeLinesFill</LinesFill>
<EndCapLeft>A_GaugeEndCapLeft</EndCapLeft>
<EndCapRight>A_GaugeEndCapRight</EndCapRight>
</GaugeDrawTemplate>
</Gauge>

<Pieces>PW_ExpGauge</Pieces>
<Pieces>PW_EXP</Pieces>
<Pieces>PW_EXP_Label</Pieces>

Feronex
03-20-2017, 04:43 AM
If you use this style of UI, my player window looks like this.
http://i.imgur.com/JiX86jL.png

If interested, get it here (http://www.mediafire.com/file/z25z9h97t5lktnm/EQUI_PlayerWindow.xml).