Unfortunately, there's no safe way to trade with people in Minecraft. Sure, you can build those bulky, redstone trading machines, but they can be a problem when you want to trade in bulk and need to see the numbers or if you accidentally throw the wrong item in. This is where my idea comes in. (Sorry if a similar idea has already been mentioned)
Alright, I've scratched my old idea of the "Trading Button" in the menu thing and came up with something much more simplistic, part of which was MacUser's idea.
Starting a Trade
Here's an example:
To trade with Steve, Herobrine must be within punching distance of him, so about 2-3 blocks or so. He would then hold the 'T' key and then right click Steve to send him a trade request. An achievement styled notification will pop up on his screen saying "Trade request sent to Steve". Steve will get an achievement styled notification that says "Herobrine would like to trade". If Steve holds the 'T' key and right clicks Herobrine back, the trading GUI will open.
The Trading Process
Here's what the trading GUI would look like.
Top Left Grid: Your offer Top Right Grid: The other player's offer (items in this grid cannot be taken, modified or moved) Bottom Grid: your inventory and hotbar
Small Boxes: The confirmation boxes. click on the box under your grid to confirm your offer, highlighting the box green. The other box is to show that the other player has confirmed their offer. Once you confirm your trade, you cannot add, remove or alter items on your trading grid unless you click on your confirmation box again.
Arrows: These will begin to fill up (same speed as smelting in a furnace) once both players have confirmed their offer. If one of the players clicks on their confirmation box, the arrows will reset, both confirmation boxes will turn off and both players will have to confirm their offer again. This system should prevent any kind of scam.
After a successful transaction, a notification will pop up, saying that the trade was successful.
Dealing with Certain Issues
Trade requests will naturally expire after one minute if they are ignored. If a player leaves the trading radius, the invite will automatically expire.
If a player closes the trading screen abruptly, a trade request will need to be sent again and all your items will be returned to your inventory.
If one of the players does not have enough room for the items they are receiving, once the trade "finishes", all the items you were offering go back into your inventory. A notification will say that the trade was unsuccessful.
If another player tries to send a trade invite to a player that is already trading, they will get a notification that says "<Insert Name> cannot trade right now".
If another player tries to send a trade invite to a player that has a pending trade invite, they will also get a notification that says "<Insert Name> cannot trade right now".
Other Small Details
A small, blinking exclamation point icon will appear at the top right corner of your screen when you have been sent a pending trade invite. This icon will go away once the trade GUI is opened or once the invite expires.
The notifications will have a picture of the player's head that you send the invite to or received the invite from.
Final Note
Please tell me what you think about this. This trade system has a very similar setup to Steam, like when you're trading items in Team Fortress 2.
Or you can drop emeralds/insert-currency-here and they can drop insert-product-here. Not that I don't want a better system for trade, but I'd rather that buff for trade be between player and Non-player shop (I.E, a server shop) because that's what's really in need of a better system. Something simple like the ability to /clear a specific number of a specific item.
But my point is that it isn't player-player trade that needs to be altered. Trade, even in real life, is just dropping money on the counter for a product on the counter, is it not?
I'd rather that buff for trade be between player and Non-player shop (I.E, a server shop) because that's what's really in need of a better system.
I do agree that having a nice server shop system in vanilla SMP would be awesome, but I still like the idea of having a better player to player trade system as well. I'm sure that finding a good way to implement server shops into vanilla SMP would make a nice topic though.
Trade, even in real life, is just dropping money on the counter for a product on the counter, is it not?
True, but in real life, if you don't abide by the law, there will be serious consequences. When you're just playing a game like Minecraft, a simple steal will only get you a ban from that server at the very most.
I like the idea of secure trading, but I think it should just be by right-clicking another player or something direct like that. Otherwise, you could abuse the system of wireless trading when you're, say, mining with your friend. But the GUI window you've made is perfect.
As convenient as this would be, I think there's something to be said for the basic risk of doublecross to encourage the cultivation of a good reputation for honesty. An interface for player-player trade does not strike me as adding anything other than security, but with no cost. It would also make it worthless to invest time and resources in building a redstone mediated trade mechanism.
I think there IS a need for a player trading system, but more to accommodate those situations where the players can't log in at the same time enough to trade as they would like. Some kind of shop mechanism. But that's another thread.
Rollback Post to RevisionRollBack
For philosophy, law, science, religion and other topics: A Blog of Tom
This reminds me quite a bit of the Runescape trade interface. There were some problems with that, notably removing items in the second before a trade. Also, passing of items to another player, then switching them, etc. I do think its is a good idea though-here's why.
Playing with friends/people you trust, chuck stuff at them. You all know you are not giving anything away.
Trading with a person you do not know/trust...use the trade interface. Less chance of double crossing. Also, in hostile environments, there's no chance of loosing your items, and no one can run between you and take them at the last second.
I would suggest adding a second window as a "Are you sure you wish to trade?" to prevent any cheating-that window is locked to editing.
Support, with some changes. This is a feature we could use, if not the way you have presented it.
As convenient as this would be, I think there's something to be said for the basic risk of doublecross to encourage the cultivation of a good reputation for honesty. An interface for player-player trade does not strike me as adding anything other than security, but with no cost. It would also make it worthless to invest time and resources in building a redstone mediated trade mechanism.
It's not just that. Sometimes, when you're giving your friend items, you accidentally pick up the items you're throwing at him, or worse, someone else does.
It's not just that. Sometimes, when you're giving your friend items, you accidentally pick up the items you're throwing at him, or worse, someone else does.
I grant that there are numerous situations where this would be convenient. But I do not think we should have a system built into the game to protect us from our own mistakes, especially when there are solutions already available. It's not that I think this is a bad idea. I just think it's a little too much unnecessary hand-holding.
Rollback Post to RevisionRollBack
For philosophy, law, science, religion and other topics: A Blog of Tom
First thought: You need to have each player's confirmation box get reset any time the other player removes something from their trading box., and perhaps also when they add to their own trading box.
That "something to be said for honesty" argument is an appeal to real life... but in real life, there are a lot more options for punishing cheaters, ranging from cutting remarks up to involving the law, and beyond. A Minecraft game world generally doesn't have a police force, and it's often easy for strangers to enter and leave. This makes "drive-bys" much easier, and it means that the burden of enforcing rules lands on the server operator, who can't do much beyond banning the user. For servers that just want basically friendly interactions, or at least controlled fighting, an interface like this would save a lot of drama.
Rollback Post to RevisionRollBack
I did some CraftTweaker scripts for Mystical Agriculture. They fill in a couple of small gaps in MA, and also let you make or duplicate not only vanilla plants, but the blocks, plants and wood from Quark and Biomes O'Plenty. Also spawn eggs for most vanilla mobs! The scripts are here on Github.
I grant that there are numerous situations where this would be convenient. But I do not think we should have a system built into the game to protect us from our own mistakes, especially when there are solutions already available. It's not that I think this is a bad idea. I just think it's a little too much unnecessary hand-holding.
I really only want there to be a system of giving other players items securely, not a system of trading without fear of being scammed. It's just annoying to have to throw the items at the other person because it becomes confusing. On a vanilla server, you can still break into a redstone trading system anyway, but it's not a concern of mine.
I grant that there are numerous situations where this would be convenient. But I do not think we should have a system built into the game to protect us from our own mistakes, especially when there are solutions already available. It's not that I think this is a bad idea. I just think it's a little too much unnecessary hand-holding.
I do understand what you're getting at. Having a secure trading GUI is not needed at all, technically speaking, but I always thought it would be a nice feature to have if you want to trade with somebody that you don't know or can fully trust. I wouldn't be too bummed out if something like this never happens, but in my opinion, it would be a treat if something like this were to get added to Minecraft.
First thought: You need to have each player's confirmation box get reset any time the other player removes something from their trading box., and perhaps also when they add to their own trading box.
If the other player removes their confirmation and changes their offer, you'd better be paying attention! XD I guess I could take the security thing a step further and make both confirmation boxes uncheck themselves if one player unchecks theirs. Thanks for patching a hole in the system.
Unfortunately, there's no safe way to trade with people in Minecraft. Sure, you can build those bulky, redstone trading machines, but they can be a problem when you want to trade in bulk and need to see the numbers or if you accidentally throw the wrong item in. This is where my idea comes in. (Sorry if a similar idea has already been mentioned)
Alright, I've scratched my old idea of the "Trading Button" in the menu thing and came up with something much more simplistic, part of which was MacUser's idea.
Starting a Trade
Here's an example:
To trade with Steve, Herobrine must be within punching distance of him, so about 2-3 blocks or so. He would then hold the 'T' key and then right click Steve to send him a trade request. An achievement styled notification will pop up on his screen saying "Trade request sent to Steve". Steve will get an achievement styled notification that says "Herobrine would like to trade". If Steve holds the 'T' key and right clicks Herobrine back, the trading GUI will open.
The Trading Process
Here's what the trading GUI would look like.
Top Left Grid: Your offer
Top Right Grid: The other player's offer (items in this grid cannot be taken, modified or moved)
Bottom Grid: your inventory and hotbar
Small Boxes: The confirmation boxes. click on the box under your grid to confirm your offer, highlighting the box green. The other box is to show that the other player has confirmed their offer. Once you confirm your trade, you cannot add, remove or alter items on your trading grid unless you click on your confirmation box again.
Arrows: These will begin to fill up (same speed as smelting in a furnace) once both players have confirmed their offer. If one of the players clicks on their confirmation box, the arrows will reset, both confirmation boxes will turn off and both players will have to confirm their offer again. This system should prevent any kind of scam.
After a successful transaction, a notification will pop up, saying that the trade was successful.
Dealing with Certain Issues
Trade requests will naturally expire after one minute if they are ignored. If a player leaves the trading radius, the invite will automatically expire.
If a player closes the trading screen abruptly, a trade request will need to be sent again and all your items will be returned to your inventory.
If one of the players does not have enough room for the items they are receiving, once the trade "finishes", all the items you were offering go back into your inventory. A notification will say that the trade was unsuccessful.
If another player tries to send a trade invite to a player that is already trading, they will get a notification that says "<Insert Name> cannot trade right now".
If another player tries to send a trade invite to a player that has a pending trade invite, they will also get a notification that says "<Insert Name> cannot trade right now".
Other Small Details
A small, blinking exclamation point icon will appear at the top right corner of your screen when you have been sent a pending trade invite. This icon will go away once the trade GUI is opened or once the invite expires.
The notifications will have a picture of the player's head that you send the invite to or received the invite from.
Final Note
Please tell me what you think about this. This trade system has a very similar setup to Steam, like when you're trading items in Team Fortress 2.
Answer: Purple, because aliens don't wear hats.
But my point is that it isn't player-player trade that needs to be altered. Trade, even in real life, is just dropping money on the counter for a product on the counter, is it not?
[quote=Badgerz]You have to keep in mind that people are stupid.
[quote=Catelite]Just because you don't understand how something works, doesn't make it broken or pointless. >_<
I do agree that having a nice server shop system in vanilla SMP would be awesome, but I still like the idea of having a better player to player trade system as well. I'm sure that finding a good way to implement server shops into vanilla SMP would make a nice topic though.
True, but in real life, if you don't abide by the law, there will be serious consequences. When you're just playing a game like Minecraft, a simple steal will only get you a ban from that server at the very most.
Answer: Purple, because aliens don't wear hats.
Not sure what kind, though.
I think there IS a need for a player trading system, but more to accommodate those situations where the players can't log in at the same time enough to trade as they would like. Some kind of shop mechanism. But that's another thread.
Playing with friends/people you trust, chuck stuff at them. You all know you are not giving anything away.
Trading with a person you do not know/trust...use the trade interface. Less chance of double crossing. Also, in hostile environments, there's no chance of loosing your items, and no one can run between you and take them at the last second.
I would suggest adding a second window as a "Are you sure you wish to trade?" to prevent any cheating-that window is locked to editing.
Support, with some changes. This is a feature we could use, if not the way you have presented it.
It's not just that. Sometimes, when you're giving your friend items, you accidentally pick up the items you're throwing at him, or worse, someone else does.
I grant that there are numerous situations where this would be convenient. But I do not think we should have a system built into the game to protect us from our own mistakes, especially when there are solutions already available. It's not that I think this is a bad idea. I just think it's a little too much unnecessary hand-holding.
That "something to be said for honesty" argument is an appeal to real life... but in real life, there are a lot more options for punishing cheaters, ranging from cutting remarks up to involving the law, and beyond. A Minecraft game world generally doesn't have a police force, and it's often easy for strangers to enter and leave. This makes "drive-bys" much easier, and it means that the burden of enforcing rules lands on the server operator, who can't do much beyond banning the user. For servers that just want basically friendly interactions, or at least controlled fighting, an interface like this would save a lot of drama.
I really only want there to be a system of giving other players items securely, not a system of trading without fear of being scammed. It's just annoying to have to throw the items at the other person because it becomes confusing. On a vanilla server, you can still break into a redstone trading system anyway, but it's not a concern of mine.
I do understand what you're getting at. Having a secure trading GUI is not needed at all, technically speaking, but I always thought it would be a nice feature to have if you want to trade with somebody that you don't know or can fully trust. I wouldn't be too bummed out if something like this never happens, but in my opinion, it would be a treat if something like this were to get added to Minecraft.
If the other player removes their confirmation and changes their offer, you'd better be paying attention! XD I guess I could take the security thing a step further and make both confirmation boxes uncheck themselves if one player unchecks theirs. Thanks for patching a hole in the system.
On a random note, I added a poll.
Answer: Purple, because aliens don't wear hats.