EQ2Interface.com
Search Downloads


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

Reply
Thread Tools Search this Thread Display Modes
  #1  
Unread 03-17-2005, 12:10 PM
Kosmos's Avatar
Kosmos Kosmos is offline
A Griffon
Interface Author - Click to view interfaces
 
Join Date: Dec 2004
Server: Lucan DLere
Posts: 581
Default eq2ui_mainhud_maintained.xml (Notes) Futuer Abandoned Projects?

Hey guys, Laffs and I dinked with this yesterday for quiet a bit and I thought I would share what we found. Maybe there is someone out there that can get this to work, but it looks unlikely. I'll explain why.

The goal was to have a Maintained spell window that had a small X in the top right hand corner of the icon. Clicking that small X would cancel the maintained effect. I've included a semi-working demonstration.
The mod uses the cancel_maintained command which takes a %d for the value.

So here's the tricky party. Which I'm sure is no accident.
The Mod works the first time IF you have spells already maintained when you log on. After some doing some testing we came up with a good guess of whats happening.
The index number of the spells changes.
There does not appear to be an index number set for the spells themselves, nor for the slots.
So addressing slot one as cancel_maintained 0.0 only works once, if you already had a spell in that slot. Or after zoneing.

Here is how it appears to be working.
Quote:
Spell#1 is cast, and goes into Slot#1 with an index of 1.0 (Since its' the first spell you have cast.)
Spel#2 is cast, and goes into Slot#2 with an index of 2.0 (Second Spell You have cast)
Spell#3 is cast, and goes into Slot#3 with an index of 3.0(Third spell you have cast)
Now at this point typing in the command line cancel_maintained 1.0, or 2.0, or 3.0 would cancel the appropriate maintained spells.
The .XML I've included is set to start at 0.0 so if you have a spell in slot#1 when you log on, or after you are done with a zone, that slot has a spell with the index of 0.0 so it will work, as well as the rest of them.
If you have no spells in any maintained slots when you log on. The first spell you cast will get an index of 1.0 rather than 0.0 so all of the buttons will be one index off.

Now...Here's where it gets complicated. Take the above example.
Quote:
Spell#1 the first spell you cast with the index of 1.0 wears off.

Re-Cast Spell#1 and it goes into Slot#1 but now it has an index of 4.0 (Since it's the 4th spell you have case)
Typing cancel_maintained 0.0 will no longer work. Because that spell is now maintained spell 4.0 even though it's in Slot#1.

So using the cancel_maintained command takes the decimal argument of the n^th spell that you have case since been logged on this session.
The index is re-set to 0, on zoneing.
So every maintained spell that you cast increases this index, and it's not tied to specific spell.
As far as I know, with our current math functions, we could not keep track of this index in relation to specific spells. Something like 'pathfinding' could have any index in the world, and unless I knew what the index number is, there is now way i can find to cancel it, unless you right-click and do cancel.

If there was a way to read the index from the spell currently in the slot, then we could get this to work, but I've not been able to figure out how to do that.
Attached Thumbnails
Click image for larger version

Name:	Maintained.jpg
Views:	509
Size:	126.6 KB
ID:	1899  
Attached Files
File Type: xml eq2ui_mainhud_maintained.xml (14.3 KB, 419 views)
__________________
Kosmos
Qeynos Ranger (Retired)
Lucan D'Lere

Last edited by Kosmos : 03-17-2005 at 12:13 PM.
Reply With Quote
  #2  
Unread 03-18-2005, 12:38 AM
Kosmos's Avatar
Kosmos Kosmos is offline
A Griffon
Interface Author - Click to view interfaces
 
Join Date: Dec 2004
Server: Lucan DLere
Posts: 581
Default Hm...

No Ideas ehh?

Bummer!!!
__________________
Kosmos
Qeynos Ranger (Retired)
Lucan D'Lere
Reply With Quote
  #3  
Unread 03-18-2005, 10:06 AM
Zonx's Avatar
Zonx Zonx is offline
A Green Troll
This person is a EQ2Map developer.
Featured
 
Join Date: Dec 2004
Server: Blackburrow
Posts: 2,221
Default

I'd try using HoverIn events to set LocalTooltip to various properties to see if you can find one holding the index number.

Even if you do find it, I don't think you'll be able to drop it in as the argument in a slash command. We haven't found any way to concatinate strings
Reply With Quote
  #4  
Unread 03-19-2005, 03:26 AM
C0d3M0nk3y C0d3M0nk3y is offline
A Brown Bear
 
Join Date: Mar 2005
Server: Everfrost
Posts: 9
Default

Have you tried adding a data container to each window to soak up the index number for what spell is in that window. then having the cancel button retrieve that data to cancel the correct spell that is in that maintained slot ?
the data container should update with whater is in that slot when a new spell is casted.

so the progression would go something liek this:
Quote:
player logs in with 3 spells in the maintianed window
spell #1 { magi shielding } with index of 1.0 slot=1 container value = 1.0
spell #2 { vivid seal } with index of 2.0 in slot 2 container value = 2.0
spell #3 {gift of the magi} with index of 3.0 in slot 3 container value = 3.0
K so player decides that vivd seal expores and the caster recasts's it .
spell #4 { vivid seal} with index of 4.0 in slot 3 container=4.0 now since canceled the spell and the spell in slot 3 indexs up to slot 2 with a container value of 3.0
K so now we set the an OnMouseOver event to update the button with the correct index number to cancel whe pressed. this should work in thoery not quite sure that the ui will allow it to be done.
Reply With Quote
  #5  
Unread 03-19-2005, 09:25 AM
Kosmos's Avatar
Kosmos Kosmos is offline
A Griffon
Interface Author - Click to view interfaces
 
Join Date: Dec 2004
Server: Lucan DLere
Posts: 581
Default

That's an idea! I'll dink with this probably some more next time I get a chance. Schedule is looking pretty busy for me though.
I know the filter for these slots is set to only update visibility so maybe if i set the filters to all, I wouldn't even need the data container.
I've not played with the dynamic data stuff at all yet.
__________________
Kosmos
Qeynos Ranger (Retired)
Lucan D'Lere
Reply With Quote
  #6  
Unread 03-19-2005, 02:45 PM
Kosmos's Avatar
Kosmos Kosmos is offline
A Griffon
Interface Author - Click to view interfaces
 
Join Date: Dec 2004
Server: Lucan DLere
Posts: 581
Default

So why doesn't this work?


Quote:
OnPress="cancel_maintained=/Gamedata.Spells.Maintained_1 cancel_maintained=/Gamedata.Spells.Maintained_1"
Attached Files
File Type: xml eq2ui_mainhud_maintained.xml (14.9 KB, 392 views)
__________________
Kosmos
Qeynos Ranger (Retired)
Lucan D'Lere
Reply With Quote
  #7  
Unread 03-20-2005, 07:25 AM
Zonx's Avatar
Zonx Zonx is offline
A Green Troll
This person is a EQ2Map developer.
Featured
 
Join Date: Dec 2004
Server: Blackburrow
Posts: 2,221
Default

Because its not substituting /GameData.Spells.Maintained_1 with the variable value. It sees the slash command and reads the entire thing as a string without translating the variable.

Thus my comment about concatination. So far there's no way to pass both a variable and a string, 2 variables as separate entities, or 2 strings to a single property.

You can make foo = "sometext". Evals as sometext

You can make foo = the value of /GameData.Spells.Maintained_1. Evals as number

You can't make foo = "sometext" + the value of /GameData.Spells.Maintained_1. Evals as sometext

foo = "sometext/GameData.Spells.Maintained_1" evals as sometext/GameData.Spells.Maintained_1

foo = "sometext" + "smoemoretext" evals as sometext

For similar reasons, its impossible to do some math to derive 2 numebrs and pass them to a size or location property as X and Y.
Reply With Quote
  #8  
Unread 03-20-2005, 11:07 AM
Kosmos's Avatar
Kosmos Kosmos is offline
A Griffon
Interface Author - Click to view interfaces
 
Join Date: Dec 2004
Server: Lucan DLere
Posts: 581
Default

Well Poop!

So the only way I could get this mod to work consistently is to be able to some how track the index number of the spells, and as far I can tell that's just about impossible, and even if it was possible it would be way too much dang work!
__________________
Kosmos
Qeynos Ranger (Retired)
Lucan D'Lere

Last edited by Kosmos : 03-20-2005 at 11:15 AM.
Reply With Quote
  #9  
Unread 03-20-2005, 11:16 AM
ger's Avatar
ger ger is offline
Steward of the Faithful
This person is a EQ2Map developer.
Interface Author - Click to view interfaces
 
Join Date: Nov 2004
Server: Antonia Bayle
Posts: 580
Default

Quote:
Originally Posted by Kosmos
Well Poop!

So the only way I could get this mod to work consistently is to be able to some how track the index number of the spells, and as far I can tell that's just about impossible, and even if it was possible it would be way too much dang work!
That about sums it up. Sorry.
__________________
Reply With Quote
  #10  
Unread 03-20-2005, 11:18 AM
SOE_Bobble SOE_Bobble is offline
EQII Developer
Yes this person is from Daybreak!
 
Join Date: Aug 2004
Posts: 82
Default Add it to the wish list

Sometimes when you run out of options, the best plan of attack is to add your request to the wish list.

It seems like a reasonable things to want to be able to cancel a maintained spell by index.

MrBobble
Reply With Quote
  #11  
Unread 03-20-2005, 01:05 PM
Laffs's Avatar
Laffs Laffs is offline
A Griffon
Interface Author - Click to view interfaces
 
Join Date: Dec 2004
Server: Runnyeye
Posts: 1,404
Default

Quote:
Originally Posted by SOE_Bobble
Sometimes when you run out of options, the best plan of attack is to add your request to the wish list.

It seems like a reasonable things to want to be able to cancel a maintained spell by index.

MrBobble
Kool, things looking a bit more hopefull now

Maybe all the time spent wont be in vein afterall
__________________
Laffs UI Mods
I can only please one person per day. Today is not your day. Tomorrow doesn't look to good either !
(Wicann on Runnyeye)
Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

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 06:40 PM.


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