#dev-general

1 messages · Page 616 of 1

brittle leaf
#

arraylist is O(n^2) hashmap is O(n)

#

so for small amounts of data its probably no different, for large amounts of data such as custom and vanilla item lists its better

cinder flare
#

it iterates once over the array

brittle leaf
#

im looking it up on stackocerflow

static zealot
#

kek

prisma wave
#

hashmap is also not O(n) lol

brittle leaf
#

im just copy and pasting what that says

cinder flare
#

yeah wtf

#

hashmap is o(1)

brittle leaf
#

arraylist o(n) hashmap o(1). they multipled it by n for whatever reason

static zealot
#

the stackoverflow post

#

was saying about n searches

#

so for n searches in arraylist it is O(n^2)

brittle leaf
#

yeah

static zealot
#

it does say arraylist is o(n) and hashmap is o(1)

cinder flare
#

lmao

brittle leaf
#

i took the wrong numbers then

#

my bad

remote goblet
#

hey just because it makes me look either really cool or really depressed

steel heart
cinder flare
#

but theoretically it should be O(1) access

steel heart
#

yeah in abstract terms yeah

cinder flare
#

and I can't remember whether java uses linked list collision strategy or just bumping along the keys

obtuse gale
#

your mother

cinder flare
#

but god it would be awful if you got O(n) access

steel heart
#

iirc it uses some sort of linked list

prisma wave
#

yeah im pretty sure it does

sly sonnet
#

use spaces ffs

#

shit's ugly af

noble gulch
#

Anyone worked with the bw 1058 api here

old wyvern
obtuse gale
#

Where did Emily go?

cinder flare
primal crystal
cinder flare
#

she left HC and Dev Den though

humble silo
cinder flare
#

not super sure

old wyvern
#

It by itself mentions that worst case is O(n)

#

O(1) is the average case, big theta not big oh

cinder flare
#

Θ(n) isn't that different than O(1)

#

oh

#

well

#

most of the time it's O(1)

old wyvern
#

Yes

cinder flare
#

like shit has to seriously hit the fan for it to be bad lol

old wyvern
#

Yes, but the worst case bound is used more often than the other 2 afaik, not that it really matters much in this case

half harness
cinder flare
#

just everyone refers to hashmaps at O(1) cause it's really hard to get it much worse

#

with autoresizing and a good hash algorithm

#

and some impls guarantee O(1) I saw

quiet depot
#

wadu hek

#

emily left

#

oof

#

still has dev den link in her discord bio thing

cursive jolt
#

Arrays can beat hashsets due to low level behavior of the CPU

#

so don't use hashsets like an array...

old wyvern
#

How do you even use a hashset like an array

#

sets are not indexed

inner umbra
sly sonnet
wind patio
steel heart
rotund blade
#

i want make player can't break specific block event that can be turn on/off by command
can someone check?
https://pastebin.pl/view/7fdbba19
the event still going on even i run /enabledisable disable

wintry plinth
#

On mobile so it’s hard for me to fully help with that issue, but some things I’d recommend;

  • Uppercase your class names, it’s more of the “norm”
  • Camel case your event function name (so, onBlockBreak) for example
  • You don’t need if(enabledisable == true), doing if(enabledisable) does that.
  • Personally, I’d change that variable to something like isEnabled or canBreakBlocks so it makes more sense.
  • I’d change if(enabledisable == false) to if(!enabledisable) it’s much cleaner
#

You might find changing those IFs fixes it, as I don’t see any other issues from viewing on phone

static zealot
#

jesus

#

everything is named enabledisable. I thought its just a boolean but no, its the method, its the class, its the boolean

static zealot
#

oh and its the plugin as well

rotund blade
#

xD im new

pastel imp
#

Uhm how would you guys do something similar to mycommands where you can add custom commands yourself. I wanna add a simple custom command in my server management plugin but unsure how it would even work tbh

primal crystal
#

or Aikars Command Framework

sick belfry
#

how would it work is like, a manager reads all class files that implement CommandExecutor

#

and you can use commandmap to add them to the server

pastel imp
#

@latent dirge @primal crystal not asking for a lib to do custom commands on my plugin lol.

#

Couldn’t I just use the bukkit CommandManager to add commands?

agile galleon
wintry plinth
#

Why did she leave

obtuse gale
agile galleon
pastel imp
tranquil sinew
#

how does the .teleport() work ? it cannot handle three integers in the brackets

cinder flare
#

i presume you pass in a location or something

tranquil sinew
#

but for example player.teleport(0, 10, 0); doesnt work :(

#

how can i teleport a player to some coordinates ?

remote goblet
#

Player#teleport(new Location(world, 0, 10, 0));

cinder flare
#

what the hell

remote goblet
#

incredible docdex

tranquil sinew
remote goblet
#

Coordinates are parsed through the Location object in spigot

tranquil sinew
#

is this a variable ?

remote goblet
#

So when you do Player#getLocation() for example, that object provides a large portion of methods for getting x, y, z, yaw, pitch, etc aswell as including add and subtract methods for it

tranquil sinew
#

ok i just had to import the class :)

pseudo rampart
#

hey, im looking forward to a big project, check my status and dm me ig

tranquil sinew
#

Float joinZ = plugin.getConfig().getInt("JoinZ") + 0.5;

why does this not work ? it says Incompatible types. Found: 'double', required: 'java.lang.Float'

#

now i have deleted the + 0.5 part and it says Incompatible types. Found: 'int', required: 'java.lang.Float'

steel heart
#

use the float over Float

#

and also 0.5 would be inferred as a double, so you need to type 0.5f

drifting aspen
tranquil sinew
#

how can i make a function in java ?
i dont understand the articles in the internet :/ i want to teleport a player to a location, but thats too many code to use everytime. so i want to create a function like "player.resetlocation()" :D

pastel imp
#

did andre's reactions get deleted?

#

I remember this having a lot more likes

ocean quartz
#

It's discord bug, if you check the reactions it's still there

wintry plinth
#

o ye wtf

agile galleon
#

Whadafak

wind patio
#

who banned em

ocean quartz
#

No one

wind patio
#

💀

#

remind me how to replace $version in plugin.yml with current version using gradle then

#

nvm fixd it

stone crane
#

i need help

compact perchBOT
#

There is no time to wait! Ask your question @stone crane!

stone crane
#

does anyone here know how to stop hackers?

#

i may or may not be stuck in a website by hackers

#

aaaaaaand, they are forcing me to compete for 500 dollars

#

but i need a competitor

#

and they wont let me go

#

until the game ends

#

all i need to do is to get someone in and one of us hurry

ocean quartz
#

ALT + F4

stone crane
#

i doesn't wok

#

i already tried everything

#

even trying to get other hacker help

#

nothing works

#

im gonna need someone to go in and challenge me to a non-competitive game

#

also

#

they threaten to leak my ip address to people if i somehow get off

#

this is VERY serious

#

and im scared

#

guys?

#

hello?

rotund blade
#
    public void PlayerDeathEvent(PlayerRespawnEvent event) {
        Player player = event.getPlayer();
        for (Player pl : Bukkit.getWorld("world").getPlayers()) {
                player.sendMessage(ChatColor.RED + "You Died...");
                player.getInventory().addItem(new ItemStack(Material.DIAMOND));

        }
    }```
i want give item when player respawn (after died), but this code not working
sly sonnet
#

leaking ip wont do anything

inner umbra
rotund blade
#

yep registered, so how to make when player died, only give item to that player?

inner umbra
#

remove the for loop. And if its registered but not running... debug it.

rotund blade
#

ah it works, thanks!

drifting aspen
#

please

#

I cannot figure it out

wind patio
#

to replace ${version} in plugin.yml with the one in build.gradle?

wind patio
#
processResources {
    eachFile {
        if (file.name.endsWith(".yml")) {
            expand version: version
        }
    }
}
drifting aspen
#

that

wind patio
#

or do == plugin.yml

drifting aspen
#

doesn't work for me

#

I've already tried it

#

But with no success

wind patio
#

do you have version defined?

drifting aspen
#

yes

#

My guess is, that this might be caused by the build cache

#

because I need to invalidate it, in order for it to work again

wind patio
#

just run gradle clean

drifting aspen
obtuse gale
#

yo

#

why i trying to download

#

placeholder

#

this popping up

#
Failed to find an expansion named: Essentials
wind patio
#

when you publish a new release for every 10 lines of code changed

static zealot
#

what

wind patio
#

open original

#

and zoom in

static zealot
#

OH MY FUCKING GOD

wind patio
static zealot
#

what plugin is that|?

#

I see like 10-15 updates a day

wind patio
#

AdvancedEnchantments

#

that's one way to stay in the first page of resources

distant sun
#

You are wrong M0dii

distant sun
#

Most of the updates are related to the web editor which has all features since it was made, and recently, for translations!

wind patio
distant sun
#

Added all potion effects to the web editor
Yet, the plugin has like 30 effects

static zealot
#

most*

distant sun
#

Jk man 🤣

wind patio
wind patio
static zealot
#

he forgot some of them lol

distant sun
#

2 days later he found more debug messages

wind patio
#

full on new release for translation fix

#

o hey I found another debug message update

#

man he's really struggling with russian translation

#

:/

static zealot
#

:))))

wind patio
#

I don't want to image wall spam the chat, but yeah, there's more single fix russian translation and more remove debug message updates

drifting aspen
wind patio
#

💀

obtuse gale
#

E

#

question

#

how to get the nickname from the command? like I'm making a mineflayer chatbot and I don't understand how to get or like extract the string that goes after command
example
!dox ltrhrd // or any other nickname
needed output:
ltrhrd's ip: // (random ip from generator)

distant sun
#

Is there any tool to view patches as a whole, like they would be a part of the actual code?

wind patio
#

what kind of patches

#

bash patch?

distant sun
#

Java patches, e.g. paper

brittle leaf
#

discord is working again

agile galleon
#

Clone repo

#

Applypatches

distant sun
#

Ok, and how would that help?

distant sun
obtuse gale
#

What way would yall recommend learning java/plugin development

#

As a complete newbie

onyx loom
#

?learn-java

compact perchBOT
#
FAQ Answer:

Online Courses:
Online courses are also great for learning java. Some websites that offer them are:

  • Coursera - Free unless you want a certificate
  • PluralSight - Great courses from what I've seen. Mostly Paid
  • Udemy - Never used them myself but they seem to all or at least most be paid.
    My first ever course was one from Coursera. - I can say it was pretty good at introducing me to the programming world as a whole not just java.

Oracle Docs:
Oracle docs can help a lot at learning and understanding java:

  • Start with this,
  • Breeze through this (skipping stuff that doesn't seem relevant like bitwise operators),
  • Hit this.
    They're the first three from this larger thing which you should definitely go through overall. But those three should be enough for slightly better understanding of what is happening here without feeling like a huge time sink.
    That one is a small part of this larger site wherein "Essential Java Classes" and "Collections" also have good useful stuff

Other services:
Some other cool services that will help you learn java are:

As you can see there are plenty of good ways to learn as long as you're willing to invest the time. Have fun learning!

mental trench
pastel imp
#

@lean kiln if you are trying to compete/copy paste them, then at least do it better than them lol

rotund blade
#

is that possible to make custom recipe for custom item that i make with itemstack?

like custom item + custom item = custom item

wintry plinth
pastel imp
#

Ye 😂

distant sun
rotund blade
distant sun
#

Nice

distant sun
#

Any idea how to make IJ use a certain git account for each project, instead of one for all? I have my github account logged-in but it currently uses my account for work everywhere 😒

potent nest
distant sun
#

I see

viscid charm
#

Hey guys I am thinking of creating a really small free web tools for hikers, campers, and backpackers. Having trouble finding ideas. (Very simple ones like calorie calculator)

lusty cove
#

@floral grove

floral grove
#

ya

lusty cove
#

Accept my friend request, please

floral grove
#

alr

wintry plinth
#

With many in the MC community using the “GPL requires source code on demand” argument, wouldn’t this mean we could get the source code to DeluxeChat or other clips plug-ins?

onyx loom
#

clips plugins arent licensed under gpl afaik

wintry plinth
#

I thought all plug-ins are supposed to be GPL?

sweet cipher
#

They have to be

wintry plinth
#

Yeah

onyx loom
#

they dont

wintry plinth
#

Any plug-ins that use Bukkit API have to be GPL

#

From what I’ve constantly seen argument wise

sweet cipher
wintry plinth
#

Trying to learn myself here, but I always remember that people would constantly mention it in any Discord.

“You must declare the source!!”

sweet cipher
#

I’m pretty sure

distant sun
#

We are we even talking about this lmao

onyx loom
#

this argument has been brought up time and time again

static zealot
#

someone had a pretty good argument against this somewhere. can't find where

#

I believe it was in helpchat

#

but don't remember who

distant sun
#

Is called "dont you have better things to do?"

ocean quartz
#

Legally it's questionable, feel free to sue if you want to see the source and see if you're right lol

onyx loom
#

🌚

static zealot
#

:)))

static zealot
#

ty matt

distant sun
#

🤣

wintry plinth
#

For me I always thought it was silly and never handed over code, especially to a commercial product. However I constantly see it in Discords, MC forums etc

#

And it made me wonder, if everyone here follows the protocols and really goes wild over open source, couldn’t we get it

onyx loom
#

clips plugins, clips decisions

ocean quartz
#

Yes by license inheritance it is supposed to but legally it'll probably be different

wintry plinth
#

Yeah, legally nobody would go that far

#

Even all these silly NDAs in the community

#

No server unless you’re like Hypixel would even enforce it, the costs involved would outweigh what you’d even get in return

ocean quartz
#

Hmm you're probably talking about small servers, big ones definitely would

static zealot
obtuse gale
#

Hello, Anybody know how to fix "Invites are disabled" ? Although this role have permission to invite people to the server
Only Owner can invite people to the server

static zealot
urban sleet
#

But yes, it would mean that we could get the source to DeluxeChat / other plugins

wintry plinth
ocean quartz
#

Mine definitely would :kek:

wintry plinth
#

Your server?

onyx loom
#

in conclusion: gpl bad mit good

ocean quartz
#

One I work for

wintry plinth
#

It’s like, I had a decent sized mc hosting company long ago threaten me (they were in the wrong btw), thankfully had someone with legal experience explain to me.

I defended my side, and they backed down in the end. I don’t think I’ve seen any court cases that stemmed from an MC server, that isn’t the likes of Hypixel

#

Even then, don’t think I’ve ever heard of a Hypixel court case (on the topic of plugin stuff)

obtuse gale
#

That’s like saying make anticheats open source

#

And spigots

#

Let’s take what we paid for and give it to the public

#

Give it to some skid who gets the same use out of it now but didn’t contribute at all

#

In conclusion mc servers should never be open source till they’re gone

urban sleet
#

Why shouldn't anticheats be open source?

#

And spigots?

onyx loom
#

incredibly bad take

inner umbra
potent nest
#

err if you want to look at the code, you can do so anyways

urban sleet
#

Security by obscurity isn't security

obtuse gale
#

That is stupid af for anticheats

#

And spigots I already said

obtuse gale
#

This is not an os or something these are mc plugins

#

That are paid for, and not to be leaked because it is a large competition between servers

#

You just give your opponent the upper hand

potent nest
#

bruh, everyone can buy it

obtuse gale
#

?

potent nest
#

if your anti cheat plugin isn't open source, it's most likely due to the code being a shitfest

wintry plinth
#

Eh, I disagree there

obtuse gale
#

Makes zero sense

#

It’s not open source because most checks are by-passable

#

And you do not want competing servers having the same checks

potent nest
#

as I said, if someone wants to bypass a check, they will do anyways

obtuse gale
#

Not true

wintry plinth
#

It's like I used to own a MC Spoofer, it was subscription based, and people used to say to me "oh gpl says open source it", I'm like, I wouldn't do that, because that would harm my business.

obtuse gale
#

Yes there are many things that harm the business, then they would figure out a way to reverse your spoofer

wintry plinth
#

yea, or as you said, skid it

obtuse gale
#

Stuff like edited spigots and anticheats are the two that should never be put out to public

#

It’s handing out paid work at the expense of losing the competition

potent nest
#

lol

obtuse gale
#

I guess you don’t really understand that till you work on something large or competing servers

potent nest
#

you clearly have no clue how software development works

obtuse gale
#

I do indeed

#

As I said this is not an os

wintry plinth
#

@obtuse gale but if Hypixel open sourced their anticheat, we wouldn't get any hackers!

obtuse gale
#

Well that’s different cause hypixels anticheat is shit

#

I’m talking servers like mine men club

#

With one of the best anticheats eva

#

I gurantee if mmcs anticheat was open source, then there’s no reason to not play hypixel cause they’ll have the same checks

urban sleet
#

But they wouldn't have to open source it, GPL doesn't mean your program has to be available to everyone, it means people with access to the binary file (like a JAR) need to have access to the source

obtuse gale
#

Ah yea I was talking about just open source in general

#

I just generally think in some senses open source isn’t the best call

urban sleet
#

Oh, got it

potent nest
#

yeah that's where you're just wrong

obtuse gale
#

Not like there’s “mc plugin zero days lmao”

obtuse gale
#

So keep chatting

potent nest
#

your denying everything anyways, not worth for me to waste my time

obtuse gale
ocean quartz
#

So you're saying an open source anti cheat wouldn't be that secure? Have you looked at Linux?

prisma wave
obtuse gale
#

And no it would not be lmao

prisma wave
ocean quartz
#

We can agree to disagree

prisma wave
obtuse gale
#

@ocean quartz comparing mc protocol which has an obvious wall vs a somewhat unexplored kernel in some sense just doesent make sense to me. But sure

prisma wave
#

wall?

#

also how is the linux kernel unexplored lmfao

potent nest
#

btw, checks that can be bypassed are typically called "exploit" or similar :p

prisma wave
#

It's probably the most used open source project ever

obtuse gale
#

Not in that sense I’m just saying like the mc protocol is much smaller and fully explored

#

Does not push updates as much as lonux

#

So if you get a way to catch a cheat best believe you don’t hand that out for the cheaters to patch it

#

Cause most checks are reversible

inner umbra
potent nest
#

linux is "fully explored" too, that code wasn't discovered on the moon

prisma wave
obtuse gale
#

Still not as much as mc protocol because it is about 500x smaller

potent nest
#

that does not make sense at all

inner umbra
prisma wave
#

all obfuscation and closed sourcing achieves is slightly slowing down people with malicious intent

wintry plinth
prisma wave
obtuse gale
#

That would be like asking to get your car hacked

inner umbra
#

Thats exactly what you're saying is secured code means bad code?

obtuse gale
#

No it helps stop or slow down malicious shit he’s right

obtuse gale
#

Which is a big win for most things

potent nest
prisma wave
#

yes it slows it down but it doesn't fully prevent it

#

I never said otherwise

obtuse gale
#

Yes but now imagine the 20 other ways to inject into your Tesla leaked

prisma wave
#

All it achieves is slowing it down

cinder flare
#

I mean just look at games having their DRM removed

inner umbra
cinder flare
#

all DRM does is make it a pain in the ass for paying customers

#

You literally get a better experience having a pirated version of a game because of the DRM being removed

prisma wave
#

oh sorry wrong reply

ocean quartz
#

Both will at some point be exploited, open source tends to find it faster and patch it faster
Meanwhile closed source can go years being exploited without being noticed, we have seen countless examples of that

obtuse gale
#

Yes but my point with minecraft anticheats is that’s not likely@possible

prisma wave
#

Why not?

cinder flare
obtuse gale
#

The protocol is a brick wall, you make a check by reversing the client. They figure out what you reversed they simply change it

inner umbra
prisma wave
#

lmfao

#

And open source software doesn't have the exact same thing?

inner umbra
potent nest
#

what

cinder flare
#

then you just have to trust them to fix them lmao

#

open source, you can fix them yourself

prisma wave
#

Yeah you can report them but there's no guarantee they'll get fixed

obtuse gale
#

There’s no guarantee it gets fixed open source either but there is a larger chance

prisma wave
#

a significantly larger chance yes

obtuse gale
#

Ah open source argument is just pros and cons

inner umbra
cinder flare
#

The amount of people that even can fix it is significantly larger

prisma wave
#

Especially since you also have the option of hiring a 3rd party to fix it

obtuse gale
#

It shouldn’t be an argument let people chose what they want

prisma wave
#

I mean

obtuse gale
#

It’s there code anyways

cinder flare
#

It brings society up when more code is free and open source for everyone

obtuse gale
#

Not anyone else’s

prisma wave
#

obviously

ocean quartz
obtuse gale
#

True this is a massive topic with two sides tho

#

That always just has an opposite side point

cinder flare
#

As is... every argument?

obtuse gale
#

So this ain’t worth

inner umbra
prisma wave
#

the only "good" argument for closed source is "I don't want people stealing my 1 billion dollar startup idea"

obtuse gale
#

Yea star just wants some shit to skid off

prisma wave
#

but even then

#

There are many successful products that are still open source

cinder flare
cinder flare
#

Why do you think companies like Microsoft have started making a bunch of stuff open source?

#

VSCodium, Windows Terminal

#

The point of making something open source is that it can become the definitive "thing" that everyone just uses and imprvoes

#

Instead of having like 10 different thing, everyone can use one thing and make it better for the rest

obtuse gale
#

There’s never any guarantee it’s a fair point tho

cinder flare
#

There's never any guarantee for what?

obtuse gale
#

For people to improve or report

cinder flare
#

If you make a good product, people will use it and contribute to it

obtuse gale
#

Zero gurantee

prisma wave
#

At the end of the day the most important thing is that your product is actually good

#

closed sourcing won't fix the fact that it sucks

cinder flare
#

I 100% guarantee you if you have a good product people will improve and report

obtuse gale
#

Says star?

cinder flare
#

what is the crux of your argument lmao

obtuse gale
#

Ok I’ll trust your word bro

prisma wave
#

?

cinder flare
#

just bullying me?

inner umbra
#

See I don't open source for contribution. I open source for tutorial. I don't like others code and I don't like working on others code.

cinder flare
#

"star wants to skid off open source projects" lmao

obtuse gale
#

Let me put my anticheat open source on my 2 follower GitHub. Let the cheaters view it

prisma wave
#

Lmao

cinder flare
#

oh this is about anticheat?

obtuse gale
#

And nobody help it lmao

obtuse gale
#

That’s where my argument stems

#

Yugi you’re ten years late

prisma wave
potent nest
#

well if looking at the code helps a cheater, your code is shit

inner umbra
ocean quartz
obtuse gale
#

Are you stupid sir

cinder flare
#

oh anticheat is kind of a different matter as security through obscurity actually kinda works with thresholds and shit

obtuse gale
#

That is not how it works

old wyvern
prisma wave
obtuse gale
#

Obviously you bud cause If you didn’t you’d fuck off

inner umbra
old wyvern
obtuse gale
#

That’s the worst argument I’ve ever heard for anticheats

prisma wave
#

do not be toxic please

onyx loom
#

🤓 🤓 🤓

old wyvern
#

Viewing and finding flaws in your application leads to more people actually attempting to fix it

obtuse gale
#

Sorry the checks are easy and clean. Let me show you which packet to delay to bypass my check

old wyvern
#

If they are part of the userbase they clearly dont want to get exploited

obtuse gale
#

Yea so logical

prisma wave
old wyvern
#

^

prisma wave
#

They can literally just decompile to find that out anyway

obtuse gale
#

Not if they don’t have it?

prisma wave
#

if it's public then someone will leak it sooner or later

cinder flare
#

you're not selling it?

obtuse gale
#

I work for somebody else

cinder flare
#

they're not selling it?

prisma wave
obtuse gale
#

No

#

It is to be private and stay private

cinder flare
#

then I guess yeah there is an argument to be had if just nobody knows anything ever

prisma wave
#

bruh we are obviously talking about public products here

old wyvern
#

Those checks that can be bypassed due to logical differences can be found even by fuzzing with packets

ocean quartz
obtuse gale
#

But some of these peoples points are to make everything public

cinder flare
#

but for a public plugin, open sourcing is a very effective tool to help your product and get people to use it

obtuse gale
#

I guess for a public plugin yea that makes sense

#

If you’re dropping the jar mineswell drop src

cinder flare
#

which is like 99.99% of stuff lol

prisma wave
cinder flare
#

you are in the very small minority of making a completely private plugin

obtuse gale
#

Really? Like everything I’ve done has been private. But stuff like a networking library and shit I’d make open source

cinder flare
#

yeah dude

#

having a github with a bunch of projects is like, the best way to get a job

obtuse gale
#

Cause yes help would be nice on shit like thag

#

I’d more so say networking will get you where you wanna be, but yea you’re right

cinder flare
#

networking is certainly very important, but once you know someone, you gotta prove you know how to code lol

#

if you have some sick projects on your github, that's a great incentive

obtuse gale
#

Agreed

cinder flare
#

my pain with not open source stuff mostly stems from plugins like MythicMobs and ModelEngine

#

funnily enough, they open sourced MMOItems and MMOCore and it has helped tremendously with stuff we're doing

#

understand why there's like health scaling and stuff, adding custom skills

#

very useful

obtuse gale
#

Idk I just think most minecraft plugins stuff is obvious. Like If they are doing something specific that you want the code to. It’s fairly easy to just make it

cinder flare
#

a lot of the benefit comes from integrations with stuff

#

MMOItems, MMOCore, MythicMobs, ItemsAdder, ModelEngine, they all integrate nicely and work together

obtuse gale
#

I guess I’m just not a fan of most styles

cinder flare
#

and I'm the only developer on this server, so it saves me a ton of work

#

I can focus on important stuff like the cross-server playerdata service lol

obtuse gale
#

I see, we’ll you do you. If it helps you then gg

#

I won’t hate on it

frigid badge
#

as someone who does interviews having some good projects on github helps a lot.

wintry plinth
#

I think 99% of stuff I would agree should be open sourced, but there is a selective 1% where I would say no, e.g. spoofers, anticheats etc etc.

I hugely believe out of those brackets, it should be open sourced because it helps others massively to integrate stuff

static zealot
#

seems like I missed a lot

cursive jolt
#

Anticheats should be open source. A good anticheat can withstand their checks being public

#

If anything, an open source anticheat is actually secure while a closed source anticheat is security through obscurity, which isn't security

#

Anything that's closed source should be cracked and dumped onto github. Death to closed source plugins.

viral grove
#

^^

#

If your idea is good and unique enough, you'll get the recognition/rewards even if its oss.

prisma wave
#

based and based and based

frail glade
#

Denied

prisma wave
#

actually not sure i can condone the last one

#

but

#

mostly based

static zealot
#

:)))

frail glade
prisma wave
#

SO TRUE

sly sonnet
#

/*

urban sleet
#

I prefer the features on GameAnalytics (based on their documentation)

wintry plinth
#

what features they got

wintry plinth
#

Are you really gonna use this tho

urban sleet
#

Yes

wintry plinth
#

Do get the benefit out of it

cinder flare
#

well, for starters it's free lol

urban sleet
#

That too

cinder flare
#

and they have SDKs for any language, so you can do your games other than Minecraft

old wyvern
#

Lol

urban sleet
wintry plinth
cinder flare
#

sure lol

wintry plinth
#

xD

cinder flare
#

maybe someday you'll put your prices in monthly amounts too

pastel imp
#

Based

wintry plinth
#

been planned for a bit now

cinder flare
#

who knows

wintry plinth
#

Marketing > lol

cinder flare
#

because every single other company does because that's the increments you actually pay it in?

wintry plinth
#

Many studies have shown that breaking down a price lets customers see better value

cinder flare
#

"better value" lmao

prisma mantle
cinder flare
#

$5 a month sounds a lot cheaper than .16 cents a day

#

allows for easy comparison to like a Netflix subscription or something

wintry plinth
#

People read left to right

#

So they'd see the 0 first

cinder flare
#

then they'd see the 16 and go "ah god I have to do a calculation"

wintry plinth
#

(I've been keeping myself up with marketing books)

#

aha

cinder flare
#

then open google calculator and do .16 * 31

#

and go, "ah, $5 a month, nice"

wintry plinth
#

The same way that $4.99 is seen as cheaper than $5

cinder flare
#

that's literally what I did lol

wintry plinth
#

or $9.99 is seen as cheaper than $10

#

customers read left to right

#

Plenty of studies have shown this to be a fact too

cinder flare
#

I mean, I'd hope so

#

that's how English works

#

but making people do calculations to figure out your stupid pricing model seems pretty inefficient

#

how come other places don't do this?

wintry plinth
#

They do

cinder flare
#

such as?

dawn island
#

D.O charges hourly while other companies charge based monthly for example Vultr.

wintry plinth
#

Digital Ocean shows hourly

#

yyp

cinder flare
#

yeah and those are pains in the asses

wintry plinth
#

Star just has a lack of experience

#

thats why

pastel imp
#

I mean, There were two types of Oreo boxes, same price but one had 2 more Oreos than the other… so I bought that one xd profit

cinder flare
#

do whatever

wintry plinth
#

Appreciated

cinder flare
#

as someone who would be buying your stuff, it's a pain to calculate

#

same thing for AWS

prisma wave
#

DO charging hourly makes sense because you're not on a monthly contract

cinder flare
#

that's part of the reason I get an OVH box for a fixed monthly price lmao

#

yeah and lockin is a big part too

dawn island
#

Vultr also offers hourly* @prisma wave, it's up to the person.

cinder flare
#

can you get Analyze for 3 days? lol

wintry plinth
#

Yes

urban sleet
wintry plinth
#

its called a 14d trial

cinder flare
#

so you pay by the day? weird

wintry plinth
#

ok

dawn island
urban sleet
#

I've had this credit for ages, I think it's from github student

dawn island
# prisma wave ok and?

You said "because you're not on a monthly contract", just pointing out that Vultr offers the same, just dependent on the person.

prisma wave
#

i dont see how that invalidates the point at all

#

pricing hourly makes sense if you charge hourly

cinder flare
#

most services that don't really benefit from the flexibility of like hourly pricing like to get months as chunks

#

i'm honestly surprised ol' chaz doesn't show prices by the minute

#

very small number, would be

prisma wave
#

yeah showing hourly price only makes sense if you charge hourly lmfao

wintry plinth
#

I mainly applied it because I’ve been reading marketing books in the last few months to get more experience. In it mentioned a few case studies where showing broken down prices makes something seem cheaper.

Potential customers read left to write, so they’d see 0 and continue on. On the previous pricing table we showed the monthly price beneath.

The end goal is that server owners go “wow, only $0.x a day?! I could get more than that from a store purchase daily”

cinder flare
#

I guess lol

#

I feel like seeing "wow, only $5 a month? I could get more than that from a single store purchase!"

prisma wave
#

does it show monthly price at all?

wintry plinth
#

We did yeah, I forgot when I added new one, but in the pricing page we do

#

I updated the pricing table today, and forgot to include but we had

$0.x /day

Only $4.99 a month

cinder flare
#

doesn't on the main page

wintry plinth
#

But when you go to pay it shows you $4.99 a month

wintry plinth
prisma wave
#

yeah that feels misleading af then

wintry plinth
#

What?

prisma wave
#

i would rather $4.99/month in bold (only blah /day!)

#

show me what im actually having to pay

#

rather than some misleading technique

wintry plinth
#

You see what you pay for when you go to the billing dashboard

cinder flare
#

yeah like if you have to pay in monthly increments, show the month up front

#

oh that's fucked lol

prisma wave
#

thats like what adobe do lmao

cinder flare
#

you sign up and go to pay and then it hits you with the actual price

wintry plinth
#

It shows you

Tier 1: $4.99
Tier 2: $9.99

prisma wave
#

they say "$30 a month" and then lock you into an annual contract

wintry plinth
#

You can select plans

#

Neither of you are getting it lol

Landing page shows $0.13 or whatever a day, when you click the button and sign in / up and go to billing.

You’re then shown the list of plans

#

Before you enter any form of payment

#

Which shows the monthly amount

cinder flare
#

yeah Adobe does that too

wintry plinth
#

It can’t be misleading if it totals up to the same amount

cinder flare
#

doesn't make it any less shitty

untold violet
#

Best cheap hosting for networks?

wintry plinth
#

Yeah I agree, the way adobe do it is scummy

cinder flare
#

you're literally doing the same thing lmao

#

just on a smaller scale

wintry plinth
#

Nowhere near

#

I don’t lock anyone in

cinder flare
#

You don't do monthly payments?

wintry plinth
#

I do monthly payments, but when they pay they see the monthly amount, but they can cancel at any point

#

Adobe show you monthly, but in small writing you’re forced to pay for a year or two

cinder flare
#

Yeah you're doing the same thing one step down

#

Adobe: Month -> Year

#

You: Day -> Month

wintry plinth
#

Not really

ocean quartz
#

It's the same lol

wintry plinth
#

They see daily on the landing, but as soon as they go to the billing dashboard to select a plan, all of them are shown as monthly

#

And when they go to pay they see monthly

#

So it certainly isn’t the same

#

Adobe lock you in, I don’t lock you in, you could buy a month and then cancel

#

You’d get your month and then you could dip

cinder flare
#

You lock in on a smaller scale

#

How do you not get that lol

wintry plinth
#

Don’t get you Star sorry

cinder flare
#

You show daily payments

onyx loom
#

pretty sure u can still can cancel ur sub in adobe too? this is the exact same

cinder flare
#

You then pay and are locked into a month

wintry plinth
#

When you try cancel

ocean quartz
cinder flare
#

Not if you do monthly lol

ocean quartz
wintry plinth
#

Many companies show the monthly break down when you pay yearly, so that’s no different

#

Because you get the yearly total at check out

#

So people know before they enter their card

cinder flare
#

Yeah that's just as scummy

ocean quartz
#

Yeah lmao

static zealot
#

@wintry plinth it is scummy. bcz you say 0.16/day which would imply that you pay daily. that's what loads of VPS companies do. what you should do instead is something like this:
4.99/mo which is 0.16/day

wintry plinth
#

Yeah nice idea

cinder flare
#

no no Blitz, you silly

wintry plinth
#

Can add that to the landing

cinder flare
#

you're just inexperienced

#

obviously

ocean quartz
#

Why even show per day, who cares, just show the actual price

wintry plinth
#

Because showing per day gives a sense of how cheap it is

cinder flare
#

"mArKeTiNg"

ocean quartz
#

Let me correct you, "gives a sense of it being cheaper than it is"

wintry plinth
#

How can it be cheaper than it is

#

It’s called math

onyx loom
#

gives a sense

ocean quartz
#

"gives a sense"

cinder flare
#

It isn't, it's a "sense that it is"

static zealot
#

yeah chazza. its not bad to show it per day. I've seen it doen correctly but make it clear that the price you pay is monthly and what the actual price is

wintry plinth
#

Thank you yeah, I’ll certainly reword it

cinder flare
#

Ah okay, it just took Blitz to make him realize his mistake lmao

wintry plinth
#

Because star you’re hostile tbh

urban sleet
#

Couldn't you just add a little * and say Billed monthly?

wintry plinth
#

Blitz has spoken to me properly

#

I’ll take someone serious when they speak properly

cinder flare
#

"properly"

#

you're funny

wintry plinth
#

I know

#

Don’t need to tell me

boreal needle
#

at this point im unsure if you're being like this intentionally or if you just have no idea what you're doing

ocean quartz
#

In other news, JavaScript is trying to steal back the crown from TypeScript, they just added a proposal to add types to the language lmao

cinder flare
#

I have a feeling it won't replace it, TypeScript has a super unique typing model and stuff that I feel won't be replicated

#

But could help I guess lol, dynamic languages kinda suck at least IDE features wise cause you have to do a lot of typing hinting to get anything useful, and it could obviously just be wrong right

ocean quartz
#

Oh yeah I doubt it, their proposal is really bad lmao
They want it with comments

prisma wave
#

probably a backwards compatibility thing?

#

maybe

#

idk

onyx loom
#

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

#

disgusting

wintry plinth
#

*TypeScript are adding it to Javascript

ocean quartz
ocean quartz
wintry plinth
#

Interesting tbf

cinder flare
#

TS very cool

#

wish ECMAScript supported types like TS does so it could just work

#

could literally just like not really do anything with them

ocean quartz
#

TS is very good yeah

#

Actually makes it fun to write frontend stuff

distant sun
#

is possible to make gradle only build projects that are used on the project I want to build? For instance, on my plugin I have the plugin module which depends on some small modules for compatibility with different game versions, and then this updater module. Whenever I build the updater with gradlew updater:shadowJar all modules are being built as well

ocean quartz
#

Add shadow only to the module you want to use it

distant sun
#

yeah but wont plugin still be built when updater is? and vice-versa

pastel imp
#

Cant you build a specific part only?

distant sun
#

nvm I found the problem xD I forgot to change gradle project once I moved to modules

pastel imp
#

Oof

#

Uhm whats a good way to update config files? By this I mean, when updating a plugin and adding new keys to the config, I would like to update it automatically without the need of me manually updating it

cinder flare
#

Sounds like a good time to have a config version number and migrations

real pilot
distant sun
#

is the same thing

agile galleon
#

it literally is the same

distant sun
#

@real pilot val and var is the same as Object something, but without you having to specify the type, objective.something = value is a setter, objecting.setSomething(value) and objective.something is a getter

real pilot
potent nest
#

you're creating the team after accessing it - therefore it's null

real pilot
#

OK, thank you very much. Now it works 👍

sick belfry
#

forge discord got raided lmfao

obtuse gale
#

Amazing

wintry plinth
pastel imp
#

Why tf does showcase only have up reactions now

#

That sucks

#

We cant downgrade the analyse copy pasta website

#

Sus

onyx loom
#

🙂

pastel imp
#

Thats quite based

#

We are getting censored 😥

static zealot
#

please complain to cube

inner osprey
#

Could we get a vote? Either a separate link or in announcements?

#

I know there are mixed views on the likes & dislikes, so it'll be good to settle it with the community

pallid gale
#

Yeah we may, we're just trialing it at the moment to see how it is

plain dragon
#

i personally think showcase is more of a feedback thing, and if I'm posting something in there knowing it sucks is pretty useful

sly sonnet
#

tbh showcase doesnt need likes or dislikes at all

#

if you have a feedback, just @ the author here

static zealot
#

shut up

wintry plinth
#

@sly sonnet your project is cool asf 😎

sly sonnet
#

what project

wintry plinth
#

I was joking because you said to @ here

sly sonnet
#

ah

#

XD

wintry plinth
#

X D

static zealot
#

@sly sonnet and @wintry plinth just wanted to let you know dislikes were removed and can no longer be used. thank you

#

you can however like, subscribe and follow for more

sly sonnet
#

🥰

static zealot
#

that's the spirit

sly sonnet
#

can relate

static zealot
#

yeah. me trying to help someone fix an app 2 weeks ago

wintry plinth
#

Wait really 😂

static zealot
#

nah. but almost ended up doing something stupid

wintry plinth
#

What did you nearly do

wind patio
#

Is there a such thing as a custom server GUI launcher? Not the original one which you opt out from using -nogui.

#

Or is it possible to find the source code for the original?

static zealot
#

isn't that what pterodactyl is?

wind patio
#

no exactly, at least not what I'm looking for

#

it's a web interface

wind patio
#

Sadly no source

#

I'm thinking about building a development environment launcher

dawn island
#

Is there a reason why you need source?

wind patio
#

Well, I like to look at examples and how certain things are done

#

I'm no expert myself

hazy eagle
#

Someone maybe know how i can do a multiproxy? Just buying load balancer will be fine?

drifting aspen
#

@desert horizon How does that minecart thingy you posted in #showcase work? My guess was an armor stand sitting in a minecart, but judging from what you wrote, this isn't the case. Is this just a normal custom entity? If yes, how did you make it behave like a minecart? Thanks for your time :)

desert horizon
#

It was made with TrainCarts in mind

drifting aspen
desert horizon
#

This isn't something from me. I just used it in TrainCarts. Figure stuff out yourself from there

drifting aspen
#

Oh I see now, thanks

heavy goblet
#

btw

#

if i go ahead download source code from github

#

do i expect the pom.xml to download all the necessary libraries and expect for them to work? or do i have to do manual work for the needed libraries?

heavy goblet
# primal crystal it should

https://github.com/SeanOMik/EnergeticStorage
ok so you see, i like this plugin and it's open source but there are specific options i don't want and i think i can just check where those options are and just remove them properly
my main issue is that after cloning the files via intellij, errors due to "missing libraries" are coming left and right

should i just edit compiled class files instead?

primal crystal
#

Reload the maven project...it should download all the files from the repository

sturdy magnet
#

ok so

#

how can i import paper 1.18.2 as external library to eclipse and use its content?

#

paper changed how the .jar patches now

#

it doesn't actually patch when you start server

#

you don't get patched.jar

potent nest
#

use paperweight

#

paper basically just adapted to the changes mojang did

heavy goblet
#
[WARNING] log4j-api-2.0-beta9.jar, log4j-core-2.0-beta9.jar define 2 overlapping resources: 
[WARNING]   - META-INF/LICENSE
[WARNING]   - META-INF/NOTICE
[WARNING] functional-annotations-0.1-SNAPSHOT.jar, item-nbt-api-2.9.2-SNAPSHOT.jar define 3 overlapping resources: 
[WARNING]   - LICENSE
  - LICENSE
  - META-INF/maven/de.tr7zw/functional-annotations/pom.properties
  - META-INF/maven/de.tr7zw/functional-annotations/pom.xml
annotations-13.0.jar, anvilgui-1.5.3-SNAPSHOT.jar, authlib-1.5.21.jar, bstats-base-2.2.1.jar, bstats-bukkit-2.2.1.jar, commons-codec-1.9.jar, commons-io-2.4.jar, commons-lang3-3.11.jar, commons-text-1.9.jar, energeticstorage-0.7.6-SNAPSHOT.jar, functional-annotations-0.1-SNAPSHOT.jar, gson-2.8.0.jar, guava-21.0.jar, hamcrest-core-1.1.jar, item-nbt-api-2.9.2-SNAPSHOT.jar, json-simple-1.1.1.jar, jsr305-2.0.1.jar, junit-4.10.jar, log4j-api-2.0-beta9.jar, log4j-core-2.0-beta9.jar define 1 overlapping resource: 
  - META-INF/MANIFEST.MF
commons-codec-1.9.jar, commons-io-2.4.jar, commons-lang3-3.11.jar, commons-text-1.9.jar define 2 overlapping resources: 
  - META-INF/LICENSE.txt
  - META-INF/NOTICE.txt
hamcrest-core-1.1.jar, junit-4.10.jar define 22 overlapping class and resource: 
  - LICENSE.txt
  - org.hamcrest.BaseDescription
  - org.hamcrest.BaseMatcher
  - org.hamcrest.CoreMatchers
  - org.hamcrest.Description
  - org.hamcrest.Factory
  - org.hamcrest.Matcher
  - org.hamcrest.SelfDescribing
  - org.hamcrest.StringDescription
  - org.hamcrest.core.AllOf
  - 12 more...

ok so i tried to compile the source code of energetic storage and idk how to deal with this
does anyone know what i should do or do i just search harder in the internet?

marble plaza
#

Hey! I added latest craftbukkit-1.18.2.jar as dependency in IntelliJ module settings and when trying to import it, IntelliJ can't find it.
import org.bukkit.craftbukkit;

tranquil sinew
#
        itemStack = new ItemStack(Material.PLAYER_HEAD, 1);
        itemMeta = itemStack.getItemMeta();
        if (itemMeta != null) {
            itemMeta.setDisplayName(displayname);
            itemMeta.skullOwner(skullOwner);
        }
    }```

hi, the "skullOwner" method doesnt work anymore how can i do this in 1.18.1 ?
dawn island
#

SkullMeta, not ItemMeta.

#

One moment.

remote goblet
#

setSkullOwner

#

also requires a UUID, not string

#

iirc

#

wait no

#

OfflinePlayer

#

because it's special

dawn island
#
public ItemStack createSkullItem(Player player) {
    ItemStack item = new ItemStack(Material.PLAYER_HEAD);
    SkullMeta meta = (SkullMeta) item.getItemMeta();  
    meta.setOwningPlayer(Bukkit.getOfflinePlayer(player.getUniqueId()));  
    item.setItemMeta(meta);
    return item;
}
#

Example

remote goblet
#

oh yeah ignore me i don't make plugins

dawn island
split niche
#

Is there something like https://spiget.org/ for Bukkit, Paper, Sponge etc resources? I'm trying to make a tool that involves searching through plugins and I need to be able to view the versions each plugin supports, but some people may use plugins that aren't on https://spigotmc.org/resources/ but may be on other sites specific to other server JARs

wintry plinth
#

bStats would be your best bet

split niche
wintry plinth
#

And yeah paper plug-ins are on spigot but they can’t be paper specific

split niche
#

Oh right ye that's what I meant, sorry

wintry plinth
#

Yeah md_69 doesn’t allow it aha

split niche
wintry plinth
#

Ohhh that’s what you mean yeah

steel heart
ashen fossil
#

when u write a bunch of code, then realize 3/4 of it is useless, so u refactor while knowing u just wasted a ton of time

inner umbra
ashen fossil
wintry plinth
potent nest
#

Did you think about sharing your valuable feedback with the developer?

wintry plinth
potent nest
#

that no one will use

wintry plinth
#

There is room for everyone regardless of what it is, but you can build a fun project to open source, doesn’t mean someone has to use it

potent nest
#

its so bad 😂

Why be so negative and hostile aha

wintry plinth
#

:)

distant sun
#

people tried to make other services but they got shutdown, probably due to the lack of users

wintry plinth
#

How I see it, and this applies to everything, there is room for everyone if you’ve got something to offer. Plenty of things that I would personally change to make it better.

Having built a couple platforms, I have more legroom to play with, but I’d prob go the open source route because then it just becomes a fun project

potent nest
#

I just think that a supportive community where people work with each other is better than a "its so bad 😂" community

wintry plinth
#

I feel you! We are in this together 💪

distant sun
#

bastian is working on an update though

wintry plinth
#

The current stack that bStats uses wouldn’t be something I’d personally touch

#

Hence why I wouldn’t just PR it

cinder flare
#

I mean what's so wrong with bstats?

#

and the biggest part of telemetry frameworks is number of users, and bstats has a pretty big adoption rate

quiet depot
#

honestly tragic

cinder flare
#

oh the website lmao

distant sun
#

🤣

wintry plinth
#

😂

distant sun
#

is a good platform, especially when all charts will be usable and will be added a way to add links to stuff like source code, plugin page(s)

boreal needle
#

the new frontend is quite nice

cinder flare
#

oh wow that is very cute

#

oh man, Paper at 56% is looking so good

primal crystal
#

That 1 server who uses Yatopia and 4 server which uses Bukkit😅

agile galleon
wintry plinth
#

not just servers

agile galleon
#

that no one uses

wintry plinth
#

ofcofc

#

😂

wintry plinth
#

Has anyone built a Javascript MiniMessage parse lib?

onyx loom
#

why would anyone hate themself enough to do that

wintry plinth
#

I know, 😂 wanted to create a nice web project for something, and haven't found something yet

#

its all tag shit which makes it a pain

#

because you can do shit like <rainbow>x

potent nest
wintry plinth
#

Ye that was my struggle

#

Would need to be JS based, i wouldn't want to do a web app with java

potent nest
#

well it compiles to js

wintry plinth
#

because tags don't have to be closed, it would mean I'd end up with a ton of regex checks

potent nest
#

or well, you need both

tranquil sinew
#

Hi, can someone Fix my code ? it says " 'setOwner(java.lang.String)' is deprecated " but i dont know what the new method is

#

    ItemStack itemStack;
    ItemMeta itemMeta;
    SkullMeta meta = (SkullMeta) itemStack.getItemMeta();

    public SkullCreator(String displayname, String skullOwner) {
        itemStack = new ItemStack(Material.PLAYER_HEAD, 1);
        itemMeta = itemStack.getItemMeta();
        itemMeta.setDisplayName("§6§l" + displayname);
        meta.setOwner(skullOwner);
    }

    public ItemStack build() {
        itemStack.setItemMeta(itemMeta);
        return itemStack;
    }
}```
hazy widget
#

SkullMeta#setOwningPlayer()

tranquil sinew
#

just replace it ?

hazy widget
#

instead of setOwner(), use setOwningPlayer()

potent nest
tranquil sinew
#

but now, the varible skullOwner is red underlined...

hazy widget
#

yeah because you never created the variable skullOwner

#

Oh wait nvm you did

#

as a parameter

tranquil sinew
#

:)

hazy widget
#

i think it has to be a Player and not a name

tranquil sinew
#

ok, by replacing String to Player it works :)

hazy widget
#

Nice

obtuse gale
#

“Can someone fix my code” got me ded haha

tranquil sinew
#

i am not native english speaker :)

obtuse gale
potent nest
#

oh yeah

obtuse gale
#

@obtuse gale wifeys back

#

👁️👄👁️

#

😘

ocean quartz
distant sun
#

html regex: \<(.|\n)+>

frail glade
#

Welcome back Emily!

obtuse gale
#

lulw

#

Hi Glare! Thanks

distant sun
#

meh

wintry plinth
#

Using the following to get a players IP:

player.getAddress().getAddress().getHostAddress();

Works but some users (like myself) end up with:

cp*****-bas***-2-0-cust**.20-1.cable.virginm.net
#

any way to get actual ip

onyx loom
#

nice virgin media

wintry plinth
#

ye 😂

#

it flaggedup as an error and I thought wtf first seeing this

#

but idk how to get my actual IP

cursive jolt
#

Why not getAddress()?

wintry plinth
#

😂

#

I wasn't sure

cursive jolt
#

welcome to spigot tutorials

wintry plinth
#

hahahha

cursive jolt
#

some people use the fun method that does a reverse lookup

scenic shell
#

Guys, I want to make text animation. How can I make the text blink in colors?

wintry plinth
scenic shell
#

In DeluxeMenus

cursive jolt
#

That's how you get text from an IP

#

getHostName()

#

it blocks until it successfully gets it, which sometimes happens on the main thread due to incompetence

wintry plinth
#
        System.out.println("A: " + event.getPlayer().getAddress().getHostName());
        System.out.println("B: " + event.getPlayer().getAddress().getHostString());
        System.out.println("C: " + event.getPlayer().getAddress().getAddress().getHostName());

All these return the same thing annoyingly

cursive jolt
#

They might if the lookup fails

wintry plinth
#

was gonna say they do xd

#

but mc sees it right

#

Siri[/8*.3*.1**.1**]

potent nest
#

you might want to check if it is an Inet4Address

wintry plinth
#

would mc show me if its a ipv4? my login shows it

cursive jolt
#

I've given people my IPv6 because it's funny as they don't think it will work

wintry plinth
#

Worked

#

:) ty

potent nest
#

np

bitter sinew
#

Hi, someone knows python language?

steel heart
#

yup

#

just ask away

bitter sinew
#

How can I make my Pc write something

#

Like writing a WhatsApp or a DM

#

Because I know how to make te code but idk how to write the text

#

Idk if you are understanding

steel heart
#

Ithink I know what you mean

#

hmm well one way to do it would be if whats app had some py module you could use

bitter sinew
#

I want to write dms every 3 segs to one person to try to win

bitter sinew
sly sonnet
#

spamming is bad

bitter sinew
#

XD

sly sonnet
#

- Don't participate in activities staff may deem as of an annoyance to others.

sick belfry
#

wait he is trying to use a script to win something

#

bad

bitter sinew
#

:c

distant pivot
#

Anyone knows what placeholder API i need to use to see your name in the leaderboard?

sweet cipher
#
    static int i = 0;
    public static void sendEquipmentPacket(
            final List<Equipment> equipmentList,
            final int entityId,
            final Player... sendTo
    ) {
        if (i == 1) return;
        i++;
        Bukkit.broadcastMessage("Sending armor packet of id: " + entityId);
        for (final Equipment equipment : equipmentList) {
            final ItemStack itemStack = SpigotDataHelper.toBukkitItemStack(equipment.getItem());
            Bukkit.broadcastMessage("Adding item: " + itemStack.getType() + " as " + equipment.getSlot());
        }
        for (final Player p : sendTo) {
            PacketEvents.getAPI().getPlayerManager().sendPacket(p, new WrapperPlayServerEntityEquipment(
                    entityId,
                    equipmentList
            ));
        }
    }
[15:14:59 INFO]: Sending armor packet of id: 6
[15:14:59 INFO]: Adding item: AIR as HELMET

I get kicked with this client error: Internal Exception: ionetty.handler.codec.DecoderException: java.lang.IndexOutOfBoundsException: Index -1 out of bounds for length 104
I put the static int there just to make sure sure it wasn't an issue with multiple packets being sent.

(I'm using PacketEvents)

Any ideas on what I'm doing wrong?

#

If you could ping me too that would be great.

sick belfry
#

actually does anyone have the link to the release of the jbr 17 with dcevm?

#

I cant find it

hot heron
sweet cipher
#

I'm not sure, I can check.

sick belfry
#

never mind that was the binaries

#

help

#

oh never mind again

sweet idol
#

how can i do this

When someone presses an item in a predetermined menu, others, including the person who pressed it, can't press it and have to wait for cooldown.
same cooldown at the same time

pastel imp
#

Kinda cringe question, dont ask, but anyone knows a plugin that hosts HTML websites and supports JS, CSS and Java (backend)? You may wonder why I need to host it in my minecraft server, dont ask cause I cant explain it either.

quiet depot
#

dont ask cause I cant explain it either
Gonna take a shot in the dark and say it's because you think you'll save a buck by hosting it through your server instead of renting a separate one

#

to answer the question though

quiet depot
#

don't see how that effects anything

pastel imp
#

I could host it without issues

#

Without spending any extra money

quiet depot
#

html/css/js are all browser based so as long as the server returns the right content the browser handles it

#

not sure what you mean by "java backend"

pastel imp
#

Ye suppose its not needed if I am already running it on a mc server

#

Oh welp, thx

#

Will see if it works for what I need

quiet depot
#

what I personally believe you need

#

is a fresh perspective on the problem

#

because it sounds like an xy problem

pastel imp
#

ye, suppose it actually is

#

will just restart and see

remote goblet
#

how to run a linux os in java

obtuse gale
#

Os.LINUX.start()

remote goblet
#

new Linux().start();

#
if (operatingSystem instanceof Linux)
  operatingSystem.start();
else
  System.blowup();
potent nest
#

Eww no {}

quiet depot
#
if                                     (
  operatingSystem instanceof Linux    ){
  operatingSystem.start             ();}
else                                   {
  System.blowUp                     ();}
#

better?

potent nest
#

I love it

quiet depot
#

wonderful