Bug #1181
Added by Kannkor about 10 years ago.
Updated about 10 years ago.
Description
Here is a complete list of what I have so far (including the ones you're aware of):
- echo ${EQ2.ServerName} returns garbage
- EQ2_onQuestUpdate
- EQ2UIPage[ProxyActor,Conversation].Child[composite,replies].Child[button,3]:LeftClick doesn't work
- To test: In a GH, hail the guild strategist "Strategist", he will give you 3 options. The above should click the 3rd option, it currently does nothing at all.
- Likewise, echo ${EQ2UIPage[ProxyActor,Conversation].Child[composite,replies].Child[button,1].Label} should give you the text of the button. It is currently returning NULL.
- Someone had this crash. That's all the info I have on it. http://pastebin.com/z01Y5EGf
- ${EQ2DataSourceContainer[GameData].GetDynamicData[Stats.Primary_Delay].Label}
- is returning nothing.
- echo ${EQ2DataSourceContainer[GameData].GetDynamicData[Stats.Primary_Delay].Label} also returns nothing.
- Just another random sample from Stats I picked.
- Not sure if I'd count this as a bug. I actually did it by accident. echo ${EQ2DataSourceContainer[GameData].GetDynamicData[Self.TimeSinceRangedAutoAttack].ShortLabel}
- returns garbage, but it's correctly used (and works correctly as): ${EQ2DataSourceContainer[GameData].GetDynamicData[Self.TimeSinceRangedAutoAttack].Percent}
- Free to play window: ${EQ2UIPage[Popup,Upsell].Child[Page,Upsell].Child[Button,1].Label} is returning NULL
- It's possible this window changed and isn't called that anymore, I'll test again once the DynamicData is all returning properly. Just noting this here as something to test.
- Status changed from New to In Progress
- Assignee set to Amadeus
- Priority changed from Normal to High
I just updated the test version to 0018. Here are the changes related to your report:
- Fixed
- In Progress
- Fixed
- Will look at later
- This part of how EQ2 does things has changed quite a bit. The "quick answer" was not obvious even after looking for about 30 minutes -- so I'll really have to dig into the code to see how to recreate what we had going on before. FOR NOW, I need for you to produce a list of the stats that you *really* need. I can probably make them available other ways (like I used to before I had you use the GameData. *ALSO*, I would prefer that everyone use ${Me.GetGameData[]} from now on instead of ..GetDynamicData[] from the EQ2UIElement class. I will probably remove the GetDynamicData member very soon unless someone dicovers something that doesn't work with Me.GetGameData. (Me.GetGameData does return an EQ2UIElement type just like GetDynamicData does ...it just seems more reliable and easier for me to update.)
- Will look at later
- Test this now that I fixed No. 3
Just to confirm, #1, 3 and 7 are fixed.
#5: I tried to convert:
${EQ2DataSourceContainer[GameData].GetDynamicData[Stats.Primary_Delay].ShortLabel}
To:
${Me.GetGameData[Stats.Primary_Delay].ShortLabel}
I tried .Label also, and both return a blank string. It should return the actual delay of your primary weapon. If you're in-game, hit C to bring up the character window, on the far right side, scroll down to the category 'Autoatack', then it's Primary Weapon, Delay. Mine for example is 2.7.
Playing with various GetGameData.
echo ${Me.GetGameData[Stats.Strength].ShortLabel} (and .Label) both return blank.
** EDIT - Take the below with a bit of a grain of salt. I just realized the stat 'Defense' isn't visable in the UI anywhere I can find. When I used a different stat, such as Strength that IS visible, I just got a blank return. Defense is definitely a stat you can get in-game (on gear etc). **
echo ${Me.GetGameData[Stats.Defense].Label} gave me this crash: http://pastebin.com/1u9WYnng
Here is the list of the various getgamedata options:
C:\Games\Everquest 2\UI\Default\eq2ui_gamedata.xml
When I did .ShortLabel I got this (just a standard eq2 client has stopped working crash): http://pastebin.com/CgsnjX18
I wrote about No. 5 that it has changed and that it wasn't fixed -- I'm not even sure if it is fixable, it could be forever nerfed. That's why I said that I might need a list of the stats that you REALLY need for adding some other way.
ahh okay. I thought you meant the container wouldn't work, but the Me.GetGameData would.
I'll start making a list. I'll get you a short list quick, with a longer list to come.. since I assume "everything" isn't realistic? :)
GameData request
Note: It seems that all of the .Percents are working properly. I've listed them all here if you plan on moving away from DynamicData.
(type) (previously used)
- (string) (ShortLabel) UIState.Extended.SubscriptionLevel
- (string) (ShortLabel) Spells.Casting
- This returns the spell name you are casting. Vs ${Me.CastingSpell} returns true/false if you are casting.
- (float) (ShortLabel) Stats.Ranged_Delay
- (float) (ShortLabel) Stats.Melee_Delay
- (string) (ShortLabel) Mercenary.Name
- (float) (ShortLabel) Pet.ActualHealth
- Note: This actually returns a string currently. IE: "86%" (including the percent sign). If you want to strip the percent sign that would be great and return a float. Otherwise return a string.
- (int?) (ShortLabel) General.Ping
- I believe this just returns a numerical value, but it could be a string. It should just be your current ping.
- (string) (ShortLabel) Target.Casting
- Spell name of what the target is casting
- (string) (ShortLabel) ImpliedTarget.Casting
- Spell name of what the implied target is casting
- (float) (ShortLabel) Stats.Crit_Chance
- (int) (ShortLabel) Self.SavageryLevel
- (int) (ShortLabel) Self.Savagery
Here is the short list real quick.
0019 is going live soon. It fixes No. 2 and also fixes actor.Class
The GameData (DynamicData) business is still a work in progress and will take more time.
- Status changed from In Progress to Closed
I actually believe that 0023 should fix all of the GameData things to their functionality before the patch. We all got lucky and I finally figured it out ...simple, but very tricky to figure out (I only got it so quick because I had dealt with it while working on Vanguard.)
I'm going to close this issue for now. Create a new one with any new bugs or if there is anything new with DynamicData that isn't working as it should (or might be working 'differently'.
Also, I only tested with Me.GetGameData (which is what I would suggest eveyone use when at all humanly possible) ..I'd really like to remove the other way of getting DynamicData unless someone sees a real reason not to.
September 28, 2014 -- By Amadeus
[20140923.0024]
* The 'Label' and 'ShortLabel' MEMBERS of the EQ2UIElement datatype will now return the same value
* Added new MEMBER to the 'EQ2UIElement' datatype:
1. Tooltip (string)
Also available in: Atom
PDF