AmberShop
A trade plugin for Sponge.
A player trade plugin for sponge
Home Page: https://ore.spongepowered.org/IzzelAliz/AmberShop
License: MIT License
Describe the bug
1.MCBBS权限列表的缺漏
在MCBBS的帖子中,您漏给了一个权限ambershop.user.query,这将导致玩家无法正常使用,
不过此权限确实有在github里给出,只是MCBBS里漏给了,以下是我的留言
https://www.mcbbs.net/thread-877173-5-1.html
2.疑似数据库的异常
【具体问题】
这是个很奇怪的错误,(在有上述权限的情况下)部分账号设置的商店无法出售与收购,而另一部分设置的商店完全正常,
以下是具体复现方式:
图中两个商店都是【id为wxy168】的玩家设置的,一个是收购石头,一个是出售石头
您可以看到我手里拿的就是一模一样的石头,但两个商店无论是买还是卖,都提示“没有足够的物品可供出售”,收购箱子也是给的这一提示,并且库存数不会同时更新,简而言之就是名为wxy168的玩家,无法使用牌子商店(权限是有的)。
↑图中,查询模组显示箱子内有57石头,而木牌、左键点击都提示库存未0
但当使用【id为Saku_wuhen】的账号设置时,都可以正常购买与出售,没有出现问题。
且用Saku_wuhen账号建立商店,并转让所有者给wxy168,同样未有异常。
因此,我判断这是由数据库里的元数据引发的问题。
【复现与详细的排查】
后台并没有报错,在反馈之前,我们做了大量的对比测试,可以确认这不是权限组或OP的问题,
随后便查看数据库进行了对比测试,并最终发现了问题
(wxy168也是位程序员,是他帮忙找出的问题)
【可能的解决方案】
当前,我们找到了一个临时的解决方案,也找到了一个代码错误
临时解决方案:
创建商店的时候,箱子里只能放一个那个物品,成功后再塞入更多
(如此操作,先前不能使用商店的wxy168所创建的商店可以正常使用)
代码错误:
这里应该是itemType = copy.createSnapshot();,否则itemType.quantity仍然可能不是1
但是到了最后,我们仍未能想通为什么名为Saku_wuhen的用户(我)为什么可以正常使用商店。
Environment:
This plugin lacks one more functionality, the limit of stores per player group.
This option was in QuickShop bukkit.
Example:
当非商店主人购买出售一件物品时,先后点不同的两个商店箱子,后者不会覆盖前者,会创建两个独立的交易会话,当玩家第一次是点错的时候,点第二个商店,输入购买数量响应的是第一次点击的商店
而当恶意玩家将商店一排排点过去,将会对服务器的TPS造成较为明显的影响
希望能添加一个回收功能~
Hi, can i ask you, do you plan some release soon?
I am asking because i really like your plugin, but i cant use it when it spamms my console too much and the sings are hiding sometimes :/ (as it is written here with bugs labels)
Thanks for you response.
:-)
Translate all message to french
Trap boxes can be used to create a store, but when you click on a box or a wooden sign, there is no response, but you can use the /as unlimited true/false command to change the unlimited store.
I think this is just a trigger problem.
Hope to be able to support trap boxes also as stores.
This makes the store more compact and attractive.
陷阱箱可以正常的创建商店,然而玩家点击箱子或者是木牌都没有任何反应,但是可以用/as unlimited true/false指令来更改无限商店。
我觉得这个只是一个触发问题。
希望可以支持陷阱箱也作为商店。
这样可以使得商店更加紧凑好看。
Environment:
Describe the bug
很抱歉,我没有报错,也不清楚这是否算是一个bug,但我的确遇到了问题
问题的核心在于:
我使用了正确的版本正确的步骤,仍无法使用AmberShop
左键箱子没有反应,在箱子内放入物品并输入指令永远提示"你需要指向一个方块"
*插件是有成功载入的,指令列表都有出来
To Reproduce
我已确认有完整的翻过MCBBS的帖子与WIKI,并按文中所述的步骤尝试,但就是没有任何反应。
为此,我还装载了文中提到的锁箱、经济、LP权限(并确定插件的九个权限皆已给自己)
自己折腾了半天后没有结果,加群也并没有人批,只能来此请求您的帮助
如果是我漏了哪个步骤,我为此感到抱歉
Hi, is it posiible to sell item to the shop? Or could it be possible?
Thanks
Describe the bug
当我把插件升级到1.1.0版本之后 玩家出现了无法修改价格的错误显示
To Reproduce
当玩家放置一个箱子 然后输入-1 的价格进行收购 然后再次点击箱子 点击更改设置价格,然后输入新的价格就会出现下图提示
https://s2.ax1x.com/2019/08/12/mpEcwj.png
Environment:
spongeforge-1.12.2-2825-7.1.6-RC3755
AmberShop-1.1.0-all.jar
Stacktrace/Crash report
后台无报错
Getting this error in the chatbox when using the command to create a new shop
Title. The chest just opens right up and you can take the stuff
当服务器有mod被删除时. 该mod的方块又在商店里售卖..那么那个箱子和附近的一些箱子将无法使用.,此时你也无法再创建新的箱子商店了..但是已经创建好的部分箱子商店是可以正常使用的
Describe the bug
A clear and concise description of what the bug is.
due to the plugin using /as it conflicts with adamanteshields /as i command
tried forcing it in the sponge config so that adamanteshield prioritizes is but no luck.. this is a big problem for anyone that requires their server to use block loggers.
To Reproduce
Steps to reproduce the bug.
Environment:
Stacktrace/Crash report
You may put it on https://paste.ubuntu.com if possible.
Describe the bug
My shops signs are hiding when i come to them... see the video
To Reproduce
I dont know, see my video. PLEASE SEE IT FULL TO SEE THE ISSUE.
Environment:
Video with issue: https://youtu.be/5CGA_MeyaWE
i am using optifine, i can send you all logs debugs etc if you want and need it
增加一条权限可以让玩家免除税收。
英文不会。:)
Version: AmberShop-1.1.5-all.jar
I am guessing this may be related to me removing a mod (littletiles), but it only seems to of appeared now, and can likely be handled much cleaner.
ambershop.mv.zip
java.util.concurrent.ExecutionException: org.spongepowered.api.data.persistence.InvalidDataException: Could not deserialize something correctly, likely due to bad type data.
at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.8.0_242]
at java.util.concurrent.FutureTask.get(FutureTask.java:192) ~[?:1.8.0_242]
at io.izzel.ambershop.listener.DisplayListener$PlayerChunkChangeTask.accept(DisplayListener.java:165) ~[DisplayListener$PlayerChunkChangeTask.class:?]
at io.izzel.ambershop.listener.DisplayListener$PlayerChunkChangeTask.accept(DisplayListener.java:128) ~[DisplayListener$PlayerChunkChangeTask.class:?]
at org.spongepowered.common.scheduler.SchedulerBase.lambda$startTask$0(SchedulerBase.java:197) ~[SchedulerBase.class:1.12.2-2838-7.2.1-RC4017]
at org.spongepowered.common.scheduler.SyncScheduler.executeTaskRunnable(SyncScheduler.java:74) ~[SyncScheduler.class:1.12.2-2838-7.2.1-RC4017]
at org.spongepowered.common.scheduler.SchedulerBase.startTask(SchedulerBase.java:188) ~[SchedulerBase.class:1.12.2-2838-7.2.1-RC4017]
at org.spongepowered.common.scheduler.SchedulerBase.processTask(SchedulerBase.java:174) ~[SchedulerBase.class:1.12.2-2838-7.2.1-RC4017]
at java.util.concurrent.ConcurrentHashMap$ValuesView.forEach(ConcurrentHashMap.java:4707) [?:1.8.0_242]
at org.spongepowered.common.scheduler.SchedulerBase.runTick(SchedulerBase.java:112) [SchedulerBase.class:1.12.2-2838-7.2.1-RC4017]
at org.spongepowered.common.scheduler.SyncScheduler.tick(SyncScheduler.java:47) [SyncScheduler.class:1.12.2-2838-7.2.1-RC4017]
at org.spongepowered.common.scheduler.SpongeScheduler.tickSyncScheduler(SpongeScheduler.java:189) [SpongeScheduler.class:1.12.2-2838-7.2.1-RC4017]
at org.spongepowered.mod.SpongeMod.onTick(SpongeMod.java:457) [SpongeMod.class:1.12.2-2838-7.2.1-RC4017]
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_496_SpongeMod_onTick_ServerTickEvent.invoke(.dynamic) [?:?]
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90) [ASMEventHandler.class:?]
at net.minecraftforge.fml.common.eventhandler.EventBus.forgeBridge$post(EventBus.java:753) [EventBus.class:?]
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:703) [EventBus.class:?]
at net.minecraftforge.fml.common.FMLCommonHandler.onPreServerTick(FMLCommonHandler.java:279) [FMLCommonHandler.class:?]
at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:657) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526) [MinecraftServer.class:?]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_242]
Caused by: org.spongepowered.api.data.persistence.InvalidDataException: Could not deserialize something correctly, likely due to bad type data.
at org.spongepowered.api.data.persistence.AbstractDataBuilder.build(AbstractDataBuilder.java:89) ~[AbstractDataBuilder.class:1.12.2-2838-7.2.1-RC4017]
at org.spongepowered.common.data.SpongeDataManager.lambda$deserialize$1(SpongeDataManager.java:196) ~[SpongeDataManager.class:1.12.2-2838-7.2.1-RC4017]
at java.util.Optional.flatMap(Optional.java:241) ~[?:1.8.0_242]
at org.spongepowered.common.data.SpongeDataManager.deserialize(SpongeDataManager.java:196) ~[SpongeDataManager.class:1.12.2-2838-7.2.1-RC4017]
at io.izzel.ambershop.data.ShopRecord.readMeta(ShopRecord.java:104) ~[ShopRecord.class:?]
at io.izzel.ambershop.data.ShopRecord.readResultSet(ShopRecord.java:140) ~[ShopRecord.class:?]
at io.izzel.ambershop.data.ShopDataSourceImpl.lambda$getByChunk$11(ShopDataSourceImpl.java:211) ~[ShopDataSourceImpl.class:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_242]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) ~[?:1.8.0_242]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) ~[?:1.8.0_242]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_242]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_242]
... 1 more
Caused by: java.util.NoSuchElementException: No value present
at java.util.Optional.get(Optional.java:135) ~[?:1.8.0_242]
at org.spongepowered.common.data.builder.item.SpongeItemStackSnapshotBuilder.buildContent(SpongeItemStackSnapshotBuilder.java:61) ~[SpongeItemStackSnapshotBuilder.class:1.12.2-2838-7.2.1-RC4017]
at org.spongepowered.api.data.persistence.AbstractDataBuilder.build(AbstractDataBuilder.java:87) ~[AbstractDataBuilder.class:1.12.2-2838-7.2.1-RC4017]
at org.spongepowered.common.data.SpongeDataManager.lambda$deserialize$1(SpongeDataManager.java:196) ~[SpongeDataManager.class:1.12.2-2838-7.2.1-RC4017]
at java.util.Optional.flatMap(Optional.java:241) ~[?:1.8.0_242]
at org.spongepowered.common.data.SpongeDataManager.deserialize(SpongeDataManager.java:196) ~[SpongeDataManager.class:1.12.2-2838-7.2.1-RC4017]
at io.izzel.ambershop.data.ShopRecord.readMeta(ShopRecord.java:104) ~[ShopRecord.class:?]
at io.izzel.ambershop.data.ShopRecord.readResultSet(ShopRecord.java:140) ~[ShopRecord.class:?]
at io.izzel.ambershop.data.ShopDataSourceImpl.lambda$getByChunk$11(ShopDataSourceImpl.java:211) ~[ShopDataSourceImpl.class:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_242]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) ~[?:1.8.0_242]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) ~[?:1.8.0_242]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_242]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_242]
... 1 more```
Whenever Myself as an op or a normal player try and click the signs for the shop, they just vanish for a second(sometimes until i click them again) and nothing happens.
I'm using bungeerecord cross server chat
This plug-in intercepts chat messages directly at bungeeecord
The sub server can not receive the chat information, which makes it unable to purchase.
Can you buy it in other ways?
Title. The sign just vanishes but doesn't come back until I open the chest
So breaking it with an axe doesn't trigger it.
Describe the bug
When you sell an item to a shop and the owner doesnt have enough money the item gets removed from the seller, neither of the buyer and seller get the item.
To Reproduce
1 make a selling shop and have 0 in your balance.
2 sell an item to the shop and the item gets removed.
Environment:
Describe the bug
https://i.loli.net/2019/08/13/b7ocBr1dAhOPEmZ.png
To Reproduce
Use iron chest and create a shop.
Environment:
Stacktrace/Crash report
https://i.loli.net/2019/08/13/b7ocBr1dAhOPEmZ.png
Here's a question:
HuskyCrates Lucky draw plug-in:
Lucky draw key.
Instant [Express Store] AmberShop-1.1.5-all version, after making the box store, convert it into an unlimited store, only the first key put into the box will be available for the raffle, if there is no key for creating the store in the unlimited store, it will be used for the raffle, it will indicate that the key does not match, please use the xxx raffle key.
If you create a non-unlimited store, it appears:
The keys created for the first time (that is, the keys generated by the first instruction, single or multiple) can be sold and used in the raffle. If the regenerated keys are put into the store, they will appear and cannot be sold, indicating that the stock is not enough, that is, the newly placed keys are invalid, non-first generated keys, or cannot use the raffle box after sale.
Please forgive my poor English.
Describe the bug
Hight load by AmberShop.
io.izzel.ambershop.listener.DisplayListener$PlayerChunkChangeTask.accept() 32.04% 53184ms
Environment:
Stacktrace/Crash report
SpongePowered/SpongeForge#3085 (comment)
Hello, i've changed the plugin config directory from Sponge's configs it should be under plugins folder like every other plugin i'm using but it's under mod configs, can you fix it?
Hey
i want to ask..in the englisch locale there is a line: Using {0} as language.
How can i change the language?
Describe the bug
My console is instantly spammed by sponge with some warn issues of amber shops
To Reproduce
Idk, just run it.
Environment:
spongeforge-1.12.2-2838-7.1.7-RC3838
AmberShop-1.0.3-all
Describe the bug
sponge spam warning message due to "Could not pass the event ChangeBlockEvent$Break$Impl to an Event Listener!"
I think problem is Ambershop with DynamicTreesBOP
To Reproduce
Environment:
Stacktrace/Crash report
https://pastebin.com/DPcFCmKK
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.