Minecraft Name: AnkokuNoMajo Suggestion: add a new sub command to /pay. [/pay history <page#>] Reason: Sometimes a player may be afk or chat is scrolling so fast you miss a notice about a transaction made between players. Another reason is for showing proof of a transaction in order to take a screen shot later. Other Information: The idea is to list a maximum of the last 10 - 20 transactions that happened in player to player payments for the player executing the command or for admin/GA [/pay history <playername>] to get the history of another player to settle disputes quickly.
There are scripts that you can run with macro mod that can do this. I believe someone has a macro mod tutorial somewhere with the proper code here on the forums.
I like to mod my client as little as possible (optifine is about as far as I go anymore). I am sure there are others that choose to play with a clean client as well. Secondly, I have used macromod in the past and know what it can do. The scripts function has caused some servers to ban its use so I prefer not to install it.
The problem here is that it is not sufficient evidence. If there was a server command and you can screenshot it that should be legitimate proof of payment. +1 Sent from my NX008HD8G using Tapatalk
Usually staff members will ask for the context of a transaction, this wouldn't provide that. I realize context might not always be needed, but your best bet is always collecting the evidence when doing the transaction, and not after the fact.
I'm not saying not to take enough screenshots to prove yourself, just that if it was coded into the server it could serve as secondary method to show payment.
As sarcastic as that came off, Vengful has a point. I know the odds are very slim but, /pay history. History might be a person... and if History is a player then what happens if they join? No one can ever pay them?
The system already logs every time a transaction takes place, your balance and the other players balance changes. It could lag if to many tried to query the logs at the same time.
That was quite a long time ago, staff and staff skills change over time; even minecraft and bukit has changed quite a bit since then. Maybe the idea can be revisited.
I have, although it's currently outdated, and andrew isn't willing to use it, because it adds more lines to userfiles, and with thousands of userfiles that's quite a difference with the backups he makes every day. (Because bigger files = longer time)
Yes, I have made a macro that allows you to view the last 10 transactions with a local chat command as well as logging all transactions to a file. It is the closest you can get without having a server side plugin to do it. As was pointed out, sadly it cannot be used as evidence, but you should be taking screenshots of every player to player transaction anyway. Macros, being client side, do not cause any lag for the server and it does nothing to andrewkm's userfiles. I have not made a tutorial for the macro but it is fairly simple to install. Just put it into your onChat event. Type "!trans recent" in local chat, go to .minecraft/mods/macros/logs directory (or something like that) to find the log file. Code: $${ STRIP(&chat,%CHAT%) IFMATCHES(%&chat%,\$[0-9]+\.\d\d has been taken from your account\.) MATCH(%&chat%,\$([0-9]+)\.([0-9]+),{#dollartaken,¢staken}) LOGTO("trans-%SERVER%.txt",%TIME%: $%#dollartaken%.%¢staken% has been taken from your account.) PUSH(&recenttrans,%TIME%: $%#dollartaken%.%¢staken% has been taken from your account.) ENDIF IFMATCHES(%&chat%,\$[0-9]+ has been taken from your account\.) MATCH(%&chat%,\$([0-9]+),{#dollartaken}) LOGTO("trans-%SERVER%.txt",%TIME%: $%&dollartaken% has been taken from your account.) PUSH(&recenttrans,%TIME%: $%#dollartaken% has been taken from your account.) ENDIF IFMATCHES(%&chat%,\$[0-9]+\.\d\d has been added to your account\.) MATCH(%&chat%,\$([0-9]+)\.(\d\d),{#dollaradded,¢sadded}) LOGTO("trans-%SERVER%.txt",%TIME%: $%#dollaradded%.%¢sadded% has been added to your account.) PUSH(&recenttrans,%TIME%: $%#dollaradded%.%¢sadded% has been added to your account.) ENDIF IFMATCHES(%&chat%,\$[0-9]+ has been added to your account\.) MATCH(%&chat%,\$([0-9]+),{#dollaradded}) LOGTO("trans-%SERVER%.txt",%TIME%: $%#dollaradded% has been added to your account.) PUSH(&recenttrans,%TIME%: $%#dollaradded% has been added to your account.) ENDIF IFMATCHES(%&chat%,\$[0-9]+\.\d\d has been sent to (.*)\.) MATCH(%&chat%,\$([0-9]+)\.(\d\d) has been sent to ((.*)),{#dollartaken,¢staken,&playername}) LOGTO("trans-%SERVER%.txt",%TIME%: $%#dollartaken%.%¢staken% has been sent to %&playername%) PUSH(&recenttrans,%TIME%: $%#dollartaken%.%¢staken% has been sent to %&playername%) ENDIF ENDIF IFMATCHES(%&chat%,\$[0-9]+ has been sent to (.*)\.) MATCH(%&chat%,\$([0-9]+) has been sent to ((.*)),{#dollartaken,&playername}) LOGTO("trans-%SERVER%.txt",%TIME%: $%#dollartaken% has been sent to %&playername%) PUSH(&recenttrans,%TIME%: $%#dollartaken% has been sent to %&playername%) ENDIF IFMATCHES(%&chat%,\$[0-9]+\.\d\d has been received from (.*)\.) MATCH(%&chat%,\$([0-9]+)\.(\d\d) has been received from ((.*)),{#dollaradded,¢sadded,&playername}) LOGTO("trans-%SERVER%.txt",%TIME%: $%#dollaradded%.%¢sadded% has been received from %&playername%) PUSH(&recenttrans,%TIME%: $%#dollaradded%.%¢sadded% has been received from %&playername%) ENDIF ENDIF IFMATCHES(%&chat%,\$[0-9]+ has been received from (.*)\.) MATCH(%&chat%,\$([0-9]+) has been received from ((.*)),{#dollaradded,&playername}) LOGTO("trans-%SERVER%.txt",%TIME%: $%#dollaradded% has been received from %&playername%) PUSH(&recenttrans,%TIME%: $%#dollaradded% has been received from %&playername%) ENDIF IFMATCHES(%&chat%,\[LOTTERY\] You got (.*) for \$(.*)) MATCH(%&chat%,^\[LOTTERY\] You got (.*) for \$((.*)),{&fill,#lotamount}) LOGTO("trans-%SERVER%.txt",%TIME%: You bought $%#lotamount% worth of lotto tickets.) PUSH(&recenttrans,%TIME%: You bought $%#lotamount% worth of lotto tickets.) ENDIF IFMATCHES(%&chat%,^\[LOTTERY\] Congratulations go to %PLAYER% for winning \$(.*) with .*) MATCH(%&chat%,\[LOTTERY\] Congratulations go to %PLAYER% for winning \$((.*)) with (.*),{#winamount,&fill}) LOGTO("trans-%SERVER%.txt",%TIME%: You won lotto and received $%#winamount%.) PUSH(&recenttrans,%TIME%: You won lotto and received $%#winamount%.) ENDIF IFMATCHES(%&chat%,^\[L\](.*)%PLAYER%: !trans recent) ARRAYSIZE(&recenttrans,#recentsize) #recentsize1 = #recentsize - 1 LOG(&41.&f%&recenttrans[%#recentsize1%]%) #recentsize2 = #recentsize - 2 LOG(&42.&f%&recenttrans[%#recentsize2%]%) #recentsize3 = #recentsize - 3 LOG(&43.&f%&recenttrans[%#recentsize3%]%) #recentsize4 = #recentsize - 4 LOG(&44.&f%&recenttrans[%#recentsize4%]%) #recentsize5 = #recentsize - 5 LOG(&45.&f%&recenttrans[%#recentsize5%]%) #recentsize6 = #recentsize - 6 LOG(&46.&f%&recenttrans[%#recentsize6%]%) #recentsize7 = #recentsize - 7 LOG(&47.&f%&recenttrans[%#recentsize7%]%) #recentsize8 = #recentsize - 8 LOG(&48.&f%&recenttrans[%#recentsize8%]%) #recentsize9 = #recentsize - 9 LOG(&49.&f%&recenttrans[%#recentsize9%]%) #recentsize10 = #recentsize - 10 LOG(&410.&f%&recenttrans[%#recentsize10%]%) ENDIF }$$
Personally, I think this would be a very good idea. It could help with missed payments as well. If you added in a reason next to the pay command that was logged, that could also be useful for players trying to track their transactions. I like it and hope it happens .
I do like this idea, and it sounds like a nice little command to be able to add to the server. I feel it would decrease the chances of people ranting about someone who didn't pay them for an item or something to that effect (when in actuality the player just missed the chat line with the money being received), and would overall lighten the mood of the server on a player to player basis. This I also think would help with loans, or payment plans, as one could see how many installments they have given to another user, if they had forgotten to write it down or lost count. If someone filed a report where the user claims a payment was not received, the /payhistory command could also be used in minor complaints as evidence, in case the user forgot to take a screenshot, or if the payment was broken down into multiple installments at different times. I feel this is an excellent idea, and like a lot of other users, hope that it is enacted soon.
I'm also not sure how difficult this would be to add plugin wise, but I do think that, if not too difficult to implement, this command should really be added, as it would benefit the masses greatly. Also I think it would save people a lot of hassle and stress as well, that otherwise might be added to their lives from forgetting to take a screenshot or something as simple as that.