ESOUI

ESOUI (https://www.esoui.com/forums/index.php)
-   Tutorials & Other Helpful Info (https://www.esoui.com/forums/forumdisplay.php?f=172)
-   -   1.6 update (https://www.esoui.com/forums/showthread.php?t=4235)

Ayantir 01/26/15 10:47 AM

1.6 update
 
1 Attachment(s)
Hi devs,

1.6 is planned to be pushed on PTS tomorrow.

So since we are not very .. organized for patchs. it would be cool to regroup all data somewhere.. here? With the most useful data you'll like to see.



discuss and good debug to everyone!

Baertram 01/26/15 09:54 PM

Is there any overview what will change with each update regarding the source codes/existing functions etc. so we can prepare something in our addons for the next update?

Because a few months ago they had changed all the ItemLink and ItemId stuff and every second addon crashed :(

Any chance we can see now already what will be changed in detail so we can react?

Randactyl 01/27/15 01:24 AM

Quote:

Originally Posted by Baertram (Post 18406)
Is there any overview what will change with each update regarding the source codes/existing functions etc. so we can prepare something in our addons for the next update?

Because a few months ago they had changed all the ItemLink and ItemId stuff and every second addon crashed :(

Any chance we can see now already what will be changed in detail so we can react?

Sometimes they release a text file of the new API version. Either way, I'll be dumping the source tomorrow after the PTS goes up.

Garkin 01/27/15 10:51 AM

Patch notes 1.6
 
http://forums.elderscrollsonline.com...tch-notes-v1-6

joshmiller83 01/27/15 02:06 PM

Update 6 API Patch Notes & Change Log (PTS)
 
http://forums.elderscrollsonline.com...change-log-pts

timidobserver 01/27/15 03:39 PM

I am hoping that an author that isn't going anywhere soon puts together an addon that will save champion point builds.

ClearPendingChampionPoints
AddPendingChampionPoints
SpendPendingChampionPoints
These 3 functions should/might make it possible?

Garkin 01/27/15 05:21 PM

EsoUI-1.6-PTS.zip (source w/o .dds files)

Randactyl 01/28/15 12:24 AM

Quote:

Originally Posted by timidobserver (Post 18421)
I am hoping that an author that isn't going anywhere soon puts together an addon that will save champion point builds.

ClearPendingChampionPoints
AddPendingChampionPoints
SpendPendingChampionPoints
These 3 functions should/might make it possible?

That is an interesting thought.

merlight 01/28/15 04:11 AM

Quote:

Originally Posted by Ayantir (Post 18401)

I used these a lot when I started. But it's more convenient for me to have all docs and dumps stored locally. Recently I checked the API page and there was a huge list of non-API functions listed. In the past when I was looking for something, say campaign-related functions, I'd search for "campaign" on the page - now I'd have to skip over ~50 UI handlers providing zero information, not what I want, or even expect... And there's hardly any information that could be added to these handlers, save for a link to source, and for that I'd search source dump, not wiki.


Quote:

Originally Posted by ESOUIDocumentationP6.txt
IsItemLinkStackable
GetItemLinkStacks

Nice, I will finally have an "auto-loot more of what I already have" option ;)

Ayantir 01/28/15 04:28 AM

Quote:

Originally Posted by merlight (Post 18434)
I used these a lot when I started. But it's more convenient for me to have all docs and dumps stored locally. Recently I checked the API page and there was a huge list of non-API functions listed. In the past when I was looking for something, say campaign-related functions, I'd search for "campaign" on the page - now I'd have to skip over ~50 UI handlers providing zero information, not what I want, or even expect... And there's hardly any information that could be added to these handlers, save for a link to source, and for that I'd search source dump, not wiki.

I agree, it's quicker to search with windows search any function when you're a bit confirmed into the code, look at the arguments and use it. but when you start, those pages need to be exhaustives, or we won't get new devs :/

Garkin 01/28/15 10:15 AM

  • There are changes in itemIDs for provisioning items, for example:
    Code:

    |H1:item:34305:25:1:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0|h|h
    Live server:
    Guar Eggs
    PTS:
    Pumpkins

  • Item links has one more value in data (stolen)
    Old link: |H0:item:16426:1:50:0:0:0:0:0:0:0:0:0:0:0:0:3:0:0:0:0|h|h
    New link: |H0:item:16426:1:50:0:0:0:0:0:0:0:0:0:0:0:0:3:0:0:0:0:0|h|h

  • All cities which have added Outlaws Refugee are now slightly different. If you have coordinates for city maps, you will need to recheck them. (Vulkhel Guard, Mournhold, ...)

  • There is a change in WorldMap tooltip creators, tooltips doesn't work because key "tooltip" now contains mumeric mode instead of tooltip control. I.e. in your creator table change "tooltip = InformationTooltip" to "tooltip = 1"

    It used to be table with the following keys:
    Code:

    creator =  function(pin) that creates tooltip - or I should say function that will be called when mouse is over the pin, it does not need to create tooltip.
    tooltip = tooltip control you want to use.
    hasTooltip = function(pin) which returns true/false to enable/disable tooltip.

    Now it has the following keys:
    Code:

    creator = the same function as above
    tooltip = is now number 1-4, one of this table:
        local TOOLTIP_MODE = {
            INFORMATION = 1,
            KEEP = 2,
            MAP_LOCATION = 3,
            IMPERIAL_CITY = 4,
        }
    hasTooltip = the same function as above
    gamepadCategory = (nilable) string
    gamepadCategoryId = (nilable) number, right now it uses one of:
        local GAMEPAD_PIN_ORDERS = {
            DESTINATIONS = 10,
            AVA_KEEP = 20,
            AVA_OUTPOST = 21,
            AVA_RESOURCE = 22,
            AVA_GATE = 23,
            AVA_ARTIFACT = 24,
            AVA_IMPERIAL_CITY = 25,
            AVA_FORWARD_CAMP = 26,
            CRAFTING = 30,
            QUESTS = 40,
            PLAYERS = 50,
        }
    gamepadCategoryIcon = (nilable) texture path
    gamepadEntryName = (nilable) string
    gamepadSpacing = (nilable) boolean

  • There are 3 new fonts:
    "EsoUI/Common/Fonts/FTN47.otf"
    "EsoUI/Common/Fonts/FTN57.otf"
    "EsoUi/Common/Fonts/FTN87.otf"

  • ZO_FadingControlBuffer:New(control, maxDisplayedLines, fadeAnimationName, translateAnimationName, anchor) now expects ZO_Anchor object instead of anchor point.
    And if you are hooking setup function for templates in this object, it is now called "setup" instead of "setupFunction".

  • There is a new link type:
    COLLECTIBLE_LINK_TYPE = "collectible"

  • All critters have now 9 HP instead of 1 HP. If you were detecting critters using the max HP, you might want to change it.

Sasky 01/28/15 07:40 PM

Quote:

Originally Posted by timidobserver (Post 18421)
I am hoping that an author that isn't going anywhere soon puts together an addon that will save champion point builds.

ClearPendingChampionPoints
AddPendingChampionPoints
SpendPendingChampionPoints
These 3 functions should/might make it possible?

Looked at it a bit. It's easy to get a dump of currently spent points with something like:
Lua Code:
  1. local function storePoints()
  2.     local out = {}
  3.     for i = 1, GetNumChampionDisciplines() do
  4.         out[i] = {}
  5.         for j = 1, GetNumChampionDisciplineSkills(i) do
  6.             out[i][j] = GetNumPointsSpentOnChampionSkill(i, j)
  7.         end
  8.     end
  9.     return out
  10. end

However, I was unable to get the map to update with those functions. Not sure if I was using it wrong or if it's broken. I was able to directly update the controls on the ui with something like this:
Lua Code:
  1. function AddPendingPoints(i,j,num)
  2.     CHAMPION_PERKS.constellations[i]:GetStars()[j].pendingPoints = num
  3. end

Another thing of interest with the champion system is it looks like they have a console UI prepped for it. You can switch over with CHAMPION_PERKS:ApplyGamepadStyle() though it's mainly just font changes.

timidobserver 01/28/15 09:13 PM

Quote:

Originally Posted by Sasky (Post 18465)
Looked at it a bit. It's easy to get a dump of currently spent points with something like:
Lua Code:
  1. local function storePoints()
  2.     local out = {}
  3.     for i = 1, GetNumChampionDisciplines() do
  4.         out[i] = {}
  5.         for j = 1, GetNumChampionDisciplineSkills(i) do
  6.             out[i][j] = GetNumPointsSpentOnChampionSkill(i, j)
  7.         end
  8.     end
  9.     return out
  10. end

However, I was unable to get the map to update with those functions. Not sure if I was using it wrong or if it's broken. I was able to directly update the controls on the ui with something like this:
Lua Code:
  1. function AddPendingPoints(i,j,num)
  2.     CHAMPION_PERKS.constellations[i]:GetStars()[j].pendingPoints = num
  3. end

Another thing of interest with the champion system is it looks like they have a console UI prepped for it. You can switch over with CHAMPION_PERKS:ApplyGamepadStyle() though it's mainly just font changes.

I don't know enough about it to discuss it intelligently, but you should go here (http://www.esoui.com/forums/showthread.php?t=4243) and ask ZOS. They are asking for feedback about the API changes in that thread. It would be nice to know if you should be able to update the map using that function.

Ayantir 01/29/15 12:31 PM

New functions

Warning: Spoiler


Removed functions

Warning: Spoiler


New Events

Warning: Spoiler


Removed Events

Warning: Spoiler


New Constants

Warning: Spoiler


Removed Constants

Warning: Spoiler


New Userdata

Warning: Spoiler



Removed Userdata

Warning: Spoiler


New Tables

Warning: Spoiler


Removed Tables

Warning: Spoiler


Added Private / Protected function

Warning: Spoiler


Removed Private / Protected function

Warning: Spoiler

Ayantir 01/29/15 12:31 PM

ok, feel free to ask other dumps. I think achievements, sounds can be useful, other stuff ?..

Don't forget, ZOS started a topic on eso ui to get some feedback : http://www.esoui.com/forums/showthread.php?t=4243

Garkin 01/29/15 12:57 PM

New constant "bonusLabel = 0" is just variable leaking to global. Tha same goes for new table "trainData":

Lua Code:
  1. function ZO_Stable_Gamepad:SetupEntry(control, data, selected, selectedDuringRebuild, enabled, activated)
  2.     data.isSkillTrainable = data.data.isSkillTrainable
  3.     ZO_SharedGamepadEntry_OnSetup(control, data, selected, selectedDuringRebuild, enabled, activated)
  4.  
  5.     trainData = data.data
  6.     ZO_StableTrainingRow_Setup(control, trainData.trainingType)
  7.     bonusLabel = trainData.bonus
  8.     if trainData.trainingType == RIDING_TRAIN_SPEED then
  9.         bonusLabel = zo_strformat(SI_MOUNT_ATTRIBUTE_SPEED_FORMAT, trainData.bonus)
  10.     end
  11.     control.value:SetText(bonusLabel)
  12.     ZO_StatusBar_SmoothTransition(control.bar, trainData.bonus, trainData.maxBonus, FORCE_VALUE)
  13. end

Tables "items" and "usedFilterTypes" are leaking from here:
Lua Code:
  1. local function GetBuyItems()
  2.  
  3.     items = {}
  4.     usedFilterTypes = {}
  5.  
  6.     items, usedFilterTypes = ZO_StoreManager_GetStoreItems()
  7.  
  8.     --- Gamepad versions have extra data / differently named values in templates
  9.     for i, itemData in ipairs(items) do
  10.         itemData.pressedIcon = itemData.icon
  11.         itemData.stackCount = itemData.stack
  12.         itemData.sellPrice = itemData.price
  13.         if itemData.sellPrice == 0 then
  14.             itemData.sellPrice = itemData.stackBuyPriceCurrency1
  15.         end
  16.         itemData.selectedNameColor = ZO_SELECTED_TEXT
  17.         itemData.unselectedNameColor = ZO_DISABLED_TEXT
  18.         itemData.name = zo_strformat(SI_TOOLTIP_ITEM_NAME, itemData.name)
  19.  
  20.         local itemLink = GetStoreItemLink(itemData.slotIndex)
  21.  
  22.         itemData.itemType = GetItemLinkItemType(itemLink)
  23.         itemData.equipType = GetItemLinkEquipType(itemLink)
  24.  
  25.         local IS_STORE_ITEM = true
  26.         itemData.storeGroup = GetItemStoreGroup(itemData, IS_STORE_ITEM, itemLink)
  27.         itemData.bestGamepadItemCategoryName = GetBestItemCategoryDescription(itemData)
  28.     end
  29.  
  30.     return items
  31. end

I'm not sure about table "color", I have it in my globals dump too, but I didn't find it in source code.

Ayantir 01/29/15 01:00 PM

I'm not responsible if ZOS devs didn't check their code properly ! :D

Garkin 01/29/15 02:13 PM

Dump of abilityIds with en/de/fr names (if anyone is interested): AbilityList.zip

something like:
Lua Code:
  1. [61493] =
  2. {
  3.     ["en"] = "Inevitable Detonation",
  4.     ["fr"] = "Détonation imparable",
  5.     ["de"] = "unvermeidbare Detonation^f",
  6. },

ZOS_ChipHilseberg 01/29/15 02:22 PM

Quote:

Originally Posted by Garkin (Post 18491)
New constant "bonusLabel = 0" is just variable leaking to global. Tha same goes for new table "trainData".

They have been made local internally and the appropriate parties have been shamed.

Garkin 01/29/15 04:00 PM

There are changes in Crystal Fragments proc. Tracking should be easier now.

If you gain proc, it is reported in event EVENT_EFFECT_CHANGED. It means that there is a proc icon on the character page. Arguments:
changeType = some effect result (EFFECT_RESULT_GAINED, EFFECT_RESULT_FADED, ...)
effectSlot = variable number
effectName = "Crystal Fragments Passive" (DE = "Kristallfragmente^p", FR = "Fragments de cristal passifs^pm")
unitTag = "player"
beginTime = time (if EFFECT_RESULT_FADED then 0)
endTime = time (the same as beginTime)
stackCount = 0
iconName = "/esoui/art/icons/ability_mage_065.dds"
buffType = "" --empty string
effectType = BUFF_EFFECT_TYPE_BUFF
abilityType = ABILITY_TYPE_REGISTERTRIGGER
statusEffectType = STATUS_EFFECT_TYPE_NONE


Additionally it will trigger event EVENT_UNIT_ATTRIBUTE_VISUAL_ADDED (or REMOVED / UPDATED). It means that your health bar will be glowing when proc is active. Arguments:
unitTag = "player"
unitAttributeVisual = ATTRIBUTE_VISUAL_INCREASED_STAT
statType = STAT_POWER
attributeType = ATTRIBUTE_HEALTH
powerType = POWERTYPE_HEALTH
value = 200
maxValue = 200

Garkin 02/03/15 04:58 PM

Pts 1.6.0 -> 1.6.1
 
UI source code: EsoUI-1.6.1-PTS.zip
Patch notes: http://forums.elderscrollsonline.com/discussion/149987

Most of the changes between 1.6.0 and 1.6.1 were in gamepad portion. As I have never used gamepad code, I will not list any changes related to gamepad in here.

Big change is in AlertText, now it's not just a few global functions, there are two separate objects for keyboard (ALERT_MESSAGES) and gamepad (ALERT_MESSAGES_GAMEPAD) and new ALERT_EVENT_MANAGER object.

Interesting could be new global constant for currency type "crowns":
Code:

CURRENCY_TYPE_CROWNS = 7
and of course new name, texture and color for this currency type:
Code:

name = GetString(SI_CURRENCY_CROWN)
texture = "EsoUI/Art/currency/currency_crown.dds"
color = ZO_ColorDef:New( GetInterfaceColor(INTERFACE_COLOR_TYPE_CURRENCY, CURRENCY_COLOR_GOLD) )


There is a new keybinding for player emotes:
XML Code:
  1. <Action name="UI_SHORTCUT_EMOTES_QUICK_SLOTS">
  2.     <Down>PLAYER_EMOTE_QUICKSLOT:StartInteraction()</Down>
  3.     <Up>PLAYER_EMOTE_QUICKSLOT:StopInteraction()</Up>
  4. </Action>


New global constant:
Code:

ZO_NO_TEXTURE_FILE = "/esoui/art/icons/icon_missing.dds"

After months of using colored pins (originaly introduced in Shinni's HarvestMap) ZOS added their own method of colorization. Pin layout has new optional key "tint" which can contain either ZO_ColorDef object or function which returns this object. Hooks and workarounds used in my LibMapPins are no longer needed.


There is a new option to enable/disable compass pins for quest givers.


Removed global constant ITEMFILTERTYPE_MOUNT.


function GetStoreEntryInfo has a new return value - entryType:
Lua Code:
  1. local icon, name, stack, price, sellPrice, meetsRequirementsToBuy, meetsRequirementsToEquip, quality, questNameColor, currencyType1, currencyId1, currencyQuantity1, currencyIcon1, currencyName1, currencyType2, currencyId2, currencyQuantity2, currencyIcon2, currencyName2, entryType = GetStoreEntryInfo(entryIndex)


I will make exception and list one of gamepad objects - there is new ingame "LootDrop" called LOOT_HISTORY_GAMEPAD.

Garkin 02/03/15 05:04 PM

Quote:

Originally Posted by ZOS_ChipHilseberg (Post 18495)
They have been made local internally and the appropriate parties have been shamed.

New code, new leaking variables:

manager:
Lua Code:
  1. function ZO_AlertText_Manager:New()
  2.     manager = ZO_Object.New(self)
  3.     manager:Initialize()
  4.     return manager
  5. end
  6.  
  7. function ZO_AlertText_Base:New(...)
  8.     manager = ZO_Object.New(self)
  9.     manager:Initialize(...)
  10.     return manager
  11. end

alertData:
Lua Code:
  1. function ZO_AlertText_Keyboard:InternalPerformAlert(category, soundId, message)
  2.     local color = self:GetAlertColor(category)
  3.  
  4.     alertData = {
  5.         lines = {
  6.             {text = message, category = category, color = color, soundId = soundId}
  7.         }
  8.     }
  9.  
  10.     self.alerts:AddEntry(DEFAULT_KEYBOARD_ALERT_TEMPLATE, alertData)
  11. end

emoteSlashName, emoteCategory, emoteId:
Lua Code:
  1. function ZO_PlayerEmoteManager:InitializeEmoteList()
  2.     self.emoteList = {}
  3.     self.emoteCategories = {}
  4.     self.slottedEmoteList = {}
  5.  
  6.     self:InitializeSlottedEmotes()
  7.  
  8.     for emoteIndex = 1, GetNumEmotes() do
  9.         emoteSlashName, emoteCategory, emoteId = GetEmoteInfo(emoteIndex)
  10.  
  11.     --rest of the code

Ayantir 02/10/15 04:16 PM

1.6.2 is now on PTS.
It will be last testing version before 1.6 goes live 23/02 for NA and 24/02 for EU server.

1.6.2 Source Code Download

1.6.2 Patch Notes

Garkin 02/10/15 04:28 PM

Pts 1.6.1 -> 1.6.2
 
Source: EsoUI-1.6.2-PTS.zip
Patch notes: http://forums.elderscrollsonline.com/discussion/151058/

Most of the changes are because of gamepad support and changing styles between keyboard and gamepad prefered modes.

By the way leaking variables listed in previous my post wasn't fixed.

QuadroTony 02/10/15 04:41 PM

1.6.2 is now on PTS.
It will be last testing version before 1.6 goes live 23/02 for NA and 24/02 for EU server.

Harven 02/14/15 07:25 PM

Hey!
I don't know if you noticed, but they are working on chat bubbles. Here are some screens:




Garkin 02/14/15 07:29 PM

Quote:

Originally Posted by Harven (Post 18830)
Hey!
I don't know if you noticed, but they are working on chat bubbles. Here are some screens:

Do you know that this is in game since October when Update 5 went to PTS? ;)
http://forums.elderscrollsonline.com/discussion/135688/

Harven 02/14/15 07:44 PM

Gaaaa! :eek: I didn't know that... or maybe I did but forgot about it. Anyways, nice feature ;)

joshmiller83 02/14/15 09:30 PM

Quote:

Originally Posted by QuadroTony (Post 18786)
1.6.2 is now on PTS.
It will be last testing version before 1.6 goes live 23/02 for NA and 24/02 for EU server.

Actually this is wrong per ZOS on Livestream. They are putting 1.63 on the PTS next week and then Releasing to Live the following/last week of February.

Garkin 02/18/15 12:41 AM

Pts 1.6.3
 
Source: EsoUI-1.6.3-PTS.zip
Patch notes: http://forums.elderscrollsonline.com/discussion/152188/

Harven 02/18/15 03:36 AM

Hey,
Here's a list of differences between 1.6.2 and 1.6.3 globals:
  • New Functions:
    Warning: Spoiler
  • Removed Functions:
    Warning: Spoiler
  • New Protected Functions:
    Warning: Spoiler
  • No Removed Protected Functions:
  • New Constants:
    Warning: Spoiler
  • Removed Constants:
    Warning: Spoiler
  • New Tables:
    Warning: Spoiler
  • Removed Tables:
    Warning: Spoiler
  • New Userdata:
    Warning: Spoiler
  • Removed Userdata:
    Warning: Spoiler

sirinsidiator 02/18/15 01:06 PM

Quote:

SaveCachedSettings
is this what I hope it is?

ZOS_ChipHilseberg 02/18/15 01:10 PM

Quote:

Originally Posted by sirinsidiator (Post 18876)
is this what I hope it is?

It's used for flushing out a couple settings that aren't updated immediately when the settings are set. So probably not =P.

Garkin 02/18/15 01:13 PM

Quote:

Originally Posted by sirinsidiator (Post 18876)
is this what I hope it is?

I didn't test it, however I believe it is not for saving saved variables, but just for console variables (CVars). It is used in this function:

Lua Code:
  1. function ZO_SharedOptions:SaveCachedClientSettings()
  2.     -- We only care about saving the cached settings ingame, so this function will be nil in pregame
  3.     if (SaveCachedSettings ~= nil) then
  4.         SaveCachedSettings()
  5.     end
  6. end

sirinsidiator 02/18/15 01:26 PM

Quote:

Originally Posted by ZOS_ChipHilseberg (Post 18877)
It's used for flushing out a couple settings that aren't updated immediately when the settings are set. So probably not =P.

So fast in crushing my dreams :(

joshmiller83 02/18/15 02:38 PM

Quote:

ADD_ON_MANAGER
Really? is this new? :)

Harven 02/19/15 03:08 AM

It's a new global variable. It isn't the AddOnManager which you can get by calling GetAddOnManager(), it's just the UI object.

Pre 1.6.3:
Lua Code:
  1. function ZO_MainMenuManager:Initialize(control)
  2.      local addOnManager = ZO_AddOnManager:New(true)

1.6.3:
Lua Code:
  1. function ZO_MainMenuManager:Initialize(control)
  2.      ADD_ON_MANAGER = ZO_AddOnManager:New(true)

Halja 02/19/15 05:25 PM

Quote:

Originally Posted by Harven (Post 18889)
It's a new global variable. It isn't the AddOnManager which you can get by calling GetAddOnManager(), it's just the UI object.

Pre 1.6.3:
Lua Code:
  1. function ZO_MainMenuManager:Initialize(control)
  2.      local addOnManager = ZO_AddOnManager:New(true)

1.6.3:
Lua Code:
  1. function ZO_MainMenuManager:Initialize(control)
  2.      ADD_ON_MANAGER = ZO_AddOnManager:New(true)


So, they renamed it and leaked it into the Global memory space....:eek: Or was the removal of local scope intentional?

Garkin 02/19/15 05:47 PM

Quote:

Originally Posted by Halja (Post 18904)
So, they renamed it and leaked it into the Global memory space....:eek: Or was the removal of local scope intentional?

It's intentional.

Quote:

Originally Posted by ZOS_ChipHilseberg (Post 18760)
These should be global before the live 1.6 patch launches as ADD_ON_MANAGER and CAMPAIGN_BROWSER. We also fixed the infinite loop with the meta-method but that may take a little longer.


Halja 02/20/15 08:18 AM

:cool: Now that looked a little closer, those are going to be handy they are global.
Thanks to Chip and the clarification Garkin.

QuadroTony 02/20/15 08:52 AM

- icon of friends online near chat dont fade like it must with all chat
- you canout out of cursore mode now by sinple movement keys like before, need to push cursore moe key again

Ayantir 02/21/15 11:37 AM

1.6.4 is actually pushed on pts. I'll do some tests then on it..

Harven 02/21/15 02:42 PM

Only a few changes in the _G:

New function: IsUnitReincarnating()
New table: MAIN_MENU_SINGLETON
  • New Userdata:
    Warning: Spoiler
  • Removed Userdata:
    Warning: Spoiler

SnowmanDK 02/25/15 05:03 PM

I guess there is no easy way to adjust offset on the maps that changed size?

sirinsidiator 02/26/15 01:04 AM

Quote:

Originally Posted by SnowmanDK (Post 19073)
I guess there is no easy way to adjust offset on the maps that changed size?

If you mean that you have map specific normalized coordinates, you could use my libGPS to convert the positions in 1.5 into world space and then back into map space in 1.6

SnowmanDK 02/26/15 09:11 AM

Quote:

Originally Posted by sirinsidiator (Post 19074)
If you mean that you have map specific normalized coordinates, you could use my libGPS to convert the positions in 1.5 into world space and then back into map space in 1.6

I just tried that, but it ends with the same coordinates again.
They changed the scale of the map, but it's essentially the same size as before.

sirinsidiator 02/26/15 11:51 AM

Quote:

Originally Posted by SnowmanDK (Post 19081)
I just tried that, but it ends with the same coordinates again.
They changed the scale of the map, but it's essentially the same size as before.

Which map are you trying it on? I'd like to see what is happening for myself. Maybe it is a special case that I haven't taken care of yet. Wouldn't be the first one.

SnowmanDK 02/26/15 01:40 PM

Quote:

Originally Posted by sirinsidiator (Post 19092)
Which map are you trying it on? I'd like to see what is happening for myself. Maybe it is a special case that I haven't taken care of yet. Wouldn't be the first one.

I tested it in Mournhold.
I have both, quests, fishing and achievement pins there, which are spot on in 1.5 but off by quite a bit in 1.6.

sirinsidiator 02/26/15 03:01 PM

Quote:

Originally Posted by SnowmanDK (Post 19099)
I tested it in Mournhold.
I have both, quests, fishing and achievement pins there, which are spot on in 1.5 but off by quite a bit in 1.6.

I just did a quick test.

Map Measurements:
Lua Code:
  1. /script d(LibStub("LibGPS2"):GetCurrentMapMeasurements())

1.5
Code:

offsetX = 0.75281221189101
offsetY = 0.49476541144842
scaleX = 0.028515951236211
scaleY = 0.028515842915819

1.6
Code:

offsetX = 0.74800803566511
offsetY = 0.49480485518186
scaleX = 0.033046741379245
scaleY = 0.033046682793227

The map in 1.6 has different measurements. You should not get the same coordinates.
I converted three custom waypoints and they are in the correct spots in 1.6.

In 1.5 I gathered the local and global coordinates with the following commands:
Lua Code:
  1. /script d(GetMapPlayerWaypoint())
  2. /script d(LibStub("LibGPS2"):LocalToGlobal(GetMapPlayerWaypoint()))

In 1.6 I then switched to the Tamriel map and called these to set the waypoint and get the new local coordinates:
Lua Code:
  1. /script PingMap(MAP_PIN_TYPE_PLAYER_WAYPOINT, MAP_TYPE_LOCATION_CENTERED, x, y)
  2. /script d(LibStub("LibGPS2"):GlobalToLocal(x, y))

Here are the coordinates that I got:
Waypoint 1
1.5
Code:

0.35308393836021
0.75185513496399

global
Code:

0.76288073625958
0.5162051943725

1.6
Code:

0.45005044291033
0.64757904218543

Waypoint 2
1.5
Code:

0.6543225646019
0.6530881524086

global
Code:

0.77147084223595
0.51338877061268

1.6
Code:

0.70998704433441
0.5623539686203

Waypoint 3
1.5
Code:

0.48518005013466
0.38889589905739

global
Code:

0.76664758254143
0.50585510581654

1.6
Code:

0.56403642892838
0.33438637852669


SnowmanDK 02/27/15 01:23 PM

Interesting... I'll take another look at it. Have to admit I got the data in another way. That might have been the reason why it didn't work :)

Quote:

Originally Posted by sirinsidiator (Post 19102)
I just did a quick test.

Map Measurements:
Lua Code:
  1. /script d(LibStub("LibGPS2"):GetCurrentMapMeasurements())

1.5
Code:

offsetX = 0.75281221189101
offsetY = 0.49476541144842
scaleX = 0.028515951236211
scaleY = 0.028515842915819

1.6
Code:

offsetX = 0.74800803566511
offsetY = 0.49480485518186
scaleX = 0.033046741379245
scaleY = 0.033046682793227

The map in 1.6 has different measurements. You should not get the same coordinates.
I converted three custom waypoints and they are in the correct spots in 1.6.

In 1.5 I gathered the local and global coordinates with the following commands:
Lua Code:
  1. /script d(GetMapPlayerWaypoint())
  2. /script d(LibStub("LibGPS2"):LocalToGlobal(GetMapPlayerWaypoint()))

In 1.6 I then switched to the Tamriel map and called these to set the waypoint and get the new local coordinates:
Lua Code:
  1. /script PingMap(MAP_PIN_TYPE_PLAYER_WAYPOINT, MAP_TYPE_LOCATION_CENTERED, x, y)
  2. /script d(LibStub("LibGPS2"):GlobalToLocal(x, y))

Here are the coordinates that I got:
Waypoint 1
1.5
Code:

0.35308393836021
0.75185513496399

global
Code:

0.76288073625958
0.5162051943725

1.6
Code:

0.45005044291033
0.64757904218543

Waypoint 2
1.5
Code:

0.6543225646019
0.6530881524086

global
Code:

0.77147084223595
0.51338877061268

1.6
Code:

0.70998704433441
0.5623539686203

Waypoint 3
1.5
Code:

0.48518005013466
0.38889589905739

global
Code:

0.76664758254143
0.50585510581654

1.6
Code:

0.56403642892838
0.33438637852669



Ayantir 02/28/15 10:58 PM

Little things I'll add in my Addons :

First.. versioning, we all know that Firefox 3.6 was better than IE6/7/8 and VLC stayed too long as a 0.x software. Are you using svn/git revs?

Plus we got a good anchor to link our addon versioning : ESO Updates
So for me, 0.1, 0.2, 0.10.1.a-2-r12 -> Justice-r1, Justice -r2, Justice-r3, ImperialCity-r1, etc.
It's also a great help to me because not all my addons got same original versioning.
We're a lot to handle an addon not originaly made by ourselves

As an exemple, the most downloaded addon Skyshard is at v1.7.8 and the most outdated popular addon, TreasureMaps (outdated since May 2014), is v1.95 ... - _ -

Agree or Not !

Then a little snippet of code I'll add inside my addons, especially if your addons is very downloaded :


Lua Code:
  1. function pChat.onPlayerActivated()
  2.    
  3.     pChat.outdatedWarning()
  4.     -- some code
  5.  
  6. end
  7.  
  8. function pChat.outdatedWarning()
  9.  
  10.     if GetAPIVersion() ~= "100011" then
  11.         if not pChat.opts.outdatedflag then
  12.             -- pChat.opts is my ZO_SavedVars
  13.             CHAT_SYSTEM:AddMessage("Hello, it's " .. pChat.name .. ". It seems that you have not updated this Addon since few times. Please consider visit www.esoui.com to update your addon, Thank you.")
  14.             pChat.opts.outdatedflag = true
  15.         end
  16.     else
  17.         pChat.opts.outdatedflag = false
  18.     end
  19.  
  20. end
  21.  
  22. EVENT_MANAGER:RegisterForEvent(pChat.name, EVENT_PLAYER_ACTIVATED, pChat.onPlayerActivated)

It will show a message to encourage user to update when 100012 will pop (~ 6 Months)
Then, I'll change the raw value to the new one, etc

merlight 03/01/15 06:08 AM

It's all about personal preference. I'd turn that warning off, if I was using pChat instead of pNames (APIVersion 100007 but still works fine). Having to turn similar warnings off in a multitude of add-ons... no thanks.

If I wanted to run only add-ons updated to the latest APIVersion, I'd un-uncheck [x] Allow out-dated add-ons option.

If I care to run the most recent versions available, I run auto-update regularly, simple as that. In fact I run a script that downloads and unpacks add-ons I have listed in a text file, but only installs those I marked for auto-install, and only after passing Lua syntax check.

Sasky 03/01/15 10:50 AM

Quote:

Originally Posted by Ayantir (Post 19136)
Little things I'll add in my Addons :

First.. versioning, we all know that Firefox 3.6 was better than IE6/7/8 and VLC stayed too long as a 0.x software. Are you using svn/git revs?

Plus we got a good anchor to link our addon versioning : ESO Updates
So for me, 0.1, 0.2, 0.10.1.a-2-r12 -> Justice-r1, Justice -r2, Justice-r3, ImperialCity-r1, etc.
It's also a great help to me because not all my addons got same original versioning.

The problem is text labels don't really help you for versioning.
If you really wanted it tied to ESO versions, you could do something like 1.6r1, 1.6r2, 1.6r3

As far as reminding people to update, just showing the API is out of date doesn't help. Minion or site favorites here do that much better and let you update it directly too. I'd also argue most people by now expect addon updates around ESO major versions, so a text reminder doesn't really add anything.

Besides, addons putting startup messages in chat is annoying. When only 1-2 do it, their messages can be seen fine. If you have 10, 20, 30+ addons all putting startup messages to chat you won't see anything.

Garkin 03/04/15 05:06 AM

Update 6 API Patch Notes & Change Log (LIVE)

EsoUI-1.6.5.zip

JordyMoos 03/06/15 05:19 PM

Quote:

Originally Posted by merlight (Post 18434)
I used these a lot when I started. But it's more convenient for me to have all docs and dumps stored locally. Recently I checked the API page and there was a huge list of non-API functions listed. In the past when I was looking for something, say campaign-related functions, I'd search for "campaign" on the page - now I'd have to skip over ~50 UI handlers providing zero information, not what I want, or even expect... And there's hardly any information that could be added to these handlers, save for a link to source, and for that I'd search source dump, not wiki.



Nice, I will finally have an "auto-loot more of what I already have" option ;)

How do you get all the docs and code locally?

Edit owh lol Garkin posted it

Garkin 03/09/15 09:31 AM

Patch Notes v1.6.6
EsoUI-1.6.6.zip

Garkin 03/13/15 02:38 PM

PTS Patch Notes v2.0 (even if it says 2.0, it's still Update 6 with API Version 100011)

EsoUI-2.0.0.zip

merlight 03/13/15 04:16 PM

Lol those marketing guys. 1.6 not cool enough I guess :D

Ayantir 03/15/15 08:39 PM

Heya, I've updated 1st topic and Wiki page
http://wiki.esoui.com/Globals

For a later usage :

-> Use Patch Notes TXT
-> Notepad++
-> Copy section h2. Global Variables -> next h2 to a new file
-> Search/Replace : h5. (with space)-> ===
-> Search/Replace : Regular expression : ^===(\w+) -> ===\1===
-> Search/Repalce : Regular expression : ^\* ([\w_]+) -> *[[Constant_Values\#\1|\1]]

done.

Ayantir 03/18/15 11:31 AM

http://wiki.esoui.com/Events has been updated :)


All times are GMT -6. The time now is 05:30 AM.

vBulletin © 2024, Jelsoft Enterprises Ltd
© 2014 - 2022 MMOUI