Maintenance for the week of January 6:
· [COMPLETE] NA megaservers for maintenance – January 8, 4:00AM EST (9:00 UTC) - 8:00AM EST (13:00 UTC)
· [COMPLETE] EU megaservers for maintenance – January 8, 9:00 UTC (4:00AM EST) - 13:00 UTC (8:00AM EST)

Zenimax, Restrict Your API!!!

  • Derra
    Derra
    ✭✭✭✭✭
    ✭✭✭✭✭
    Minno wrote: »
    Derra wrote: »
    Minno wrote: »

    And if I'm being honest, gankers are the counter to large zergs; their ability to engage secretly always then to get closer and tackle outnumbered teams. Having cast time abilities + stealth numbers counted via this addon = removal of gankers. Removal of gankers = increased zergs without consequence because sneak teams can also stifle reinforcements that aren't being careful.

    I think that is a misconception.

    The reason that you can´t see enemies is one of the top reasons for people tojoin the zerg (if they don´t want to stealth/gank themselves).

    If the only encounter you´ll ever get (because realisticly from my experience people only attack you from invisibility when they´re sure they´re winning - meaning they outnumber you) is multiple people attacking you from invisibility.

    What is the counter to that? Be invsible yourself or bring more people yourself. Thus a ganker or a zerger is born.
    Gankers are not the counters to zerging. They´re the reason for it.

    People Zerg because their build isn't tanky enough or they are trying to play with friends. Or a group they are fighting has too much communication that they require more numbers. I find those situations to be more often than those that Zerg because a few nightblades crushed them in stealth lol.

    People also Zerg because they are traveling to the nearest objective. They are not thinking "hey maybe I should I go somewhere else and wait for 6 hours because Derra thinks zergs suck". No, some of us don't have more than 2 hours to play every few days, and we are going to the objective that's closest. I'm not the only one that thinks this way, hence why you have fronts of players looking for fights.

    So then, in addition to the above, is an add-on that counts stealth and shows a cast time ability being cast not also unfairly impacting those of us that don't stealth? What if I wanted to use dark flare for my beginning burst rotation? Oh shoot my target has Miat's so they know my burst rotation because it showing on his damn screen.

    Or maybe people Zerg because their cast time abilities don't work anymore. " Hey my attack can't hit, I need help!".

    Oh i didn´t want to say sneak was the only reason people zerg.

    Lets put it differently. Sneaking the way it is implemented in eso is the reason why you don´t see people running around alone or in small groups open field anymore.

    The core issue is that atleast on PC-EU it´s not a few nbs. It´s a few nbs, a sorc, a DK petrifytankbot and a templar holding block spamming bol (slight exaggeration) that you´ll encounter attacking you from sneak.

    Quite honestly the ability for casters healers and tanks to be permanently invisible and apply the luxury sneak adds (choosing your fight) to every class is what´s breaking pvp partly.

    Having permanent sneak on every class also devalues sneak for the "classic" sneak achetype.
    Why should i bring a sneak/scout/stealthburst class when i can bring a templar that´s also invisible has comparable burst but can also heal my whole group and permablock while doing that when being spotted?

    The very concept of not having invisibility balanced by either class or armorweight in eso puts the whole stealth playstyle ad absurdum for anyone that really wants to play that way.
    Edited by Derra on October 5, 2017 9:04PM
    <Noricum>
    I live. I die. I live again.

    Derra - DC - Sorc - AvA 50
    Derrah - EP - Sorc - AvA 50

  • Rohamad_Ali
    Rohamad_Ali
    ✭✭✭✭✭
    ✭✭✭✭✭
    The solution to all this , for the players that don't like it or until ZoS makes a change , is to leave ESO PVP . Sucks but it's the truth . You're not going to sway other players opinions here . It's a complete waste of time trying . If you totally hate it , PVP in a different game or start a console account if you own one . It's what I did and I don't get upset because I took action . Action speaks louder then words . This way even if ZoS doesn't make changes to your liking , who cares ? You will be happy again ! Let all the players that want to remove stealth from ESO play with themselves and jump on a game that has your style of combat . It's completely liberating and gives you your power back . ZOS wants to allow it , cool , see ya ! Done , over , finito , finished . Beats the hell out of bumping heads with people over a game that was suppose to be for entertainment and fun remember ? Go have fun . The NPCs in this game don't have Addons so you can still enjoy PVE here if you like PVE . Just don't support things you hate or be a victim .
    Edited by Rohamad_Ali on October 5, 2017 9:26PM
  • Mihael
    Mihael
    ✭✭✭✭
    I use miats because it's a disadvantage to to use it but I really do think it should not be allowed. It makes players go from bad to good because they can do 100% dodge/block ranged cc, I play on Sotha Sil mainly so I know who are the good/bad players so it's funny seeing nb I have killed a ton of times on my dk because they have no clue what they are doing dodge all of my templars javelins even when I animation cancel it
  • Publius_Scipio
    Publius_Scipio
    ✭✭✭✭✭
    ✭✭✭
    Mihael wrote: »
    I use miats because it's a disadvantage not to use it but I really do think it should not be allowed. It makes players go from bad to good because they can do 100% dodge/block ranged cc, I play on Sotha Sil mainly so I know who are the good/bad players so it's funny seeing nb I have killed a ton of times on my dk because they have no clue what they are doing dodge all of my templars javelins even when I animation cancel it

  • rustic_potato
    rustic_potato
    ✭✭✭✭✭
    ROFL. This again. You guys have no idea about private addons that exist. As an addon writer myself this is hilarious.
    I play how I want to.


  • Publius_Scipio
    Publius_Scipio
    ✭✭✭✭✭
    ✭✭✭
    ROFL. This again. You guys have no idea about private addons that exist. As an addon writer myself this is hilarious.

    Actually that’s part of the point I make in this thread and why Paul Sage’s name must ring loud within the ears of all evildoers in Tamriel.
  • rustic_potato
    rustic_potato
    ✭✭✭✭✭
    ROFL. This again. You guys have no idea about private addons that exist. As an addon writer myself this is hilarious.

    Actually that’s part of the point I make in this thread and why Paul Sage’s name must ring loud within the ears of all evildoers in Tamriel.

    ZOS would have to rewrite their entire code to prevent some of the stupid stuff that is possible. It is just not worth their time or money to spend effort into it.
    I play how I want to.


  • DDuke
    DDuke
    ✭✭✭✭✭
    ✭✭✭✭
    ROFL. This again. You guys have no idea about private addons that exist. As an addon writer myself this is hilarious.

    I know, hence the thread title: "Zenimax, Restrict Your API!!!"


    I'm no addon writer, but going through the API I can see some pretty broken stuff.

    I believe this is what allows players to see other players cast bars (even while they're invisible/out of camera angle), i.e. Miat's alerts:
    "GetAbilityCastInfo(number abilityId)
    Returns: boolean channeled, number castTime, number channelTime"

    And this:
    "GetSkillAbilityInfo(number SkillType skillType, number skillIndex, number abilityIndex)
    Returns: string name, textureName texture, number earnedRank, boolean passive, boolean ultimate, boolean purchased, number:nilable progressionIndex"

    Sounds like it might let people see opponent's ultimate status and perhaps what skills they have on bar?


    Lots of other dodgy stuff that needs to be addressed.
  • DDuke
    DDuke
    ✭✭✭✭✭
    ✭✭✭✭
    ROFL. This again. You guys have no idea about private addons that exist. As an addon writer myself this is hilarious.

    Actually that’s part of the point I make in this thread and why Paul Sage’s name must ring loud within the ears of all evildoers in Tamriel.

    ZOS would have to rewrite their entire code to prevent some of the stupid stuff that is possible. It is just not worth their time or money to spend effort into it.

    "Too much work" is hardly an excuse to leave something this gamebreaking in the game.

    They didn't have that issue when Cheat Engine was a thing (hell, it still might be but I haven't seen those cheaters in a while).
  • umagon
    umagon
    ✭✭✭✭✭
    DDuke wrote: »
    ROFL. This again. You guys have no idea about private addons that exist. As an addon writer myself this is hilarious.

    Actually that’s part of the point I make in this thread and why Paul Sage’s name must ring loud within the ears of all evildoers in Tamriel.

    ZOS would have to rewrite their entire code to prevent some of the stupid stuff that is possible. It is just not worth their time or money to spend effort into it.

    "Too much work" is hardly an excuse to leave something this gamebreaking in the game.

    They didn't have that issue when Cheat Engine was a thing (hell, it still might be but I haven't seen those cheaters in a while).

    There might be a chance that the people who prioritize what gets worked on are not aware about the things that are possible with the API and its impact on the game. You might want to consider finding out who the management person(s) are and write them a physical letter. It’s easy not know what is going on in the forums if a person rarely goes there. But a bit different story when they walk into their office in the morning and there are a few hundred letters sitting on their desk.
  • KingMagaw
    KingMagaw
    ✭✭✭✭✭
    DDuke wrote: »
    They didn't have that issue when Cheat Engine was a thing (hell, it still might be but I haven't seen those cheaters in a while).

    No offence but you didn't/won't see them ever, until a player flew around spamming meteors and slapped you in the face with it.

  • Derra
    Derra
    ✭✭✭✭✭
    ✭✭✭✭✭
    KingMagaw wrote: »
    DDuke wrote: »
    They didn't have that issue when Cheat Engine was a thing (hell, it still might be but I haven't seen those cheaters in a while).

    No offence but you didn't/won't see them ever, until a player flew around spamming meteors and slapped you in the face with it.

    They´re hiding pretty well considering i´ve never met a player i thought was using cheatengine except for the weekend when everybody did.

    On that note: Can we finally turn meteor into a spammable. Looked way too cool.
    <Noricum>
    I live. I die. I live again.

    Derra - DC - Sorc - AvA 50
    Derrah - EP - Sorc - AvA 50

  • InvitationNotFound
    InvitationNotFound
    ✭✭✭✭✭
    DDuke wrote: »
    ROFL. This again. You guys have no idea about private addons that exist. As an addon writer myself this is hilarious.

    I know, hence the thread title: "Zenimax, Restrict Your API!!!"


    I'm no addon writer, but going through the API I can see some pretty broken stuff.

    I believe this is what allows players to see other players cast bars (even while they're invisible/out of camera angle), i.e. Miat's alerts:
    "GetAbilityCastInfo(number abilityId)
    Returns: boolean channeled, number castTime, number channelTime"

    And this:
    "GetSkillAbilityInfo(number SkillType skillType, number skillIndex, number abilityIndex)
    Returns: string name, textureName texture, number earnedRank, boolean passive, boolean ultimate, boolean purchased, number:nilable progressionIndex"

    Sounds like it might let people see opponent's ultimate status and perhaps what skills they have on bar?


    Lots of other dodgy stuff that needs to be addressed.

    You should be careful with your assumptions if have no idea about the API and aren't writing addons.

    I actually haven't used any of aforementioned functions (and their documentation sucks >_<), but there are many that are only working for yourself or in general.
    What i mean is the following:
    An ability has an ID. Something like 1 to 10000 or whatever (this is irrelevant here). Now you can ask what kind of ability it is respectively what attributes it has. Or what skills do I have slotted. And not what an opponent has slotted or what he is using or how he is buffed (well, to a certain degree things might be possible but the API restricts certain things - e.g. you might be able to see certain buffs an enemy has)

    In your example above i completely miss how it should be determined if the skill is casted on you or who casted it. I'm missing context or arguments.

    Don't get me wrong, there might be an issue, but just from the functions signature I wouldn't assume that there is anything wrong here.

    I just searched for those functions in miat's pvp alerts.
    GetAbilityCastInfo(number abilityId)
    Returns: boolean channeled, number castTime, number channelTime
    This function isn't present. So no, it isn't responsible and i doubt there is an issue with it. It is more like "hey, i have this ability, could the game please give me some information about it like cast time / channel time? thx". No issue here at all.
    GetSkillAbilityInfo(number SkillType skillType, number skillIndex, number abilityIndex)
    Returns: string name, textureName texture, number earnedRank, boolean passive, boolean ultimate, boolean purchased, number:nilable progressionIndex
    This function is being used twice in the addon.

    Location #1: PVP:IsStaminaAbility
    Line #138 PvpAlerts_Spec_Detection.lua

    Location #2: PVP:IsMagickaAbility
    Line #155 PvpAlerts_Spec_Detection.lua

    Nope, this function is being used to determine if a certain ability is a stamina or magicka ability. at least as far as it seems. i didn't verify what the code actually does.


    Edit: btw. as longs as you haven't to specify some sort of unittag / player or something that has been derived from anything that directly relates to another player, no function in the API should provide information about other players. e.g. all your functions aren't taking anything related to other players as an argument.

    Edit #2: Added some clarification.
    Edited by InvitationNotFound on October 6, 2017 8:15AM
    We want firing off Dark Exchange in the middle of combat to feel awesome... - The Wrobler
    You know you don't have to be here right? - Rich Lambert
    Verrätst du mir deinen Beruf? Ich würde auch gerne mal Annahmen dazu schreiben, wie simple die Aufgaben anderer sind. - Kai Schober

    Addons:
    RdK Group Tool: esoui DE EN FR
    Port to Friend's House: esoui DE EN FR - Library: DE EN
    Yet another Compass: esoui DE EN FR
    Group Buffs: esoui DE EN FR
  • Seri
    Seri
    ✭✭✭✭
    DDuke wrote: »
    Derra wrote: »
    The game has evolved - the players have evolved. I´d love to play doubleresto in sorc again. I´ve won duels with that aswell against noteable players. But this is not 2014 jon snow eso edition anymore.

    No shite. We now have 10 times less build diversity & 99% of the playerbase in some meta heavy armor clown builds.
    Completely ignoring the whole addon/API issue, to be fair, in 2014 there was no CP, softcaps to curb damage stacking, and you could be in 5+ light and still past resist softcap so there was zero reason to be in heavy armor.
    EP CP160+ Templar, Sorc, NB
    DC CP160+ Templar, Sorc, DK
  • mistrija999
    mistrija999
    ✭✭✭
    Lol 90% people crying are bad gankers and tryhard snipers and xv1 people.. i dont see other reason than so tards can xv1 and zerg down good players better! :)
  • Kneighbors
    Kneighbors
    ✭✭✭✭✭
    Dunno why people really play this trash fest. Competitive player who likes hardcore PvP based on skills would never play it. PvP which is based on addons is really stupid. Long ago serious games implementing protection systems like Punkbuster to keep a fair game.

    Having an addon which can show you disguised players before they are visually/audibly/physically detected? Are you for real?

    They have a set in game which shortens the distance you can detect sneaking enemies. LOL. Here is an addon that will inform you in ample time when sneaking enemy tries to gank you. ZoS are just amateurs. If they were caring to develop high-end product they would make emergency suspension of servers to remove that addon as fast as they can.
  • InvitationNotFound
    InvitationNotFound
    ✭✭✭✭✭
    Kneighbors wrote: »
    Dunno why people really play this trash fest. Competitive player who likes hardcore PvP based on skills would never play it. PvP which is based on addons is really stupid. Long ago serious games implementing protection systems like Punkbuster to keep a fair game.

    Having an addon which can show you disguised players before they are visually/audibly/physically detected? Are you for real?

    They have a set in game which shortens the distance you can detect sneaking enemies. LOL. Here is an addon that will inform you in ample time when sneaking enemy tries to gank you. ZoS are just amateurs. If they were caring to develop high-end product they would make emergency suspension of servers to remove that addon as fast as they can.

    No. You are wrong. Punkbuster wasn't there to keep a game fair. It was there to prevent cheats / hacks (in general third party applications). Punkbuster didn't care if the game logic or whatever the developers implemented was fair. Those are two completely different things.

    Feel free to read my other posts on why addons are part of the game and this isn't an issue (technically seen, you might not like the game play or whatever, but your complaint is the same as saying i do not like skill xyz for whatever reason as it is simply part of the game) as i wont repeat myself over and over again.
    We want firing off Dark Exchange in the middle of combat to feel awesome... - The Wrobler
    You know you don't have to be here right? - Rich Lambert
    Verrätst du mir deinen Beruf? Ich würde auch gerne mal Annahmen dazu schreiben, wie simple die Aufgaben anderer sind. - Kai Schober

    Addons:
    RdK Group Tool: esoui DE EN FR
    Port to Friend's House: esoui DE EN FR - Library: DE EN
    Yet another Compass: esoui DE EN FR
    Group Buffs: esoui DE EN FR
  • Jade1986
    Jade1986
    ✭✭✭✭✭
    ✭✭✭
    Derra wrote: »
    laced wrote: »
    Derra wrote: »
    laced wrote: »
    Derra wrote: »
    laced wrote: »
    That is the whole point of stealth, not to be seen. If you hate it that much, spend the time to build your toon to counter it. But you want to take the easy way out, dont want to put any time into countering it, and want to just have everything spoon fed. People have already named numerous methods to counter it, HELL, there are entire sets that are dedicated to it. If you hate stealth that much, you should use those. Expecting an uncounterable add on to do the work for you is just purely ridiculous.

    HOW?

    That´s the problem. Permanent stealth has huge implications when it can be utilized by any class and build.

    How can i counter 5 people that have nothing better to do than waiting on one of their resources to attack players coming along.

    Swtor has the same thing, perma stealth. AND YOU SHOULDNT BE ABLE TO COUNTER ANYTHING FROM FIVE EXPERIENCED PLAYERS! Just wow.....The entitled me mentality here is so strong it is downright gross....

    Swtor has classes that can permastealth. Not every build and every class that can permastealth.

    That´s the point. I don´t want to counter anything to counter them. I want to see them so i can avoid them.

    Not every class can perma stealth in this either.

    :joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy::joy:

    I´m sorry but shall i make a video for you where i showcase how i can stealth for 2 hours straight on my sorc, DK, templar the first in light and the latter two in heavy armor with sword and board?

    There is no timer to sneak. That literally means you can permanently stay invisible on any class or build.

    And then you dont contribute or do anything at all. In which case this addon wouldnt even effect you. Good lord, please switch your brain on before making a comment like that.
  • Jade1986
    Jade1986
    ✭✭✭✭✭
    ✭✭✭
    Derra wrote: »
    Minno wrote: »
    Derra wrote: »
    laced wrote: »
    That is the whole point of stealth, not to be seen. If you hate it that much, spend the time to build your toon to counter it. But you want to take the easy way out, dont want to put any time into countering it, and want to just have everything spoon fed. People have already named numerous methods to counter it, HELL, there are entire sets that are dedicated to it. If you hate stealth that much, you should use those. Expecting an uncounterable add on to do the work for you is just purely ridiculous.

    HOW?

    That´s the problem. Permanent stealth has huge implications when it can be utilized by any class and build.

    How can i counter 5/10/15 people that have nothing better to do than waiting on one of their resources to coordianted attack players coming along.

    Passive defense buffs, block, and using abilities to drag then out of stealth.

    Armor+ CP is an easy way to make it harder for them to snag off a quick shot. And every class had access to an ability that causes then to pop out of stealth once found:
    - Templars have purfying light and unstable core. Both with burst letting you to continually tag them
    - sorcs curse operates on the same manner; pop it defensively wait, then start snag then again. Sorcs can also AOE immobilze.
    - dks can block+ aoe immobilze
    - NB can mark and keep targets out of stealth.
    - wardens. Damn if they even have one, but you gotta love those undodgable birds they can spam at range lol. Jokes aside, they do have strong tank abilities.

    Then there's the usual crap like pots, etc. The game right now isn't as bad as launch when everyone was ganking left and right.

    That´s not what i mean though. I don´t want to keep them out. I want to avoid running into them without trial and error.

    How can i avoid running into 5/10/15 people with healers tanks and whatever you want to have invisible that camp on a resource/between two keeps in sneak because that´s what they enjoy doing.
    That´s my issue with this games stealth system.

    The answer is: You can´t.

    But when you´re only running around with 300 people in cyrodiil this obviously is a nonissue.

    Your issue is that you cant play the game exactly like you want, a single player game, other people be damned.

    We all know that is what you want now, might as well stop arguing.
  • Jade1986
    Jade1986
    ✭✭✭✭✭
    ✭✭✭
    Kneighbors wrote: »
    Dunno why people really play this trash fest. Competitive player who likes hardcore PvP based on skills would never play it. PvP which is based on addons is really stupid. Long ago serious games implementing protection systems like Punkbuster to keep a fair game.

    Having an addon which can show you disguised players before they are visually/audibly/physically detected? Are you for real?

    They have a set in game which shortens the distance you can detect sneaking enemies. LOL. Here is an addon that will inform you in ample time when sneaking enemy tries to gank you. ZoS are just amateurs. If they were caring to develop high-end product they would make emergency suspension of servers to remove that addon as fast as they can.

    No. You are wrong. Punkbuster wasn't there to keep a game fair. It was there to prevent cheats / hacks (in general third party applications). Punkbuster didn't care if the game logic or whatever the developers implemented was fair. Those are two completely different things.

    Feel free to read my other posts on why addons are part of the game and this isn't an issue (technically seen, you might not like the game play or whatever, but your complaint is the same as saying i do not like skill xyz for whatever reason as it is simply part of the game) as i wont repeat myself over and over again.

    We know, you think that because something is legal or tolerated it is ok. And we have already demonstrated why that logic is flawed.
  • DDuke
    DDuke
    ✭✭✭✭✭
    ✭✭✭✭
    DDuke wrote: »
    ROFL. This again. You guys have no idea about private addons that exist. As an addon writer myself this is hilarious.

    I know, hence the thread title: "Zenimax, Restrict Your API!!!"


    I'm no addon writer, but going through the API I can see some pretty broken stuff.

    I believe this is what allows players to see other players cast bars (even while they're invisible/out of camera angle), i.e. Miat's alerts:
    "GetAbilityCastInfo(number abilityId)
    Returns: boolean channeled, number castTime, number channelTime"

    And this:
    "GetSkillAbilityInfo(number SkillType skillType, number skillIndex, number abilityIndex)
    Returns: string name, textureName texture, number earnedRank, boolean passive, boolean ultimate, boolean purchased, number:nilable progressionIndex"

    Sounds like it might let people see opponent's ultimate status and perhaps what skills they have on bar?


    Lots of other dodgy stuff that needs to be addressed.

    You should be careful with your assumptions if have no idea about the API and aren't writing addons.

    I actually haven't used any of aforementioned functions (and their documentation sucks >_<), but there are many that are only working for yourself or in general.
    What i mean is the following:
    An ability has an ID. Something like 1 to 10000 or whatever (this is irrelevant here). Now you can ask what kind of ability it is respectively what attributes it has. Or what skills do I have slotted. And not what an opponent has slotted or what he is using or how he is buffed (well, to a certain degree things might be possible but the API restricts certain things - e.g. you might be able to see certain buffs an enemy has)

    In your example above i completely miss how it should be determined if the skill is casted on you or who casted it. I'm missing context or arguments.

    Don't get me wrong, there might be an issue, but just from the functions signature I wouldn't assume that there is anything wrong here.

    I just searched for those functions in miat's pvp alerts.
    GetAbilityCastInfo(number abilityId)
    Returns: boolean channeled, number castTime, number channelTime
    This function isn't present. So no, it isn't responsible and i doubt there is an issue with it. It is more like "hey, i have this ability, could the game please give me some information about it like cast time / channel time? thx". No issue here at all.
    GetSkillAbilityInfo(number SkillType skillType, number skillIndex, number abilityIndex)
    Returns: string name, textureName texture, number earnedRank, boolean passive, boolean ultimate, boolean purchased, number:nilable progressionIndex
    This function is being used twice in the addon.

    Location #1: PVP:IsStaminaAbility
    Line #138 PvpAlerts_Spec_Detection.lua

    Location #2: PVP:IsMagickaAbility
    Line #155 PvpAlerts_Spec_Detection.lua

    Nope, this function is being used to determine if a certain ability is a stamina or magicka ability. at least as far as it seems. i didn't verify what the code actually does.


    Edit: btw. as longs as you haven't to specify some sort of unittag / player or something that has been derived from anything that directly relates to another player, no function in the API should provide information about other players. e.g. all your functions aren't taking anything related to other players as an argument.

    Edit #2: Added some clarification.

    Interesting, I feel smarter already.


    Opened that lua file & found this:
    "function PVP:DetectSpec(unitId, abilityId, result, sourceName, isBuff, damageBuff)"

    ...but I can't find this function in the API at all (or anything with keywords "Detect").

    Oh well, coding is not my forte, so perhaps I shouldn't try to reverse-engineer things I don't understand fully.
    Kneighbors wrote: »
    Dunno why people really play this trash fest. Competitive player who likes hardcore PvP based on skills would never play it. PvP which is based on addons is really stupid. Long ago serious games implementing protection systems like Punkbuster to keep a fair game.

    Having an addon which can show you disguised players before they are visually/audibly/physically detected? Are you for real?

    They have a set in game which shortens the distance you can detect sneaking enemies. LOL. Here is an addon that will inform you in ample time when sneaking enemy tries to gank you. ZoS are just amateurs. If they were caring to develop high-end product they would make emergency suspension of servers to remove that addon as fast as they can.

    No. You are wrong. Punkbuster wasn't there to keep a game fair. It was there to prevent cheats / hacks (in general third party applications). Punkbuster didn't care if the game logic or whatever the developers implemented was fair. Those are two completely different things.

    Feel free to read my other posts on why addons are part of the game and this isn't an issue (technically seen, you might not like the game play or whatever, but your complaint is the same as saying i do not like skill xyz for whatever reason as it is simply part of the game) as i wont repeat myself over and over again.

    Sure, if this addon & these particular API functions actually functioned as "addons" generally do, as in enhancing the base UI & providing you information already available in the game.

    That's not the case here however, as you're able to see cast bars for your invisible/out of FoV opponent (information not available to you as part of the base game).


    It'd be like comparing some harmless graphics enchancing mod in a FPS to a wallhack.

    Miat's (and other similar addons) are in essence what a wallhack is in a FPS.


    So no, it's not the same as saying "i do not like skill xyz"
    Edited by DDuke on October 6, 2017 10:37AM
  • InvitationNotFound
    InvitationNotFound
    ✭✭✭✭✭
    laced wrote: »
    Kneighbors wrote: »
    Dunno why people really play this trash fest. Competitive player who likes hardcore PvP based on skills would never play it. PvP which is based on addons is really stupid. Long ago serious games implementing protection systems like Punkbuster to keep a fair game.

    Having an addon which can show you disguised players before they are visually/audibly/physically detected? Are you for real?

    They have a set in game which shortens the distance you can detect sneaking enemies. LOL. Here is an addon that will inform you in ample time when sneaking enemy tries to gank you. ZoS are just amateurs. If they were caring to develop high-end product they would make emergency suspension of servers to remove that addon as fast as they can.

    No. You are wrong. Punkbuster wasn't there to keep a game fair. It was there to prevent cheats / hacks (in general third party applications). Punkbuster didn't care if the game logic or whatever the developers implemented was fair. Those are two completely different things.

    Feel free to read my other posts on why addons are part of the game and this isn't an issue (technically seen, you might not like the game play or whatever, but your complaint is the same as saying i do not like skill xyz for whatever reason as it is simply part of the game) as i wont repeat myself over and over again.

    We know, you think that because something is legal or tolerated it is ok. And we have already demonstrated why that logic is flawed.

    Either you are ***, a troll, a real idiot or a combination of it. Who is we? you (both you personally and other players in this thread) didn't not demonstrate anything. you came up with one stupid example of something that can't be compared and is way more complex than this issue (look up what moral is and how it is defined - seriously how can anyone come up with such a *** comparison.). congratulation you compared two different things, yet you didn't even try to get into a real argument. all you did all way long is trying to make your feelings look like facts and therefore the *** world has to be like you want it to be. sorry snowflake, it isn't like that.
    We want firing off Dark Exchange in the middle of combat to feel awesome... - The Wrobler
    You know you don't have to be here right? - Rich Lambert
    Verrätst du mir deinen Beruf? Ich würde auch gerne mal Annahmen dazu schreiben, wie simple die Aufgaben anderer sind. - Kai Schober

    Addons:
    RdK Group Tool: esoui DE EN FR
    Port to Friend's House: esoui DE EN FR - Library: DE EN
    Yet another Compass: esoui DE EN FR
    Group Buffs: esoui DE EN FR
  • InvitationNotFound
    InvitationNotFound
    ✭✭✭✭✭
    DDuke wrote: »
    DDuke wrote: »
    ROFL. This again. You guys have no idea about private addons that exist. As an addon writer myself this is hilarious.

    I know, hence the thread title: "Zenimax, Restrict Your API!!!"


    I'm no addon writer, but going through the API I can see some pretty broken stuff.

    I believe this is what allows players to see other players cast bars (even while they're invisible/out of camera angle), i.e. Miat's alerts:
    "GetAbilityCastInfo(number abilityId)
    Returns: boolean channeled, number castTime, number channelTime"

    And this:
    "GetSkillAbilityInfo(number SkillType skillType, number skillIndex, number abilityIndex)
    Returns: string name, textureName texture, number earnedRank, boolean passive, boolean ultimate, boolean purchased, number:nilable progressionIndex"

    Sounds like it might let people see opponent's ultimate status and perhaps what skills they have on bar?


    Lots of other dodgy stuff that needs to be addressed.

    You should be careful with your assumptions if have no idea about the API and aren't writing addons.

    I actually haven't used any of aforementioned functions (and their documentation sucks >_<), but there are many that are only working for yourself or in general.
    What i mean is the following:
    An ability has an ID. Something like 1 to 10000 or whatever (this is irrelevant here). Now you can ask what kind of ability it is respectively what attributes it has. Or what skills do I have slotted. And not what an opponent has slotted or what he is using or how he is buffed (well, to a certain degree things might be possible but the API restricts certain things - e.g. you might be able to see certain buffs an enemy has)

    In your example above i completely miss how it should be determined if the skill is casted on you or who casted it. I'm missing context or arguments.

    Don't get me wrong, there might be an issue, but just from the functions signature I wouldn't assume that there is anything wrong here.

    I just searched for those functions in miat's pvp alerts.
    GetAbilityCastInfo(number abilityId)
    Returns: boolean channeled, number castTime, number channelTime
    This function isn't present. So no, it isn't responsible and i doubt there is an issue with it. It is more like "hey, i have this ability, could the game please give me some information about it like cast time / channel time? thx". No issue here at all.
    GetSkillAbilityInfo(number SkillType skillType, number skillIndex, number abilityIndex)
    Returns: string name, textureName texture, number earnedRank, boolean passive, boolean ultimate, boolean purchased, number:nilable progressionIndex
    This function is being used twice in the addon.

    Location #1: PVP:IsStaminaAbility
    Line #138 PvpAlerts_Spec_Detection.lua

    Location #2: PVP:IsMagickaAbility
    Line #155 PvpAlerts_Spec_Detection.lua

    Nope, this function is being used to determine if a certain ability is a stamina or magicka ability. at least as far as it seems. i didn't verify what the code actually does.


    Edit: btw. as longs as you haven't to specify some sort of unittag / player or something that has been derived from anything that directly relates to another player, no function in the API should provide information about other players. e.g. all your functions aren't taking anything related to other players as an argument.

    Edit #2: Added some clarification.

    Interesting, I feel smarter already.


    Opened that lua file & found this:
    "function PVP:DetectSpec(unitId, abilityId, result, sourceName, isBuff, damageBuff)"

    ...but I can't find this function in the API at all (or anything with keywords "Detect").

    Oh well, coding is not my forte, so perhaps I shouldn't try to reverse-engineer things I don't understand fully.

    I'm not sure if sarcastic or not, but anyway, you'll get your answer. :)

    let's look at the code you've mentioned:
    function PVP:DetectSpec(unitId, abilityId, result, sourceName, isBuff, damageBuff)

    local unitName = sourceName or self.idToName[unitId]

    if not unitName or unitName == "" or PVP:IsMalformedName(unitName) then return end

    self.playerSpec[unitName] = self.playerSpec[unitName] or {spec_counterStam = 0, spec_counterMag = 0}

    if self.playerSpec[unitName].spec_decision then return end

    local spec = self.playerSpec[unitName]
    local counterStam, counterMag = spec.spec_counterStam, spec.spec_counterMag

    local function CountSpec()
    local total = counterStam+counterMag
    if total<3 then return false end
    if total>=4 then return true end
    if total == 3 then
    if counterStam == 3 or counterMag == 3 then return true
    else return false
    end
    end
    end

    if CountSpec() then self:MakeSpecDecision(unitName) return end

    local abilityName

    -- if damageBuff then
    -- abilityName = damageBuff
    -- else
    -- abilityName = GetAbilityName(abilityId)
    -- end

    abilityName = damageBuff and damageBuff or GetAbilityName(abilityId)

    local function SetSpecAbility(decision)
    if decision then
    spec[abilityName] = true
    if decision == "stam" then counterStam = counterStam + 1 end
    if decision == "mag" then counterMag = counterMag + 1 end
    if decision == "stamBig" then counterStam = counterStam + 2 end
    if decision == "magBig" then counterMag = counterMag + 2 end
    end
    end

    local isReflected = self.miscAbilities[sourceName] and self.miscAbilities[sourceName].reflects and self.miscAbilities[sourceName].reflects[abilityName]

    if isReflected and spec[abilityName] then spec[abilityName] = nil end

    if not spec[abilityName] and not isReflected then
    local decision
    if isBuff then
    if damageBuff then
    if damageBuff == "Major Brutality" then
    decision = "stam"
    else
    decision = "mag"
    end
    else
    decision = self:GetSelfSpecAbilities(abilityName)
    end
    else
    decision = self:DetectAbilitySpec(abilityName)
    end

    SetSpecAbility(decision)

    spec.spec_counterStam = counterStam
    spec.spec_counterMag = counterMag
    self.playerSpec[unitName] = spec

    if CountSpec() then self:MakeSpecDecision(unitName) return end
    end
    end



    function PVP:MakeSpecDecision(unitName)
    local decision, threshold

    local counterStam, counterMag = self.playerSpec[unitName].spec_counterStam, self.playerSpec[unitName].spec_counterMag

    if counterStam+counterMag>=7 then
    threshold=2
    else
    threshold=1
    end

    if counterMag <= threshold then
    decision = "stam"
    elseif counterStam <= threshold then
    decision = "mag"
    else
    decision = "hybrid"
    end

    if self.SV.showHybridJustification and decision == "hybrid" then
    d('Hybrid spec for '..unitName)
    for k,v in pairs (self.playerSpec[unitName]) do
    if k~="spec_counterStam" and k~="spec_counterMag" then
    d(k)
    end
    end
    d('end of abilities list')
    end

    self.SV.playersDB[unitName].unitSpec = decision
    self.playerSpec[unitName] = {spec_decision = decision}

    end

    function PVP:DetectAbilitySpec(abilityName)
    if self:IsStaminaAbility(abilityName) == 'small' then
    return "stam"
    elseif self:IsStaminaAbility(abilityName) == 'big' then
    return "stamBig"
    end
    if self:IsMagickaAbility(abilityName) == 'small' then
    return "mag"
    elseif self:IsMagickaAbility(abilityName) == 'big' then
    return "magBig"
    end
    return nil
    end


    function PVP:IsStaminaAbility(abilityName)

    if self.staminaAbilities[abilityName] then return 'big' end
    if self.staminaAbilitiesSmall[abilityName] then return 'small' end

    for i=1, GetNumSkillLines(SKILL_TYPE_WEAPON) do
    if self.staminaSkillLines[GetSkillLineInfo(SKILL_TYPE_WEAPON, i)] then
    for j = 1, GetNumSkillAbilities(SKILL_TYPE_WEAPON, i) do
    if GetSkillAbilityInfo(SKILL_TYPE_WEAPON, i, j) == abilityName then return 'big' end
    end
    end
    end

    return false

    end

    function PVP:IsMagickaAbility(abilityName)

    if self.magickaAbilities[abilityName] then return 'big' end
    if self.magickaAbilitiesSmall[abilityName] then return 'small' end

    for i=1, GetNumSkillLines(SKILL_TYPE_WEAPON) do
    if self.magickaSkillLines[GetSkillLineInfo(SKILL_TYPE_WEAPON, i)] then
    for j = 1, GetNumSkillAbilities(SKILL_TYPE_WEAPON, i) do
    if GetSkillAbilityInfo(SKILL_TYPE_WEAPON, i, j) == abilityName then return 'big' end
    end
    end
    end

    return false

    end

    The function PVP:DetectSpec(unitId, abilityId, result, sourceName, isBuff, damageBuff) isn't part of the API, it has been written by the author. There is nothing wrong with that neither is it an issue. I don't know how familiar you are with coding, but it is quite normal to write your own functions :)

    I didn't look at the source on detail and just skimmed through it. It looks like he simply wants to know if the target (whoever that might be) is a stamina, magicka or hybrid player. I don't see here any issue with that.

    Note: To achieve this he's calling a few functions provided by ZOS (API).
    DDuke wrote: »
    Kneighbors wrote: »
    Dunno why people really play this trash fest. Competitive player who likes hardcore PvP based on skills would never play it. PvP which is based on addons is really stupid. Long ago serious games implementing protection systems like Punkbuster to keep a fair game.

    Having an addon which can show you disguised players before they are visually/audibly/physically detected? Are you for real?

    They have a set in game which shortens the distance you can detect sneaking enemies. LOL. Here is an addon that will inform you in ample time when sneaking enemy tries to gank you. ZoS are just amateurs. If they were caring to develop high-end product they would make emergency suspension of servers to remove that addon as fast as they can.

    No. You are wrong. Punkbuster wasn't there to keep a game fair. It was there to prevent cheats / hacks (in general third party applications). Punkbuster didn't care if the game logic or whatever the developers implemented was fair. Those are two completely different things.

    Feel free to read my other posts on why addons are part of the game and this isn't an issue (technically seen, you might not like the game play or whatever, but your complaint is the same as saying i do not like skill xyz for whatever reason as it is simply part of the game) as i wont repeat myself over and over again.

    Sure, if this addon & these particular API functions actually functioned as "addons" generally do, as in enhancing the base UI & providing you information already available in the game.

    That's not the case here however, as you're able to see cast bars for your invisible/out of FoV opponent (information not available to you as part of the base game).


    It'd be like comparing some harmless graphics enchancing mod in a FPS to a wallhack.

    Miat's (and other similar addons) are in essence what a wallhack is in a FPS.


    So no, it's not the same as saying "i do not like skill xyz"

    Here's where it is all about definition. I don't know if you read all my posts and if you really understood them, so i'll try it again, but i won't repost the quotes from the tos, etc.

    the tos will tell you that there are addons. they are allowed. they are there to modify and enhance the UI. that is part of the game you have bought and you have agreed to. of course, you don't have to like that, but that's what it is.

    I brought up the example of one of my addons: Port to Friend's House. I'm using an API function there which isn't available anywhere in the game. No such functionality exists in the base UI. Nowhere. But as you might have guessed, ZOS made that API available for addon authors, they even announced the introduction in their addon api patch notes (they wouldn't have to do that btw.). So are you telling me now that my addon is a hack or cheat because the functionality isn't in the base game? I'm sorry, but it is completely okay and it hasn't anything to do with cheating or hacking. It is simply part of the game ZOS has provided to you. Same applies to any other functionality present through the API, it is part of the game you've bought.

    And that's where comparing a wallhack to an UI enhancement fails. A wallhack, at least in the form you mean it, means you are required to use a third party application which manipulates the game in a way the game isn't meant to be played. Something that isn't in the game and most likely is forbidden through the tos. This doesn't apply to this addon. It does nothing that hasn't been meant that way by the developer.

    Or in your terms: If a game ships with a wallhack that has been implemented by the developer and that wallhack is allowed to use, it is simply part of the game. At this point it is a game mechanic and not a "wallhack" (btw. the naming would be different as "hack" implies there's something odd with it).

    And that is why i compare it with using another skill you don't like, both are part of the game.

    And I say all this from a relatively neutral technical point of view. I personally don't care if they restrict the API in any way. maybe they should, maybe they should fix other 100 things first in their mess they've created. Unfortunately, i doubt any of this will happen.

    Long story short: Feel free to complain, to not like that API. I'm fine with that, yet I consider this part of the game and therefore not cheating. and i think the comparison between "i don't like this api feature" and "i don't like that skill" is pretty accurate.

    We want firing off Dark Exchange in the middle of combat to feel awesome... - The Wrobler
    You know you don't have to be here right? - Rich Lambert
    Verrätst du mir deinen Beruf? Ich würde auch gerne mal Annahmen dazu schreiben, wie simple die Aufgaben anderer sind. - Kai Schober

    Addons:
    RdK Group Tool: esoui DE EN FR
    Port to Friend's House: esoui DE EN FR - Library: DE EN
    Yet another Compass: esoui DE EN FR
    Group Buffs: esoui DE EN FR
  • GrimJaw
    GrimJaw
    ✭✭✭
    Everytime i cast a frag proc on someone running away and they roll dodge, i think to myself, this little ******. Knowing full well i use it too.
  • UnseenTruth
    UnseenTruth
    ✭✭
    nice addon guys, but you have no idea what private addons can do..
    for example ESO launcher
    custom soft that can remove fog grom game, etc, it has free and payed version
    and payed version has an ability to use PRIVATE FUNCTIONS that already restricted by ZOS

    just imagine, what hackers-addon-devs can do with that...
  • DDuke
    DDuke
    ✭✭✭✭✭
    ✭✭✭✭
    DDuke wrote: »
    DDuke wrote: »
    ROFL. This again. You guys have no idea about private addons that exist. As an addon writer myself this is hilarious.

    I know, hence the thread title: "Zenimax, Restrict Your API!!!"


    I'm no addon writer, but going through the API I can see some pretty broken stuff.

    I believe this is what allows players to see other players cast bars (even while they're invisible/out of camera angle), i.e. Miat's alerts:
    "GetAbilityCastInfo(number abilityId)
    Returns: boolean channeled, number castTime, number channelTime"

    And this:
    "GetSkillAbilityInfo(number SkillType skillType, number skillIndex, number abilityIndex)
    Returns: string name, textureName texture, number earnedRank, boolean passive, boolean ultimate, boolean purchased, number:nilable progressionIndex"

    Sounds like it might let people see opponent's ultimate status and perhaps what skills they have on bar?


    Lots of other dodgy stuff that needs to be addressed.

    You should be careful with your assumptions if have no idea about the API and aren't writing addons.

    I actually haven't used any of aforementioned functions (and their documentation sucks >_<), but there are many that are only working for yourself or in general.
    What i mean is the following:
    An ability has an ID. Something like 1 to 10000 or whatever (this is irrelevant here). Now you can ask what kind of ability it is respectively what attributes it has. Or what skills do I have slotted. And not what an opponent has slotted or what he is using or how he is buffed (well, to a certain degree things might be possible but the API restricts certain things - e.g. you might be able to see certain buffs an enemy has)

    In your example above i completely miss how it should be determined if the skill is casted on you or who casted it. I'm missing context or arguments.

    Don't get me wrong, there might be an issue, but just from the functions signature I wouldn't assume that there is anything wrong here.

    I just searched for those functions in miat's pvp alerts.
    GetAbilityCastInfo(number abilityId)
    Returns: boolean channeled, number castTime, number channelTime
    This function isn't present. So no, it isn't responsible and i doubt there is an issue with it. It is more like "hey, i have this ability, could the game please give me some information about it like cast time / channel time? thx". No issue here at all.
    GetSkillAbilityInfo(number SkillType skillType, number skillIndex, number abilityIndex)
    Returns: string name, textureName texture, number earnedRank, boolean passive, boolean ultimate, boolean purchased, number:nilable progressionIndex
    This function is being used twice in the addon.

    Location #1: PVP:IsStaminaAbility
    Line #138 PvpAlerts_Spec_Detection.lua

    Location #2: PVP:IsMagickaAbility
    Line #155 PvpAlerts_Spec_Detection.lua

    Nope, this function is being used to determine if a certain ability is a stamina or magicka ability. at least as far as it seems. i didn't verify what the code actually does.


    Edit: btw. as longs as you haven't to specify some sort of unittag / player or something that has been derived from anything that directly relates to another player, no function in the API should provide information about other players. e.g. all your functions aren't taking anything related to other players as an argument.

    Edit #2: Added some clarification.

    Interesting, I feel smarter already.


    Opened that lua file & found this:
    "function PVP:DetectSpec(unitId, abilityId, result, sourceName, isBuff, damageBuff)"

    ...but I can't find this function in the API at all (or anything with keywords "Detect").

    Oh well, coding is not my forte, so perhaps I shouldn't try to reverse-engineer things I don't understand fully.

    I'm not sure if sarcastic or not, but anyway, you'll get your answer. :)

    Oh, definitely not sarcastic - just curious about which specific line in the API is the problem. But...
    The function PVP:DetectSpec(unitId, abilityId, result, sourceName, isBuff, damageBuff) isn't part of the API, it has been written by the author. There is nothing wrong with that neither is it an issue. I don't know how familiar you are with coding, but it is quite normal to write your own functions :)

    ...It seems I may have misunderstood how the API functions. Am I correct in assuming that the API not only provides functions, but also serves to restrict ones created by players?

    In this case, the problem wouldn't be some bad line in the API, but rather the lack of a line to restrict these kinds of exploitative addons.

    DDuke wrote: »
    Kneighbors wrote: »
    Dunno why people really play this trash fest. Competitive player who likes hardcore PvP based on skills would never play it. PvP which is based on addons is really stupid. Long ago serious games implementing protection systems like Punkbuster to keep a fair game.

    Having an addon which can show you disguised players before they are visually/audibly/physically detected? Are you for real?

    They have a set in game which shortens the distance you can detect sneaking enemies. LOL. Here is an addon that will inform you in ample time when sneaking enemy tries to gank you. ZoS are just amateurs. If they were caring to develop high-end product they would make emergency suspension of servers to remove that addon as fast as they can.

    No. You are wrong. Punkbuster wasn't there to keep a game fair. It was there to prevent cheats / hacks (in general third party applications). Punkbuster didn't care if the game logic or whatever the developers implemented was fair. Those are two completely different things.

    Feel free to read my other posts on why addons are part of the game and this isn't an issue (technically seen, you might not like the game play or whatever, but your complaint is the same as saying i do not like skill xyz for whatever reason as it is simply part of the game) as i wont repeat myself over and over again.

    Sure, if this addon & these particular API functions actually functioned as "addons" generally do, as in enhancing the base UI & providing you information already available in the game.

    That's not the case here however, as you're able to see cast bars for your invisible/out of FoV opponent (information not available to you as part of the base game).


    It'd be like comparing some harmless graphics enchancing mod in a FPS to a wallhack.

    Miat's (and other similar addons) are in essence what a wallhack is in a FPS.


    So no, it's not the same as saying "i do not like skill xyz"

    Here's where it is all about definition. I don't know if you read all my posts and if you really understood them, so i'll try it again, but i won't repost the quotes from the tos, etc.

    the tos will tell you that there are addons. they are allowed. they are there to modify and enhance the UI. that is part of the game you have bought and you have agreed to. of course, you don't have to like that, but that's what it is.

    Sure, just like things such as:
    • Sharpened Mace exploit 2015 (if you're not aware of this one: maces actually reduced target's armor by flat 20%, rather than 20% of the maximum 50% armor)
    • Nirnhoned Staff exploit 2015 (similar to sharpened mace)
    • Double Mundus exploit 2015-2016
    • Porting to an opponent player's Shadow Image to get inside keeps 2014-1016
    • Using gap closers to get inside keeps 2014-2016(?)

    were part of the game.

    Doesn't change the fact that players exploited flaws/loopholes in the game's code (for addon's like Miat's, that part of the game's code would be the API).

    I suppose you're right though, it's about definition.

    I'd define that cheating due to how badly it affects the game (exploits generally don't have equally dramatic effects), but I guess exploiting is a valid term as well.
    I brought up the example of one of my addons: Port to Friend's House. I'm using an API function there which isn't available anywhere in the game. No such functionality exists in the base UI. Nowhere. But as you might have guessed, ZOS made that API available for addon authors, they even announced the introduction in their addon api patch notes (they wouldn't have to do that btw.). So are you telling me now that my addon is a hack or cheat because the functionality isn't in the base game? I'm sorry, but it is completely okay and it hasn't anything to do with cheating or hacking. It is simply part of the game ZOS has provided to you. Same applies to any other functionality present through the API, it is part of the game you've bought.

    Interesting. I wouldn't be surprised if they added that function as part of the base game in the future (perhaps you're "beta testing" for them :D ) - it isn't exploitative by nature.
    And that's where comparing a wallhack to an UI enhancement fails. A wallhack, at least in the form you mean it, means you are required to use a third party application which manipulates the game in a way the game isn't meant to be played. Something that isn't in the game and most likely is forbidden through the tos. This doesn't apply to this addon. It does nothing that hasn't been meant that way by the developer.

    But addons are practically third party, and I doubt detecting stealthed opponents' cast timers is "the way the game is meant to be played". Otherwise, why do they waste development time trying to buff cast time abilities if they're supposed to be obsolete by default? Why create item sets to counter sneaking players? Or item sets that buff cast time abilities? Or skills like Radiant Magelight?

    No, highly doubtful.
    Or in your terms: If a game ships with a wallhack that has been implemented by the developer and that wallhack is allowed to use, it is simply part of the game. At this point it is a game mechanic and not a "wallhack" (btw. the naming would be different as "hack" implies there's something odd with it).

    Yet Miat's addon (and other similar ones) aren't created by the developer, they're created by players seeking to exploit unfair advantages in PvP. Just like wallhacks in FPS games.
    And that is why i compare it with using another skill you don't like, both are part of the game.

    Exploits, flaws and bugs are part of the game too - until they're fixed :smile:

    Comparing this to a "skill you dont like" would be similar to comparing Sharpened Maces from 2015 to a "skill you dont like" - in other words, it makes no sense.

    I can understand if you can't equate these API functions to things like wallhacks, but your comparison is way off.
    And I say all this from a relatively neutral technical point of view. I personally don't care if they restrict the API in any way. maybe they should, maybe they should fix other 100 things first in their mess they've created. Unfortunately, i doubt any of this will happen.

    Long story short: Feel free to complain, to not like that API. I'm fine with that, yet I consider this part of the game and therefore not cheating. and i think the comparison between "i don't like this api feature" and "i don't like that skill" is pretty accurate.

    Yep, that's why I keep posting, why I made this thread and why I'll make new threads until this is resolved.

    This game is not playable for me in its current state and won't be next patch either, or the patch after that as long as these API functions exist.
    Edited by DDuke on October 6, 2017 11:42AM
  • UnseenTruth
    UnseenTruth
    ✭✭
    DDuke wrote: »

    But addons are practically third party.

    laughed so much

    no they arent
    google, wikipedia etc
  • DDuke
    DDuke
    ✭✭✭✭✭
    ✭✭✭✭
    DDuke wrote: »

    But addons are practically third party.

    laughed so much

    no they arent
    google, wikipedia etc

    When addon developers are able to write their own functions, functions not supplied by the developer of the game?

    Third party.

    Unless the addon developers work for Zenimax, which I highly doubt.
  • STEVIL
    STEVIL
    ✭✭✭✭✭
    ✭✭✭
    Koensol wrote: »
    Feanor wrote: »
    *Bla bla bla*

    I'm just tired about that stealth BS. It has cowardice written all over it.
    Aah there we have it. The undeniable bias and personal frustration that lies at the source of your whole argument.

    Hardly unusual though, except perhaps in its honestly.

    At its core, so many of these threads and positions boil down to "but i like this flavor of ice cream kill better than that one." and the issues of that kind of thinking in a PVP environment.

    First Law of Nerf-o-Dynamics at its finest.

    It is an issue that might be addressable by CONTENT better than rules. A variety of terrains and environmental challenges which each affect different "styles" could maybe be a useful addition to the more generic cyrodil flavor.

    Haunted Woods where groups bigger than ABC draw a growing number of hungry ghosts so that zergs cannot sustain themselves for long in there but small group play is mostly OK.

    Bay of the Biters where anyone moving slowly or stationary for long gets swarmed by "biters".

    Plateau of the Fireflies where everyone is followed and revealed by a swarm of glowing firebugs.

    etc etc etc

    basically a variety of different environment effects can create a host of possible "if you like this then go here" locales allowing players the open air feel of PVP but also the option for self-division if they want it.

    Proudly skooma free while talks-when-drunk is in mandatory public housing.
    YFMV Your Fun May Vary.

    First Law of Nerf-o-Dynamics
    "The good way I used to get good kills *with good skill* was good but the way others kill me now is bad."

  • zsitvaij
    zsitvaij
    ✭✭✭
    DDuke wrote: »
    When addon developers are able to write their own functions, functions not supplied by the developer of the game?

    Third party.
    All a user supplied function is is a more organized way to call built-in functions. You're arguing that an addon executed top-to-bottom is fine, but the exact same functionality divided into legible, named chunks is over the line.

This discussion has been closed.