#dev-general
1 messages ยท Page 298 of 1
Senpai wanna play now ;c?
Helix-shaped particles ๐
I need that in my life
This is a helix-shape
Need you to code a particle plugin like that for me ๐
that does seem easy lol
easy
oh
some cos and sin math ezz
Particle Lesson #1 (Helix)
WARNING:
This particle movement code is a little too advanced or intermediate, I recommend you learning plugin basics first...
oh look its already done ^ xD
xD
Make it so that helix will shrink when the laser launch from initial shot, and then shrink it only if touch the finishing point
Make some form of non euclidean geometric illusion
who wants to be my successor?
successor to what?
you'll take over my github account after you die
Lmao
๐ฎ
Ain't nobody give you permission to leave bitch
Current progress: https://paste.helpch.at/libikuriko.java
I don't want to, I am making it
Not really
Just go ahead and help OTG dev
No clue who that is
that's the dev of the plugin OTG
link
He is porting everything to 1.16
ew he uses eclipse
efe, trying to have a 3d generator done before 1.17 drops so I can adjust it for that then
https://wiki.vg/Protocol#Tags would anyone have a clue what numeric ID is meant to mean here?
(e.g. https://minecraft.gamepedia.com/Tag the enderman_holdable tag gives this list: https://i.imgur.com/rZLLRKI.png)
So it takes 13 sec ish to generate a 10kx10k world, any bets on how long it takes for a 100kx100k
40 seconds
Around 45s, I think
if the length/width has increased by a factor of 10, the area has increased by 10^2, so I'm saying 1300 seconds
Which is what like 20 min?
21.6 recurring minutes
damn, was close
what was it?
No I mean the 20min
ah
Trying to make it so positive values are more rough so we can see some mountains
Will start genning it afterwards
Also I lied it wasn't a 10kx10k, it was a 5k world
imagine imagining
Yea my bad, completelly forgot I was diving it by 2
but I mean let's see how long this one takes
200k ๐ฌ
that'll be a 100kx100k world
Didn't see this, so kek
I also forgot your function is dividing by 2 
Now we wait
aye
bro just get 1tb of ram
What are you keeping in memory my guy
Wait are you doing this on a server or just testing?
as in some sort of debugger client?
nah legit generating into a server
ah
Why?
Done (41.140s)! For help, type "help"
around 4-5 of those seconds are the other server startup stuff
lol
I need to stop pregening it, but that fucks everything up
https://github.com/dkim19375/dkim19375Core/blob/master/src/main/java/me/dkim19375/dkim19375core/external/UpdateChecker.java
Any suggestions? I haven't tested this yet, will this work?
wot
wot?
u said
Suggestion: Please delete
external?
did I?
;-;
!
lmao
get exposed
I think that's a lie
"external" classes are things that require a dependency like Vault... idk why I put the update checker in external tbh ๐
it's been a while since I updated this
Example url to put in constructor: https://api.github.com/repos/dkim19375/dkim19375Core/releases/latest
Suggestions are appreciated โค๏ธ
dafuq
wot
Who knew that running 2.5 bilion calculations took time
Using 24gb of ram, ramming the cpu to the max
Damn
you liar!!! I found the original.
damn that's a scam
lmao
how dare you say I said something I never said when you said it?
inspect element? ๐
photoshop
who the fuck uses mvdw api ...
Why maven Gaby
is a project from github
gradle init
i have a question
There is no time to wait! Ask your question @half harness!
What is the purpose of the version in gradle: project.version?
you think? then try it.
false
i can't try it bc my computer so laggy that it freezes when i open up inspect element
plus
i dont have access to logs
8 minutes down, like 15 to go
why you pinging me frosty? https://i.imgur.com/ZRwLPGg.png
how do u get that pikachu
false
Frosty do you mind me just copying your FrozenActions and renaming them to BlitzActions and saying they're made by me? xD

DkimActions
Would this be an okay ish way of multithreading or? (Using SERVICE#submit with a runnable)
dkim, fuck no
why
The calculations don't use the bukkit api (apart from the current generator implementation which will get changed)
anyone have any tips to make intellij not make my computer unusable?
it makes my computer laggy
16 threads wont be helpful
get a new pc
Frosty cached thread pool?
How many cores does your cpu have?
idk
or a work stealing one maybe
Check your parallelism value
Executors.newCachedThreadPool(new ThreadFactoryBuilder().setDaemon(true).build());
any more than that is decreased performance
This what I'm looking for, or?
daemon is for background tasks
I've no idea what I should be using with this
4
What dkim?
it may be good to set the name format
https://i.imgur.com/eyHIgik.png web material file icons, cute
8 threads yummy
and set the uncaught exception handler frosty
I was refering to frosty
but daemon is prolly not what u want
Anyone
but yeah your computer clocking at 1.1Ghz
wanna play with me ;c
Should always also notice about the single-thread Minecraft gave to us ๐
16 threads with 8 cores = lesser execution time and more context switching
im busy ๐ฆ
might be the reason
1.1ghz in 2021 ๐ฌ
๐
@half harness you only clock at 1.1Ghz so that is your issue
its a laptop
WHAT
lol
I didn't know my cpu was that bad ๐ฆ
mr 20fps
it's just laptops
Anything else?
lmao
yes
they can't go high speeds due to literally melting if they did xD
the name format should include the format argument
and I thought 3ghz was high
"terrain-generator-%d"
or smtng
and uncaught exception handler -> lambda > anonymous instantiation
also Idk what exactly you do, but you may want to use a work stealing pool (ForkJoinPool)
is it good to use final methods?
i do it cause it's habit
This Java tutorial describes exceptions, basic input/output, concurrency, regular expressions, and the platform environment
read here frosty
i don't know if it makes much of a difference
if it suits you or not
what happened to your old profile picture
think it just means that the method can't be overridden
I changed it
final is nice
oh
final everything
i final everything that should be final
use it unless you need to override the method
vim macros
i code on github.com
i code in notepad
compile manually
yeah
I code on punch cards ๐
imagine letting some "computer" compile your code for you
i gen all project files in intellij then code in github sometimes ๐
Takes 5 sec for a 50k world now
pog
issue is that the generation is fucked cause async
wdym
maybe reflect the server thread
and then run the runnables on it bypassing timings etc
Since each thread uses a different generator, meaning it doesn't know the previous value I'd presume
Yes
just dont do it async 
Might want to superposition multiple ones
Theres blog about all this but I dont have the link rn, should be relatively easy to find on google
James, it took 17min for a 50k world sync, and 5 sec when multithreading
No.
is it possible to know if my code is async or not? (Such as putting all code in a runnable, then running two bukkit tasks - one async, one async)
some things have an isAsync method
well
depends where you are
^
just a runnable
Impure code bug
Wouldnt have happened in haskell ๐
Elaborate more on that
final Runnable r = () -> { stuff(); }
State mutation
dkim depending on where the runnable runs it may be sync or async in respect to other operations
This is the current code
https://paste.helpch.at/vosomitufu.java
v2.4.5 getters, v2.5.6 public fields
final Runnable r = () -> { stuff(); }
Bukkit.getScheduler.runTaskTimer(r, i forget what params);
Bukkit.getScheduler.runTaskTimerAsynchrously(r, i forget what params);
frosty you may not need it you may not want it but this was a cool series I watched a while ago about terrain generation: https://www.youtube.com/watch?v=wbpMiKiSKm8&list=PLFt_AvWsXl0eBW2EiBtl_sxmDtSgZBxB3 I don't remember a lot from it but I remeber it being pretty good.
oh dkim
but a lot of videos so you might not want to waste that much time
yes
@distant sun Why break encapsulation?
its probably not beneficial
if the getter and setter only act like vessels to a state of the object then they're pretty much redundant
@hot hull
I saw the message yea
oh sorry xD
I watched this a while back
now ofc encapsulation is still beneficial as you can substitute the actual state beneath
Might actually follow it
ah ok then. yeah I remember it being very nice but I don't remember a lot of what was said lmao
I watched a few university courses on noise, kind of forgot everything already
lol
This dude is an absolute legend tho
you talking about Iridium?
yeah I've told Peaches about this 100 times over by now
You said 21min for 100k world, took 17min for a 50k world, didn't have enough memory for 100k singlethreaded
yes
its nice
public fields do be lit
how do I detect?
you can blame das for that
then how do I get the bukkittask from the runnable ;-;
use Consumer<? super BukkitTask>
runTaskTimer returns a BukkitTask iirc
if a runnable is passed ye
and so does runTaskTimerAsynchronously
it returns void if a consumer of bukkit task is passed
is there a way to use like Threads or smth to see if its on main thread?
dkim you should know if its async or not
what
look at the method you use
im curious
in worst case catch the main thread
if you use a method that is named blahBlahAsync it implies that it runs async
Bukkit.isPrimaryThread()
d;spigot Bukkit#isprimarythread
public static boolean isPrimaryThread()```
Checks the current thread against the expected primary thread for the server.
Note: this method should not be used to indicate the current synchronized state of the runtime. A current thread matching the main thread indicates that it is synchronized, but a mismatch does not preclude the same assumption.
true if the current thread matches the expected primary thread, false otherwise
2 minutes in and I'm already crying by this terminology
ooo
also, whoever's idea it was at Mojang to release the ProGuard mappings for all versions 1.15+ is a literal god
it means that I can steal look at how Mojang does it and put something into MineKraft
big brain
maybe
very interesting
indeed it is
public class main extends JavaPlugin implements CommandExecutor, TabCompleter, Listener
```:)
get out
ima shoot u
pain
what a surprise that the Notchian server is one of those with a util class very helpfully named Util
lol
love how this shows how wrong the Bukkit team were in their naming that makes actual logical sense
definitely wrong to think Notch has more than about 3 brain cells functioning at any given time
also, if they're releasing ProGuard mappings, why don't they just open-source the whole lot? lol
or at least, the server
Notch wasnโt particularly experienced in coding
I can tell
lol
no?
Itโs sus
maybe they could've, idk, rewritten it all from scratch?
you're sus
they've got the time and resources to do so now
purple is sus
They have rewritten major parts ever since?
probably
MineKraft sounds so much like a famous book from a famous Austrian painter
๐ฅฒ
omfg lol
It reminds me of something else, but that's a yikes
say it
Some german thing that was popular a while back
pog
I wanna make a cleaner renderer for world generation, should I do that or nah?
make something that works and open-source it so I can steal it and use it in MineKraft
Bardy most of the stuff I've been making for the past year is OS
Even some of the commissions
Skript? xD
nono I meant a german place
https://i.imgur.com/dA790GU.png that's not caused by what I think it is is it
ah
The name sounds german
it's not due to... relocation
but it can't be
actually it can be
actually it can't be
๐ฅฒ
I'm using PDM, and both my projects depend on the same version
._ .
efe, a better thing to say is come over I wanna break your kneecaps
lol
lol I thought you said pls ban im not joking
๐ณ
how do u make github repositories not public?
;-;
you make a repo, and you select that option that says "private"
or you click the little cog that is for settings
and you go to the danger zone area
danger zone ๐ณ
and you click the thing that totally doesn't clearly say "change repository visibility"
๐
it's dangerous if you use things you can only get with public repos
oh
it'll tell you why it's dangerous when you click it
yw
imagine blanking out the repo name
lol
wonder which one of these you're making private
๐
dkim19375/porndownloads
๐ณ
that's the repo

lol
gotta be a decent name length if you blanked out that much
lol
mhm sure u do
;-;
:)
f sharp?
Looks like its a tuple of a function array and some generic type?
yeah i think i fixed it
ah
i think it was something to do with currying / 2 parameters
currying it seems to work
ah
currying?
currying sounds like the sort of word I'd expect to find in a scam document lol
if you have a function f(a,b)
f(a) returns a function that takes b to give the actual result
What part of โf โg (f (x,y) = (g x) y) did you not understand?
let f(x,y) = x * y
let g(x) = f(2)
repeat(10, g)
Heres an example in elara ๐
๐
how embarassing
Atrocious
it's beautiful

๐
wow
where you putting that?
on my website
oh you're gonna paste that as an answer in #general-plugins aren't you
can we get a link to it pinned in this channel too ๐

๐

i jsut clicked ur link
certbot certonly --dns-cloudflare --dns-cloudflare-credentials certbot/cloudflare.ini -d wiki.bristermitten.me ez
and anyone who uses Cloudflare DNS and doesn't use the Cloudflare DNS module for Certbot is an idiot
bm
i told you
lmao
so we can make many such ones
lmao
it will accept any route
awesome
elara soon
Add elara repo\
literally clojure oppression

elm
clojure
very similar
well if you build them as a library for a windows target yes
huh
not sure why it's building for windows
and working
since im on linux

anyway i need to dockerize this
what is going on here
Anyone wanna help me a tad
I need an inverse lerp function for java, x y and a 2d float array of the values
a what what
you talking about lerp(a, b, t) = a + t * (b - a)?
the linear interpolation function
https://github.com/Unity-Technologies/UnityCsReference/blob/master/Runtime/Export/Math/Mathf.cs#L369
okay just clamp then
yup
public static float inverseLerp(float a, float b, float value) {
if (a != b) {
return clamp((value - a) / (b - a));
} else {
return 0.0f;
}
}
public static float clamp(float value) {
if (value < 0.0f) {
return 0.0f;
} else if (value > 1.0f) {
return 1.0f;
} else {
return value;
}
}
wHeRe ArE tHe FiNaLs

I don't generally tend to use final unless it's better to or I have to, since it just introduces more boilerplate that I can't be fuckin' assed to write
๐ฉ

inverseLerp a b value
| a == b = 0.0
| otherwise = min 1.0 (max 0.0 value)
what the fuck is that
Haskell ๐
leave
looks good!
truly
def inverseLerp(a, b, value):
if a != b:
return clamp((value - a) / (b - a))
else:
return 0
def clamp(value):
if value < 0:
return 0
elif value > 1:
return 1
else:
return value
disgusting
let inverseLerp a b value =
if a = b then 0.0
else max 0.0 value |> min 1.0
thats liek 50 more chars than haskell
probably a more idiomatic way of doing that
your functions do different things
i copied yugi's
let clamp value =
match value with
| 0.0 when value < 0.0
| 1.0 when value > 1.0
| _ -> value
that's kinda hot
๐ณ
nvm doesnt compile ๐ฅฒ
lol
lol
nah that's poorly written f#
I'm really starting to hate everything
I've been struggling with knowing whether static is okay or not since I started learning Java
Some people are like nO yoU caN't UsE sTaTiC! NEVER! OBJECT ORIENTED PRINCIPLES SAY THAT STATIC VARIABLES SHOULD BURN IN HELL
And a bunch of other stuff is like "yo if static is easier and requires you to jump through less hoops and is easier to read, it's cool yo"
static is useful if done correctly
let pattern pred x = if pred x then Some () else None
let (|Negative|_|) = pattern ((<) 0)
let (|MoreThan1|_|) = pattern ((>) 1)
let clamp value =
match value with
| Negative -> 0.0
| MoreThan1 -> 1.0
| _ -> float value
``` i did it
Id say try to avoid using static until you fully understand what it means
understand the reasons for both arguments and you'll be able to make your own decisions
^^
Dont use it just to get access to something
Think if it actually makes sense for it not to be part of the object
it's easy to fall into bad habits with static
^
static is useful for constants and utils
okay so I have a player manager class that basically just stores more information about other players. Many other classes need to access player information because it's a minigame plugin, so I used static to access it across the entire plugin but I'm using an instance variable to actually store the information
Bad
got it
Bad
I switched that already
lol
thats not really the best way of looking at static
What's the best way to handle a class that has to be accessed by like everything?
DI
its not pain
it is when you have to refactor a bunch of code to use it.
dont static abuse 
pog
more complex algorithm
nice
Now I need to figure out how to make an editor in that window so I don't have to keep reopening it
Pro
Hot
I'm not trying to argue with anyone, but I would like to get a straight answer that I can live by
Why is static bad for anything that could change?
Static variables are generally considered bad because they represent global state and are therefore much more difficult to reason about. In particular, they break the assumptions of object-oriented programming. In object-oriented programming, each object has its own state, represented by instance (non-static) variables.
๐คท
yeah static doesnt fit very well in the OOP paradigm
Static methods mean that they can be called from anywhere. They can be called from a lot of contexts. They have a lot of clients. So, if one class needs some little special behavior to be implemented in a static method, you need to make sure that none of the other clients get broken. So, such reuse simply doesnโt work. I can compare it with my noble (and failed) attempt to compose and reuse microservices. The resulting classes are too generic and completely unmaintainable. This results in the whole system being tightly coupled.
it can make messy code that's hard to test and debug
God it's annoying that main has to be static
just make a class thats whatever your main class is, call that and then do things from there
boom no static
public STATIC void main ๐คฎ
pub fn main
fun main
whats the link
its actually a very useful link tho
Hahaha that's actually really cool
petition for funnycube to whitelist that link
^^
ohshitgit
I guess it just feels weird having to encapsulate everything in an object when I'm not actually doing much that an object actually benefits me in doing. I suppose that it's really helpful to be able to keep certain methods and variables separate from a giant pool of variables, but I'm not creating items or houses or something like that; I'm writing logic for a minigame that doesn't have any great use for a lot of the features that OOP has to offer, at least as far as I know.
that doesnt simply exist and cant be possible
that site isn't evne bad?
java is an oop language
Lel
It was lmao
xD
whats wrong with that link? ๐
u
What's a good window ui library
oh yea forgot about javafx
wot
@distant sun You played with it before right? Got any public projects using it
yes

what the heck
no, sorry
thats tornadofx frosty
looks interesting
its like a kotlin thing for javafx
๐ผ ๐ญ ๐ฆ ๐น โ
nvm I won't
what can you use for android design instead of xml?
lol
i was saying lol to frosty
Gaby, most new ide's have visualisation so you don't have to touch xml at all
that would be great
You can use react for mobile
not a big fan of js
Kotlin react 
Kotlin multiplatform works too but kotlin react is different
Yeah
Ugly ass buttons
what are you working on frosty?
Making a renderer for it
Idk if I like this. seems like to much water to me
Not enough water imo
ugh idk it seems like its all just randomly sprinkled in there.
like it should be more water together same with land.
idk what the scale is there tho but it looks to me like just a bunch of lakes.
Yea that's why I need a renderer, so I can properly play with the settings
anyways its a cool project
xD
Possible to unmute twitch muted segments?
I highly doubt they are harddubly removed.
Not that I'm aware of unfortunately
src code? uwu
ye some stuff seems to be filtered
What do anti-vaxxers, flat earthers, 9/11 truthers, and anti-Rust activism all have in common? All of them are characterized by a blithe rejection of facts to embrace a narrative of victimization by a vague authority. In the case of Rust, the "vague authority" are a bunch of volunteers who have devoted tens of thousands of hours of their free ti...
uwu on github
on op65n ?
ah yeah
love it. all commits are named pog https://i.imgur.com/Vbyuezd.png
Yes because pog
None of the code is also documented, which needs to get documented otherwise It'll be a shit show rq
owo
to much code for me. bye xD
I need to license it before some dumbass copy pastes and claims as their own
I mean I'm not worried about you, you're too lazy to finish it
It is the truth tho is it not kek
Which is 6,66 usd in case you weren't aware
frosty you see that It says EUR for my account as well right? xD
I have to keep up with RON, EUR and USD
lmao
Wanna transfer idk like 600 to me, ktnxbye
pog I did something good https://i.imgur.com/YqUkjEs.png
yeah 1 sec let me F5.
oh fuck its all gone
xD
puff its gone
yeah sure. let me make it first.
lmao
its 3643 before F5
the actual balance is 43,60 xD
why is it not transperent ;c
why not xD
How can I make quick money ;c
jump of a building. that's how not to make money.
my discord server is so popular nowadays xD https://i.imgur.com/492GsiN.png
Let me join
nah.
no one can join.,
the invite is actually very very public but no one will join any time soon
looks like a good idea
Rust users are being prosecuted
why?
cuz they are rusty?
@lunar cypress Where do you find these? Great to uncover and hear how badly society treats Rust developers.
this one I got from r/rustjerk
Is that a reddit page
Jazelle DBX (direct bytecode execution) is an extension that allows some ARM processors to execute Java bytecode in hardware as a third execution state alongside the existing ARM and Thumb modes. Jazelle functionality was specified in the ARMv5TEJ architecture and the first processor with Jazelle technology was the ARM926EJ-S. Jazelle is denoted...
Python 3 is able to write excel files and tell Excel to do the calculations. It can also read those files.
Thanks to Microsoft's latest update to Excel, Python 3 on Windows is finally Turing complete!
Finally!!
Don't think python has a "safe" library ๐คฃ ๐คฃ ๐คฃ ๐คฃ
Yeah. I hate it.
wrong. Python3 is literally not turing complete
Either 2.7 or 3.X
up until the excel update that is
microsoft are really revolutionising programming ๐
PepeLaugh oh no no
back in the day the surveys were much better
83% of rust developers approve of me
causation vs correlation smh
i think most software people are pretty liberal
38% of participants had previously been charged with aggravated assault, of which 27% was related to promoting the language
maybe not some of the older ones
oh hell no
lmfao
you know the infamous is-even and is-odd libraries?
Recently I was surprised to find that the guy who wrote those is like the archetype chud
Literally has a trump-2020 github organisation lmfao
lmao
but for more famous examples, Robert C Martin is also a republican
ah yeah that's the one lol
oh surprising
well
most programmers on twitter are pretty liberal***
but that's just twitter
I feel like Rust's community is much more open (some people not when it comes to the programming language) but generally yeah
probably because of the policies and infrastructure of the language
that is misleading and biased
malloc and free?
๐คฃ
which one did you get
I think you accidentally set up a permanent redirect
or at least sending the response code for one
yeah you're sending 301
should be 307
๐ค
because 301 tells the browser that it is permanent
and so it will land in the browser cache
oh
and always redirect to the same page
ah right
would the Cache-Control header work?
uh
idk
somewhere in developer tools i think
oh ye
"Disable cache"
i think
well now it works, but I don't want to disable every time ๐
yeah ima try and disable it
The located assembly's manifest definition does not match the assembly reference. (0x80131040)

aah it was a version incompatibility
not the most descriptive error in the world
but i guess it was a start
play with me senpai?
UwU
Nope
that's hot
No u
๐ฅฐ
dafuq is dis
a masterpiece
it warms my heart when code that I've not touched in 3+ months stops working... it really does
It's scary
๐ฆ MySQL has just stopped allowing my json to be inputted because it's decided today that it won't accept extra ' i think
But, it's fixed itself on one implementation without me touching anything and broken on another!!!?
love it
Anyone got experience with Unity?
My plugin doesn't build with the plugin.yml...
plugins {
id 'java'
}
group 'bz.ene'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
maven { url = 'https://oss.sonatype.org/content/repositories/snapshots' }
maven { url = 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/' }
maven { url = 'https://repo.codemc.org/repository/maven-public/' }
}
dependencies {
compileOnly 'org.spigotmc:spigot-api:1.16.5-R0.1-SNAPSHOT'
compileOnly 'de.tr7zw:item-nbt-api-plugin:2.7.1'
}
processResources {
from(sourceSets.main.resources.srcDirs) {
expand 'pluginVersion': version
}
}
File structure ^
Why doesn't the plugin.yml get included with the build?
.
I build as an artifact with intellij
thats the issue
click where the blue arrow is pointing
then build
your out will be in the directory build/libs
thx
Unknown dependency NTBAPI.
repositories {
mavenCentral()
maven { url = 'https://oss.sonatype.org/content/repositories/snapshots' }
maven { url = 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/' }
maven { url = 'https://repo.codemc.org/repository/maven-public/' }
}
dependencies {
compileOnly 'org.spigotmc:spigot-api:1.16.5-R0.1-SNAPSHOT'
compileOnly 'de.tr7zw:item-nbt-api-plugin:2.7.1'
}
declared the repo?
I added them in the gradle file..
yeah ^
shouldnt build automatically install it
press ctrl + shift + o just in case
where
nvm
enebz does it say anything more?
[22:24:42 ERROR]: Could not load 'plugins\PluginTest-1.0-SNAPSHOT.jar' in folder 'plugins'
org.bukkit.plugin.UnknownDependencyException: Unknown dependency NTBAPI. Please download and install NTBAPI to run this plugin.
at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:272) ~[patched_1.16.5.jar:git-Paper-466]
at org.bukkit.craftbukkit.v1_16_R3.CraftServer.loadPlugins(CraftServer.java:388) ~[patched_1.16.5.jar:git-Paper-466]
at org.bukkit.craftbukkit.v1_16_R3.CraftServer.reload(CraftServer.java:942) ~[patched_1.16.5.jar:git-Paper-466]
at org.bukkit.Bukkit.reload(Bukkit.java:708) ~[patched_1.16.5.jar:git-Paper-466]
at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:54) ~[patched_1.16.5.jar:git-Paper-466]
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:159) ~[patched_1.16.5.jar:git-Paper-466]
at org.bukkit.craftbukkit.v1_16_R3.CraftServer.dispatchCommand(CraftServer.java:806) ~[patched_1.16.5.jar:git-Paper-466]
at org.bukkit.craftbukkit.v1_16_R3.CraftServer.dispatchServerCommand(CraftServer.java:768) ~[patched_1.16.5.jar:git-Paper-466]
at net.minecraft.server.v1_16_R3.DedicatedServer.handleCommandQueue(DedicatedServer.java:411) ~[patched_1.16.5.jar:git-Paper-466]
at net.minecraft.server.v1_16_R3.DedicatedServer.b(DedicatedServer.java:378) ~[patched_1.16.5.jar:git-Paper-466] at net.minecraft.server.v1_16_R3.MinecraftServer.a(MinecraftServer.java:1209) ~[patched_1.16.5.jar:git-Paper-466]
at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:997) ~[patched_1.16.5.jar:git-Paper-466] at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:174) ~[patched_1.16.5.jar:git-Paper-466]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_251]
yes
Please download and install NTBAPI to run this plugin.
as i said i added it to gradle
it needs the plugin
because you didn't shade it in
Thats why you need it in your server too.
either shade it or download the actual plugin
and install it in the plugins folder with your plugin
or both 
๐ฆ
Shading == it compiles the required classses and put them into your jar file
I dont wanna be one of those jerks just throwing words out
should prolly relocate then
no one else then them understands it.
shouldnt it shade when i do this:
repositories {
mavenCentral()
maven { url = 'https://oss.sonatype.org/content/repositories/snapshots' }
maven { url = 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/' }
maven { url = 'https://repo.codemc.org/repository/maven-public/' }
}
dependencies {
compileOnly 'org.spigotmc:spigot-api:1.16.5-R0.1-SNAPSHOT'
compileOnly 'de.tr7zw:item-nbt-api-plugin:2.7.1'
}
nope