Undo in the Item Shop

  • With the new “Undo” button, we’re adding the ability to immediately return extra gear back to the shop, without having to sell it at a fraction of the purchase price. Now buying the wrong sword and lamenting the shopkeepers’ archaic “no return” policy is a thing of the past.

    To clarify, this is a new undo button—it even says so right on it. It works by generating a history of items every time you use the shop to buy or sell. With a few exceptions, so long as you don’t close the shop or leave the platform, you can undo the most recent transaction by clicking the button.

    As we said before, there are some tricky bits to this new feature though. To prevent abuse, the item history, and the ability to undo your purchases, is cleared if you leave the item shop radius, cast a spell, use an item, deal damage or take damage. We’d like to point out a few special cases as well. Undoing the purchase of an item that generates gold will deduct any gold you gained from the item. If you pick up an item that grants a buff, you’ll have to ship that buff back to the shopkeeper along with the item—such as giving up the tanky Aegis goodness if you didn’t mean to buy one. Lastly, elixirs purchased without an open inventory slot—which consumes the elixir automatically—cannot be undone. Finally, certain purchases will clear your undo history such as Homeguard enchantment (so that you can't insta-heal when you get back to base then undo the purchase).

    As with any new PBE feature, we’re looking for your feedback. Join the conversation here and let us know what’s working, what’s broken and what could use a little more love.
  • Quote:
    <table cellpadding="6" cellspacing="0" border="0" width="100%"> <tr> <td class="alt2" style="border:1px inset; padding:10px;">
    Originally Posted by Zerglinator View Post
    What are the exceptions, so that they can be tested?
    </td></tr></table>
    When you purchase the Homeguard Enchantment it will clear your undo history up to that point and then be undoable itself.
  • Quote:
    <table cellpadding="6" cellspacing="0" border="0" width="100%"> <tr> <td class="alt2" style="border:1px inset; padding:10px;">
    Originally Posted by Jorick View Post
    Having item history reset on the shop window closing seems a little much. Leaving the shop radius or casting a spell should be enough. What if I close my shop window and then realize I just bought a second pair of boots? There are already enough safeguards put in there to avoid abuse that I think the closing the shop window part is unnecessary.

    Other than that, this is a wonderful feature, glad you guys are putting it in.
    </td></tr></table>
    It doesn't clear on close, minor mistake in the original post from a bit of miscommunication.
    Had bigbadabruin clear that up.
  • Quote:
    <table cellpadding="6" cellspacing="0" border="0" width="100%"> <tr> <td class="alt2" style="border:1px inset; padding:10px;">
    Originally Posted by Zerglinator View Post
    Not Guardian Angel? I seem to remember concerns were voiced about Guardian Angel being an edge case for a resell button.
    </td></tr></table>
    Guardian Angel's cooldown should be remembered and since your undo history clears on receiving damage, that edge case shouldn't exist.
    If you do discover an abuse case, make sure you post it here.
  • Quote:
    <table cellpadding="6" cellspacing="0" border="0" width="100%"> <tr> <td class="alt2" style="border:1px inset; padding:10px;">
    Originally Posted by Mukataan View Post
    Just wondering whats this feature interaction with Will of the ancients and other aura items? I mean buy WoTA and ally Karthus then uses ulti...
    </td></tr></table>
    We're currently not handling the WotA case, though we may address it.
    This specific situation serves an interesting problem. The system was made so that we could, say, clear your undo history if an ally makes use of your WotA buff. That is super unclear though when it does occur when you're not trying to abuse it. We'll definitely be examining it though.


    Quote:
    <table cellpadding="6" cellspacing="0" border="0" width="100%"> <tr> <td class="alt2" style="border:1px inset; padding:10px;">
    Originally Posted by nuthusk View Post
    Or buy a 860 rod before ulti'ing as karthus, then sell it back and save for a NLR.
    I think it could be an exploit, but it's very situational. By the time Karthus teleport to base (8s), buy a NLR, cast ulti (3s), the enemy is probably healed up by now. And why would you sell back a NLR anyways?
    </td></tr></table>
    If you deal damage you lose your undo history as well. Nothing to exploit there.
  • Quote:
    <table cellpadding="6" cellspacing="0" border="0" width="100%"> <tr> <td class="alt2" style="border:1px inset; padding:10px;">
    Originally Posted by Slyvery View Post
    My main concerns:

    Any influence on other chance with the new item negates its use
    - Such as -

    Soraka Ult - No damage done but can have a major influence

    (As mentioned already) - Grabbing a Wota or Zeke's - Then an ally using an ability

    Buying an item - Casting an ult that takes time - EZ, Ashe, etc. - Then Selling before it hits target - Or are the calculations done at the time of the hit as opposed to the time of the sending (I think its the former because of the way TriForce interacts)

    Items such as Meja and Occulut can also pose interesting problems
    Cast Karthus, Shen, GP, Soraka etc. Ult
    Buy Meja - Post all damage done
    10 Second window from damage done for assists
    Rack up stacks on Meja then sell at the end of the window
    Purchase once 20 stacks are achieved

    Addendum - Will items such as Meja be able to 'hold' stacks
    Everytime I back I buy a tear and rack up a few more points then sell

    And I might be an idiot but what is the length of time for this function?
    </td></tr></table>
    Some more important pieces for these gameplay puzzles:
    Undo clears on any spell or item usage. It also clears on dealing any damage separately. Ezreal ult, for example, will clear once when cast and then once every time is passes through something.

    Most calculations are done on hit, not on cast (except cooldown).

    Undo triggers all things that would occur specific to an item as though you sold it. I would need to check each item to be certain, but most items get rid of their benefits on sell (or shortly after). Mejai's should clear itself within 1.2 seconds of undoing or selling.


    There is no time limit. Only game events will clear it.
  • In regards to wanting to undo after leaving the shop area:
    I hear you and I understand. However, the clear on leaving shopping area is not likely to change on release (it may however, there are many voices to this feature).

    We wish to go a more conservative route on release with this feature since it has the potential to cause much unwanted gameplay. If ever the optimal choice in a game is to with full intent use undo in such a way that is not compensating for an error, whether that be user or system error, then that is outside the scope of the feature. We don't want such occurrences because it's unclear optimization - there's no part of the system that reads "this is the way this should be used".

    We're still able to remove or reduce the restriction on leaving the shopping area at a later point in time as well. Adding that restriction after release, if it's discovered it's needed, would be taken much more harshly than slowly opening up the feature.

    With even the PBE release of this feature we've ran in to many strange abuse (and buggy) issues caused directly or incidentally with undo. Finding these takes more than theorizing; many issues have been quite niche. They take time. With each restriction we remove from undo, the more time it would require before this can go to live environments. In this case and in my opinion, I wouldn't like to make that trade off.


    On the other side of things, the system should not be so restricting as to remove from existing gameplay. It's purely additive. This is one of the reasons this is an undo rather than, say, a shopping cart approach. There's situations where a user purchases boots, starts to move towards lane, and then closes the item shop part of the way there. Most shopping cart designs would've lead to that user not getting the movement speed until the last moment.
  • Quote:
    <table cellpadding="6" cellspacing="0" border="0" width="100%"> <tr> <td class="alt2" style="border:1px inset; padding:10px;">
    Originally Posted by HPfunman View Post
    I have a question, if you are using a toggle ability with infinite duration (mundo w, swain ult, singed q) and then buy an item after toggling on can you undo purchases made with the ability active even if it doesn't damage anyone? You are technically using an ability after making a purchase, but you made the decision to use it before buying the item. I could see this as an issue because when I b as singed I like to leave my q on while buying to get tear stacks, but it could potentially screw me over if I buy two boots or something and I cant undo because I had toggled my q before the purchase was even made.

    Just want to make sure that you guys have considered this possibility.
    </td></tr></table>
    Currently, the clear on spell cast clears when you - actively - send the request. Spells that occur from a condition, such as something already being toggled on, should not clear your undo history.
    Toggling things on and off actively should clear your undo history.
  • Quote:
    <table cellpadding="6" cellspacing="0" border="0" width="100%"> <tr> <td class="alt2" style="border:1px inset; padding:10px;">
    Originally Posted by henroid View Post
    Since doing damage clears your undo history, does this mean that I can't undo my purchase if an enemy randomly steps on my Teemo shroom/Nidalee trap/Shaco box/Caitlyn trap out on the field while I was shopping?
    </td></tr></table>
    As much as it pains me from an understand-ability stance and as the-person-who-otherwise-be-stepping-on-the-AP-Teemo's-shrooms-even-though-he-was-AD-Teemo-while-he-was-alive-and-oh-gods-these-hurt, it clears your undo history.

    There are alternatives to solving some of the problems, whatever those problems may be, that not having it clear would cause but we opted for something a bit more general as to reduce the amount of niche explanations we would need to do for each exception.
  • Quote:
    <table cellpadding="6" cellspacing="0" border="0" width="100%"> <tr> <td class="alt2" style="border:1px inset; padding:10px;">
    Originally Posted by a natural 20 View Post
    Here's one case that I can think of as a reason for base restrictions. If at the beginning of the game you wander out and get vision on an enemy champion, you can see their items. Upon seeing their items you might decide you want to make a change to your items. Could potentially affect the game. (Not likely to happen, but I think you get my point)
    </td></tr></table>
    Item visibility and compensating for new information is pretty significant actually, especially at high levels of play.
    There's also corner case advantages like temporary captains boots to lead an escaping ally back in from a long chase.


    For speed boost situations, there's compensating for CDR switchouts. This is slightly more significant when it's a team boost speed up, such as comes from Sona or Jayce. Each case needs to be evaluated if we were to do ability specific exceptions.
    Exceptions also add to development costs - which translates to time. Not that hooking them up is difficult (adding tech to make a spell not add to the undo stack wouldn't take very long), but keeping track of which ones do an do not costs QA time, how to change it

    In this case, since this is an additive and restricted feature, not addressing the exceptions at first - as long as those exceptions don't harm the game state as is currently - and instead getting a solid marble statue for which we can chisel down the finer details later is important. Even if we decide that chiseling should remove the arms of the feature.



    We'll be turning undo off for PBE releases starting today until after this release makes it way to live. Undo is not intended for 3.10. We still have a few things to fix with it and we need to react to the great feedback provided here.