EQ2Interface.com
Search Downloads


Go Back   EQ2Interface > Developer Discussion > XML Modification Help & Info

Reply
Thread Tools Search this Thread Display Modes
  #1  
Unread 04-20-2008, 09:07 AM
Taemek Taemek is offline
A Young Mystail Rat
Interface Author - Click to view interfaces
 
Join Date: Sep 2007
Server: Antonia Bayle
Posts: 7
Default New to making UI's 8- ), be gentle.

Ok, so I am literally riping my hair out.

I recently requested if someone could make a click to Mana Flow button next to group members names in the group window and thought well what the hell, I may as well learn this myself seeing im interested in it.

I have got all the way to the point of needing to insert a picture of the icon I want to use for the New button I have inserted and also, seeing I shrunk the HP/Mana bars down by about 5% to fit the button into the default UI group window as to not want to make it any bigger, that now the bubbles related with the HP/mana bars are not lined up correctly.

Now I noticed I had to adjust all of the sizes of the HP/mana bar windows, backgroup and bubble overlays to the same size as the newly sized window so for example:

Height= 6
width = 96

Now I have done this and the bubbles still want to scale to the default HP/mana bar size, anything I am missing?

In reguards to the picture of Mana Flow icon, I can find the icon I need but its in a cluster of icons in the UI > Images > Icons > icon_as2.dds file, which when I open the file up with Nero Photosnap editor I can then cut/paste it out into a new file but this wont save the pic into the .xml file I believe, this means that if and when i get this UI fuctional (which it is apart from the bubble overlay and no pic on Mana Flow button) that people who download it would have to do the same thing to get a pic on thier new button, which obviously I do not want to make them do, so any hints here also please people.

One serious issue I am having though is making the click to cure buttons target the previous target i had, I am inserting:

useabilityonplayer parent.Name.LocalText Cure Curse||target_previous

Does it work like this or am I doing something wrong?

I really appreciate any info, I am a total .xml noob and only using EQ2ui Builder atm and I dont understand how to use Notebook ++, so I am keeping things simple and just sticking with UI builder until I understand it a little better.

Sorry for the long drawn out post but very much appreciate any help or info.
Reply With Quote
  #2  
Unread 04-20-2008, 10:59 AM
gm9 gm9 is offline
gm10-1
Premium Member
EQ2Interface Super Mod
Featured
 
Join Date: Feb 2006
Posts: 6,479
Default

Welcome to EQ2 interface modding.
  1. Bubbles: Set Stretch="true" for the BubbleOverlay to have it scale
  2. Icons: Create an image object, set Source="/images/icons/icon_as2.dds". Double click on SourceRect and draw a rectangle around the icon you want.
  3. Click to cure: The "GroupMemberX" sections are hardcoded by the client to target that group member if you click on them in game. Therefore my suggestion is to create a new page containing the click to cure buttons on the same level as the "GroupMemberX" pages. You will only need the useabilityonplayer code then (of course you need to change the path to the player name).
  4. Note: To separate commands, you cannot use the || symbol. You need to either use a space (in which case code is executed right to left) or a newline character (in which case code is executed top to bottom). You can doubleclick the OnPress parameter in UIbuilder to get a popup window where you can enter multiple lines.
__________________
P R O F I T U I ∙ R E B O R N [Auto-Updater] | [Portal] | [F.A.Q.] | [Support Forums]
~ Retired ~
If it does not work, you likely installed it incorrectly. Always try a clean install before reporting bugs.

Last edited by gm9 : 04-20-2008 at 01:02 PM. Reason: typo
Reply With Quote
  #3  
Unread 04-20-2008, 12:51 PM
dragowulf's Avatar
dragowulf dragowulf is offline
A man among men
This person is a EQ2Map developer.
Interface Author - Click to view interfaces
 
Join Date: Dec 2004
Server: Nagafen
Posts: 934
Default

Once you start there's no going back...
__________________
May Jesus Have Mercy On Us
Reply With Quote
  #4  
Unread 04-20-2008, 02:39 PM
Taemek Taemek is offline
A Young Mystail Rat
Interface Author - Click to view interfaces
 
Join Date: Sep 2007
Server: Antonia Bayle
Posts: 7
Default

Quote:
Originally Posted by gm9 View Post
Welcome to EQ2 interface modding.
Thank you and before I ask you one final question, thank you for all the info, works perfectly.


Quote:
Originally Posted by gm9 View Post
[*]Click to cure: The "GroupMemberX" sections are hardcoded by the client to target that group member if you click on them in game. Therefore my suggestion is to create a new page containing the click to cure buttons on the same level as the "GroupMemberX" pages. You will only need the useabilityonplayer code then (of course you need to change the path to the player name). [*]Note: To separate commands, you cannot use the || symbol. You need to either use a space (in which case code is executed right to left) or a newline character (in which case code is executed top to bottom). You can doubleclick the OnPress parameter in UIbuilder to get a popup window where you can enter multiple lines.[/list]

Now I went ahead and removed all my click to cure buttons from under the Effects page and inserted them into the MemberInfoPage, except now when I click the icons in game all it does is auto target that person and no clicky noises or casting, I'm guessing this is what you were refering too about repathing it to the player name.

This is the final part im stuck on, I downloaded a few other click to cure UI's and attempted to play around with them, but the parent thing has me stumped.

Under the effects window I installed a button with the code:

Onpress = Temp1 = parent.Effect5.Visible
Temp2 = ( Temp1 ? true : parent.Effect4.Visible )
Temp1 = ( Temp2 ? true : parent.Effect3.Visible )
Temp2 = ( Temp1 ? true : parent.Effect2.Visible )
parent.parent.Info.Info.Visible = ( Temp2 ? false : ! parent.Effect1.Visible )


In the Effects 1 through to 5 I added the lines:

Onhide = parent.Button.press = true
Onshow = parent.Button.press = true


In the click to cure icons:

Onpress = useabilityonplayer parent.Name.LocalText Cure Trauma
target_previous


All this has done is not allow me to click the icons to cure. Obviously I dont fully understand what I'm doing, but I'm learning more about it, now I just need to learn how to create a path to GroupMember1 through to 5 and it should be good to go, also, the pathing I use for the click to cure buttons to not change targets ( or change it back so to speak ), will it work with the new Mana Flow button I have installed seeing its a stand alone button on its on not corresponding with any icons?

At first guess, I would guess that the Draw Parent Selection Highlight is not lined up correctly with my Cure Icons, but thats just a uneducated guess, buts its the only thing I haven't yet done as I haven't worked out how to do this part.

Also, once there is no going back, you got that right, I just noticed its 5:45am Times flies when your having fun.
Reply With Quote
  #5  
Unread 04-20-2008, 02:48 PM
dragowulf's Avatar
dragowulf dragowulf is offline
A man among men
This person is a EQ2Map developer.
Interface Author - Click to view interfaces
 
Join Date: Dec 2004
Server: Nagafen
Posts: 934
Default

lol. I use to spend so much time modding...then realizing through my mockup that I accomplished nothing.

If you want to get a good look at some solid code look at ProfitUI
__________________
May Jesus Have Mercy On Us
Reply With Quote
  #6  
Unread 04-20-2008, 02:57 PM
gm9 gm9 is offline
gm10-1
Premium Member
EQ2Interface Super Mod
Featured
 
Join Date: Feb 2006
Posts: 6,479
Default

Quote:
Originally Posted by Taemek View Post
At first guess, I would guess that the Draw Parent Selection Highlight is not lined up correctly with my Cure Icons, but thats just a uneducated guess, buts its the only thing I haven't yet done as I haven't worked out how to do this part.
If you mean that your new buttons are likely not on top of the effect icons then yes, that's likely the main reason about what's wrong. In UIBuilder select each of your buttons and see if they are on top of the icons.

Regarding the pathing - if I take the example of how I have it in ProfitUI, there I have a setup like this:
GroupMember1CureEffects.CureEffect1Button
GroupMember1.MemberInfoPage.Name
Now, to reference the Name from the button I would need to use
useabilityonplayer Parent.Parent.GroupMember1.MemberInfoPage.Name.Text

(if you check the actual ProfitUI code you'll see it's a bit more difficult than that but that's because it's doing many other things at the same time, so you will probably want to ignore that at first - other click to cure UIs may be easier to understand for a beginner)
__________________
P R O F I T U I ∙ R E B O R N [Auto-Updater] | [Portal] | [F.A.Q.] | [Support Forums]
~ Retired ~
If it does not work, you likely installed it incorrectly. Always try a clean install before reporting bugs.
Reply With Quote
  #7  
Unread 04-21-2008, 02:10 AM
Taemek Taemek is offline
A Young Mystail Rat
Interface Author - Click to view interfaces
 
Join Date: Sep 2007
Server: Antonia Bayle
Posts: 7
Default

After ALOT of messing around with coding etc, a friend pointed out that all you have to do is make your cure buttons or any type of buttons in the GroupMember1 through to 5 and:

Onpress = useability Cure Trauma
target_previous

Now of course, I am new to this and I can't seem but help to have this funny feeling that it's not this simple for a reason, obviously I do not know the reason, but I'm sure you guys can fill me in on why it needs to have a parent file in a seperate page for the no chnage target to work instead of this code?
Reply With Quote
  #8  
Unread 04-21-2008, 02:57 AM
gm9 gm9 is offline
gm10-1
Premium Member
EQ2Interface Super Mod
Featured
 
Join Date: Feb 2006
Posts: 6,479
Default

Because your code actually does change the target, and then changes it back. Doing what I suggested and using /useabilityonplayer instead does not change the target, so it is more efficient. And besides you asked how to code for useabilityonplayer in the OP.

If you want to go the /target_previous route however let me suggest you add this code to the buttons:
OnHoverIn="target_allow_pet_member_toggle 0" OnHoverOut="target_allow_pet_member_toggle 1"
This is what I had developed for ProfitUI 3.x before /useabilityonplayer was introduced. Without this code you may end up curing pets if you have classes with pets in your group, which was a problem for click to cure buttons at the time (good ol' times ). So this code is pretty much required, but you can see that it costs even more efficiency, so I do recommend you use the useabilityonplayer route if you can.

EDIT to add: If you play with people with non-ASCII characters in their names you are forced to take the /useability /target_previous route btw because the EQ2 scripting language does not handle non-ASCII characters.

EDIT2: I see you already released it anyway. Coercers have manaflow too btw.
__________________
P R O F I T U I ∙ R E B O R N [Auto-Updater] | [Portal] | [F.A.Q.] | [Support Forums]
~ Retired ~
If it does not work, you likely installed it incorrectly. Always try a clean install before reporting bugs.

Last edited by gm9 : 04-21-2008 at 03:59 AM.
Reply With Quote
  #9  
Unread 04-21-2008, 01:46 PM
kerpow1's Avatar
kerpow1 kerpow1 is offline
A Coastal Crab
 
Join Date: Jan 2006
Server: Antonia Bayle
Posts: 1
Default

ive always been greatful of those who spend time making UImods. good lord after reading this post im now really greatful of the work u all put into these.

ty ty ty all for enhancing my gaming experience. im definitely a long time gamer, and i know when they create a game they need a standard UI for them. the creative work you all do for the different games really make or break those games.

keep up the good work. you all are greatly appreciated.
Reply With Quote
  #10  
Unread 04-21-2008, 01:47 PM
Taemek Taemek is offline
A Young Mystail Rat
Interface Author - Click to view interfaces
 
Join Date: Sep 2007
Server: Antonia Bayle
Posts: 7
Default

Quote:
Originally Posted by gm9 View Post
Because your code actually does change the target, and then changes it back. Doing what I suggested and using /useabilityonplayer instead does not change the target, so it is more efficient. And besides you asked how to code for useabilityonplayer in the OP.

If you want to go the /target_previous route however let me suggest you add this code to the buttons:
OnHoverIn="target_allow_pet_member_toggle 0" OnHoverOut="target_allow_pet_member_toggle 1"
This is what I had developed for ProfitUI 3.x before /useabilityonplayer was introduced. Without this code you may end up curing pets if you have classes with pets in your group, which was a problem for click to cure buttons at the time (good ol' times ). So this code is pretty much required, but you can see that it costs even more efficiency, so I do recommend you use the useabilityonplayer route if you can.

EDIT to add: If you play with people with non-ASCII characters in their names you are forced to take the /useability /target_previous route btw because the EQ2 scripting language does not handle non-ASCII characters.

EDIT2: I see you already released it anyway. Coercers have manaflow too btw.

It's ok, I released it with the /useabilityonplayer route anyway cause I just didnt feel right about doing it the other way. . I will how ever be using that code you showed me in reguards to toggling out pets, thats going to come in handy, thank you for that, appreciate it.

OMG, what the hell was I thinking, people still play Coercers? Only messin, I will get right on that.

I have no idea where I am going to put these buttons in for the default raid UI, I think I might have to get imaginative with it a little while staying with in the default theme.....
Reply With Quote
  #11  
Unread 04-21-2008, 02:01 PM
Taemek Taemek is offline
A Young Mystail Rat
Interface Author - Click to view interfaces
 
Join Date: Sep 2007
Server: Antonia Bayle
Posts: 7
Default

I am curious about another thing, is it possible to put in a caption in the Onpress section of a button to house a macro for a call out so to speak in reguards to who you are casting Mana Flow on, ie; /g Mana Flow on Taemek in 30 seconds..... and for raid it would be /r Mana Flow on Taemek in 30 seconds.......

Its not a big deal, just lets people know your actually paying attention and you have mana incoming for them.

I'll take a stab at it here and see if its right:

Onpress:
useabilityonplayer parent.GroupMember1.MemberInfoPage.Name.Text Mana Flow
target_previous
/g Mana Flow on %t in 30 seconds.

or would I have to go:

useabilityonplayer parent.GroupMember1.MemberInfoPage.Name.Text Mana Flow
target_previous
gsay GroupMember1.MemberInfoPage.Name.Text
Mana Flow on Taemek in 30 seconds.

I'm going to assume its not this easy and there will be more I have to add, if its even possible.

Thanks for the vote of confidence kerpow, I can't take all the credit here as you can see, but I have had some outside help also, have a few of us beating heads together playing around with this for the last few days and oddly enough, I am finding myself quite drawn to it in a very obessing way.

Last edited by Taemek : 04-21-2008 at 02:04 PM.
Reply With Quote
  #12  
Unread 04-21-2008, 02:16 PM
gm9 gm9 is offline
gm10-1
Premium Member
EQ2Interface Super Mod
Featured
 
Join Date: Feb 2006
Posts: 6,479
Default

Quote:
Originally Posted by Taemek View Post
It's ok, I released it with the /useabilityonplayer route anyway cause I just didnt feel right about doing it the other way. . I will how ever be using that code you showed me in reguards to toggling out pets, thats going to come in handy, thank you for that, appreciate it.
Just to be clear, you only need the OnHoverIn if you are switching targets, otherwise you don't need that. If you are switching targets there is not much point in using /useabilityonplayer, in that case using /useability would be easier (and more compatible).

As to the say code, you will want to do it like this, since you cannot use ingame variables such as %T:
useabilityonplayer parent.GroupMember1.MemberInfoPage.Name.Text Mana Flow
target_previous
gsay Mana Flow on GroupMember1.MemberInfoPage.Name.Text in 30 seconds.
__________________
P R O F I T U I ∙ R E B O R N [Auto-Updater] | [Portal] | [F.A.Q.] | [Support Forums]
~ Retired ~
If it does not work, you likely installed it incorrectly. Always try a clean install before reporting bugs.
Reply With Quote
  #13  
Unread 04-22-2008, 02:21 PM
Taemek Taemek is offline
A Young Mystail Rat
Interface Author - Click to view interfaces
 
Join Date: Sep 2007
Server: Antonia Bayle
Posts: 7
Default

Quote:
Originally Posted by gm9 View Post
Just to be clear, you only need the OnHoverIn if you are switching targets, otherwise you don't need that. If you are switching targets there is not much point in using /useabilityonplayer, in that case using /useability would be easier (and more compatible).

As to the say code, you will want to do it like this, since you cannot use ingame variables such as %T:
useabilityonplayer parent.GroupMember1.MemberInfoPage.Name.Text Mana Flow
target_previous
gsay Mana Flow on GroupMember1.MemberInfoPage.Name.Text in 30 seconds.

In a attempt to tweak and stream line the adjustments I have made, I have hit a brick wall with 3 issues:
  1. The Mana Flow button I have added doesn't make a clicky noise when I click it, it does infact make no noise at all.
  2. Because I have adjusted the HP/power bars to be 5% smaller, the names of people above them are not centralized.
  3. The above command you gave me in regaurds to group text warnings, reads out to the group as GroupMember1.MemberInfoPage.Name.Text instead of the players name.

In reguards to No.1, I had orginally made the picture a Image Object, but noticed it has no TreatAsButton property so changed it out to a Icon Object instead and still no button click noise.

With No.2, I thought it might as been as easy as setting Stretch=true, but to no avail not that easy and please dont tell me its as easy as resizing the width and it auto snaps to central location within that window?

With No.3, I literally have no clue whats going on there. The Mana Flow button how ever is its stand alone:

useability Mana Flow
target_previous
gsay Mana Flow on GroupMember1.MemberInfoPage.Name.Text in 30 seconds.

Instead of the players name coming up the entire code is being read out, just from Mana Flow to 30 seconds. The button itself is also in the MemberInfoPage so not sure if this effects the issue.

EDIT - Forgot one last thing, my buttons dont seem to allow for queueing other cures and I cant queue Mana Cure ethier while wiaiting for the global refresh timer, no clue what so ever to what I have missed for that, but im guessing its code based im sure.

Last edited by Taemek : 04-22-2008 at 02:28 PM.
Reply With Quote
  #14  
Unread 04-22-2008, 03:22 PM
gm9 gm9 is offline
gm10-1
Premium Member
EQ2Interface Super Mod
Featured
 
Join Date: Feb 2006
Posts: 6,479
Default

  1. Check out the PressSound/ReleaseSound parameters.
  2. Yes, resize it (why didn't you just try that?). At least if TextAlignment="Center", which it probably already is.
  3. The actual path to the name object of course depends on where you place the button.
  4. Spells with casting time will automatically queue, but not the other components of the script.
__________________
P R O F I T U I ∙ R E B O R N [Auto-Updater] | [Portal] | [F.A.Q.] | [Support Forums]
~ Retired ~
If it does not work, you likely installed it incorrectly. Always try a clean install before reporting bugs.

Last edited by gm9 : 04-22-2008 at 03:24 PM.
Reply With Quote
  #15  
Unread 04-22-2008, 05:27 PM
dragowulf's Avatar
dragowulf dragowulf is offline
A man among men
This person is a EQ2Map developer.
Interface Author - Click to view interfaces
 
Join Date: Dec 2004
Server: Nagafen
Posts: 934
Default

Quote:
Originally Posted by kerpow1 View Post
ive always been greatful of those who spend time making UImods. good lord after reading this post im now really greatful of the work u all put into these.

ty ty ty all for enhancing my gaming experience. im definitely a long time gamer, and i know when they create a game they need a standard UI for them. the creative work you all do for the different games really make or break those games.

keep up the good work. you all are greatly appreciated.
It looks and is hard at first, but once you get into the modder groove it starts getting easy.

Although props to gm9 because I swear it had to take him forever to do the subclass detection, especially trying to get around the problem with OnShow.
__________________
May Jesus Have Mercy On Us
Reply With Quote
  #16  
Unread 05-09-2008, 07:41 AM
bob23 bob23 is offline
A Young Mystail Rat
 
Join Date: Jun 2005
Server: Antonia Bayle
Posts: 7
Default

Im trying to pull off the same thing, but I cannot get the %t to return either.

I have _groupmembers.xml with this line:
... Name="button5" OnPress="clearabilityqueue ; cancel_spellcast ; do_file_commands ability5.txt"


The "ability5.txt" reads:
useability Jester's Cap ; target_previous


This works fine, however, I need to return the group members name to the chat box so they know i just cast that on them. I tried to add the "gsay jesters cap on GroupMember1.MemberInfoPage.Name" in the _groupmembers.xml, but that doest seem to return the groupmembers name to the chatbox. The path is right (GroupMember1.MemberInfoPage.Name) but nothing happens. How do I return a string of text to the chatbox from that xml?

thanx
Reply With Quote
  #17  
Unread 05-09-2008, 10:00 AM
gm9 gm9 is offline
gm10-1
Premium Member
EQ2Interface Super Mod
Featured
 
Join Date: Feb 2006
Posts: 6,479
Default

Your path is wrong in several ways, check the posts in this thread to see how it is done, of course in the end it depends on where you place your button.
__________________
P R O F I T U I ∙ R E B O R N [Auto-Updater] | [Portal] | [F.A.Q.] | [Support Forums]
~ Retired ~
If it does not work, you likely installed it incorrectly. Always try a clean install before reporting bugs.
Reply With Quote
  #18  
Unread 05-09-2008, 07:41 PM
bob23 bob23 is offline
A Young Mystail Rat
 
Join Date: Jun 2005
Server: Antonia Bayle
Posts: 7
Default

ok i've tried just about everything here, and cannot get this button to return a line of text to the group window.

The file that I am working with is
http://www.eq2interface.com/download...llbuttons.html

here is the code:

<Button BackgroundOpacity="0.000" LocalTooltip="spell5" Location="22,32" Name="button5" OnPress="clearabilityqueue ; cancel_spellcast ; do_file_commands spell5.txt" ScrollExtent="22,21" Size="22,21"/>

Adding to the

"...OnPress="clearabilityqueue ; cancel_spellcast ; do_file_commands spell5.txt"

does nothing.... for example

OnPress="clearabilityqueue ; cancel_spellcast ; do_file_commands spell5.txt ; gsay = jester cap on Name.LocalText"

or one of the many other variants i have seen/downloaded and tried.

What is the issue here? I've simply tried everything I could get my hands on from this site, and not one thing works. Can this even be DONE?
Reply With Quote
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 04:00 AM.


Our Network
EQInterface | EQ2Interface | WoWInterface | LoTROInterface | ESOUI | MMOUI