#help-archived

1 messages · Page 101 of 1

tardy lance
#

@torn robin Nothing relevant, other stuff but i can show you

harsh anvil
#

tbh as long as you just add and remove players it doesnt really matter

worn temple
#

Yes, but objects like that shouldn't be used as a key in the first place. so use something better that is tied to the data.

spring drift
#

I just changed a plugins source code, how would I compline that into the plugin itself on the server.

tardy lance
brisk mango
#

Okay what should i use instead of inventory?

#

if i need to store inventory objects

#

Well and another thing, ive still havent heard a proper reason why they shouldnt be used as a key

torn robin
#

@tardy lance if you remove line 33 is it fixed?

#

if no then that's not the issue

tardy lance
#

@torn robin in survival it doesnt duplicate

torn robin
#

yeah so it's a creative mode thing

tardy lance
#

yes it is away

worn temple
#

Inventory has a value comparison, multiple inventories can have the same value. So therefore a collision is possible.

tardy lance
#

if i remove line 33

worn temple
#

UUIDs cannot have the same value for example, no collision is possible.

harsh anvil
#

(technically they can 👀 )

#

but its essentially unique

tardy lance
#

but can i prevent that it doesnt work in creative? @torn robin

worn temple
#

(technically yes, but they are unique enough that the mathematical chance it will happen is longer than the universe will exist, so good enough!)

brisk mango
#

Inventory has a value comparison? what

#

how can multiple inventories have same value

#

when you create a new inventory you create a new instance of inventory

minor laurel
#

hi

brisk mango
#

how can there a collision happen

torn robin
#

@tardy lance what are you trying to do exactly?

spring drift
#

I just changed a plugins source code, how would I compline that into the plugin itself on the server?

harsh anvil
#

contains/get uses equals internally and from what i can see thats not being overridden by inventory so it uses the hash to compare

torn robin
#

also hi Alice

tardy lance
#

I want to lock this item in inventory

harsh anvil
#

which is the same as uuid's

tardy lance
#

that you cant move it

torn robin
#

@spring drift have you tried exporting like regularly

worn temple
#

that's instance comparison, not value comparison. New instances can have the same values.

Long a = Long.parseLong("123");

Long b = Long.parseLong("123");

Both a and b are different instances, but they have the same value.

torn robin
#

Verilyzed you could try setting the result to DENY

brisk mango
#

yes paseLong

#

is that a comparison?

#

couldnt tell

worn temple
#

typos, who cares. ¯_(ツ)_/¯

tardy lance
#

What result?

torn robin
#

event.setResult

spring drift
#

I don't know anything of compiling. What does exporting mean @torn robin

torn robin
#

uhhh

harsh anvil
#

You're wrong in this case tho, only the objects hashes get compared, nothing about the contents of the inventory

naive goblet
#

Google "export" pig

torn robin
#

how did you change the source code

tardy lance
#

event.setResult(null); ?

torn robin
#

Result.DENY

spring drift
#

I mean like how would I export

harsh anvil
#

@spring drift usually people use maven or gradle to build their jars, but you can let intellij build the artifact too

#

or eclipse whatever you use

brisk mango
#

@worn temple no shit they are different instances but same values. Thats what we are fucking talking about all the time, if inventories have different instances, how would they collide then when you would use == to compare them

#

and you keep saying bullshit about "complex objects" that doesnt make no sense

worn temple
#

because when inserting or getting something by key in Map is a value comparison, not instance comparison.

torn robin
#

right click on the project and click export assuming you'r eusing elcipse

brisk mango
#

getting something by a key isnt a value comparison

harsh anvil
#

no its a hash comparison lol

#

unless its overriden

brisk mango
#

exactly

harsh anvil
#

which its not in this case

tardy lance
#

@torn robin Same issue

torn robin
#

well no idea then

brisk mango
#

just stop talking @worn temple please

harsh anvil
#

no need to be so rude, but yeah you're not correct

brisk mango
#

i dont wanna be rude but this guy is acting like he just studied 50 books of java but totally doesnt know shit

#

and everything he says makes no sense

harsh anvil
#

Yeah welcome to spigot

tardy lance
#

hm

worn temple
#

I've been working with Java for nearly a decade now. You're just an idiot. Its standard convention not to use mutables as map keys

#

You seriously suffer from the Dunning Kruger effect

harsh anvil
#

you say that yet what you're saying is wrong

brisk mango
#

"not to use mutables as map keys"

#

alright

#

nearly a decade but everything you say is wrong

#

pathetic

tiny dagger
#

i think the collision happens when the .equal has to go in a frenzy by checking the insides 🤔

harsh anvil
#

"If an object’s hashCode() value can change based on its state, then we must be careful when using such objects as keys in hash-based collections to ensure that we don’t allow their state to change when they are being used as hash keys. All hash-based collections assume that an object’s hash value does not change while it is in use as a key in the collection. If a key’s hash code were to change while it was in a collection, some unpredictable and confusing consequences could follow. This is usually not a problem in practice — it is not common practice to use a mutable object like a List as a key in a HashMap."

tiny dagger
#

locations are mutable i think

harsh anvil
#

i havent tested if the hash changes of an inventory when its content change

torn robin
#

yes

tiny dagger
#

like in changing hashcode

torn robin
#

unfortunately so

harsh anvil
#

but if thats the case then you should most definitely not use them as keys

worn temple
#

It does, back in my early dumb days I used it as a key, and would run into lots of issues

brisk mango
#

well but no one was using here a List as a key lol

worn temple
#

Inventory hash does change tho

#

So, using it as a key doesn't work

#

And you keep saying to use it as a key

tiny dagger
#

i think don't think they handle hashcode anymore in inventories

harsh anvil
#

then that would mean it changes every time something about the object changes

tiny dagger
#

i see in craftinv

#

something

#

but nothing else

harsh anvil
#

what class is that?

tiny dagger
#

craftinventory

harsh anvil
#

what does hashcode from inventory return?

tiny dagger
#

the java hashcode

harsh anvil
#

alright

#

@brisk mango you could always try it out and see, get an inventory hash, add some itmes to it, see if the hash is the same after

#

but from what i can tell it should change

worn temple
#

I can say safely it does change because its lead to issues in my super super old plugins from when i got into java.

tiny dagger
#

well i don't see anything now related to it

#

so it probabily got removed in time

#

because i see the legacy call of it

#

like they did something to it and kept it overrided for some reason

harsh anvil
#

Actually seems like i'm wrong after doing some research and asking some people. The hashcode is only generated once and cached. So it will not change when the contents of said object change. Unless the hashcode method is overriden @worn temple @brisk mango

worn temple
#

Maybe, I know it at least was overridden at some point in time. Don't know if it is anymore. Point still stands tho that mutable objects shouldn't be used as keys

hollow thorn
#

wht the event for gliding

mellow wave
#

Use the javadocs

#

Anyway it's EntityToggleGlideEvent

hollow thorn
#

no for moving while gliding

#

that just gives me a burst

mellow wave
#

Then use PlayerMoveEvent

hollow thorn
#

how do i check if the player is gliding though

mellow wave
#

Please use the javadocs

worn temple
#

Javadocs will tell you pretty much everything. and if you can't find it, google is your best from for super simple questions like this.

mellow wave
#

^^

limber sierra
#

Weird request - does anyone know a plugin that uses TONS of ram?

tiny dagger
#

i can do one if you want

limber sierra
#

Honestly if you want

#

Running a 64GB server rn for the lols

tiny dagger
#

until it crashes?

limber sierra
#

Yes :>

worn temple
#

Run WorldEdit and do a MASSIVE edit with an async WE plugin

hollow thorn
#

my staffplugin

#

causes lag

#

also how do i use runnables

worn temple
#

I mean, runnables are just lambdas, and so many many things can cause lag

hollow thorn
#

it didnt use runnables originaly

#

and thats why it lagged

worn temple
#

oh

hollow thorn
#

because of while loops

worn temple
#

jeez

hollow thorn
#

and for some reason the runnables arent changing

#

that glitch

worn temple
#

?

hollow thorn
#

if i shoot into the air

#

the game stops proccesing until the target hits

#

the runnables arent changin that

nimble stump
#

So you still have a big while loop on the main thread

worn temple
#

^

#

Yeah, clearly you aren't using runnables or aren't using them correctly.

#

Because not processing is caused by locking up the main server thread

tiny dagger
#

@limber sierra version?

hollow thorn
#

i use runnables using .run

#

in the main

#

should i use schedule

nimble stump
#

We really need to see the code to help you at this point

hollow thorn
#

if(e.getItem() != null && e.getItem().getItemMeta().getLocalizedName().contains("staff3")) {
Player me = e.getPlayer();
Location loc = me.getEyeLocation();
World world = me.getWorld();
cooldown.put(me, (System.currentTimeMillis()/1000));
if((cooldown.get(me) + 5) >= (System.currentTimeMillis()/1000)) {

                ItemStack stuff = e.getItem();
                ItemMeta em = stuff.getItemMeta();
                em.setCustomModelData(3);
                em.setUnbreakable(true);
                em.setLocalizedName("Staff1");
                stuff.setItemMeta(im);
                me.getItemInHand().setItemMeta(em);
                me.updateInventory();
               loc = loc.add(loc.getDirection());
             new BukkitRunnable(){
              @Override
              public void run() {
                  Player me = e.getPlayer();
            Location loc = me.getEyeLocation();
            World world = me.getWorld();
            loc = loc.add(loc.getDirection());
            while(loc.getBlock().getType() == Material.AIR) {
                loc = loc.add(loc.getDirection());
                world.spawnParticle(Particle.FLAME, loc, 0);
                world.playEffect(loc, Effect.BLAZE_SHOOT, 4);
                for(Entity ent : getEntitiesByLocation(loc, 0.545f)) {
                    if(ent instanceof LivingEntity) {
                        ((LivingEntity) ent).damage(10, me);
                        ((LivingEntity) ent).setFireTicks(10);
                        
                    }
                    
                }
            }
            }}.run();
        }
worn temple
#

Use codeblocks or upload that mess to haste/pastebin

#

its impossibel to read hrere

#

but Just from that, you're doing that wrong

hollow thorn
worn temple
#

possibly not the exact method you need, but that's how you should be using it, because right now you are just blocking the main thread

limber sierra
#

@limber sierra version?
@tiny dagger 1.12.2 ;D

hollow thorn
#

is there any way to use BukkitRunnable

worn temple
#

I literally just linked how to

hollow thorn
#

are you sure thats the right link

hollow thorn
#

thats just telling me how to use delays

worn temple
#

there

#

.run() is calling Thread#run() which BukkitRunnable implements

hollow thorn
#

also how do i get the plugin

worn temple
#

Its the instance of your main class that implements Plugin

tardy lance
#

is there an event to check a switch between gamemodes?

worn temple
#

Check the javadocs, questions like that are all answered if you look through the docs

tardy lance
#

do you have a link?

tardy lance
#

thanks

rain plank
#

I’m looking for a plugin (free or premium) that is level based.

I will post screen shots to better show what I mean.

#

So in-game, you would show what level you are, and you lll have to finish quests to get to the next level.

lean stratus
#

does anyone know how to use world border?

woeful mural
blissful ocean
#

where do i find a documentation to the current config? What does
monsters-max-per-tick: 8
monsters-every: 400
monsters-for: 100
mean?
all explanation sites i found are incomplete/outdated

torn robin
blissful ocean
#

@torn robin i can not find these there
wake-up-inactive:
animals-max-per-tick: 4
animals-every: 1200
animals-for: 100
monsters-max-per-tick: 8
monsters-every: 400
monsters-for: 100
villagers-max-per-tick: 4
villagers-every: 600
villagers-for: 100
flying-monsters-max-per-tick: 8
flying-monsters-every: 200
flying-monsters-for: 100

#

what are those?

torn robin
#

looks like they're unused

#

you could probably even delete them

blissful ocean
#

ok will do

spice cape
#

How do i switch my paypal email for spigot.

manic raptor
#

Hi guys I'm new to using Maven and am trying to use a Google Cloud dependency with my plugin. I wish to "shade" the external jars into my plugin, as I'm getting NoClassDefFoundError.

This is what one of the google cloud dependencies looks like:

        <dependency>
            <groupId>com.google.auth</groupId>
            <artifactId>google-auth-library-oauth2-http</artifactId>
            <version>0.20.0</version>
        </dependency>

How do I shade this into my plugin? I've looked around and got this so far, but am unsure what parts need to go where...

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>3.2.1</version>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                        <configuration>
                            <minimizeJar>true</minimizeJar>
                            <artifactSet>
                                <includes>
                                    <include> >>>>>>> NOT SURE WHAT TO PUT HERE :( <<<<<< </include>
                                </includes>
                            </artifactSet>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

Edit: Also not sure which version to use?

tardy lance
#

how can i save one item from dropping on death? didnt found something about it in the java docs

harsh vector
#

i'm settings dynmap with UltimateClaims but when i try registering to the website with the right code and ID it says registration failed

keen cedar
#

How do I make a player open some sign?

small citrus
#

how to convert player to a humanentity?

subtle blade
#

Players are human entities

#

You can directly cast

#

Though really, you don't need to

small citrus
#

so (HumanEntity)e.getPlayer()

#

?

jaunty night
#

just e.getPlayer()

subtle blade
#

Yea but it already inherits all methods and can be used where it is required

#

Player is fine

small citrus
#

oh ok

#

thanks

harsh vector
#

i'm settings dynmap with UltimateClaims but when i try registering to the website with the right code and ID it says registration failed

#

OOOOO

harsh vector
#

any helper ?

rain crystal
#

Hello guys! Can someone explain me how to setup fallback server? I have searched a lot in the internet and tried to set the priorities in the bungee config but doesn't work. When the "survival" for example is shut down doesn't get me to the lobby, it only shows "Server closed." and thats it

worn temple
manic raptor
#

Sorry to tag you @subtle blade but you've been impeccably helpful in the past and was hoping would you be able to help me out with Maven dependencies?
This is my first time using Maven, or a plugin with a dependency. I'm trying to use some Google Cloud PubSub functionality in a plugin, and can't seem to get the dependencies right. I'm using Maven and Intellij.

Using these imports...

import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.cloud.pubsub.v1.AckReplyConsumer;
import com.google.cloud.pubsub.v1.MessageReceiver;
import com.google.cloud.pubsub.v1.Subscriber;
import com.google.common.collect.Lists;
import com.google.pubsub.v1.ProjectSubscriptionName;
import com.google.pubsub.v1.PubsubMessage;

I've deduced the depndencies down to...

#
    <dependencies>
        <dependency>
            <groupId>org.spigotmc</groupId>
            <artifactId>spigot-api</artifactId>
            <version>1.15.2-R0.1-SNAPSHOT</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.google.api</groupId>
            <artifactId>gax</artifactId>
            <version>1.56.0</version>
        </dependency>
        <dependency>
            <groupId>com.google.auth</groupId>
            <artifactId>google-auth-library-oauth2-http</artifactId>
            <version>0.20.0</version>
        </dependency>
        <dependency>
            <groupId>com.google.cloud</groupId>
            <artifactId>google-cloud-pubsub</artifactId>
            <version>1.105.1</version>
        </dependency>
        <dependency>
            <groupId>com.google.api.grpc</groupId>
            <artifactId>proto-google-cloud-pubsub-v1</artifactId>
            <version>1.87.1</version>
        </dependency>
        <dependency>
            <groupId>com.google.auth</groupId>
            <artifactId>google-auth-library-credentials</artifactId>
            <version>0.20.0</version>
        </dependency>
    </dependencies>
#

And I'm trying to shade them in with...

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>3.2.1</version>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                        <configuration>
                            <artifactSet>
                                <includes>
                                    <include>com.google.api:gax</include>
                                    <include>com.google.auth:google-auth-library-oauth2-http</include>
                                    <include>com.google.cloud:google-cloud-pubsub</include>
                                    <include>com.google.api.grpc:proto-google-cloud-pubsub-v1</include>
                                </includes>
                            </artifactSet>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

But I still get NoClassDefFoundError exceptions for classes that I'm not explicitely using, but are a part of the classes I am using. :/

#

I tracked them down one by one, adding dependencies to NoClassDefFoundError exceptions and eliminating them one by one until I hit a roadblock where I got completely different Gcloud related errors most likely from other missing dependencies that it's not naming... :/

#

I guess what I'm looking for is like, an "include this class, and shade in all classes or jars related to this one." type of thing? I'm very new to Maven, literally only just started using it today and can't figure it out :/

#

I should also note that when I simply run the code I'm trying to run it works fine, just doesn't work when running it in a plugin on a server. If anyone else is able to offer a hand it would be greatly appreciated. Also sorry for the loong message.

wanton delta
#

how are you bilding the project

worn temple
#

You're building it wrong

#

its not a fatjar

manic raptor
#
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>6</source>
                    <target>6</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>3.2.1</version>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                        <configuration>
                            <artifactSet>
                                <includes>
                                    <include>com.google.api:gax</include>
                                    <include>com.google.auth:google-auth-library-oauth2-http</include>
                                    <include>com.google.cloud:google-cloud-pubsub</include>
                                    <include>com.google.api.grpc:proto-google-cloud-pubsub-v1</include>
                                </includes>
                            </artifactSet>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

this?

worn temple
#

No, what command

wanton delta
#

^

#

and what ide

manic raptor
#

Using intellij, I'm just double clicking the package cog on the right

#

please don't hurt me im a retarded noob

wanton delta
#

Have you tried to click the Build > Rebuild Project button?

#

sometimes that fixes weird maven issues for me

#

second thing i would try is running mvn clean install

worn temple
#

You need to run mvn clean package

#

install doesn't really matter in this case

wanton delta
#

true

worn temple
#

building with IJ shouldn't be used if you are using a dependency manager unless you configure it to build with your dep manager

manic raptor
#

I'm sorry I'm really not sure what that means.
Is mvn clean install run on the command line? Or is there a place in intellij that you run such commands?

wanton delta
#

Rebuild Project is perfectly acceptable, it solves a lot of weird issues ive had with maven

worn temple
#

yes, its on the command line

wanton delta
#

thats at the bottom

#

opens terminal conveniently where your project dir is

manic raptor
#

kk, I don't think i have the path configured

worn temple
#

You need to install Maven, and then restart your IDE

manic raptor
#

alrighty

#

So just to confirm, this will most likely solve my issues? Or atleast, it should technically include all of the missing classes once I do this? (assuming the dependencies to all the import statements are correct?)

worn temple
#

once you do that, go to the little terminal window mart said, and run mvn clean package and you will have a target folder with the .jar file. Assuming maven is configured correctly, it'll work

wanton delta
#

dont speak in absolutes

worn temple
#

"assuming"

#

not absolute

manic raptor
#

Alrighty so @worn temple, @wanton delta
thanks for the assistance so far.

Installed it and ran the command okay, but getting "No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?" :/

wanton delta
#

where does your JAVA_HOME variable point

manic raptor
#

Okay nevermind!! I just hadn't set the JAVA_HOME variable! 😄

red estuary
#

@golden vault

manic raptor
#

@worn temple @wanton delta
Ran the command successfully and am still getting the same NoClassDefFoundError exceptions. :/
Is there an option with the shade plugin to "shade every class that has to do with this one?"

golden vault
#

?

wanton delta
#

do you have an archiver

#

to see whats in the jar

red estuary
#

can u open dm i need help with resource

golden vault
#

you need help doing what with a resource?

worn temple
#

@manic raptor Check to see if its in the jar, I'm not sure what shading stuff you are doing since I've never needed that kind of thing, like ever, and have not had issues with maven packing in my deps.

red estuary
#

I have to tell you privately, it is something with my premium resource

storm vessel
#

Ok so my server got hacked due to bungeecord issues. We fixed everything except the balances. They gave everyone $600k, but when I do /eco take ** 600000 it only took it from about 100 people before it said inssuficient funds

#

What could cause this?

#

Is there a way to roll back the economy?

manic raptor
#

@wanton delta @worn temple
The class calling the NoClassDefFoundError exception isn't in there. :/

worn temple
#

Put you maven file on hastebin/pastebin and link it, I'll see if I can see anything that looks odd

manic raptor
#

@worn temple thanks man, 1 sec

worn temple
#

Try just doing ```xml
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>


for the shade instead. spigot won't get pulled in since its marked as provided. do `mvn clean package` again and see if its in the compiled jar
#

(ignore the formatting, pulled it from a badly formatted file)

#

Also, why are you compiling on j6? even mojang dropped support for j7 and below with 1.12

lavish crescent
#

can someone help me with Essentials sign shop

#

please

manic raptor
#

@worn temple It's looking good so far actually!! Server's crashing though but I think that's because my code is waiting for a PubSub message. I'm just gonna make it run on a different thread and will let you know.

I wasn't intending to compile/run on java 6. Im pretty sure its compiling on 8 because the jdk is a 1.8 one. Intellij added that automatically and it solved a problem where I couldn't put @Override on top of implemented methods.

worn temple
#

Should be able to bump that up and not have an issue. if IJ is configured to import the maven pom for the project correctly, it'll use that for deciding what stuff to allow, so it would yell at you for using lambdas since it thinks you're on j6. Anyway, getting off point.

Good, that would be what's crashing it, since pub/sub systems using websockets always block until a connection is received. So you'd need to offload it to different threads and then sync it back onto the main server thread should you want to interact with the bukkit api on some action

manic raptor
#

Mmmm, it's crashing even before it gets to the pubsub stuff and it's on a different thread. The server won't even start because of "Invalid signature file figest for Manifest main attributes" from java.lang.SecurityException

worn temple
#

What's the full error?

manic raptor
#
java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
    at sun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:330) ~[?:1.8.0_242]
    at sun.security.util.SignatureFileVerifier.process(SignatureFileVerifier.java:263) ~[?:1.8.0_242]
    at java.util.jar.JarVerifier.processEntry(JarVerifier.java:318) ~[?:1.8.0_242]
    at java.util.jar.JarVerifier.update(JarVerifier.java:230) ~[?:1.8.0_242]
    at java.util.jar.JarFile.initializeVerifier(JarFile.java:383) ~[?:1.8.0_242]
    at java.util.jar.JarFile.getInputStream(JarFile.java:455) ~[?:1.8.0_242]
    at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:163) ~[spigot-1.15.2.jar:git-Spigot-a03b1fd-bbe3d58]
    at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:144) ~[spigot-1.15.2.jar:git-Spigot-a03b1fd-bbe3d58]
    at org.bukkit.craftbukkit.v1_15_R1.CraftServer.loadPlugins(CraftServer.java:353) ~[spigot-1.15.2.jar:git-Spigot-a03b1fd-bbe3d58]
    at net.minecraft.server.v1_15_R1.DedicatedServer.init(DedicatedServer.java:210) ~[spigot-1.15.2.jar:git-Spigot-a03b1fd-bbe3d58]
    at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:784) [spigot-1.15.2.jar:git-Spigot-a03b1fd-bbe3d58]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_242]
worn temple
#

pastebin

dusty topaz
#

Is it possible to prevent the showing of items in a PrepareCraftItemEvent now

manic raptor
worn temple
#

It may be gax (no idea what that is tbh). The others all look pretty normal, and the auth libs seem fine too since I have a few of those in my projects

#

Honestly, this is a bit out of my usual skill set since I've never had an issue like this in particular.

manic raptor
#

HOLY SHIT

#

BRO

#

IT F***ING WORKED

#

What is your paypal, i'm buying you lunch pm me

#

@worn temple

#

You're actually a legend, I've been stuck on this shit for like 4 days and everywhere I posted nobody was able to help

worn temple
#

Thanks ❤️ Glad I could help

rain plank
#

Is anyone willing to help set up Voting Plugin with nuVotifier?

pastel condor
#

It shouldn’t be hard at all, simply make a vote on a site and it will he added to your vote sites file

rain plank
#

Uh, I've tried... multiple times, it doesnt seem to work.

#

I even uninstalled and re-installed.

radiant pollen
#

What voting plugin do you use with it?

worn temple
#

Is the port it needs open? assuming it uses the same standard made by Votifier, you need to open a port in order to receive the votes.

rain plank
#

"Voting Plugin"

dusty topaz
#

Any reason why CraftingInventory#setResult() is not ... setting the result lol

#

the itemstack I'm passing in is not null

worn temple
#

@rain plank is nuvotifier set up correctly? That's likely the root of the issue.

rain plank
#

Yes.

#

I re-installed.

worn temple
#

Are there errors? Hard to help when "doesn't seem to work" can mean many many things. What doesn't work, what are you doing? what is the expected outcome? etc.

rain plank
#

when we vote, it's not calculating and giving rewards.

#

Not sure what's really that hard to comprehend in that.

#

lol

worn temple
#

Its not that I don't understand it, its that there are many different things at play and I'm just trying to narrow down the issue. Are there errors?

rain plank
#

No.

worn temple
#

Is nuVotifier correctly picking up the votes? if so, its likely a configuration issue with VotingPlugin

rain plank
#

I just re-installed that yesterday bc nuvotifier wasn't installed correctly.

worn temple
#

Okay, but is it picking up the votes? If its not, its nuVotifier causing the issue. If it is, its probably VotingPlugin. You see why I was asking so many questions now? There's a lot of things it can be that we can't know with limited information

rain plank
#

That's why I'm asking for some one to check the configs for both.

#

"help me set up"

#

lol?

#

I already said that it's not picking up votes, why are you being redundant.

worn temple
#

But its probably not a config issue, it takes no configuration changes to receive the vote. So my original assumption is probably correct: Do you not have the port open?

rain plank
#

the port is open.

worn temple
#

For the router and the firewall? (assuming you are either self hosting at home or on a vps)

rain plank
#

Yes.

worn temple
#

And you are sure the server list site has the correct port for your server? (they can be changed in the listing settings)

rain plank
#

Yes.

radiant pollen
#

Usually voting sites will send a test vote whenever you update the listing's info. Does NuVotifier log anything when you update a listing?

worn temple
#

Are you sure NuVotifier is even loading on server boot?

#

I mean, it should be just plug and play

frigid ember
#

Hey, I want to change my minecraft server hosting provider but I don’t wanna lose any data.
can someone help

radiant pollen
#

@frigid ember All you have to transfer is world folders, plugin folders, and the configuration yml files.

frigid ember
#

aha thanks

radiant pollen
#

Unless you have a MySQL database or some other thing... that should be pretty much it.

#

It should always log at least something.

#

If nothing is logged, NuVotifier didn't load properly; the port is closed or something.

rain plank
#

says that i voted.

radiant pollen
#

So NuVotifier is setup correctly.

#

That's what you weren't telling us.

#

If it logs that a vote happened, then NuVotifier is working. The issue is with VotingPlugin because votes are being registered but no one is getting rewards.

worn temple
#

That's what I was finally looking for omg. Thanks for getting to the point Zax

stoic sundial
#

anyone knows working non abusable /f shield ? :/

rain plank
#

I told you it wasn't nuvotifier. omg.

worn temple
#

No, you said it wasn't working before and you reinstalled it. You never confirmed if votes were being received like I asked 3 times.

#

So its probably VotingPlugin not loading correctly on start up, or a config issue.

pastel condor
#

That person just left

#

ooof

#

spoon feeding gone wrong

worn temple
#

looool

#

¯_(ツ)_/¯

#

I try not to spoon feed, but when they play dumb, you just gotta play dumb back

pastel condor
#

Lol

#

I’m not saying what you did was wrong

worn temple
#

Oh no, i get that

#

Just funny

pastel condor
#

When you spoon feed them but they don’t understand.

worn temple
#

yeee

#

I was just trying to figure out if votes were being received and processed correctly just so we can ignore that part of it all and handle the reward plugin lol

pastel condor
#

Lol

agile girder
#

Need help, someone knows how to export and import with phpMyAdmin?

gaunt thorn
#

Anyone able to point me in the right direction? Trying to grab a certain inventory with a colored name instead of just the string of the name. Having an issue with translateAlternateColorCodes saying ChatColor is not applicable for the arguments (but it use to be ages ago)

keen compass
#

as you can see, it takes a char and boolean not a char and string

#

but your IDE is just playing tricks on you though

#

it is correct to use char and string not sure why your IDE is complaining or stating otherwise lol

worn temple
#

don't use eclipse, use intelliJ

#

for eclipse you probably have to do String#toChar to get it to play nice since eclipse is hella dumb

barren abyss
#

White IDE = 4838_despair

gaunt thorn
#

Who has a white IDE?

worn temple
#

Actually, @keen compass @gaunt thorn That's not correct, you are doing char, boolean. You need char, string. #contains is a boolean

#

So... you have your parans () messed up

gaunt thorn
#

How would I check if the title has the correct chatcolor assigned to it though without using .contains or .equals?

worn temple
#

Checking the name of the inventory would work, however names can collide. Checking the inventory's viewers would be best. See if the player is in the viewers list of the inventory, and they are, they must be viewing the inventory.

keen compass
#

@worn temple I must have read that pic wrong then

#

not an IDE I normally use

worn temple
#

I read it wrong as well initially. I don't use that IDE anymore, dropped it nearly a decade ago actually.

keen compass
#

but I also didn't see that .contains() either

#

XD

#

Anyways, nice catch on that where I think most of us missed it 😛

worn temple
#

My GF saw that the contains was getting passed in when I showed it to her (we both really don't like eclipse and will send each other stuff about how bad it is) and she said that it was seeing it all correctly.

keen compass
#

I was half wrong then 😉

worn temple
#

only half, so nice job!

keen compass
#

I was just wrong about what the IDE was stating but was correct about the API

#

But yeah, still a nice catch though

#

I use Eclipse and in Eclipse when you highlight something that is wrong like that

#

it will explain in depth what is actually incorrect about it lol

worn temple
keen compass
#

so I recently found the entire source for CB that I had XD

#

CB and bukkit, so I have all the versions going back to the first release 😛

worn temple
#

I have 1.7.10-1.13 all hosted on a private repo only I can access

keen compass
#

I am not worried if I put something up and its private or not

#

worst that happens is someone mails me a DMCA lmao

worn temple
#

Needed it for plugins that require NMS code, notably my library that abstracts it all so plugins can work with multiple versions and not need to worry about nms nonsense

keen compass
#

ah you use nexus I see

#

I don't lol

worn temple
#

What software? never seen it before actually

keen compass
#

Just maven

#

when you use maven-deploy it will setup the directories appropriately for you, as for the theme its just apaxy

#

So, all you are seeing is a maven repo

worn temple
#

Ah, I prefer nexus, finer grain control over everything. Including keeping stuff private (like my CB builds and plugin APIs that aren't on maven) and for my APIs

keen compass
#

for me to make something private its just a matter of just modifying the .htaccess file lol

barren abyss
#

I reach 1k downloads in a few hours for a simple plugin, how brilliant

wet otter
#

@golden vault You mind helpin me out rq?

I started my server, and saw this error message:
[TAB] Group "owner" is not defined in sorting list! This will result in players in that group not being sorted correctly. To fix this, add group "owner" into group-sorting-priority-list in config.yml.

I don't suppose you would know how to fix this problem? I have tried a few things, but none of it worked. I am unsure of what to do now.
Thanks in advance!

worn temple
#

stop server, add owner to group, start server. Should do it

golden vault
#

Ya, idk what ever TAB is, a tablist i assume, you will need to follow their documentation.

wet otter
#

Alright. Thanks for trying Weaves.

#

@worn temple the group: owner is already in the group-priority-sorting-list

muted valve
#

Hello, does anybody know if there is a placeholder that returns if the server is Online, Offline or Whitelisted. Like %pinger_isonline_testplugins.com:25565% but it only returns Online/Offline. Is there one that checks if the server ip is whitelisted or not? So I can create a ph that combines all three

frigid ember
#

@worn temple Hi 😁 Long time no see

worn temple
#

@wet otter Is it there for all the servers and everything? I usually see tab plugins act up when its a bungee tab plugin. Otherwise I couldn't say. Are you making sure to shutdown the server and then edit the file? because some plugins write to file on shutdown and "erase" user changes.

#

@frigid ember Hey, I'm bad with names so remind me?

frigid ember
#

Check our DM history, should ring a bell.

#

I was the one who suggested NovaFrost for your server name

worn temple
#

ah right lol

frigid ember
#

Didn't think I'd see you in here 😁

#

I didn't think I would see you either!

twilit fog
#

Hey does anyone know if theres away to have a live holograms that shows the factions top players

worn temple
#

Yeah, been just lurking on the forums, kinda lost motivation with working on mc stuff, came back since I had a bunch of people bugging me about updating my old stuff.

frigid ember
#

Oh I see, yeah I left for a while after finals, getting sick and having surgery again lol 😁 All good now though

#

I'm kidding idk who you are

#

You still running your server?

worn temple
#

@frigid ember Was well known on the forums for quite some time. Disappeared for awhile lol

barren abyss
#

I have a fast question, if I put this in the config.yml ill be able to change it in the plugin by using (var == True) right?

Enable: True
worn temple
#

@frigid ember technically. Its mostly dead an unmaintained, wanting to get back into it. just trying to finish up a rewrite on my discord bot to fix a lot of stability issues and then may rebuild my mc server

barren abyss
#

Like, it is a real true/false state

frigid ember
#

Oh DM me the server invite again, I left it after thinking it wasn't active anymore

worn temple
#

I'll dm you my personal and dev studio invites. one sec

frigid ember
#

Alright thanks 🙂

blissful trench
#

How can I take that batman symbol that stays in my head ?

worn temple
#

uh... what?

blissful trench
#

There's a symbol on my head

#

I don't know how to get out

#

I'd like to know the command to take that away.

worn temple
#

I've got literally no fucking clue what you are talking about lol

#

Are there screenshots?? I really have no idea what you are doing/seeing

blissful trench
#

I have a way to send yes

worn temple
#

I have legit no idea what caused that, but probably a plugin you have installed lol

blissful trench
#

that was a command i put

worn temple
#

and that command is??

blissful trench
#

Do you have any commands i can delete my profile?

worn temple
#

You're not making any sense. What command did you use in the first place?

blissful trench
#

and that command is??
@worn temple I don't know what it is

worn temple
#

So, you typed a command in, and that happened, and you don't know what you typed in?

blissful trench
#

Yes

worn temple
#

LIke, I'm asking for the command, not if you completely understand it or not. What exactly did you do to make this happen

blissful trench
#

I don't remember what the command was, but there was a part that had the name Batman in the middle of the command!

wet otter
#

@blissful trench Is that a server or a single player world?

blissful trench
#

@blissful trench Is that a server or a single player world?
@wet otter This is a server

wet otter
#

Do you have console?

blissful trench
#

Do you have console?
@wet otter Not kkk

worn temple
#

Its really hard to help you when you aren't giving information. If you could copy/paste what you typed to make it happen, we may be able to offer more help. But we know nothing other than you entered a command and don't know what you typed, and now see this.

wet otter
#

@blissful trench Are you still logged into the server? If so you could probably just press T and then the ⬆️ on your keyboard until you find the command you've typed. If you can't, you should probably message a server staff or the owner directly, as they will likely have more information.

worn temple
#

^

blissful trench
#

Its really hard to help you when you aren't giving information. If you could copy/paste what you typed to make it happen, we may be able to offer more help. But we know nothing other than you entered a command and don't know what you typed, and now see this.
@worn temple I really wanted to send the command I put in, only I don't remember what it was.

wet otter
#

@blissful trench Are you still logged into the server? If so you could probably just press T and then the ⬆️ on your keyboard until you find the command you've typed. If you can't, you should probably message a server staff or the owner directly, as they will likely have more information.
@wet otter

blissful trench
#

@blissful trench Are you still logged into the server? If so you could probably just press T and then the ⬆️ on your keyboard until you find the command you've typed. If you can't, you should probably message a server staff or the owner directly, as they will likely have more information.
@wet otter I can't do that anymore. because I've already come out and i've gone in again

wet otter
#

Then your best best is to message a staff member/server owner directly.

#

We can't help you without further information. Which we don't have.

worn temple
#

so, contact the server staff. This server is more for help for server owners/developers.

blissful trench
#

I'm going to do this more carefully. Then I come into contact with them

#

thank you so much for helping me!

#

☺️

wet otter
#

No problem, @blissful trench.

barren abyss
#

I have a fast question, if I put this in the config.yml ill be able to change it in the plugin by using (var == True) or (var == False) right?

Enable: True
worn temple
#

You'd have to actually change the config through the config api

barren abyss
#

ty

tiny dagger
naive goblet
#

vo1d I mean you could get it as a string, put it to lowercase and parse it as a boolean

sturdy oar
#

unless you're doing cryptography the second one is fine

tiny dagger
#

that's why i considered

#

strong randomization

#

but not sure if it's actually useful

pastel condor
#

who has time to read all that

tiny dagger
#

ikr

sturdy oar
#

I like cryptography

pastel condor
#

I mean it looks cool

sturdy oar
#

although I've ever read that

pastel condor
#

but I just don't have time

#

when your random number generator is the last digit of used ram

#

you know theres something wrong

sturdy oar
#

yeah it could pretty much be the same several times

pastel condor
#

yeah

#

some old systems did that

#

very old

#

I believe

sturdy oar
#

many code still rely on time

#

you'll see on C

pastel condor
#

really?

sturdy oar
#

they use

srand(time(NULL))
pastel condor
#

wow

tiny dagger
#

what would they relay otherwise?

#

ticks spent?

#

or something

sturdy oar
#

well java definetively ain't using the current time to generate random numbers

#

that would be baaaad

pastel condor
#

I think it's like the derivative of an elliptical curve

#

I kinda forgot

nimble stump
#

“yeah it could pretty much be the same several times”

#

In the case of a true random number generator, which we have not been able to create yet, that would still be true

#

Random means random, not “different every time”

sturdy oar
#

i know but with time, the odds of having similar numbers are increased

#

even Clion will flag that if you do it

nimble stump
#

Predictable sequence means you can guess the next numbers with a strong likelihood

#

For example seeding with a constant

sturdy oar
#

yeah that's what I was trying to say

#

I'm not the best at explaining stuff

nimble stump
#

Seeding with the current time isn’t that bad if you want PRNG

#

You’ll get a different sequence every time you run

hollow owl
#

How can I make a switch, so when I choose a block to get that block from the config

case Material.valueOf(getconfig.getstring)
}
nimble stump
#

That is not the use case for a switch

hoary parcel
#

You need to hard code constants

nimble stump
#

^

#

Why don’t you use an If statement

hollow owl
#

I thought about it

hoary parcel
#

That's why that whole optimisation works

hollow owl
#

Sure. Thanks I will try 😉

naive goblet
#
switch (e.getCurrentItem().getType()) {
  case DIAMOND, DIRT: {
    //do stuff
  }
}```
tiny dagger
#

java 14 flexer

sturdy oar
#

yeah...

naive goblet
#

lol its much better

nimble stump
#

Java 8 or bust

sturdy oar
#

Conclure you might use lambda

#

if you use j14 already

torn robin
#

Java 8 or 95% of the people using your plugin will complain that it doesnt run

naive goblet
#

yeah

sturdy oar
#

yeah you can't even use Java 11

hoary parcel
#

You don't even have java 11+ runtimes Alex?

#

There have been so many improvements in the runtime

naive goblet
#

yh its kinda rip that minecraft plugin development would not likely update

nimble stump
#

Only on my WSL Ubuntu

naive goblet
#

javaver

sturdy oar
#

i can't even use var

#

var is cool

naive goblet
#

if (o instanceof Player p) {

nimble stump
#

Mojang is always going to set the standard for what java is widely used on servers

sturdy oar
#

that's not java 14

#

it's a preview

nimble stump
#

When they bumped it to java 8 everyone had to go 8

naive goblet
#

yeah hope it gets added

hoary parcel
#

Iirc they can't dump because java dropped support for some iGPUs or some shit

nimble stump
#

Fantastic

hoary parcel
#

But that info is outdated by years, maybe I can ask ppl next week

#

If I don't forget it, lol

naive goblet
#

I mean there is quiete a huge jump between 8 and 14

sturdy oar
#
record Player (String username, long score) {}
naive goblet
#

yh records are awesome

nimble stump
#

Once oracle started making me sign into an account to update my jdk I stopped updating it

naive goblet
#

lol

sturdy oar
#

why you using Oracle

tawdry venture
#

only openjdk

sturdy oar
#

GraalVM here

nimble stump
#

Lol

#

Oracle owns that

sturdy oar
#

yeah but doesn't have the password login

nimble stump
#

Fairs

hoary parcel
#

Openjdk is gpl

#

Nobody really owns that

nimble stump
#

I meant graal

tawdry venture
#

AdoptOpenJDK 👋

hoary parcel
#

Isn't graals licence like worse than Oracle jdk?

nimble stump
#

It’s terrible

sturdy oar
#

🤷‍♂️ I've never read it tbh

lavish crescent
#

does anyone know how to do the chest shop for essentials ?

keen compass
#

here soon mojang will need to update their java version again

#

either they will go with 11, or maybe we can hope they just make the jump to 14 😛

sturdy oar
#

no

#

also I highly doubt they'll update their Java version

keen compass
#

eventually they will have to

#

support for Java 8 won't continue forever lol

naive goblet
#

hopefully

keen compass
#

the next LTS version from java 8 is Java 11

hoary parcel
#

I just set an reminder for next week to ask dinnerbone about that

#

Idk, sticking to LTS is kinda stupid if you aren't a company with running hundrets of servers

naive goblet
#

👍 .

sturdy oar
#

they might have to rewrite some of their code if they upgrade to Java 11

keen compass
#

it would be nice if they would jump to java 14

hoary parcel
#

They don't need to touch anything in their code

#

It already works on java 15

keen compass
#

They actually don't need to re-write anything since all the way to java 14, java 8 bytecode is supported

hoary parcel
#

There is even java 9+ only code in there already

#

Or was that paper code, now I don't remember

#

The whole cleaner thing for pooling

tawdry venture
#

then what about releasing 1.16 with the latest java?

keen compass
#

the only problem with them supporting later versions after java 8

#

is that they need to ship their own JFX or whatever

#

since that was removed from the JRE

tawdry venture
#

do mc uses jfx?

bronze marten
#

They use javafx???

hoary parcel
#

If you compile on 11 you need to change of bunch of things

#

But that isn't required for shipping

#

They could just ship a new version in the launcher, see how it goes and later change the compile target

tawdry venture
#

what about bundling the jre?

hoary parcel
#

They do that?

keen compass
#

they already do that if you don't have java installed

#

or use a version that isn't directly supported

lavish crescent
#

does anyone know what you put on the sign for the chest shop that comes with essentials ?

pastel condor
#

Ask in essentials discord

#

Or the moss thingy

keen compass
lavish crescent
#

thank you

keen compass
#

or you know, consult the wiki @pastel condor 😛

pastel condor
#

Lol I forgot they had one

keen compass
#

the wiki ironically is still relevant

#

for just about everything

naive goblet
#

Have java added constant as a keyword or was that only kotlin?

sturdy oar
#

const

#

that's Kotlin if that's what you mean

naive goblet
#

yeah

pastel condor
#

What the difference between constant and final?

sturdy oar
#

const is for values that are already known at compile time

pastel condor
#

Oh okay

nimble stump
#

You can also use final for those

naive goblet
#

final just makes sure the reference can't be re-assigned

pastel condor
#

Ah I see

sturdy oar
#

I think const is optimized prob

#

no idea what Kotlin did with that keyword

pastel condor
#

What’s the purpose of kotlin?

naive goblet
#

ease up for the devs

nimble stump
#

Death and destruction

terse schooner
#

Okay so I'm having issues with chunks saving in my overworld.. It always happens at villages, seemingly only while villagers are spawned
https://pastebin.com/XQJZxJdY
the full save error is there
Any help with that would be greatly appreciated, this has been happening for a few days now and I really don't know what to do about it

naive goblet
#

it's mainly maintained because many developers like how it works more than java

sturdy oar
#

also const only works with String or primitive types

#

obviously

pastel condor
#

I’m sticking with java 🙂

#

For now at least

sturdy oar
#

the only issues i had with Kotlin were binary operators being weird

naive goblet
#

Eventually kotlin can be pretty nice for core

#

But I mean doing frameworks or libs then you should probably stick to java?

pastel condor
#

K

naive goblet
#

Mostly just preferences

sturdy oar
#

you have to consider that when you use kotlin, you need to have the Kotlin Stdlib

#

otherwise it won't run

keen compass
#

@terse schooner do you have any plugins that mess with entities?

nimble stump
#

Or their NBT

terse schooner
#

The only potential candidate should be mythic mobs, but it's 1.15.2 stable and has no effect on vanilla villagers

keen compass
#

doesn't mean it can't be causing it. The problem the server is reporting is that it can't save entities

#

because something about the entity is null

nimble stump
#

Every village or specific types of village

keen compass
#

should test without that plugin to see if the server saves just fine

#

odds are it will

nimble stump
#

How reproducible is it

#

Does it happen whenever you try to save a village chunk or only sometimes

keen compass
#

accordingly from the OP it happens everytime whenever there is villagers spawned

#

in villages

nimble stump
#

Seems easy to test that theory then

silver pewter
#

Hello, what's the best way to find the centre of a schematic with worldedit api thanks

tiny dagger
#

the center of a schematic or the location from where the schematic was takem?

#

because the center would be the middle of the cuboid

silver pewter
#

okay thanks

small citrus
#

What is the best way to create a timer or something?

silver pewter
#

using a Runneable with TaskTimer or DelayedTimer

#

Hello again sorry about this, how can I create a empty world thanks?

tiny dagger
#

use voidworld

silver pewter
#

I got it thanks 🙂

#

I used a flat world then set the generate settings 🙂

edgy pendant
#

I have problems with my Server Icon, it is not loading correctly, often it is blank. I use latest 1.15.2 Build....

hollow owl
#

(ClickEvent.Action.RUN_COMMAND, What do I have to put after RUN_COMMAND in TextComponent.

#

I've checked the wiki about it and I didn't find anything, so I'm asking here

abstract knoll
#

Is there a way to delete the default world w/o affecting inventories of players?

silver pewter
#

You can if you store all their data into a config then grab it in the other world like /store and /restore

keen compass
#

just delete everyting in the world directory except the one that says playerdata

abstract knoll
#

Kk, so I can transfer the playerdata to another existing world's folder, then set it's name as the world in both multicraft and server.properties?

keen compass
#

just copy the playerdata to another directory and it should work fine, as usualy make backups first

#

in case it doesn't work out for whatever reason

abstract knoll
#

alrighty, thanks a ton c:

nimble stump
#

That will probably put them in the same coordinates in the new world though

#

Unless you have an auto spawn plugin

abstract knoll
#

it's all g, the old world was never used - does it delete data from chests as well?

nimble stump
#

Chests are stored in the world, not in the player data

#

Wait, if the old world was never used why are you worried about player inventories?

#

Surely there wouldn’t be any data?

abstract knoll
#

for some reason, all playerdata is stored in that world

#

other worlds have empty folders for playerdata

nimble stump
#

Mk

#

Well you can just migrate that player data over then

abstract knoll
nimble stump
#

Well that’s not what you wanted

#

That’s deleting player data

abstract knoll
#

I transferred it tho, hmm maybe instead of transferring it made a duplicate

nimble stump
#

¯_(ツ)_/¯

abstract knoll
#

fingers crossed that's the cased, if not I'll just have to deal with my slow internet in uploading the backup I made lol

#

case*

nimble stump
#

Player data shouldn’t take too long to upload on its own

#

Very minimal data

obtuse rose
#

should I try to make an injector to save player data in MySQL database? 🤔

abstract knoll
#

Yeah, my internet's really really slow tho so it takes awhole

#

awhile*

#

I cant spell omg

#

what's the difference of <uuid>.dat and <uuid>.json?

sturdy oar
#

the file extension 😂

abstract knoll
#

smh

#

ngl made me smile tho

limber sierra
#

Arite lads

#

so my servers are crashing, moved over to a small host

#

and it's whenever there's sqlite activity

#

are there usually any sqlite libraries that i can download for stuff to not crash?

obtuse rose
#

maybe check what's wrong with sqlite file first?

torn willow
#

Uh my account is saying its been verified already, what do i do?

limber sierra
#

it's not just one plugin

#

that's the issue

#

it's whatever uses sqlite

#

e.g. Statz, AuctionHouse-Legacy, Jobs, etc

#

I've disabled Statz as that records everything you do

#

but whenever something is auctioned off or whenever someone starts a job, it crashes

#

and all three of them relate to whenever the sqlite db is being updated

#

is there some kind of lib that I should apt-get, or?

keen compass
#

@abstract knoll I should note ender chest data I believe is also stored in the player data files.

limber sierra
#

cc: @inland oxide ^^

sturdy oar
#

Spigot has SQLite drivers shaded in

abstract knoll
#

@keen compass thanks! which though the .dat or .json

limber sierra
#

Whenever I used Spigot or Paper, it still crashed

sturdy oar
#

what Spigot version

limber sierra
#

1.12.2

keen compass
#

probably both, not entirely sure @abstract knoll those are files I normally don't mess with lol

obtuse rose
#

pretty sure it's .dat file

keen compass
#

I think so too

obtuse rose
#

Minecraft's .dat is gzip compressed nbt data

abstract knoll
#

so far I still have my stuff so I hope it's all g c:

#

makes me wonder what's in the .json ones tho 🤔

keen compass
#

if I recall contains players last location, bed spawn location etc

#

open it, its just a json file

#

should be readable

#

the .dat file isn't readable and would require an NBT reader to view it

abstract knoll
#

gotcha,so it's just localized into the world then (except the bed stuff)

keen compass
abstract knoll
#

I kinda removed it alr so big rip

keen compass
#

use that site if you want to see what is in the .dat file

abstract knoll
#

^^ the .json I mean

#

and thanks will check out what's in it ❤️

limber sierra
#

what Spigot version
@sturdy oar more specifically:

This server is running Paper version git-Paper-1618 (MC: 1.12.2) (Implementing API version 1.12.2-R0.1-SNAPSHOT)
Checking version, please wait...
You are running the latest version
keen compass
#

well, that isn't spigot per-se

#

however you are also on an outdated version

#

also it sounds like your problem is I/O related

limber sierra
#

paper is a fork of spigot lol

#

even still regular spigot didn't work

keen compass
#

it could be that the host you went with has too many other VPS's on the same box as your VPS

#

Which is causing I/O for you to be horrible

limber sierra
#

it just doesn't really make sense though :/ it's only sqlite databases

#

E.g. I switched SpleefX to write from a db into flatfiles, and that turned out all fine

keen compass
#

did they allow you to upload your own jars for the server? or do they provide one for you?

obtuse rose
#

you need more than horrible IO to break SQlite though 🤔

limber sierra
#

They allow me to upload jars

keen compass
#

does it throw any errors?

limber sierra
#

Apart from the crash, no

#

It creates a fat 1gb core dump and slaps a crash log in my directory

keen compass
#

then the only thing I can think of is that there is so much data that sqlite just can't keep up with it. Or they are all trying to use the same DB

#

?paste

worldly heathBOT
keen compass
#

paste the crash log

#

it sometimes contains helpful stuff

#

core dump is helpful if you have a heap dump viewer

#

you can see what the server was doing just before it crashed

#

But that crash log would be helpful too

obtuse rose
#

1GB core dump?

#

that's quite a smol amount of RAM

limber sierra
#

no smh

#

i mean the size of the file

#

i'll get the crash log now

idle zodiac
#

Is there a listener to detect when armor is equipped?

#

Or an equivalent?

keen compass
#

heap dump doesn't always correlate to the allocated amount of ram @obtuse rose especially if the ram allocated is dynamically set. That is the initial heap size is not set to the same size as the max

#

in that case it will only dump what was being used

tiny dagger
#

how would i go about on creating a snapshot of the attributes? 🤔

#

i was thinking about enum map attribute base value

#

but i'm not sure if that's good

limber sierra
obtuse rose
#

segmentation fault? 🤔

#

interesting

keen compass
#

well, interesting you start the server with just 128M

#

probably should start with a bigger allocation lol

obtuse rose
#

that shouldn't be the problem though

limber sierra
#

^^

keen compass
#

no, just causes GC pauses is all

#

as it does show

obtuse rose
#

that problem would goes away when JVM warms up

limber sierra
#

i mean

#

i'm p sure startup memory isn't causing the sqlite problem :S

#

but i'll change the startup memory

keen compass
#

well the last thing that was doing anything with SQLite is leaderheads

limber sierra
#

that's just one example

#

from my spleef server

#

which is also completely dying

obtuse rose
#

It's segmentation fault

#

it doesn't matter what plugin do what

#

@limber sierra is it running in docker?

#

Pterodactyl?

limber sierra
#

^^

#

yes

keen compass
#

that would probably explain some problems

#

SQLite shouldn't generally cause the JVM to crash

#

at least not directly

#

Application crash sure, but a JVM crash is usually more serious though XD

limber sierra
#

so a segmentation error?

keen compass
#

that would do it

#

but the question is why though

obtuse rose
#

@limber sierra what hosting is it if I may ask?

limber sierra
#

i mean, could it possibly be because of permissions in server files?

#

real small one, used them for a little while though with vpses

obtuse rose
#

It would be more likely to be either docker or kernel problem

#

I think

keen compass
#

only thing I can think of that would cause that is docker not playing nice or a memory module starting to fail

crisp nest
#

guys where can i find a shop plugin for 1.14.4?

keen compass
#

kernel could probably do it, but I am not familiar enough with alpine linux

limber sierra
#

guys where can i find a shop plugin for 1.14.4?
@crisp nest on google

keen compass
#

its possible alpine linux and docker don't play well together

#

which could result in segmentation faults

crisp nest
#

i know bruh
its just that the best ones dont show up when i do /plugin

keen compass
#

Chestshop still exists

#

and usually gets updated

#

@limber sierra do you have access to SSH?

#

or do you have to use that panel to access your files

limber sierra
#

i have to use the panel

#

however, i'm working closely with the host team

#

so i could request whatever

keen compass
#

That makes more sense, so it probably could be a file perms problem but that doesn't really make sense unless something is setting the perms on those sqlite files

limber sierra
#

pterodactyl is sftp, so i can edit permissions on them

crisp nest
#

Chestshop still exists
@keen compass
I dont know how to use it :/

limber sierra
#

read the instructions

obtuse rose
#

no, pterodactyl set all files permission when server start

keen compass
#

it has a very thorough documentation for it

obtuse rose
#

Unlikely to be pterodactyl problem imo

#

start with updating docker and kernel might be something you should try @limber sierra

keen compass
#

But it doesn't make sense there would be file perm issues on those sqlite files unless something else is interfering with that

#

@obtuse rose they don't have access to the VPS

limber sierra
#

Thing is, i've deleted the .db files

#

but

keen compass
#

that is fine

limber sierra
#

even when it recreates and tries to update, it still crashes

obtuse rose
#

ah so the "hosting team" means the hosting company?

limber sierra
#

^

#

yes

#

my bad, should've provided clarification

keen compass
#

so do they give you a docker container or is the docker container running inside the VPS?

limber sierra
#

they give me a docker container

keen compass
#

Sounds more like hardware failure then

#

but can't know for sure because you don't have access to the files that would indicate as such or perform any tests to know

#

I would give your hosting provider that crash log

#

and ask them if they could check the hardware to rule out hardware problems

limber sierra
#

I did a few moments ago, I'll bring up hardware now

#

thank you :)

keen compass
#

docker isn't like normal VM's so it makes use of the underlying host hardware

#

but either it is a docker problem or a host hardware problem. That is about much info I can give, but that is only because you are only able to give limited info as well. Hopefully your hosting provider helps out.

crisp nest
#

so i am trying i did the tutorial but, it doesnt work (sorry but im new to plugins)

obtuse rose
#

Hardware problem?

#

you realize kernel exist right 😒

#

I use too much emoji lol

keen compass
#

Yes I am aware kernel does exist however this is a docker container so the OS in the container shouldn't be the issue. It could be the kernel on the host but odds are it isn't either. But segfault means memory was being read/wrote to in an illegal location

#

and this is the JVM that crashed, not the application, so there isn't very many things that can cause the JVM itself to segfault.

#

in all cases of what caused it, its outside of this persons capability to fix it

obtuse rose
#

illegal location, do you know what of the cause that make the location illegal?
the freaking kernel deny access to it 😒

keen compass
#

Or the location is no longer valid because of memory module failing

silk gate
#

send the dump

obtuse rose
#

yea let's forget about kernel which is more common segfault cause and skip to hardware okay

keen compass
#

Anyways regardless like I said, the hosting provider will have to fix it

silk gate
#

sqlite / jni shit is prone to crashing

#

but if it's segfaulting prob HW

keen compass
#

I am going with HW because it isn't very common for the kernel to freak out about the JVM

#

something has to have caused the JVM to attempt to access an illegal location

silk gate
#

it's a mission for JNI to not crash the jvm

keen compass
#

So, the only thing that comes to mind where I have rarely seen it, is a memory module failing

silk gate
#

yeah does look like dead ram

obtuse rose
#

but that's quite rare though

silk gate
#

it happens

keen compass
#

it is, but it does happen

silk gate
#

I've had a dead ram stick

obtuse rose
#

would need to reconsider hosting company xD

silk gate
#

no he wouldnt

keen compass
#

it may not be their fault

silk gate
#

dead ram can happen to anyone

keen compass
#

hardware fails all the time

#

all that needs to happen is for them to locate the dead ram card

#

and replace it

#

and then all is good

#

its more common for ram to go bad in servers then it is for desktops is because servers are generally running 24/7. Where as most desktops don't run 24/7 and don't run as extensively as servers do either.

obtuse rose
#

although I would expect better maintainance, but yea could be bad timings happens I guess

keen compass
#

can't really predict when they will go bad

#

even with good maintenance

#

they can still die XD

limber sierra
#

"The kernel and docker are updated frequently"

#

just got that from the hosting provider

obtuse rose
#

then it's hardware

keen compass
#

Figured it wouldn't be the kernel or docker. But never hurts to check as that is the easiest 😉

#

core dump looks a lot similar to one I had looked at that was a memory module failing

boreal bramble
limber sierra
#

although I would expect better maintainance, but yea could be bad timings happens I guess
@obtuse rose speaking of which - should i get timing reportings, if that helps?

obtuse rose
#

nah

keen compass
#

its not going to help in this case

obtuse rose
#

whatever had failed, your hosting company is the one who have to take care of it

#

core dump looks a lot similar to one I had looked at that was a memory module failing
@keen compass segfault dump looks the same though? 🤔

keen compass
#

well its a core dump, just means the JVM crashed. But they don't all look the same

#

Usually when the core dump doesn't make sense in why it attempted to access an illegal memory location. One of two things happened. Either the kernel freaked out which is rare unless you are using a kernel that isn't common to use which in this case isn't the case as they are using alpine linux as well as the OS contained in docker. So that means docker would have attempted to access an illegal memory location, but if that happened docker would have crashed as well which doesn't appear to have happened. Or the memory module is failing and the location it wanted simply according to the host no longer exists because it can't be accessed IE it died or just lost the information it was suppose to contain.

obtuse rose
#

core dump looks a lot similar to one I had looked at that was a memory module failing
I am saying that statement is false, because you can't tell what cause segfault by looking at core dump

lilac quarry
#

how can I reduce an ores experience point

#

For example if player mines lapis ore I want to give 0 exp

obtuse rose
#

@lilac quarry change it in BlockBreakEvent

keen compass
#

@obtuse rose but then how did I correctly suspected it was HW then? o.O

#

they won't be completely the same

#

but they will share similarities

lilac quarry
#

Where can I find the BlockBreakEvent?

pallid arch
#

where can I find the plugin othedrop on version mc 1.15.2 ?

lilac quarry
#

@obtuse rose I don't know anything about BlockBreakEvent, How can I do?

idle zodiac
#

How can I listen for the equipping of Armor in spigot 1.8.8?

barren abyss
#

How can I listen for the equipping of Armor in spigot 1.8.8?
@idle zodiac you can check wich slot have an item

idle zodiac
#

@barren abyss Should I put that in a Loop?

barren abyss
#

Neh, theres probably an easy way let me see

idle zodiac
#

thanks lopl

barren abyss
#

You just want to check if he put on the armor?

idle zodiac
#

ye

#

I need custom armor points

#

and that seems to be the only way in 1.8

barren abyss
#

I think you can do it with InventoryMoveEvent

idle zodiac
#

OK

#

Let me see lol

#

InventoryMoveItemEvent?

barren abyss
#

You can probably check if the item [Material.LEATHER_HELMET] has been moved to head slot and do stuff then

idle zodiac
#

I can't get the player name from that

barren abyss
#

Im sure you can

idle zodiac
#

It's 1.8

#

InventoryMoveEvent isnt a thing

barren abyss
#

oh..

limber sierra
#

whatever had failed, your hosting company is the one who have to take care of it
@obtuse rose @keen compass the hosting company have taken a look at the sqlite plugins on a test server, and it seems to all be fine apparently (just tried on regular spigot 1.12.2 as well)

Edit: never mind

barren abyss
#

whos playing 1.8 in 2020?

idle zodiac
#

Me

limber sierra
#

me

barren abyss
idle zodiac
#

Also literally everyone on the hypixel network

limber sierra
#

^

idle zodiac
#

and munchymc

#

and invadedlands

#

and saicosky

barren abyss
#

oh yeh, they have those minigames right?

idle zodiac
#

?

barren abyss
#

I don't play that much minecraft

idle zodiac
#

Literally any pvp network

#

We can tell

barren abyss
#

just make plugins for people tho

idle zodiac
#

Cool

barren abyss
#

Maybe check armor on player?(no idea if its possible)

#

It look so tricky can't find an easy way to do it ..

idle zodiac
#

Ye...

#

If that isnt possible

#

Is there a way with 1.8 NMS to alter the amount of defence points a player has?

silk gate
#

I am saying that statement is false, because you can't tell what cause segfault by looking at core dump
@obtuse rose sir that is the point of a core dump

idle zodiac
#

i just realised i didnt have an eventhandler i am so stupid kill me now

barren abyss
idle zodiac
#

it still doesnt work

obtuse rose
#

@silk gate

SIGSEGV - segmentation fault
SEGV_MAPERR - address not mapped to object

But it doesn't explicitly tell you what cause SEGV_MAPERR

#

The rest is the running process, data in the stack etc etc

silk gate
#

@obtuse rose yeah and by reading that you can figure out whats going on

obtuse rose
#

not quite

#

at least not without SSH access 😛

silk gate
#

having a ton of unknown values in registers points to a faulty memory module

obtuse rose
#

it could also be location that belongs to other process

#

🤷‍♀️

silk gate
#

why would it

#

it's running in docker

obtuse rose
#

it still in a process, even if it's in a docker

#

it won't get access to entire docker memory

silk gate
#

yeah but dockers ideology is single process per container

#

so it's really unlikely

#

also brb phone 1%

obtuse rose
#

trust me, process in docker doesn't get entire docker memory access

silk gate
#

yeah ofc

#

but

#

whats the likelihood that another process has magically been given that memory

obtuse rose
#

quite a lot actually

#

I just start up minecraft server

#

notice that it's scattered into multiple places

keen compass
#

now take a heapdump of that process and see if any registers come up as unknown

silk gate
#

in docker @obtuse rose

#

and on linux

#

lol

keen compass
#

file permissions can cause a segfault, but that doesn't explain unknown values in registers or empty registers. It is possible that it could be the sqlite library if its happening in the native library, but according to this core dump, its happening outside of JVM control so not the library being loaded. We can see all the libraries being loaded just fine actually even the sqlite one. It could be a problem with semaphores but highly unlikely.

#

An outside process could have caused it, but then that would be a question of, what process was running in the docker that tried to access JVM memory

obtuse rose
#

@silk gate you'll find the same result in a running docker, it still share memory pool with it's host

#

although I am not willing to spin up docker to show this, you're welcome to test it by yourself though 🤷‍♀️

turbid latch
#

org.bukkit.craftbukkit.v1_15_R1.CraftWorld cannot be cast to com.sk89q.worldedit.world.World

what should i do to get worldedit's world?

keen compass
#

however, it will have mapped memory for its specific use, and the processes inside docker would use that mapped address space that docker created

#

if something from the outside attempted to access dockers memory space, the docker container would have crashed and not just the JVM

subtle blade
#

WorldEdit has Bukkit adapters

#

Class is like BukkitAdapter or something. Some static methods to convert

keen compass
#

the only other possibility would be a buffer overflow

#

but interesting that the JVM or docker would be creating that

silk gate
#

a buffer overflow in the sqlite lib wouldve been discovered long ago

keen compass
#

well its not happening in the JVM

#

its happening outside of the JVM in native code

silk gate
#

yeah but

#

the sqlite lib is used so much

#

it wouldve been discovered long ago

turbid latch
#

i did this but it is wrong
final EditSession editSession = WorldEdit.getInstance().getEditSessionFactory().getEditSession((World) p.getWorld(), -1);

keen compass
#

sqlitelib would be in the JVM

#

not outside of it

silk gate
#

its jni, no?

keen compass
#

well either JNI or JNA or docker

#

but in either cases, still interesting that either of those would be causing that

#

or something to cause either of those to do it lol