#dev-general
1 messages · Page 304 of 1
but it could happen anytime
yeah, but that's not what you are examining
or what statistics and probability theory is about
there are things that happen daily which have a smaller chance of (1/2^128)^2 chance of happening
sigh...
Might make a bounty for someone to generate a random UUID that matches one i generate
this is the old gambler's fallacy, independent events are completely irrelevant
it's not how probability works
vanilla has tooltips for brig tab suggestions????????????
yea i know cause one of those daily events are like one of 2^10000000 events that happen daily so the chance is basically 100% for such to happen
no
this is not how any of this works
and to put this number into perspective
let's take a different experiment
let's pick a random particle from the observable universe
we'd be more likely to pick the same particle twice than to generate the same UUID
wtf I'm not being a smartass
I was thinking of doing something similar
stringprovider is next
sorry that I try to explain some probability lol
lmao
the goal is inefficiency
i might actually move the INTS array into the method
so its created every time
hmmm
sleep(100000)
sleep(100000) is still O(1) and therefore pretty efficient
(there, here I'm being a smartass)
@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args){
sender.sendMessage("Thinking...");
Thread.sleep(5000);
sender.sendMessage("Hello!");
}
and make sure that's ran on the main thread
Massive brain
How about u only store the squares of every number and when u when u get it, it will root all the numbers
okay minecraft fucking dies if it encounters two entities with the same uuid lol
straight up crashed
well yeah
because vim doesn't have a thing to square a number afaik
i used a vim macro to do that lol
i assumed u used some sort of macro
lol sure
just generates a list of squared numbers
it will pay off when we get big inputs, trust me bro
stop right there
remove that @override
print([x for x in range(0, 100000)])
```ez
no @overrides allowed
lol
you would need to map it to the square bardy
we could even cube it
print([x**x for x in range(0, 100000)])
im heading to dinner soon but if someone does it ill merge lol
updated
lol
honestly 1500 is a good start, but we do need to get a lot more eventually
DownloadMoreRAM.com - CloudRAM 2.0
Ez future proofing
thanks
should i see if i can burn my house down by making a recursive vim macro and leaving it for the next 45 minutes
lol
rust macros
Now it stores like this:
triggers:
- ==: org.bukkit.Location
world: world
x: -249.0
y: 75.0
z: -303.0
pitch: 0.0
yaw: 0.0
- ==: org.bukkit.Location
world: world
x: -251.0
y: 75.0
z: -305.0
pitch: 0.0
yaw: 0.0
println!
is this bad or good
So what if I want to add another tag to the serialized object
i want to add a "id" to each location
wdym another tag
make ur own serializer
I can hook up my HP printer and maybe we can just print and store player data in filing cabinets
good idea
We can have an array of printers
yea that sounds good
we can all store a page of player data
public class Printer{
public native void print(String data);
}
```lol
then use JNI
native means it's implemented in native code
🅱️ative
a.k.a C or C++ for example
yeah
ArrayList<HashMap<Location, String>>()) something like this?
interesting
how long you been programming gaby?
Hold on no
Java? 1 year and something
I wrote my first C++ compiler at the age of 2
https://tenor.com/bhwcm.gif @lunar cypress
i wrote linux when i was 1
month
eh, you'll get there
good for you
welp
Quicktime
isn't that the old ass movie player thingy that Apple made? xD
Kotlin is ez when your ide can do proper syntax highlight smh
can*
ngl, Microsoft Word 1990 best IDE
bestn't
I made a lisp interpreter whilst still in the womb
Pog
YESSSSSSSS
fucking hell
right, now time to set up the keep alive system so the connection doesn't just die
this is really weird
it works with Pakkit, but doesn't work without
with Pakkit, I don't even see map_chunk, and it seems to work anyway
without, it says fieldSize is too long
gonna fix that tomorrow
is there a reason why i cant just run test classes in gradle?
like not the ones in the test package, just like in general run a single class
to test a code snippet
I get a Task 'ResourcepackFileTest.main()' not found in project ':MinecraftMediaLibrary'.
hm
what will location.getWorld().toString() give me?
if it is in world?
will it just be world
@NotNull
String getName()```
Gets the unique name of this world
Name of this world
That's the one you need ^
Is the test class you mentioned in the main directory?
wdym
Like is it with the unit test classes or with your normal classes?
I mean with the main method its supposed to work fine if its with the normal classes, weird. I guess you could just set unit tests up just as easily
Could you show us your main method?
public class ResourcepackFileTest {
public static void main(String[] args) {
System.out.println(generateJSON());
}
private static String generateJSON() {
JsonObject format = new JsonObject();
format.addProperty("format", 6);
JsonObject description = new JsonObject();
description.addProperty("description", "Example Pack");
JsonObject pack = new JsonObject();
pack.add("pack", format);
pack.add("pack", description);
return pack.toString();
}
}
you wanted the main method, i gave you the whole class
lol
I mean unit tests don't really have a main method
Its not a unit test fefo
oh okay
maybe it should be
tbh
Hey I wanted to know, is there a secure way of getting the domain making the request on a website?
I am trying to figure out the best way to make an application show a completely different website layout depending on the domain within the same application.
This is for a spring boot project
@quiet depot How does one make this in java
setSomething { //<- some object provided
it.setStuff()
}
(ofc different syntax)
Consumer ?
got an example
public void setSomething(Consumer<SomethingElse> consumer) {
SomethingElse a = ...;
consumer.accept(a);
}
.....
setSomething(it -> {
it.setStuff()
});
```?
Appreciated
What about it?
@iron apex

they're really easy
if you're talking about say a VPS that is
java be like

oh btw, can anyone here who knows a lot more about netty than I do explain this? https://i.imgur.com/NfE3f9l.png
does Minecraft require me to do some split packet bull shit?
This might be complicated, but would it be possible to create an external application that can hook into the server, and I can call server methods from it?
Otherway around would probably be easier no?
what?
Well you'd have a plugin running on the server providing some sort of entry point, and then you'd call the method from the application
would i be able to call like Bukkit methods from the external app if i make a plugin then add it to the server?
Not sure how you'd even access it, perhaps using a db or some shit to call an event
Idk just speculations
id need some kind of connection to the server wouldnt i?
Yes
Anyone pretty savy w/ Regex?
?help
» Give the helpers some details
» Ask suitable questions
» Be polite
» Wait
thanks
Anyone know whats the best way to make a nice clean /help
Yes, just have a website/forums/wiki and just link that
How do you separate groups in Regex?
What do you mean by that explain what you are trying to do with some more detail @solid minnow
They keep going offline when i sleep
And that’s a rough compile time, Aj.
Maven?
gradle
WTF
external processes happening?
I remember when I didn’t know about indexing even occurring with maven 😂😂
Broke some jars cause I was impatient
Clean enough? https://paste.helpch.at/fehituqisa.java
very sexy
Sadly it doesn't work
give that some arguments that can be changed easier then 🤑
wat dis
i presume it should should a little rectangle on your screen with "Text" "Text" as 2 separate lines both in black font

Nope, I'm probs just missing a component
I also already have the base built for adding event triggers and shit, just nothing is hooked up
does your rendering auto draw once processed?
or do you need to tell it to do so
like render.build() or something
swing
Because fuck javafx
what's wrong with JavaFX?
I mean, I get it's a bit slow, but it's Java ffs
it works very, very well
Java do like to go brrr
ew
im just out here tryna copy + paste code
Just a class
can I make it so a kotlin getter overrides?
@A(
b = {
@C(
d = "e"
)
}
)```
What does this look like in kotlin lol
@prisma wave https://i.imgur.com/OrLHwFY.png
Atleast it's something Bardy
and all thanks to this guy on the #mcdevs channel on IRC (wiki.vg)
right, now we got the sending, gotta do the receiving
Nice nice
Oh hey I finally got github pro
whats the kotlin gradle import for the stdlib
@prisma wave acknowledge me as senpai xD
implementation 'org.jetbrains.kotlin:kotlin-stdlib'
hm
if you've got the plugin installed then the version will get filled in there
you need the plugin
id 'org.jetbrains.kotlin.jvm' version '1.4.30'
already got that, im having an issue with Class::class.java the java is underlined red, ive had this issue previously and it turned out i didnt have the stdlib in my gradle, but i do this time so idk whats up
you got both the stdlib and the plugin?
yeah
You sure it's java?
plugins {
id 'java'
id 'org.jetbrains.intellij' version '0.6.5'
id 'org.jetbrains.kotlin.jvm' version '1.4.30'
}
group 'org.aj3douglas'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
}
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib"
testCompile group: 'junit', name: 'junit', version: '4.12'
}```
wdym
Wasn't there another one
theres .javaClass for like interfaces and stuff i think
it shows up in the completion and everything
One stds is enough 
invalidate cache/restart worked

also, @prisma wave, acknowledge me as senpai
lol
im having some serious problems deleting a jlabel
👏
i just want it to delete :)(:
damn thanks intellij docs
extremely helpful
bruh i literally cant delete this componente
also, @prisma wave, I was thinking about refactoring all the packet names at some point to be Inbound and Outbound instead of PacketIn and PacketOut
e.g. PacketOutChunkData becomes OutboundChunkData
legit how the fuck does this thing delete
I just had to open it in sublime and remove the xml manually
lol
not sure about that
OutboundChunkData suggests it's some sort of data class
not a packet
Also is it just me or does intellij refactoring and renaming (not for classes) only apply to one class?
?
basically
In Class A, I have a variable called count
In Class B, I have a method that uses that variable
good point
If I refactor and rename count in Class A, it doesn't rename in Class B, throwing errors
But it renames all calls of count in Class A
help
how make list bigger
list is thing on left
here are the options i have for i
CAn some on HELP me
[15:01:15 ERROR]: Could not pass event PlayerInteractEvent to TestPlugin v1.0
java.lang.ClassCastException: org.bukkit.configuration.MemorySection cannot be cast to java.util.Map
at bz.ene.plugintest.files.TriggerData.getTriggerId(TriggerData.java:35) ~[?:?]
35: Map<Location, String> triggers = (Map<Location, String>) config.get("triggers");
This error only occurred after i added the if to this section:
public TriggerData(WishingWell plugin) {
super(plugin, "TriggerData.yml");
// It could be a map of Location - String.
if (!config.isSet("triggers")) {
config.set("triggers", new HashMap<Location, String>());
}
}
When I did config.set("triggers", new HashMap<Location, String>()); that error never came, but every time I restarted the server, the .yml was reset, because I didn't check for existing data..
You using eclipse?
no
It's like config.get() cant fint the hasmap i config.set() to "triggers" on line 42...
Can some on HELP me with a discord BOT
We don't read minds
So if i say what i need help with you can help me ok
So i am doing this
I cant send pics
@hot hull i dmed you a pic of what is worge because i cant send pics
You won't be able to upload images here directly to avoid spam, so please use https://imgur.com/ to upload images/screenshots.
You can also use a screenshot service like gyazo or jinx and post those links here.
🤦
you have to replace /path/to/Xavier with the path you want to change directories to
Lol
How do I set a empty hasmap to a config file?
config.set("triggers", new HashMap<Location, String>()); this just creates a org.bukkit.configuration.MemorySection...
Yes, because that's what Bukkit does, it "converts" maps to a ConfigurationSection
That's Bukkit for ya 
happy
so how can I store a hashmap like the way i want
what is the way you want?
config.set("triggers", new HashMap<Location, String>());
but when I do Map<Location, String> triggers = (Map<Location, String>) config.get("triggers");
It says, "cannot convert MemorySection to Map"
get it as a ConfigurationSection and then use getValues
yup
can sombody please rewrite the config manager for bukkit
@prisma wave My hashmap is <Location,String> not <String, Object>
Why would you add Location to serialize 
yeah that's a good question
bruh ur asking everyday to play
play what? if no one wants to play with u for the past week then nobody will 
No one did...
what?
wdym
it's usually <String, Location>
because to get the value you need the key
and it's very rare to have the same exact location
All I'm trying to do is store data like this:
triggers:
location-obj: "tag"
location-obj: "tag2"
How are you retreiving them back...?
it's actually a really cool map ngl, someone's actually remade Harry Potter in Minecraft
that thing the guy is asking you to join
Me
MineKraft multiplayer test #1
@obtuse pulsar i mean, how are you retriving those values after from config.get()
Also, wouldn't surprise...
public class TriggerData extends CustomFile {
public ConsoleCommandSender console = Bukkit.getConsoleSender();
public TriggerData(WishingWell plugin) {
super(plugin, "TriggerData.yml");
// It could be a map of Location - String.
console.sendMessage("Initializing TriggerData file.");
if (!config.isSet("triggers")) {
config.set("triggers", new HashMap<Location, String>());
}
}
public void addTrigger(Location location, String triggerID) {
Map<Location, String> triggers = (Map<Location, String>) config.get("triggers");
triggers.put(location, triggerID);
config.set("triggers", triggers);
}
public void removeTrigger(Location location) {
Map<Location, String> triggers = (Map<Location, String>) config.get("triggers");
triggers.put(location, null);
config.set("triggers", triggers);
}
public String getTriggerId(Location location) {
Map<Location, String> triggers = (Map<Location, String>) config.get("triggers");
if (!triggers.containsKey(location))
return null;
String triggerID = triggers.get(location);
return triggerID;
}
}
aH
Please use a paste service to share configs, errors, code and long logs.
• HelpChat Paste
It's not that big
32.7 MB, and it pretty much does fuck all atm
unzip it, then zip it with max compression 
Let me join
wot
I'll open it and share the IP, so anyone can join
will it even work without authentication?
it'll work
im on 1.8 rn
why tf is the jar so big
so i can't join
there's no chat messages
can u push what you've done btw
does it allow 1.8 connection?
@regal gale Did you see how I did it?
absolutely not
:c
Everyone except 1.8 would be great
and sent out a message.
tf
why are we using guava again
Anyone can help Enebz a little? I'll be back after 10min
you always tell me not to use + 👀
ik
What is his problem
ive not worked on this in like a year, and it's not intended for production
so
i think that's a half-decent excuse
168.119.171.28:25565
sec
time to get a geoip website up🙂
I want to store data to a yml like this:
triggers:
location: tag
location: tag
Like HashMap<Location, String>
actually hold on
will do
I have been stuck on just saving to a yml since thursday lol
You cant have two same keys
okay, you'll all get authenticated as me lol
trigger.location cant indifference with the other one
it shows my name on the tablist
@jovial warren chat no working
wait you're in?
yes
yeah chat won't work yet
Yes I see his name
yeah ik
that's because I haven't touched the code that does that
uses your name for the join message tho lol
that's also hard coded
There will never be two same keys
and when u break 1 block they all disappear
wait what?
break 1 block in the cube
@obtuse pulsar Write your issue and code snippet in #development
makes sense
They are spamming
it doesn't send the new map chunk update
and you'll keep falling forever btw, since there's no death mechanic
nice
Adventure is on 4.5.0 smh
Guava is on 30.1 smh 🌚
smh
right, time to work on player info
and chat
and a few others
to make this actually function, and so we can see each other
have fun playing around on this server for now though
love how even though this is survival, there's nothing to stop you just flying
is that default functionality?
also you should see the console spam for this lol
must be
I believe you have to actively cancel flying on the server's end
or something like that
gonna set the gamemode to 1
also gonna set max players to more than 1 lol
Also don't you have to shade in slf4j-simple? The -api is just API lol
alright now i posted a full explaination of whats wrong
we don't shade in slf4j-simple...?
ah I read your message properly
sorry
no
logback is an slf4j impl
aa
there's also log4j
might end up making my own NBT library at some point, since adventure NBT is a bit annoying to work with sometimes
and KotlinNBT is a mess
ClojureNBT
Unless you have specific goals or licence requirements, it is extremely recommended to go with one of the existing libraries.
🥲
yeah no
someone on #mcdevs said I should make my own (the guy who helped me with chunk data stuff)
NBT could probably be expressed pretty cleanly in EDN
just add a nicer api to adventure
reinventing the wheel is usually dumb
¯_(ツ)_/¯
I want something really tiny and made in Kotlin anyway
but I ain't gonna bother with that yet anyway
I got more important things to deal with first
minecraft nbt api in kotlin std when?
just pr the kotlin std 🙂
lol
gonna be just as good as the built in V web server library PepeLaugh
speaking of maths and code, what the fuck is this (Integer.compare(int, int))
why not just x - y...
Probably an optimisation
Oh
that's 2 if checks against a single arithmetic op
Good point
Thought all it could do is cos(A^2), whoops
speed
boi
the jvm is pretty impressive in terms of speed
@surreal quarry https://github.com/Jaimss/terrible-plugin/blob/master/src/main/java/dev/jaims/terribleplugin/utils/IntegerProvider.java what the fuck is this LMAO
https://github.com/Jaimss/terrible-plugin this is actually amazing
and copy and paste it inside that arary
for this repo?
Yep :+1:
epic 😄
Would anyone help Enarbi?
no code need final at all
Wot
I barely use them
INTENTIONALLY remove finals 
Welp
because that would give you a different result?
it's a comparator, less than 0, 0 and greater than 0, not necessarily -1, 0 and 1
omg LOL
yes but it's still conventional
even the javadoc says "less than 0" and "greater than 0"
the int is optimized to a byte 🌚
i’m not seeming what you’re confused about. other than the fact that we need to add more integers to the list, it seems like a great solution
// TODO: add more integers 🌝
indeed
lmao
Lol
What version
sec
I can see kaliber
lol it crashed my game
wait what?
o i was 1.16.4 oops
I can see you three on tab now lol
This ping kek
yeah it's Random.Default.nextInt(1000) kek
I think I know why you can't
when someone joins, every session gets sent ADD_PLAYER, but the joining player doesn't get sent the existing players
oops broke the block
lol
lol
Sthu blitz
well yea lol

lmao
change back idiot
you two should now see me on tab
if me and kaliber rejoin, you'll see us lol
U actually got it working can you move around yet?
yeah you can move
Why did my skin just randomly change to alex lol
you can't see each other, since those packets don't get out for whatever reason
yea i got steve skin 
No I mean I was a steve, now I'm an alex
oh
ez way to get rid of inappropriate skins
lol
lol
blitz kys

k
what should I do next btw?
a) chat
b) seeing each other
c) lighting
d
b
c*
b
lol
right ho, b it is then
Bardy push your changes
yeah alright
@prisma wave one for the collection: https://i.imgur.com/uujC6Nu.png
How do you change the output dir for building with shadow again
rn it outputs to module/build which is annoying, I want them in a global build dir
Wait a second 
pushed
what's up Frosty?
God stop being a hoe blitz, that pfp confused me
Very nice
lol
lmao
I pushed it to my fork btw because I was on the master branch and I couldn't be fucked to switch to another branch lol
Mother fucker
[18:02:41 ERROR]: Could not set generator for default world 'world': Plugin 'TerrainGenerator' does not exist
discord being a hoe
Make PR
alright
And I'm wondering why it doesn't exist..
o
done
rookie mistake
Merge if you want
done @hot hull
I'm gonna go through and rip all this code to shreds either way
changed it
This ain't right
🤨
we should use K&R OTBS as official style 
OTBS?
🙄
tf is actual
Noone has yet to tell me what the optimal way of having infinite chunk generation should be approached, since it involves storing previous chunks
the opposite of expect @onyx loom
In computer programming, an indentation style is a convention governing the indentation of blocks of code to convey program structure. This article largely addresses the free-form languages, such as C and its descendants, but can be (and often is) applied to most other programming languages (especially those in the curly bracket family), where w...
Implementation specific to target lang
K&R has different variants
^
OTBS has the brace on the same line, but K&R is mostly on the next line
anyone who writes in GNU, Whitesmiths, Horstmann, Haskell, Pico, Ratliff or Lisp format btw should be shot
Jump off a cliff bard
😦
just look at them
some people may take offense to that
Absolutely nothing wrong with them 🙂
maybe GNU isn't that bad
I suppose the rest all have their uses and their languages
what would be a good alternative to using a 2d array, I need non preset size
Yes, if you were to have started with those, these conventions would seem weird to you
true
A 2d list?
Probs better to make my own object then no?
Yes, but you could still internally use those
Please dont tell me you are pregenerating again
Whats the list for?
But I need the previous indexes, otherwise each chunk will be different
wdym, the same noise generator should give the exact same value for the same input
You only need to plug in the x z coordinates at any given point
Alrighty
Oh yea I also need to allow for negative coords, so yea I need switch away from a 2d array (not pregening, just having a 2d array for that chunk so it's cleaner and not all in the same class)
Matt you sent to much? xD
Yeah it was the entire screen instead of one line, waiting for ij to reopen
@jovial warren What is this supposed to be?
damn. I was like "oh I have a github follower. I'm important" turns out its Remence 😦
and not saying this as in his follow doesn't matter but he followed me because frosty wouldn't xD
er... yeah... that's my method of reading the tag files
src/main/resources/tags
suggested by Piggy and BM
Cuz Exception in thread "main" java.io.FileNotFoundException
That's awful
Is it just reading resource files?
@old wyvern gotta implement threading while I'm at it :p
that's not the hard part @ocean quartz
it's gotta read a list of files in a directory, iterate over them, and add them all as tags
that's the one
Without using your jar stuff
Matt sm0rt
looks like it
val path = Thread.currentThread().contextClassLoader.getResource("tags")?.path ?: throw Exception("Do this later kekw")
val files = File(path).listFiles()
files?.forEach { println(it.name) }
that worked?
Yeah
try that in the jar
Do i really need to ugh
I swear I did exactly that and it didn't work
although I was using javaClass.classLoader so...
fun
imagine giving a fuck about exceptions with Kotlin
Imagine not
lol
!!!!!
you'll see so much code in there that could go so horribly wrong
Just because you don't have checked exceptions that doesn't mean you shouldn't make meaningful errors
I haven't built it to be nice yet, I've just build it to work lol
trying to configure my Paper test server to not have anything that sends a shit ton of packets lol
so I don't get spammed and have to scroll for 5 minutes to find what I want
They don't display running the jar
told ya
Anyone know of a vote plugin that gives you a "token" and you can redeem them in a shop gui
GIFs be like
is that the cause?
It just takes me here https://clojure.org/
I'm getting the chunk noise map for each fucking iterration
Instead of once at the start
:kek:
try this one https://wiki.bristermitten.me/best-voting-plugins
i think he gave the wrong link
Lol are you all trolling
Oh sorry typo, I meant "wrong channel, ask in #general-plugins "
yes lol but yea got to #general-plugins
or even #minecraft maybe
If you react with a "clown emoji" your mother will die tomorrow
even more maybe
lmao someone reacted after reading this
o it takes me to fsharp.org
thanks!
Wow looks like a lot of poor women will be passing away soon 🥲
Noproblem!
so I reply with a "helpful response" (helfpul role), and I am VILIFIED with responses alluding to 'clowning'
What URL is yours
guides.jaims.dev
fair enough
This is the only non COC thing I've used it for
if i have a docker container running at it was made with fpprank:latest will restarting it update it or do I need to remove the container and run it again
That's probably (?) Enough then
:sadge:
you making this like vanilla btw?
you need to remove the container and run it again :smh:
please tell me you're using compose
its a really small run command xD
fine
Very sad
I'm sure there's a good reason for that though
I guess the container is immutable
yea
@old wyvern infinite generation finished, everything is flat, but that's cause I'm an idiot like always
I need some help,
I'm trying to make a custom hopper, how can I differentiate it from a normal one?
is nbt saved when hoppers are placed
or blocks in general
actually BM i think it might work i just didn't put :latest on the image
just assumed that was the default lol
What's nbt?
gg
fun main = println("i love you")
Sry i don´t know how this channel are used
Not configuration help
Yeah check that out
Yes
lmfao
yeah gl getting anything out of these idiots here xD
we're developers
"these idiots"
Hey babe have you ever heard of the monad binding operator?
I can give you some actual advice in DMs if you want
who do u take us for bardy
idiots apparently
😔
😔
😔
Nooo they left
lmao
lol
oh please
I kinda feel bad now
He just realised that girls only go for guys that know Haskell
So he felt insecure
And left
Alpha Haskellers
haskell chads
I got lost, can you explain?
not true but still lol
it is true
I'm DMing this guy to give him actual advice because I feel bad for him lol
Weird
until i learned haskell i had never even seen a girl before
nowadays i compose pure functions in the sheets 😏
Is your project on github?
Lemme push and link the relevant classes
Sure
i was just asking people a question, but if nbt tags are saved, you could assign some nbt to the "custom hopper" and check that
otherwise, you will need to save the locations of the custom hoppers so you can see where they are
Should give you all the context
The custom hopper is in a player's inventory, So I can't save its location
i mean save location when its placed, but if its in the inventory then just assign some nbt
hoppers are tile entities so yeah they can hold custom nbt
alr then yea just use the nbt
How do I use nbt?
what version are you using
1.8.8
😬
Yoinks scoob
imagine if Hopper extends PersistentDataHolder 
Imagine imagining
aphantasia, yes
you could also check out https://wiki.bristermitten.me/how-to-use-nbt-1.8.8
🙃
ikr
its really good too
i put a LOT of effort into my guides
This gives me a download link
lol what
All I need is just a quick explanation of what are nbt's
but on ancient versions there isn't really a nice way to access NBT, it isn't exposed to bukkit
Yes
Are you sure you had to use inverse lerp there?
That would surely always result in 0
You are inverseLerping between a minimum and a maximum value
Result with be always 0
alrighty
man just downloaded elm-lang-beta-rc-alpha-0.1-SNAPSHOT

