https://shopdb.ecocitycraft.com/bot Querying items By default, top 5 shops are shown. /pm somebot buy main diamond From somebot: air, $24 | acity, $26 | brighttree, $27 | shady_acres, $29.99 | wolftown, $30 Teleporting to destination /pm somebot tpa buy main air diamond From somebot: You have requested to teleport to air to buy diamond at X: 3758, Y: 135, Z: 8747. somebot has requested that you teleport to them. To teleport, type /tpaccept. To deny this request, type /tpdeny. This request will timeout after 30 seconds. /tpaccept Getting Coordinates [TODO] /pm somebot coords buy diamond main air From somebot: air, diamond, $24 | X: 3758, Y: 135, Z: 8747 Edit: This has been released! If you all have any suggestions, please do let me know!
Awesome idea and solves a lot of frustration. The only political issue I see is that warps become a lot less important since you now teleport to the sign.
Suggestion: Bot checks the chest to make sure it's not full. Love that it would teleport you to the chest, some of these signs can be hard to find and then once I do, there is no room.
Might be possible, assuming that Andrew would allow the bot to bypass LWC to peek into players chest shops (and assuming that is possible to do). I know the frustration of searching for a chest sign just to find it and not be able to use it for one reason or another. However, I think the teleport feature would make that much less painful. Just type two simple commands and you’re at the sign. If it’s out of stock, you’ve wasted much less time wasted than if you had to search for it.
not sure if at all possible but if the bot could systematically update all shops every x amount of time that would be really good. Also not sure how the tp function would work across servers?
I'm definitely looking into having this little helper update shops. Teleport does not work cross-server. You'll have to remember to switch to the server before requesting a teleport, or you'll get an error message from the bot. Here's a little demo.
I mentioned this ingame last night but thought I'd elaborate a little more (this is all based off the premise that the bot will have access to see inside a chest): If the bot will be able to go around and check chops/update them, try and see if you can use the chest-access to view if a chest is empty. If the chest is empty, then would it be possible to add a blacklist flag for those specific chests and prevent them from being seen on the website? This will not only prevent it from being seen on shopDb and help customers out with actually stocked items, but it will also clean up the site from the dead shops. It could be something worth considering since its a win-win situation
Good point, I feel like a lot of people will be using the bot if it were to become available so this situation is highly likely, Some possible safety nets that you might need to put in: Limit tp requests to once every 10 seconds to prevent spam, Possibly need to implement a queue system in the case that 2+ people request the teleport at once ^These are all what I could come up with! Hopefully they were helpful And the bot would need to wait at the location it has tp'd to until the request either expires, the tp is denied, or the person actually tp's before proceeding onto the second request (but im sure you've already thought of that haha!)
Unfortunately the contents of a chest are not available on the client-side until the chest is opened. This would require the bot to move around and open every chest, which would take unreasonably long. Not sure. It's able to query, teleport, and send a teleportation request all within half a second. If two players query within half a second of each other, it will likely get queued on a first-request basis. Yes, PMs in general will be limited. Once per 5 seconds is likely. If someone intentionally tries to spam it, they'll be blacklisted and ignored. The bot should not have to wait until the player accepts the teleport request. As far as I know once you do /tpahere, you can move around/teleport around freely. Once the player accepts, they'll be placed in the location which the command was originally typed.
If anyone has suggestions on a better format for the commands, please let me know. As I'm testing it's very hard to remember the syntax. The bot should pm you with correct syntax and an example if you mess up, but still, it's very difficult for me to remember myself. The item name will have to come last, due to some items having 1, 2, or 3 spaces. Don't want to have to program the logic for that. Easier to put it at the end.
Well, I see this will be in high demand. Getting constant PMs every minute before it's even done That's awesome! But unfortunately, it may be a little while before I release this. Still got some things to do.
This will also automatically update ALL shops, all day every day. I am still hashing a few things out, but I believe this will actually work. Super excited to release this.
This has just been released. https://shopdb.ecocitycraft.com/bot This is still in beta. Expect many downtimes/bugs.
Just a suggestion, the bot obviously has to tp to the chestshop-- except since the bot teleports to the shop with you, the bot stays infront of the chest you are trying to purchase from. And sometimes the chest is in the corner of a shop, or its just crowded and the bot gets in the way of you actually purchasing (not a huge deal u can push it over most of the time) but perhaps it could be made that once you accept the tp to the chestshop, it auto tp's to spawn or some /home it has preset so it gets out of the way.
This is pretty nifty. It helped me buy rails for cheap. One issue, is at malls with multiple people selling the same item, I seem to have been tp'd to the wrong chest. I was looking at the nstar buy main list and tp'd to one selling for 620 but It tp'd to a chest selling for 1000. I found the 620 sign elsewhere in the mall at another shop. Could be I just don't understand the inner workings.
Thanks for reporting this! Do you remember specifically which shop you were teleporting when this happened? The underlying logic selects the cheapest item from each shop. Only one result per shop, to prevent the same shop to be shown 5 times for 5 different people. This is also to prevent having to specify a username as well when teleporting to shops. That would get annoying. It seems there may be a mismatch between the logic to search for items and the logic when selecting the sign to teleport to. I’ll look into it.