Giter Club home page Giter Club logo

chestcleaner's People

Contributors

ahdg6 avatar brettp avatar graves501 avatar leanniki avatar perilstar avatar tom2208 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

chestcleaner's Issues

Dupe bug incompability with EnchantGUI

Hi there, I have a plugin called EnchantGUI that turns your enchanting table into a GUI system. When players right clicked the enchanting table with an iron hoe, it would dupe their item because the plugin thinks that they're clicking a container.

Can I request it so that on the PlayerInteractEvent, you check if it's a container? (Chest, Shulker box, Ender Chest, Trapped Chest, Dispenser, etc?) Currently I've removed the plugin and I'll wait till this issue is fixed

Server became unresponsive.

I suspect that ChestCleaner might have something to do with it so i thought it be better i post it here. This have never happened until a few hours after i installed ChestCleaner 2.0. I had no other version of ChestCleaner installed before 2.0, and the only other plugin i run is Dynmap. Server is based on Paperclip.jar v. 1.15.2

[20:38:16] [Server thread/INFO]: SomeGamer joined the game
[20:38:17] [Server thread/INFO]: SomeGamer [/IP ADDR:53748] logged in with entity id 1 at ([world]114.0849586267286, 63.0, 218.38341590479666)
[20:41:35] [Server thread/INFO]: SomeGamer lost connection: Disconnected
[20:41:35] [Server thread/INFO]: SomeGamer left the game
[20:48:03] [Craft Scheduler Thread - 5/WARN]: java.net.UnknownHostException: api.spigotmc.org
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:220)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:403)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/java.net.Socket.connect(Socket.java:609)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:285)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/sun.security.ssl.BaseSSLSocketImpl.connect(BaseSSLSocketImpl.java:173)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/sun.net.NetworkClient.doConnect(NetworkClient.java:182)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:474)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:569)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:265)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:372)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:191)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1187)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1081)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:177)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1587)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1515)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:250)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at chestcleaner.main.UpdateChecker$1.lambda$0(UpdateChecker.java:48)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at org.bukkit.craftbukkit.v1_15_R1.scheduler.CraftTask.run(CraftTask.java:84)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at org.bukkit.craftbukkit.v1_15_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:54)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
[20:48:03] [Craft Scheduler Thread - 5/WARN]:   at java.base/java.lang.Thread.run(Thread.java:834)

Server reacted fine to commands entered directly into server CLI.

Maven build encoding issue

It seems like there is an issue with the maven build of chestcleaner.
The color code for instance §6 is displayed in a worng way, the color works but it brings a 'T' or 'Â' like sybole with it (in console or ingame chat). This happens in the console and in the ingame chat.

Further the wrong plugin version gets displayed in the console (1.6.2 instead of 1.8).
Some example images:
https://imgur.com/meg39v7
https://imgur.com/gvUJtKQ

User Bug Report

"Since using 2.0 if I run a command that opens a GUI while holding a cleaning item it will clean the players inventory instead of opening the plugins GUI. (Tested with Jobs Reborn and McRPG GUI's) Paper 1.15.2"

Maven

Transforming the project into maven.

TPS sudden lag spike

When player is placing skull, it drops the server's TPS, and there's an event that is called. I've been able to capture it in spark, you can see it below.

Here's my server version:
Paper 1.15.2 build 378
chestcleaner 2.0.2

https://spark.lucko.me/#bHAJok8mXa

UTF-8 encoding?

A user reported an issue: he can't use his own language because of "ANSI" encoding.

Commands are not working on the console

There is no support for the commands in the console. This should be a feature of a future version.
You can find the command classes in the folder src/chestcleaner/commands, the work should be mainly done there.

A blacklist for autorefill

Hey, thanks a lot for the recent update!

We are currently still experiencing an issue with the autorefill feature. We use a plugin called Wildstacker to limit the number of spawners players can place in a chunk, however, when that plugin denies a spawner placement, the previously reported issue still occurs, even though it is fixed for WorldGuard regions.

Now, I think it would be futile trying to add support for all plugins out there, so a simple blacklist for autorefill, where you could just add the problematic items in cases like this would do the trick. Since there are already blacklists for sorting and stacking it would make sense to have one for this feature as well I guess.

Thanks a lot again for your effort!

sh1mrr4

Database

Creating a SQL support. Instead of saving the playerdata and config in a .yml file it should be possible to save it in database.
Further, if you want to use the same database for multiple servers there should be a feature that refreshs the playerdata and configurations, so that the player can change it's settings on one server and can use them in another (Should work already with login-loading, but we have to take an eye on that).

Issue with a datapack

I use Xisumavoid's Vanilla tweaks and the redstone Wrench datapack breaks when it is put in a chest with ChestCleaner running on PaperMCSpiggot 1.16.1-138

These are my datapacks
2020-09-17_17 03 13

these are my plugins when it is not working
Plugins

When I disable Chest Cleaner the Wrench is able to be put in a chest or hopper and taken back out and have it work. what more information can I provide you for this issue?

Option to disable update checker

I would like the ability to disable update checking, as the message being sent to me every time I log in is quite annoying, thanks! :)

Autorefill deleting items in certain situations

Hey,

I am encountering an issue with the autorefill feature in certain situations. If the last block of something in the hotbar is placed, but placing the block is prevented by another plugin (for example if somebody places a block in a region proteced by WorldGuard), the item moved to the hotbar by autorefill overwrites the item that wasn't actually placed.

This seems to be a general issue involving all kinds of plugins, that prevent block-placement in certain situations, so a fix for this handy feature would be greatly appreciated.

Version ChestCleaner: 2.0.2
Server: Paper 1.15.2-378

Best regards,
sh1mrr4

Is autorefilling consumables working properly?

I read the document for autorefill (https://github.com/tom2208/ChestCleaner/wiki/Autorefill-2.0) and try below setting in config.yml

refill:
  blocks: true
  consumables: true

It seems work for block, but seems not work for consumables. Below gif reproduce steps:

  • Put oak planks in toolbar and inventory, wooden shovels in toolbar and inventory.
  • Put all oak planks to field. It refilled automatically when put last one.
  • Consume shovel to make grass paths. When broken the shovel, hand is empty and shovel still exists in inventory.

ezgif-1-7d37ff6a97af

Is this behavior expected?

CraftBukkit version git-Spigot-e7dc2f5-a8ec1d6 (MC: 1.15.2) (Implementing API version 1.15.2-R0.1-SNAPSHOT)
Paper version git-Paper-318 (MC: 1.15.2) (Implementing API version 1.15.2-R0.1-SNAPSHOT)

When auto re-filling seeds, wheat goes into the hand instead.

When a player is placing seeds and runs out of the stack, if they have wheat and seeds in their inventory, wheat goes into their hand instead of more seeds.

It would be more helpful if wheat and seeds were separate in this way so that wheat only goes to the hand if you run out of wheat, and seeds only go to the hand if you run out of seeds.

Supporting other server versions

At the time ChestCleaner just works for server versions 1.13, 1.14 and 1.15 (maybe 1.16). A support for 1.7, 1.8, 1.9, 1.10, 1.11, 1.12 would be great.

making maven building work

At the moment there are some problems.

  1. Dealing with plugin.yml (eclipse build want it to be in src)
  2. wierd encoding of strings in maven builded versions
  3. dealing with the .properties files.

SortingUtils

Looks like you refactored some sorting functionalities to SortingUtils, but didn't add the file to your commit.

Adding Filters to the sorting system.

I would prefer a clearer, reusable and more adjustable sorting system. For this we should rework the whole sorting system a bit.
Creating filter objects you can combine for a sorting configuration. For instance CreariveTabFilter, ShapeFilter, etc.
The the server operators can set a combination of filters as the default state and the normal players can create their own individual filter combination.

The rules of the combination should be:

  • a filter should categorize all given materials
  • a filter should include more than one potential item for the most categories

filters are creating categories the next splits each category into other sub categories (may include a not effected category, but should categorize all materials) etc.
The order of categories is the sorting. After all other filters are applited the items in the first category will come first in the order they are saved in the category.
But we have to differ between filters and evaluators. Filters are creating categories, that would make no sense for evaluators. For instance the alphabetical evaluator, each item would have its own category. Filters are splitting materials into categories and are sorting the order of the categories then. Evaluators are compairing items.

Example:
{CreativeTabFliter, ShapeFilter, AlphabeticleEvaluator}
CreativeTabFilter => 10 CreativeTab categories
=> each of this categories would call the next filter ShapeFilter => creating new categories of the new filter => sorting the sub categories of ShapeFilter with the AlphabeticleEvaluator.

A visualition would look a bit like the visualition of merge sort (but with bigger groups of elements before starting to merge) (https://en.wikipedia.org/wiki/File:Merge_sort_algorithm_diagram.svg).

Pros:

easy to adjust, reuse
easy to create new filters
easy to safe the configuration of the players
easy to save player configurations
players can customize their own sortering
Cons:

you have to find abstraction levels to get the sorting you want, you can't just save a list of 900 Elements. You have to find the right combination of filters.
By the way: the playerconfig.yml is for the individual playerdata, generell configurations are saved in the config.yml

Writing a better documentation

A better documentation for spigot, to make it easier for people to understand the features of the plugin. You can orientate on my doctumentation on spigot if you need a list of the features or something. It should be short. Detailed informations are for the wiki.

Working on the wiki

The main here target is to create a good wiki. That means good and long explainations of every feature. In comapred to #4 this is more detailed, the documentation you can find on spigot should be just a short overview.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.