#dev-general

1 messages · Page 627 of 1

obtuse gale
#

ok

ruby dew
#

remember the time when you dont have pink or whatever colour name

obtuse gale
#

actually i don't

#

i have terrible memory

ruby dew
#

not only you have terrible memory, discord has a terrible memory too

#

I crashed my discord reminiscing your past messages it says no history because discord has goldfish memory

obtuse gale
#

powered by electron technology

ruby dew
#

aka powered in ampre with 0 ghz cpu

static zealot
obtuse gale
#

?

static zealot
#

me too. and it hurts

obtuse gale
#

heh

static zealot
ruby dew
#

Hello. I have a question about deluxemenus. Is there a way to set if a players click an item in a menu it will execute a random command from wich i set? So for example if i set left_click_command_random: - eco take %Player% 100 - eco give %Player% 100 - ban %Player% it will execute 1 of them? I know there is the chance system but if i put 4 commands with a chance of 25% each it could execute all 4 of them or none at all ... If there is no such method could it be implemented? Thank you

#

good ol time

obtuse gale
ruby dew
#

no that is the proof that we all got old

static zealot
obtuse gale
#

no, that's my message

#

not yours

static zealot
#

yes. true

#

I was testing you

obtuse gale
#

no

#

I was testing you

ruby dew
#

im counter testing your testing of the testing of your testing

obtuse gale
#

??? ? ??

ruby dew
#

as intended

obtuse gale
#

how

ruby dew
#

because of the photosynthesis of the heat equilibrium

#

Is PAPI safe to plugman reload? 🤔

though?

obtuse gale
#

if you do things properly

ruby dew
#

Does PAPI check for updates on cloud downloaded expansions?

obtuse gale
#

yes

#

I’m surprised y’all still haven’t banned me yet

#

why would you be banned?

#

Because I should be

#

why?

sly sonnet
#

Hi raymond

obtuse gale
#

no that's not raymond

subtle smelt
brazen ether
#

if i want to create a weapon that shoots bullets, is the best way to summon a projectile like a snowball that's invisible with insane velocity, or to do a raycast?

static zealot
subtle smelt
obtuse gale
#

blitz?

#

smart?

static zealot
#

👍

obtuse gale
#

blitz? smart?
🇾 eCloud 🇸

static zealot
#

no*

obtuse gale
#

yesn't*

distant sun
subtle smelt
sick belfry
#

ah yes it is fucking wonderful when gradle doesnt want to work

#

fucking

#

wonderful

#

there is actually no fucking wrapper

#

what has fucking happened

#

bruh gradle doesnt actually exist

obtuse gale
#

pretty sure it does exist

sick belfry
#

I think I now fucked it up lmfao

obtuse gale
#

:^)

sick belfry
#

ok now I'm freaking out

#

aaaaaaa

#

why does it try to use 1.8 tho aaaaa

near ridge
#

likelyhood ChatChat gets Velocity support?
saw a bungee branch not sure if its aimed for both tho

sick belfry
#

I dont want to stop doing stupid weird dev stuff

#

at least mc launches

#

but gradle doesnt work

manic vector
#

Yo guys, anyone good with certbot and apache here?

obtuse gale
#

change your path environment variable and replace the one pointing to wherever java 8 is to whichever other you want to use

sick belfry
#

thats what I have done

#

now it is crazy

obtuse gale
#

given that I can't see what "crazy" means for you, good luck lol

sick belfry
#

wait it does work now

#

I'm fucking stupid then

uneven vapor
#

Do java have some method some can solve "Unchecked cast"? right now you need to iterate thru the list or map to remove that "error" (check every value). I mean when you know it should only be that class inside the list (not when you make a map/list and not set class´s).

potent nest
#

Well it’s an unchecked cast because the compiler can’t prove it. If you know that it’s correct, you can suppress the warning

uneven vapor
# potent nest Well it’s an unchecked cast because the compiler can’t prove it. If you know tha...

yeah i know, but should be nice if java have some nice way to solve it 🙂

I made own method for it, to test if that could solve it (also to learn new things, like play with generic types (I´m not so good on that)).

    public static <k, v> Map<k, v> castMap(Map<?, ?> map, Class<k> keyClazz, Class<v> valueClazz) {
        Map<k, v> convertMap = new LinkedHashMap<>();
        for (Map.Entry<?, ?> entry : map.entrySet()) {
            Object key = entry.getKey();
            Object value = entry.getValue();
            if (keyClazz.isInstance(key) && valueClazz.isInstance(value)) {
                convertMap.put(keyClazz.cast(key), valueClazz.cast(value));
            }
        }
        return convertMap;
    }
potent nest
#

Well there’s no way to always guarantee its correctness if the compiler can’t guarantee it

#

You basically need to rely on the source of the map providing the data you expect

uneven vapor
potent nest
#

As I said, there’s no way to guarantee correctness here with code generally

#

For example an empty map or a map that only contains null values might give unexpected results

#

So your check is only a best effort approach

uneven vapor
#

yeah i know 🙂 I only say it could be nice if java already had build in converter (tell what class it should be and it do the checks for you) 🙂

potent nest
#

Yeah such thing does not exist because it can‘t exist

static zealot
static zealot
static zealot
distant sun
#

If anybody is looking for a job

onyx loom
#

i have 1 million karma. please hire me

prisma wave
#

"Senior"
"Experience Level: Junior"
?

hot hull
#

Every company ever

quiet depot
prisma wave
#

yea

static zealot
#

that's why I started practicing since the age of 2. So when I turn 22 I can say I have the 20 years of experience they require for the junior post.

half harness
#

If it's 20 years for a junior post

how many years for a senior post 👀 👀

old wyvern
#

You need to have past life experiences

forest pecan
#

idk you tell me

dense dew
prisma wave
#

thats a troll right

#

ok yeah it is

#

could tell just from the thumbnail

dense dew
#

cause haskell should be S

prisma wave
#

so true

#

but also PHP in A tier

#

hardcore trolling

onyx loom
#

APL in B

#

do we talk about this one

prisma wave
#

based???

distant sun
#

APL 🤢

prisma wave
#

@stone summit

#

oh

#

wtf

#

sorry

#

why does it ping even if u dont do it

#

shittest feature ever

onyx loom
#

wheres the real johnny gone

old wyvern
prisma wave
#

like dont type it properly

#

this was what i typed

#

and it turned to a ping

spring canopy
#

hey started using IJ and somehow I can't seem to figure out how to change API library (maven)

#

am a beginner also.. so dont know much in general :p

sick belfry
#

ah good

#

now that I fucked up my java I have to re set the executor

#

I dont want that freaky penguin on the logos

distant sun
half harness
#

#981453556647358485 message

  • Good understanding of Java and the Spigot/Paper API (we don't want kotlin)
    💀 I'm curious as to why they don't allow kotlin lol
obtuse gale
#

why are you asking such obvious questions

quiet depot
obtuse gale
#

hello piggy

quiet depot
#

greet

obtuse gale
#

do you come from the land down under?

quiet depot
#

I come from the land up over

obtuse gale
#

hm

#

where beer does flow and men chunder?

quiet depot
#

yes and there's consistent and frequent consumption of vegemite sandwiches

obtuse gale
#

very nice

last nacelle
potent nest
#

just use adventure

last nacelle
fringe crown
#

Do you happen to know any Plugin that creates leaderboards from a placeholder? I'm looking for a lightweight plugin which creates leaderboard from placeholder that doesn't use a lot of resources. Currently uses ajleaderboards but having huge amount of lag. Already optimized the plugin

lavish notch
fringe crown
lavish notch
fringe crown
lavish notch
urban sleet
#

Anyone here know of a way I could use git to sync configs between a dev and prod server?

#

Would this be doable with a plugin or will it require something else? My only caveat is that one of the servers is on a shared host (bloom) and the other is gonna be on a VPS or my home PC

ocean quartz
proper elm
#

Are you guys able to manage discord accounts? I mean like are you all discord Supportes?

quiet depot
#

this is a minecraft support server

#

discord has no live chat

hot hull
#

Imagine if people actually knew how to read

fluid plaza
#

How do I go up a trier

static zealot
#

and to answer your next question (how do I gain xp?): you talk, or you play in #chat-reaction, or from special events

sick belfry
#

does anyone know why this happens?

#

also the gradle console command doesnt work

#

like it doesnt find it

frail glade
#

Wrong java version I'd assume.

sick belfry
#

maybe

#

I have already "installed" (according to gradle's docs) the newest version

#

maybe its IJ who is using an old one?

half harness
sick belfry
#

yes

#

sort of

#

apparently it is because it cant find the gradle wrapper

#

but I kind of fixed it by telling IJ to use a specific version of gradle I installed

obtuse gale
#
fn main() {
    println!("Hello, world!");
    let binding = core::iter::Iterator::collect::<Vec<u8>>(core::iter::IntoIterator::into_iter(0u8..=8u8));
    let bytes = Vec::<u8>::as_slice(binding.as_ref());
    println!("{}", usize::from_be_bytes(core::result::Result::<[u8; std::mem::size_of::<usize>()], std::array::TryFromSliceError>::unwrap_or_else(core::convert::TryInto::<[u8; std::mem::size_of::<usize>()]>::try_into(&bytes[1..][..std::mem::size_of::<usize>()]), |err| { std::process::exit(core::iter::Iterator::map(core::iter::IntoIterator::into_iter(String::as_bytes(&ToString::to_string(&err))), |b| *b as i16).sum::<i16>() as i32) })));
}
prisma wave
#

shit language

obtuse gale
#

i could probably make that like 2 lines

spiral stirrup
#

does anyone know the fix to getting locked out of your main acc

#

😭

prisma wave
compact perchBOT
#
FAQ Answer:

Looking for discord support?
HelpChat is a Minecraft plugin and development support server and is not affiliated with discord in any way.
If you require support from discord, we recommend you to visit their official support website at https://support.discord.com
On this website, you can read their FAQs, or open a support ticket if necessary.

spiral stirrup
#

glooks

obtuse gale
prisma wave
#

ewwwwww

dense dew
obtuse gale
#

no

hot hull
#

yes

dense dew
#

yes

obtuse gale
#

nah

hot warren
#

or would that be to easy xD

potent nest
#

People still wouldn’t read

pastel imp
#

If you changed it to like Minecraft HelpChat people would think it’s an official Minecraft support server Lol

pallid gale
#

Says minecraft in the google result already

#

HelpChat is designed to support people all over the Minecraft community, from server owners to plugin developers.

distant sun
inner inlet
#

@unborn tree you don't allow dm

obtuse gale
#

@obtuse gale why did you ban me in spigotmc community with no reasons at all
or why the others did it

hot hull
#

Not this shit again

obtuse gale
#

i am shit?

#

yes its this shit(me) again

rotund egret
#

Probably

obtuse gale
spring canopy
#

hope this is the correct place, but having trouble adding papi to maven.

    <repositories>
        <repository>
            <id>placeholderapi</id>
            <url>https://repo.extendedclip.com/content/repositories/placeholderapi/</url>
        </repository>
    </repositories>
    <dependencies>
        <dependency>
            <groupId>me.clip</groupId>
            <artifactId>placeholderapi</artifactId>
            <version>v2.11.1</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>```
am new with this stuff, but as far as I can tell it's supposed to work? :d
#

when I hover the <repositories> it says invalid content was found ....

half harness
#

woah spigot libraries in plugin.yml were added in 1.16.5

but are they shared with other plugins? Or are they separate and only accessible in my plugin

obtuse gale
#

they are "private" to your plugin, unless another plugin soft/depends on yours (then since there is an explicit dependency requirement, they can access your libraries, "exposed as API" I guess)

half harness
#

And I also seem to be getting https://bytebin.lucko.me/ynGL1NgE0V :/
(okhttp is shaded into my plugin)
Is there a fix to this or no, since without the libraries my jar is 80+ mb 😭

#

I'll test again without libraries though

#

just to make sure

obtuse gale
#

that just looks like the plugin classloader shit itself

ruby dew
#

e

half harness
#

yep it works without libraries

#

:/

#

are there any libraries that allow loading dependencies at runtime? which also work on java 16

Or is there a way to use slimjar while using github actions

obtuse gale
#

also if you're hot-swapping and reloading the plugin on the fly and using the whole library loader thing you're gonna run into issues because the library loader classloader is not closed on plugin disable

half harness
#

I'm doing full restarts and the error occured
I'll try testing it again though

and since this is for another server and giving them 80mb jars... not sure how they'd respond 🥴

#

Yep it's still happening

#

is there a way to somehow publish slimjar into maven local using github actions?

#

Wait doesn't luckperms also load dependencies at runtime?

#

what does LP use?

steel heart
#

its own system afaik

half harness
#

oh

#

hm

obtuse gale
#

mhm

half harness
#

☹️

half harness
#

With slimjar, where are the downloaded JARs found?

#

or is it not downloaded onto a file

half harness
#

oh its stored in user home

old wyvern
#

The defualt is just the user home /.slimjar

half harness
old wyvern
#

Yes, you can specify a custom path

half harness
#

okay, thanks :)

old wyvern
#

In the application builder there is a download directory option I believe

#

I suggest either the plugins folder or under your own plugin's data folder

half harness
#

yep 👍

old wyvern
#

💯💯

half harness
#

🎉

old wyvern
#

I need to do something about the repo, just cant find enough time at the moment

#

Glare has it setup, i just need to make a few changes and push 🥲

half harness
#

alr :D

obtuse gale
half harness
old wyvern
#

are you on latest? @half harness

half harness
#

Should I try uploading the same jar that I used to test to the server? (even though the code should be the same as what I uploaded before)

old wyvern
#

Hmm

#

the issue should be one of the jar-file/path conversions

half harness
# old wyvern the issue should be one of the jar-file/path conversions

I don't really know what that means 😅
but the latest log was Downloading trove4j... if that helps
Although note that "Checksum matched for", "Downloaded checksum for", "Resolved checksum URL for", and "Resolved {0} @ {1}" messages were prevented from logging
slimjar.json: https://pastes.dev/uakkSDy7qP
slimjar-resolutions.json: https://pastes.dev/cFJmoqcG1h

#

It also downloads some other dependencies without any issues

#

I'll check the other minehut server to see if it's also trove4j or some other random dependency

#

Oh, in the other server there is also: ```
Checksum match failed for trove4j

old wyvern
#

Yea, so at some places there are paths that needed jar protocol somewhere, I cant recall properly, but just look for places where Paths/JarFile objects are created

old wyvern
#

I cant check till tommorrow night as im occupied rn, and have work tmr morning

old wyvern
half harness
#

alr, ty!

old wyvern
#

If you do find anything, pr would be very much appreciated 😄

half harness
#

will do :D

#

I think I found the issue

#

I don't think I know how to fix the issue though

#

How come you don't just do something like: java InputStream inputStream = fileURL.openStream(); Files.copy(inputStream, path, StandardCopyOption.REPLACE_EXISTING); which works without Content-Length? || https://pastes.dev/KzttSPW7hM executes without issues ||
Since isn't Content-Length used for how large a file (or the content) will be, but it isn't used in SlimJar's case?

#

I'll just create an issue on the github repository since I have no clue what channels are so I don't know how you want this to be like

obtuse gale
#

for heaven's sake close the stream 🥲

half harness
#

Forgot to close the stream though

#

Hmm

#

although the other try with resources would have reminded me

#

😃

#

I did a try with resources in my github issue 😌

old wyvern
#

@half harness have you confirmed the issue with other similar dependencies?

half harness
#

since then slimjar thinks that the content length is -1 which then errors out

old wyvern
#

Which libraries that you tested failed?

half harness
#

trove4j

old wyvern
#

Any other?

half harness
#

ill test without trove4j rn

old wyvern
#

Alright

half harness
#

And also I forgot that the issue doesn't occur on my test server... for some reason???

#

Hmm

#

also no Content-Length

#

I'm thinking that the maven repo nexus.scarsz.me just doesn't return the header Content-Length at all

obtuse gale
#

scarsz 🥴

half harness
#

I just didn't see the error for some reason

half harness
#

Another unrelated issue:
When making a new instance of KotlinJsr223DefaultScriptEngineFactory, I get this error: ```
kotlin.jvm.KotlinReflectionNotSupportedError: Kotlin reflection implementation is not found at runtime. Make sure you have kotlin-reflect.jar in the classpath

#

although that'd mean I'd have to keep all of kotlin not relocated

#

since it's all in the same package - kotlin

#

:/

half harness
#

I am using shadow, but I'm also relocating it which I assume is what is causing this issue

#

hmm

#

that's what I'm doing

#

I guess I either have to fix the spigot libraries issue (#dev-general message), not relocate kotlin at all, or pause what I'm doing until I find a fix for it (and do other stuff instead)

obtuse gale
#

or don't use kotlin sunglas

#

nah

obtuse gale
#

nah

half harness
dense dew
#

😳

wind patio
#

sheesh

wind patio
brazen ether
#

so i'm working on something right now and i want a 1-2 tick cooldown between certain actions. is the best way to do this with a 1 tick bukkit scheduler delay, or is there a better way

distant sun
#

lol

rotund egret
obtuse gale
rotund egret
brazen ether
#

so i'm working on something right now and i want a 1-2 tick cooldown between certain actions. is the best way to do this with a 1 tick bukkit scheduler delay, or is there a better way

rotund egret
#

You got it chief

obtuse gale
#

I mean there is no other way really so yeah

brazen ether
#

rlly? because i don't want to have to make like 10 runnables a second and cancel them all

rotund egret
#

1 runnable

brazen ether
#

fuck i'm stupid

#

forgot the repeating one existed

manic vector
#

Yo guys

#

Is anyone here good with sfp record ect?

#

ping me if you are please

near ridge
#

is chatchat on any repo to use with the api?
tried looking at the placeholderapi repo but couldnt seem to find it pepothink

keen iron
#

Chat chat released?

pallid gale
#

its in beta

near ridge
#

trynna find a replacement for venturechat as its missing some features for 1.19 with emotes
sadly i need something with velocity support so atm chatchat wasnt an option
any clue if its planned in the nearer future, or about another plugin I could use in the meantime?

obtuse gale
#

is velocity support planned in the future? yes, near future? yeah forget about that lol

near ridge
#

fair enough i suppose

pastel imp
#

where th can I even find ChatChat?

distant sun
#

HelpChat/ChatChat

obtuse gale
#

no I'm not trying to say something

#

I said something

#

did I stutter?

onyx loom
#

yes

obtuse gale
#

no

#

you might need some hearing aid

onyx loom
#

mhm

#

i need hearing aid 😄

obtuse gale
#

well go get it

onyx loom
#

ok

#

thanks for the advice

obtuse gale
#

so readable

distant sun
#

Why did I think that adding a lang key would make custom enchantments render 🥲

#
        @Override
        public @NotNull String translationKey() {
            return "enchantment.custom.test";
        }```
```yaml
{
    "enchantment.custom.test": "Test Enchantment"
}```
#

Nada

#

I know we are not supposed to have custom enchantments, but the client not accepting new ones is just stupid

inner umbra
#

You have to create your own lore to add it if I recall correctly.

distant sun
#

I know, I was just hopping that things changed on new versions + paper api

smoky valley
#

Does anyone here know a developer on Discord that used to have the name TheAmazingZote?

obtuse gale
distant sun
#

The keys for vanilla enchantments are locates in the lang files

#

Soooo fingergun

obtuse gale
#

Yes, and those are client-side translations

distant sun
#

Ah you mean server side?

#

Wait, no

obtuse gale
#

I said what I said

distant sun
#

Anyways, annoying

obtuse gale
#

If you're using resource packs then I assume you're sending the translation, but for displaying the enchantment on hover etc it takes it from the enchantment itself, from the registry, that won't exist on the client unless you have a mod as well

ruby dew
#

[Service] Voice actor
[Request] Looking for female voice actor should be comfortable with nsfw
[budget] 70$+
(if nsfw comms not allowed, you can go ahead and delete my request)
This guys trying to make a whole new minecraft elsagate

#

like srsly wtf is this guy planning to do with his minecraft server or drama

static zealot
ruby dew
#

like what is this? minehub?

#

[Service] GFX Designer
[Request] I need a logo for a minecraft Server. I want the logo to say PvP World with a really cool graphic
[Budget] 10$+ (a quote would be preferred), No service teams.

maybe something like datecraft

old wyvern
#

What was the helpch.at link that generated single letter logos? 👀

quiet depot
#

they're not generated, cube made them all manually

pallid gale
#

pls no steal

quiet depot
#

cube

#

why is that one so munted

pallid gale
#

yes

quiet depot
#

how hard is it to make a good y sheesh

pallid gale
#

blame the font

quiet depot
#

ok

old wyvern
#

Or nvm, ill try just some basic font

ruby dew
#

@quiet depot I love having pig meat for my breakfast every day

prisma wave
#

good for you

obtuse gale
#

I can't be bothered, too much effort

quiet depot
#

this is truly excellent news

ruby dew
#

are you peppa pig?

#

oink oink

quiet depot
#

meow

brazen ether
#

i'm working in 1.8 rn and i'm trying to implement tracers (like in fps games) via particles. problem is, in 1.8 the particle api is non existent and is part of the Effect system. does anyone know a better way of handling particles, such as with packets or something else, and if so, link me to a tutorial or something like that?

hot hull
#

ew 1.8

brazen ether
#

i could move to a newer version but idk which one

#

also i like 3 second server startups on 4 gigs of ram

surreal quarry
brazen ether
#

i wanted actual support but...

surreal quarry
brazen ether
#

not support but like

#

nevermind

hot hull
#

You could use packets yea

brazen ether
#

yea but how, is there a resource i can follow or do i just gotta look through the docs

hot hull
#

You could probably search spigot, someone's already had that question already most likely

brazen ether
#

k, got it

hot heron
#

I'm curious, why doesn't Java have something like a destructor?

prisma wave
#

because objects cant manually be destroyed

#

destructors only really make sense in non-garbage collected languages

hot heron
#

That almost makes me feel like it's more necessary

prisma wave
#

the closest you have is finalize() but that is extremely evil

hot heron
#

Like you could make sure when the object is collected, it cleans up properly or something

#

Actually, now that I've said that out loud, it doesnt' seem practical

prisma wave
#

yeah unfortunately it's not

hot heron
#

Because if you're going to define clean up details, what's the point of the gc

prisma wave
#

indeed

#

but also GCs are too complicated to be able to provide proper guarantees like that, which is why finalize has so many issues

hot heron
#

Yeah, that makes sense

potent nest
rotund egret
#

In order for gc to collect there has to be nothing referencing that object right?

prisma wave
#

no hard references, no

obtuse gale
#

it needs to "not be reachable"

#

whatever and however that means
e.g. if you have

void foo() {
  var l1 = new ArrayList<Object>();
  var l2 = new ArrayList<Object>();
  l1.add(l2);
  l2.add(l1);
}

as soon as the program returns from the method, those two lists are not reachable anymore, even though they do contain hard references (to each other)

opal swift
#

hello there, i am a professional web developer trying to get started with plugin development using spigot and java, do you have any advice for me?

rotund egret
#

Does that mean static objects never get GCd then?

obtuse gale
# opal swift hello there, i am a professional web developer trying to get started with plugin...

Uh I guess mainly just get a feel for Java before you jump directly into plugin making, you can't learn how to run by going to a marathon
There are tons of documentation on many things;
specific to Java you have the Oracle docs, or if you want a course then many say JetBrains Academy is pretty outstanding (it's paid but it has like a 3 month free trial or something); (and then the thousands upon thousands of StackOverflow Q/A about anything)
specific to plugin making I believe the seemingly-defunct Bukkit fandom has actually many good resources to get started (google "Bukkit plugin tutorial", that page alone has many important things, and links to others too), then you've got some wiki pages and threads on spigotmc.org, those are good too I guess

obtuse gale
rotund egret
#

Questions I could ask google but instead bother Emily with

obtuse gale
#

I'll tell you to ask Zod

#

well, static objects are "eventually" GC'd

potent nest
#

classes can be gc'd

obtuse gale
#

for that the class loader needs to be GC'd

#

yeah

opal swift
#

Oh well I am not entirely new to java, i was mainly looking for advice on what to build and how to approach developing my skills

#

What are some simple plugin challenges i could start with?

obtuse gale
rotund egret
#

Oh shit

#

That's cool

#

I might give those a go over on Sponge for the fuck of it

opal swift
#

Wow that's awesome

#

Thank you

#

Is my assumption correct that plugins cannot add extra content to the game?

#

So if i wanted to add a custom block I'd have to create a data pack or mod?

brazen ether
#

yes a mod

rotund egret
#

If the client would need to know about it then it couldn't be a plugin.

obtuse gale
#

If you really really really know how to use resource packs and data packs, then no, that is "incorrect" (you can't add new blocks and entities for instance, but you can do some impressive things with RPs and DPs to basically give that feeling and idea, check out Origin Realms and be amazed!)
But if we're being pedantic the answer is that is correct

rotund egret
#

Not being pedantic*

opal swift
#

I joined origin realms back in 2021!

#

I wonder how the GUIs work

brazen ether
#

resource packs and optifine and a bit of magic

opal swift
#

I am assuming it's just custommodeldata or sth

#

Over a native inventory

brazen ether
#

no it's just a resource pack

static zealot
#

characters in custom fonts can be replaced with images using resource packs.

opal swift
#

Yeah but it's an item with that GUI as it's texture inside of a native container right?

static zealot
#

then you set those characters as the menu title

opal swift
#

Oh

#

I SEE

static zealot
#

and with some trickery (aka backwards spaces or whatever they're called, maybe negative offsets) you line it up

opal swift
#

I thought it's a retextured item

#

Wow

obtuse gale
#

it's insane

opal swift
#

How do they prevent people from placing items outside the custom gui

static zealot
# brazen ether wait the fuck

yes. its been possible since 1.15 or 1.16 or whatever. before that you did have to use an itemstack and hide it in the corner or something like that

brazen ether
static zealot
#

if you're developing against spigot there's events you can listen for and cancel

brazen ether
static zealot
#

you can probably google "how to make custom fonts using resource packs minecraft"

brazen ether
#

wtf people are so fucking creative

#

someone made a custom hud with fonts

static zealot
#

yes. those usually are placed in the action bar

rotund egret
#

Plugin development really went up in skill level with DP,RP

brazen ether
#

okay i'm migrating my plugin from 1.8 this is cool af

rotund egret
#

I mean not specifically related, but together it's neat

static zealot
rotund egret
#

True

#

13 years now?

brazen ether
#

yea but having my server start up in 3 seconds is satisfying

brazen ether
static zealot
brazen ether
#

i mean hypixel is dying but

#

still

static zealot
brazen ether
#

even older

#

there are TUTORIALS to make custom huds

#

how have i not known about this type of stuff

rotund egret
#

There's tutorials to skin boar too

brazen ether
#

skin boar?

rotund egret
#

Yeah

brazen ether
#

what is that

rotund egret
#

Where you remove the skin from a boar

static zealot
#

lmao

rotund egret
#

🐗

brazen ether
#

i'm so fucking confused

rotund egret
#

Like you take a knife

#

And remove the skin

brazen ether
#

😕

rotund egret
#

For pelts and such

brazen ether
#

i can't tell if you're trolling or not

rotund egret
#

I'm being very literal

brazen ether
#

yea negative spaces exist

tranquil crane
#

I mean they aren't wrong

brazen ether
#

a lot of the people using this font thing are for some reason using datapacks or command blocks instead of plugins

#

very confusing

opal swift
#

i think its because they are more approachable for regular people

brazen ether
#

i'm gonna quickly use very legit methods to see mineclub without the pack

#

for development purposes

opal swift
#

quick question, how do you test your plugins, do you run a server locally?

rotund egret
#

I have a gradle task that builds my plugin and starts a local server with it

winged mica
cinder flare
#

got me a docker-compose with velocity, two paper servers, redis, postgres, mongo, and mariadb

#

ready for any challenge of the day

#

oh and I think I added rabbitmq recently too

prisma wave
#

Testing with that sounds awful

#

50 minute build times after making a 1 line change

cinder flare
#

what on earth are you talking about

#

there's no building involved my good man

prisma wave
#

building docker images takes a million years

cinder flare
#

i'm not bundling the plugins into the container

prisma wave
#

oh wait

#

yeah

#

nvm

cinder flare
#

docker compose up -d

prisma wave
#

building images does take a while

#

at least a few minutes

cinder flare
#

and every service you need is up, can easily communicate, and works flawlessly

cinder flare
prisma wave
#

well any practical image

cinder flare
#

i can rebuild my Django container in about ~40 seconsd from scratch

prisma wave
#

ok

cinder flare
#

but that also is like... a very rare occurrence

#

only when I need to deploy to prod

#

thankfully for us, people have invented auto refreshers and filesystem watchers that can update things for us without requiring a restart!

#

god docker is so awesome

prisma wave
#

i dont appreciate your tone child

cinder flare
#

really revolutionized the way I run anything that is like a service

prisma wave
#

drop the attitude or i will be forced to "nerd emoji" you again

rotund egret
#

🤓

cinder flare
#

a fate worse than death

prisma wave
#

and neither of us want that

distant sun
#

Any idea what @get:Input means in kotlin? Input is an annotation from gradle API

#

Ah get/set – the property getter/setter

brazen ether
#

anyone know how to see how much ram my server is using? like with a plugin

opal swift
#

well, i personally use a gamehosting panel like pufferpanel for managing my cpu and ram usage, benefit of that is that it runs online

#

other than that paper actually has a GUI that shows you RAM usage if you remove the nogui flag

brazen ether
#

ah okay thanks

opal swift
#

I don't know if you could write a spigot plugin to display RAM usage in game

obtuse gale
brazen ether
#

ill try it out

opal swift
#

What would be the best approach if I wanted to randomly generate / spawn a chest in a chunk / world?

#

I am using this plugin called phoenix crates and I want to figure out how to randomly scatter some of those crates in the world

#

I'm assuming I'll need a custom world generator?

spring canopy
#

super confused.. why doesn't the lore get added. ``` for(int i = 0; i < TagID.size(); i++) {

                            ItemStack paper = new ItemStack(Material.PAPER, 1);
                            ItemMeta meta = paper.getItemMeta();

                            meta.setDisplayName(TagID.get(i));
                            ArrayList<String> lore = new ArrayList<>();
                            player.sendMessage(Tag.get(i));
                            player.sendMessage(Permission.get(i));
                            lore.add(ColorUtils.translateColorCodes("&a&lTag Display: " + Tag.get(i)));
                            lore.add(ColorUtils.translateColorCodes("&b&lPermission required: " + Permission.get(i)));
                            lore.add("Test");
                            paper.setItemMeta(meta);
                            meta.setLore(lore);
                            TagsGui.addItem(paper);
                        }
                        player.openInventory(TagsGui);``` The lore is clean and empty osmehow. did I miss something?
manic lava
spring canopy
#

that make sense 😂 ill try that

distant sun
distant sun
obtuse gale
#

#tech #developer #consulting #IT #business #wfhlife #wfh #consultant #client #softwareengineer #meeting

distant sun
#

Ignore the tags 🤣

ruby dew
#

Dear Users,

We regret to inform you that we have discontinued operating TikTok in the United States of America.

Thank you for the time you have spent with us on the platform and for giving us the opportunity to bring a little bit of joy into your life.

The TikTok Team

#

oh hi james and bye james

distant sun
ruby dew
#

i take a no as yes normally
but because you are a mod i interpret yes as no
so ultimately no can also be yes

distant sun
#

🤣

ruby dew
#

because no and yes are two sides of one coin
if you automatically set a paramounting opposing theorem it will flip over in the other way so that the logic makes sense which is also named tautology in a traiditonal sense but i am not a traditional guy so im gonna go fresh and say i actually have big brain

compact perchBOT
#
✨ Channel Cleaned!

• Removed 20 messages.

distant sun
#

FFS BARRY

static zealot
#

Lmao

obtuse gale
#

epic let's go

prisma wave
#

epic fail

static zealot
#

Fer

hot hull
#

Dies from cringe indeed

hard cedar
#

i accidently purged my entire class discord because amount argument didnt work well

prisma wave
#

nan

hard cedar
#

but now you can delete 2 weeks max right?

last nacelle
#

I asked earlier but I think it got cleared but how do I spawn particles for the world (those at least nearby it)

I tried

p.getWorld().spawnParticle(Particle.FLAME, fireball.getLocation(), 20, 0, 0.5, 0);

But it doesnt spawn on client nor for anyone else

brazen ether
#

hmm... that should work

#

did you try without the offset?

half harness
#

hour and a half late but debug the fireball location

brazen ether
#

also make sure you have particles on on your client lmao

opal swift
#

is there any alternative for noteblocks when applying custom model data to them in order to make them look like custom blocks?

rotund egret
#

I'm not a scientist, but I would imagine you could do it with most any block?

cinder flare
#

well yes, but then people can't use that block

#

the pros of noteblocks is that they are not the most used block ever, and there are a ton of combinations so you can add like, 30 different "blocks" from just noteblock sound/note combinations

#

and it is hell to set everything up, stop the sound from playing, ensure hardness requirements, get the drop right, etc.

#

i'm working on it for a server i work on and having to like intercept sound packets

#

fuck me it's rough

rotund egret
#

Just cancel the sound event 💀

#

To be clear I made that up, there may or may not be an event

cinder flare
#

there isn't

#

god I wish there was, if only there was just a BlockDamageSoundEvent

opal swift
#

there is noteplay event

#

which is cancellable

torpid nymph
#

i just need any mcpe developer to dm, please

mental trench
cinder flare
#

problem being, it also makes a block damage sound of wood being broken

#

which is not an event

mental trench
still portal
cinder flare
#

Or listening to packets and stopping ones for noteblocks upsidedowncry

still portal
cinder flare
#

i don't think so, there's a whole ass sound list for ProtocolLib (with the block break wood sound on it)

still portal
obtuse gale
#

many sounds are purely "constructed" by the client

obtuse gale
cinder flare
#

what if people want to hear wood break sounds for wood tho

still portal
#

Fake it

cinder flare
#

ah fuck

#

i guess that's probably easier at least, there's a whole bukkit event for it and all

obtuse gale
#

player.playSound to the rescue

cinder flare
#

yeah seriously

#

okay well

#

this was actually extremely enlightening, thanks guys

#

man what I'd give for Minecraft to implement a FastDL-style download-mods-when-you-join-the-server system instead of fucking up chat messages and privacy and implementing global bans

still portal
#

The amount of shit we have to do to have some custom blocks 💀💀

cinder flare
#

yeah seriously man

#

it's a house of cards very close to falling down

#

at this point ima just fucking make a fabric server and have people download our mods for shit

still portal
#

My old hardness system had a 25% chance of crashing the server

#

The code was horrible but it worked

cinder flare
#

damn, you got a new one? got a link? lol

#

cause my life is pain trying to implement this shit

still portal
#

Nah I’m still trying

cinder flare
#

ah fuck lol

still portal
#

But I have to reboot my pc every time I want to compile

#

Otherwise it doesn’t include the newly written code somehow

cinder flare
#

🤨

still portal
#

Still have to find out what

#

I think it has something to do with the paperweight userdev reobfJar task

cinder flare
still portal
#

My old system used no api but I gave up and am using packetevents now

cinder flare
#

oh my fucking god it uses mining fatigue

still portal
#

I used that too yeah

cinder flare
#

okay yeah it's not worth it holy shit

#

fabric server here i come

still portal
#

Mojang really fucked up chat with 1.19

#

I finally got my message removal system working and they change the whole ass system

sick belfry
#

I mean chat preview is cool

still portal
sick belfry
#

ye

frail glade
#

Running into some of those issues too. Was getting kicked earlier when doing testing on a server because we cancel the AsyncPlayerChatEvent.

sick belfry
#

can I know how did you do the skin stuff though

#

lmao

frail glade
#

Skin stuff?

sick belfry
still portal
sick belfry
#

cool

still portal
#

But system messages don’t have uuids 💀💀

frail glade
#

Yup

#

Is that image thing just itemframes / armorstands?

still portal
#

Switched to hashcodes but it keeps resending the whole queue

still portal
#

It’s all happening in the gui title

frail glade
#

Maybe I don't understand what I'm looking at then lol

sick belfry
still portal
#

I also use it for playerheads in chat but I somehow broke that lmao

sick belfry
#

neither I

frail glade
#

I need to update Holovid for 1.19 sometime soon.

sick belfry
#

explain pls kekwhyper

frail glade
#

That's going to be annoying depending on how many packets changed.

#

Oo nvm going to do Rocketeer first. Let's crack this baby open.

sweet cipher
frail glade
#

Gradle so slow to build models sometimes.

frail glade
#

Ez. That update went easier than I expected. Not a lot of changes.

sick belfry
#

that allows you to have players skins in items

terse rapids
#

@gentle geyser works better with packets as it actual simulates what would happen if a players wifi would go out #showcase (also repeat command blocks dont exist in 1.8)

still portal
quasi slate
#

Hello

#

I have a problem

#

the placeholders in skript plugin not working why

half harness
rotund egret
#

(depends)

#

if you fancy talk you might get 8

oblique heath
#

hear me out

#

invite mee6 to a server

#

passthrough all of it's chats to your own bot

#

and vice versa

#

and bam you have a reskinned mee6 you can sell

rotund egret
#

That sounds so convoluted

oblique heath
#

good

#

the more convoluted it sounds the more you can charge for it

#

🧠

muted plover
#

anyone got a plugin to show the amount of combos a player has made?

old wyvern
#

Amount of combos?

muted plover
#

yea

old wyvern
#

What exactly is a combo in Minecraft?

muted plover
#

like yk in boxing, on the scoreboard it shows the amount of combos

old wyvern
#

👀

#

Again, what does a combo mean in Minecraft context?

#

Pvp in Minecraft is just hits

half harness
half harness
prisma wave
#

I will kill you in 1 punch dkim19375

half harness
#

you would never do that to me

sick belfry
#

dynamic*

sweet cipher
#

error: an enum switch case label must be the unqualified name of an enumeration constant
case CHESTPLATE -> Type.CHEST_PLATE;
^

        @Nullable
        public static Type fromPacketSlot(final com.github.retrooper.packetevents.protocol.player.EquipmentSlot slot) {
            return switch (slot) {
                case HELMET -> Type.HAT;
                case CHESTPLATE -> Type.CHEST_PLATE;
                case LEGGINGS -> Type.PANTS;
                case BOOTS -> Type.BOOTS;
                case OFFHAND -> Type.OFF_HAND;
                default -> null;
            };
        }

Is IntelliJ bugged or something?

distant sun
#

case EquipmentSlot.HELMET

sweet cipher
#

That's what should show that error

obtuse gale
#

no gaby

obtuse gale
distant sun
sweet cipher
distant sun
prisma wave
#

despicable

distant sun
#

3:12 if anybody wants to watch the scene

prisma wave
#

r/itsaunixsystem

old wyvern
old wyvern
brazen ether
#

raycasting is hard

forest pecan
#

whats the plugin for not everytime restarting my mc server

#

when i add a plugin its has to restart everytime

brazen ether
#

why not just like

#

./reload

sick belfry
#

I fucked up

half harness
#

I think you have to exclude the bin folder

sick belfry
#

gonna try that

#

before I do that

#

I also have a jre 17 installed

#

but if using jre 1.8 is no problem I really wont use the other

#

but is it a problem?

#

alright is was without the bin

#

thanks man

brazen ether
#

i have made 3d raycasting in minecraft

obtuse gale
#

no need to shout

brazen ether
obtuse gale
#

Barry doesn't care

brazen ether
#

D:

#

i just realized BoundingBox has a raytrace function

#

what

cinder flare
#

Calculates the intersection of this bounding box with the specified line segment.

#

quite a sensible thing to have in a Bounding Box lmao

brazen ether
#

i just wasted so much time...

cinder flare
#

lmao

#

linear algebra moment

brazen ether
#

yea

#

i wrote like

#

10 lines of code

#

and they worked perfectly

#

and i felt good

#

and turns out this method already exists

obtuse gale
#

@hot hull Do you help people configure server cores by any chance?

#

Can you also add me back so I can dm u

hot hull
#

Nah I'm good thanks

obtuse gale
#

ahh ok

distant sun
ruby dew
#

java is ez

wind patio
#

Is it possible to give minecraft scores to players in a specific area?

opal swift
#

yes, i know that a lot of minecraft commands have a distance parameter

wind patio
#

yeah, found what I was looking for

obtuse gale
#

hi, if someone want help me im trying to do a menu ;-; (for a skyblock server)

sick belfry
#

at least I got some stuff working lmao

brittle leaf
half harness
#

This has been happening for me for quite a while now but has it been happening to anyone else either?
When moving an IntelliJ window from one monitor to another (and while doing that putting it to fullscreen by dragging the window to the top of the screen), there's a white bar at the top?
And since this only happens when moving between monitors, it's easily fixed by dragging it back again to the same monitor/location but it's a bit inconvenient
https://i.imgur.com/pthEGLm.gif

sick belfry
#

dunno

#

I'm not rich so I dont have another monitor kekwhyper

static zealot
sick belfry
#

I can see it

distant sun
sick belfry
#

alright next project

static zealot
#

yup

sick belfry
#

now

#

gradle question

#

I have a multi module project, and I want to apply paperweight to one of that modules

#

how would I go about that

#

I have looked a bit on google but nothing worked

#

using kotlin DSL

half harness
sick belfry
#

tried that

half harness
#

so that module would have ```kt
plugins {
// whatever paperweight is
}

tasks.assemble {
dependsOn(reobfJar) // or something like this
}

#

I mean at least that's what I use

sick belfry
#

I added the plugin repo to the settings.gradle.kts in the main module

obtuse gale
#
tasks.shadowJar {
    dependsOn(reobfJar) // or something like this
}

notlikethis

#

nooooo

#

no

half harness
#

or something

#

I forget

sick belfry
#

what

obtuse gale
#

literally none of that

half harness
#

oh wait

#

assemble

#

isn't it

obtuse gale
#

probably yes, depends on what you're thinking

#

reobf already takes the shadow jar if it detects shadow is present

half harness
#

Oh

#

so you only need ```kt
plugins {
// whatever paperweight is
}

sick belfry
#

uh alright?

#

so in that gradle file in the module I set the plugin of paperweight

#

makes sense ig

#

somethings wrong I feel it

#

no erros but it doesnt do anything

obtuse gale
#

did you add the paperDevBundle dependency in that module?

sick belfry
#

forgot that

#

added

#

and reloaded

#

nothing

obtuse gale
#

what does it say when you run gradle module:reobfJar?

sick belfry
#

it stars a daemon

#

gonna tell ya if anything goes wrong

#

wait world record

#

suspicious

half harness
#

uppercase module name 🤔

anyways send build.gradle.kts

obtuse gale
#

you sure the module is included in the settings file?

sick belfry
#

from the main module?

half harness
sick belfry
#

LMAO

#

I removed it

#

I dont want that module to build with the whole bullshit so I removed it

#

wait what

half harness
#

sick belfry
#

am I doing something wrong

half harness
#

did you configure settings.gradle.kts

#

to include the repo

sick belfry
#

yes

half harness
#

of the plugin

sick belfry
obtuse gale
#

anything else to the error?

sick belfry
#

I was missing a .1 in the version

#

it should work now

half harness
#

oh

obtuse gale
#

ah i see it now

#

lol

sick belfry
#

lmao

half harness
#

🥲

sick belfry
#

does the include thing make the plugin module build with all the other shit right?

#

I dont want to build it with the other stuff

#

if I build for example the main project

sick belfry
#

ah good

half harness
#

you have to do implementation for that

sick belfry
#

alright

#

thanks

#

gonna spend the rest of the day configuring gradle

#

so I can finally start work on this shit

#

tysm

half harness
#

🥰

obtuse gale
sly sonnet
sick belfry
#

thats actually cool

#

I want to make one

#

when I get enough ram to run mc, ij and a server in my pc

hot heron
#

Let me know if this belongs in a different channel, but I've recently graduated with a degree in Software Engineering and I don't really know which direction I want to go but most of my experience is backend stuff. I just recently starting to hit applications hard and I'm just looking for advice to make myself a more attractive hire.

sick belfry
#

I dont exactly know whats like the dedication of a software engineer

#

so I'm gonna assume its just like another coding degree

#

a good thing to start building for some sort of portfolio is doing open source contributions

half harness
#

~~For some reason... it seems random, but sometimes custom enchants (mc enchants aren't affected) get removed? And when they do get removed, they all get removed at once

I doubt anyone has had this happen to them before, so does anyone know how I could debug this?~~ Probably not "random" but caused by the issues below

#

Was thinking of looking in the source via paperweight but I don't know where to start :/

#

And also, in creative mode when I middle click the item, custom enchantments disappear
Is there a way to fix this?

#

might be related to each other - minecraft automatically removing the custom enchants, but I'm not sure why for the first issue

#

And also when moving it into a chest

forest pecan
winged mica
distant sun
#

Question about IDEA, if I open a method / class with Ctrl + Click, is there any way to go back from where I opened the said method/class?

Edit: Ctrl + Alt + Right Allow

obtuse gale
#

why do you keep calling it "iij" lol

distant sun
#

IntelliJ IDEA looked like "iiJ" (capital i = lower case L) where I first started to use it and for a while I though that's its name LOL, I just got used to that

boreal needle
#

illij

sick belfry
#

how does one stop gradle from creating a src directory in the main project

#

every time it builds the model

balmy rapids
#

with deluxemenu does anyone have an example how to use custom model data?

opal swift
#

can someone tell me why when using custom fonts over my GUI the font/bitmap darkens?

still portal
opal swift
#

gotcha!

#

ill try that

opal swift
#

is there any way for me to get rid of the 'inventory' text?

distant sun
#

remove it from the lang file

opal swift
#

so i create an empty lang file?

distant sun
#

no, you set the value to an empty string

#

like "player.inventory.title": "" or whatever the key is

distant sun
#

ngl this git thing is cool

#

looks like those lines on a circuit

half harness
#

Mine is pretty boring :(

static zealot
#

what's that from?

distant sun
#

work

static zealot
#

the lines I mean

half harness
#

IntelliJ

static zealot
#

oh

distant sun
#

ah, git commit history

static zealot
#

I don't use the integrated stuff. I see

frail glade
half harness
#

rainbow?!

#

👀

#

How

distant sun
#

git kraken

half harness
#

oh

frail glade
#

^

tall idol
#

This looks like a music making software

distant sun
#

ye lol

half harness
#

aw why doesn't IJ put pfps

frail glade
#

Cuz their bad

plain dragon
#

<3 gitkraken

ocean quartz
#

Gitkraken is great

frail glade
#

I can throw one in #1-20 shortly.

tiny latch
frail glade
#

I have no idea what that is

#

So no

tiny latch
#

deluxecoinflip?

tiny latch
brittle leaf
#

deluxecoinflip is made by a different dev

boreal sphinx
#

I am trying to setup checkitem using placeholders in deluxemenus to allow players Only to have any gear held in their hand to open menu. Right now it works, But Only for one item and not multiple. Is There anyway to do this?

This is what I initially had it set to, as testing and diamond boots does seem to work, but diamond leggings won't

%checkitem_mat:diamond_boots,mat:diamond_leggings,inhand<:hand>%

frail glade
distant sun
potent nest
#

it's painful to implement tho 💀

distant sun
#

pretty verbose, ye, but I guess it is worth

#

I'm so glad that they show the highlight on that page 🙄

obtuse gale
#

How do I add economy to DeluxeTags plugin?

#

@quick flume

hot hull
distant sun
#

A replacement for {@code}

obtuse gale
#

How do I add economy to DeluxeTags plugin?

distant sun
#

Dont ping me for no reason, use the right channel.

obtuse gale
#

Which is the correct channel?

static zealot
pastel imp
hot hull
static zealot
pastel imp
#

What's it used for exactly?

static zealot
#

pretty sure that exact image just shows your commits and branches.

distant sun
#

Ye

distant sun
#

you can insert parts from a class, highlight words, replace words, etc.

old wyvern
#

Java 19 will preview project loom 👀👀👀

brittle leaf
#

maybe itll make servers run alot better then they currently do

onyx loom
#

assuming it would actually be implemented

ocean quartz
#

Well it's only preview feature not finalized yet so doubt it'll be used

hot hull
#

What's loom

ocean quartz
#

Jvm coroutines basically

prisma wave
#

except they're more of an implementation detail afaik

#

Rather than a design pattern

potent nest
#

Yeah structured concurrency is the design pattern based on it

#

But it won’t make things faster magically

ocean quartz
#

The opposite is Haskell users, where you learn all of that, but can't print hello world.
kek

prisma wave
#

probably wrong

distant sun
#

{{><{>|<{}io._[~>~[~}~>~>~[~]"""hello world"""[}{>}}}}
+- a bracket

prisma wave
#

that's APL

distant sun
#

I dont got math symbols 😦

prisma wave
#

main = putStrLn "Hello world"

#

so hard

obtuse gale
#

Can I ask for help in here?

prisma wave
#

possibly

obtuse gale
#

okie

prisma wave
obtuse gale
#

I will just write as much as I can in one message

manic vector
#

Yo guys

#

How can i check for any type of colored glass?

#

if i just use GLASS it works with normal glass

#

i wan to check for any type of glass

hot hull
#

Get the material, get the name, and check if it either contains glass, or split it by _ and get the last part and see if it equals glass

potent nest
#

There’s probably a glass tag you can use

half harness
#

it auto merges eventually after a couple hours but I don't feel like waiting

wind patio
#

Anyone knows good, free, crowdin alternatives?

distant sun
static zealot
#

Hello. Is there a way to detect when a local velocity instance has been closed and execute a bash script when after? I'm basically trying to close my other servers as well when the velocity is closed. I don't even know if its possible to automatically detect and close those other instances tho. I don't really know any bash.