ESOUI

ESOUI (https://www.esoui.com/forums/index.php)
-   Wish List (https://www.esoui.com/forums/forumdisplay.php?f=177)
-   -   [implemented] skillLineId (https://www.esoui.com/forums/showthread.php?t=7109)

Ayantir 06/06/17 12:32 PM

[implemented] skillLineId
 
Hello,

Handling of skillLines is since the begenning of the game very hard to do.
With the dynamic attribution of almost all skillLines, it is even more hard to guess which skillLine is behind a skillLineIndex.

For now, to know which SkillLine is behind which skillType/skillLineIndex, I basically check the skillLineName.

If it meets, it's the good one but it require that I have all skillLineNames in every language.

I could do this also by checking how much abilities there is in a skillLine but with perpetual addition of skills, it is also painful.
ex: you added as #1 skill new ultimates in weapons, you dropped emperor skillline, you changed abilityId on *some* racials, you add dynamically skillLines in the World skillType, also depending on which language you started game (not reloadui) the tradeskill skilllines are not in same order (and yes, API is faked by C++ here).

And now with the addition of unlocked but undiscovered skillsLines, it's even more hard.

So.. Can we have a skillLineId please ?

Few interesting functions :
  • IsSkillLineIdUnlocked(skillLineId) = boolean isUnlocked
  • GetSkillLineIdIndices(skillLineId) = number:nilable SkillType skillType, number:nilable skillIndex
  • GetSkillLineInfo(number SkillType skillType, number skillIndex) Returns: string name, number rank, boolean discovered, number skillLineId

Thank you.

ZOS_ChipHilseberg 06/20/17 04:02 PM

Just to understand your desire, does IsSkillLineIdUnlocked return true when it exists in the skill list? Is it the same as looping over all the skill lines by index and trying to find a skill line that has the id in question?

ZOS_ChipHilseberg 06/20/17 04:10 PM

Also, the function that gets the skill line id requires a skill type as an argument. Do you need the skill type as a return from GetSkillLineIdIndices?

Rhyono 06/20/17 04:22 PM

I'm not sure if this directly applies, but one way of explaining his needs:
Unless it has changed, some abilities are in a different order for Japanese in Assault, so Assist Rapid Ride had to adjust for this.

So if you called (making up numbers) Skill line 4, ability 2, it could give you a different ability in English versus Japanese.

Something in the API (such as a fixed id for each ability) would allow calling things with pinpoint accuracy, rather than going "Ok, is the name X?" on each skill, to be compatible for that situation or in the event of an update that rearranges them.

Ayantir 06/21/17 04:33 AM

IsSkillLineIdUnlocked(skillLineId) = boolean isUnlocked
require a skillLineId and returns a bool..


GetSkillLineIdIndices(skillLineId) = number:nilable SkillType skillType, number:nilable skillIndex
require skilltype/skilllineindex and returns a number (the skilllineId)


GetSkillLineInfo(number SkillType skillType, number skillIndex) Returns: string name, number rank, boolean discovered, number skillLineId
is an existing func which will return an additionnal value (skilllineid)



Quote:

Just to understand your desire, does IsSkillLineIdUnlocked return true when it exists in the skill list? Is it the same as looping over all the skill lines by index and trying to find a skill line that has the id in question?
it'll return true when the skilltype/skillline index (let's say "Dark Brotherhood") is unlocked.

our issue is that as I said and Rhyono too, there is a lot of cases now where skillType/skilllinexIndex can be a lot of possibilities.

ZOS_ChipHilseberg 06/21/17 09:26 AM

I've exposed GetSkillLineIndicesFromSkillId and GetSkillLineIndicesFromSkillLineId. I've also added skillLineId as a return from GetSkillLineInfo. GetSkillLineIndicesFromSkillLineId will return the skillType of SKILL_TYPE_NONE when the player does not have the skill line (not undiscovered, when it is not even on the character).

Rhyono 06/21/17 10:08 AM

Quote:

Originally Posted by ZOS_ChipHilseberg (Post 31566)
GetSkillLineIndicesFromSkillLineId will return the skillType of SKILL_TYPE_NONE when the player does not have the skill line (not undiscovered, when it is not even on the character).

So I'm assuming an undiscovered 2h line will return normally, but SKILL_TYPE_NONE will be returned if you check for a NB line on a DK?


All times are GMT -6. The time now is 09:46 AM.

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