Can Nothing Be Done About Failed Selling With Blocks/Mob Eggs In Your Hand?

Discussion in 'Suggestion Box Archives' started by azoundria, Jan 16, 2016.


Does This Affect You?

Never Affected Me 3 vote(s) 23.1%
It Did Once Or Twice 2 vote(s) 15.4%
Occasionally 3 vote(s) 23.1%
Sometimes 4 vote(s) 30.8%
Relatively Often 1 vote(s) 7.7%
Practically Every Day 0 vote(s) 0.0%
  1. So, it's come to be a common theme that people tell me my sell signs aren't working, and it is almost always because they've got a block or mob egg in their hand. Whenever a new player comes to my shop and asks how to buy or sell, they almost always get stuck on this even if I specifically tell them to make sure they are using an empty hand.

    I somehow was under the idea that there was nothing which could be done to fix this, since it somehow had to do with how the events were sent to the server. However, players get back errors like 'You don't have permission to build here.', so obviously the requests are processed by the server. Is it really impossible to tell that the user was right clicking on a sign and not trying to place a mob or block?

    If this was fixed, it would be a huge benefit. I think every new player gets stuck on it at one point or another, even experienced players seem to fall for it now and again, and that's also a huge disadvantage for shops since motivated new players can provide quite a bit of stock.
  2. The server sees a right click with a building block as trying to place that block. When you right click a sign with the block, it doesn't send the build event ON The sign, but rather the block in front of the sign (air), as if you had build permissions, thats where it would place the block.

    its 2 different events, when right clicking w/o block its an "Interact Event", with a block its a Build event.

    the 2 events are completely separate and the system performs actions based on when the event fires.

    We would have to restructure how the server handles things, special casing just for shops and potentially break expected behavior...

    We don't have the time for such a massive project :/
  3. Fair enough. I wasn't sure the exact details but that was roughly what I thought.

    As I understand it, if there's a sign placed that's part of a shop, there's no way to distinguish between placing a block or mob in front of a sign and right clicking on a sign with a block or mob egg. They're one event, which presently routes as a build or mob placement event.

    To fix this conclusively would require differentiating the two reliably. You may be able to look at the direction the user is facing, if the item being placed is sell-able in the nearby shop, whether the user has build rights, etc... however there will still be cases where the user is trying to place a mob or block and happens to be facing the sign and I don't think any algorithm would ever be able to 100% know. As you mentioned that would also be a lot of work (and I imagine could be error-prone too).

    However, the problem is not necessarily that people need to be able to sell with items in their hand. It's that new or forgetful players may not realize what the issue is. It seems to me that placing a block or mob in the space in front of a chest shop sign is very unlikely to be an intended user action, and it's likely not that complicated to determine if a shop sign exists in one of the 4 blocks adjacent to where a block or mob was placed. This would allow for a warning/reminder to be displayed - ie 'If you're trying to sell, clear your hand of any blocks or mob eggs.' This warning would be attached to the build or mob placement events.

    Another even simpler implementation may append this to the build rights message, potentially only if a shop sign exists in the 4 adjacent blocks. Something like this should be much simpler to build and solve 95% of the issue.
  4. Poking around the code potentially revealed a simple(ish) solution. Doing some testing right now. Does any other community members know of other blocks which cause this conundrum? No need to go out and test, just if you know off the top of your head.
  5. I believe boats cause this too
  6. Enderpearls also do this I believe, would have to test it.
    edit- only right clicking I think, I am not online, someone confirm/deny this.
  7. Thinking back now I can remember having the build permission message popping up, but never associated it with blocks on my hand. Feeling kind of stupid now :p
    If boats cause the issue then minecarts will too. Other items may be regular eggs, snowballs, fire charges, paintings, item frames and other items that create entities. I can also image a hoe or a flint and steel causing trouble, as they are left click items.
  8. Thanks for the feedback. I think I have the information I have to Fix it. Just gotta do it right (to prevent very bad things).
    Eviltoade, ThaKloned and ToddV like this.