#dev-general
1 messages · Page 11 of 1
Hope you understand where I am coming from as I need proof from the party that was scammed I can't have any users report on behalf of other users. It would get abused and wouldn't make sense..
Thats up to them 🙂
Sure thing, eventually there will be real proof of him scamming someone
the budget give it all lol, but proof is needed
which is understandable
if @quiet sierra opens a report ill handle it and make sure it wont happen again.
Thank you for understanding our side
100%
I'll open it today
I just want to make sure nobody goes into this guy's scam
only desperate people would accept the whole send the jar then i pay deal he seems to be offering
#off-topic please
@eager fern Created the report, would be cool to create a ticket as the logs go over multiple days
Won't lie, I personally think the account creation date says it all.
Joined Discord this year and is already looking to spend hundreds of dollars.
Idk what to say about that
Well if they had an account before, why do they have a new one? was it terminated by Discord? did they disabled it, if so why? etc
I have a friend who's accounts were closed 3 times because he liked to be toxic online
in fact, he's a nice person irl
Fair enough.
What language even is that
it looked like kotlin but kotlin needs val keyword to declare a variable
could already be a variable
so D is a companion object
p. s. i haven't touched kotlin for months my bad
you mean a field?
Kotlin doesn't have ternary operator
Hi, I tried to create an account in LinkedIn. but I got the issue your nocaptcha user response code is missing or invalid
I changed my browser like edge, firefox, chrome but I got the same issue
How can I fix it?
Not a discord support server
Hello guys
I get an error whilst trying to create a Gift Card via the Tebex API. Here is the code:
static public void createGiftCard() {
try {
HttpRequest request = HttpRequest
.newBuilder()
.uri(new URI("https://plugin.tebex.io/gift-cards"))
.header("X-Tebex-Secret", "{seceret-key}")
.POST(buildFormDataFromMap(Map.of(
"expires_at", new SimpleDateFormat("yyyy/MM/dd hh:mm:ss").format(date),
"amount", 5.0,
"note", "Test Gift Card")))
.build();
HttpResponse<String> response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());
Debug.info(response.body());
} catch (URISyntaxException | IOException | InterruptedException e) {
e.printStackTrace();
}
}
private static HttpRequest.BodyPublisher buildFormDataFromMap(Map<Object, Object> data) {
StringBuilder builder = new StringBuilder();
for (Map.Entry<Object, Object> entry : data.entrySet()) {
if (builder.length() > 0) {
builder.append("&");
}
builder.append(URLEncoder.encode(entry.getKey().toString(), StandardCharsets.UTF_8));
builder.append("=");
builder.append(URLEncoder.encode(entry.getValue().toString(), StandardCharsets.UTF_8));
}
Debug.info(builder.toString());
return HttpRequest.BodyPublishers.ofString(builder.toString());
}```
Here is the debug:
[10:32:12 INFO]: [DEBUG] Body: "amount=5.0&expires_at=2023%2F03%2F20+10%3A32%3A12¬e=Test+Gift+Card"
[10:32:13 INFO]: [DEBUG] {"error_code":400,"error_message":"Please specify a valid amount."}```
Any idea?
it expends a json body
not url parameters
{
"amount": 5.0,
"expires_at": "...",
"note": "Test Gift Card"
}```
Uhm is there are nicer way to register several listeners without having to spam the getServer().lala.registerEvents for each class?
(probably not but asking doesn't take hurt)
get the manager once, and then register it?
but I would still have to register every single class
and have like a bunch of lines for it
List.of(listeners).forEach(register)
public void registerListeners(Listener ... listeners) {
listeners.forEach(listener -> Bukkit.getPluginManager().registerListener(listener));
}
That will only work if your listeners don't need any arguments
good point.
this looks quite nice, thanks.
NP basically what Gaby posted lol just with a method.

breh
"Github" the new dating site. Come git all the girls!
if that was the case
A LOT of people would be dating
since 98% of devs are single 🥲
code before
🤣
"Pull" in that lucky "source" this holiday season 😉
😂
It worked, thanks
Np
uh oh jitpack down? ☹️
well parts of it
also, jeez, there's so much spam on the jitpack github issues
didn't know people hated jitpack that much
it's literally garbage
If you search that on google, you will see the official documentation that give you a command
That makes me think IJ isn't using the wrapper you have
yeah well I'm fiddling around with remote dev
turns out moving gradle project from windows to debian doesnt just work out of the box 🤠
What was this language after all
Pretty sure it was meant to be kotlin but someone didn't realize ternary operators aren't in the lang
also val keyword
Yeah you could probably get away with that if it was a var defined somewhere else
as Zodd said it's probably you using some internal gradle wrapper or smth instead of the one in the project
iirc that's what it's set as by default
for whatever reason
wrapper good
"advancements.sad_label": ":(" 🤣
Is there (self hosting on a vps) software for uploading file(s)? (specifically jar files)
Using this to create an auto updater and a backup "pastebin" to avoid ratelimits
but I could just find things with an entire UI etc
but all I want is a simple file hosting software
sort of like how maven repos are - you can still access it in the browser but it doesn't have a trillion features
but it's not supposed to be for maven though
I also need to be able to delete files (so that I only have the latest jar uploaded)
don't maven repos require all the maven metadata stuff
so I'm not sure if a txt file and a regular jar would work
the text file is because the website that I'm using (similar to hastebin but with a better/non-existent ratelimit and editable pastes) sometimes errors out when using curl etc (now that I think about it maybe it's because I need a user agent?)
and the jar file is to have the latest version, and then I can download that file and check the hash to see if it's updated
@half harness you don’t anything but a webserver
like nginx?
I already have nginx setup
would it work for example if I wanted to upload an artifact (and delete the old) using a batch file? although I was originally thinking of github actions but now that I think of it, running a script is probably better
alr I will look into it
I didn't think nginx could do it by itself
yes you could easily make a script to upload a file with sftp
you’re overthinking it
oh I've already got a script to do that for a different project
ig there's really no difference between doing that vs with an API
yeah if you're going super simple, you can literally just have nginx serve a directory with those files in it and change those files whenever you update
oh is it really this simple
server {
listen 8001; # a customed port
# download
autoindex on; # enable directory listing output
autoindex_exact_size off; # output file sizes rounded to kilobytes, megabytes, and gigabytes
autoindex_localtime on; # output local times in the directory
location / {
root upload;
}
}
```according to some website
what directory would these files go?
I just put everything in /home/ubuntu but I wonder if there's a better directory
/var/www/yoursite
even though I'm not hosting html pages is that good?
ex it'd be /var/www/mysite/cool.jar
yes
oh ic
I'll try tomorrow
I accidentally used up 5 errors
on letsencrypt
forgot to set up the domain on cloudflare (dns) :(((
nvm ill just try with http i don't feel like waiting for tomorrow
do you know where the default root is? everywhere besides 1 example (but it doesn't say what specific directory) has /specific/directory
when doing ```nginx
root exampledir;
(without the /)
wat
nginx has a default vhost, which has root /var/www I think
might be /var/www/html actually
oh I'll do absolute directory then
ye
smarter that way yeah
hmm
server {
listen 80;
server_name files.dkim19375.me;
autoindex on;
autoindex_exact_size on;
autoindex_localtime on;
location /public {
root /var/www/files.dkim19375.me/public;
}
}
```Do you guys see an error with this? It's showing 404 :(( and I have a `/var/www/files.dkim19375.me/public/test.txt`
oh
wait how do I make it a public one? since I want to have a public one and another one where I might have it hidden behind some kind of auth in the future
or do I have to use a different subdomain?
or a sub-sub-domain
probs don’t need a subdomain
nginx has basic auth stuff
not sure if it can be put on a specific location or is for the entire server block
do you even need it to be accessible over http if it’s going to have auth?
just sftp and download
true
I guess I was just thinking http since it seems the easiest
like URL("file.url").readBytes()
but idk how to do it with sftp since I haven't done it before in code 🥴
I’m talking about the auth’d stuff
if it’s public sure go http
but don’t see much point when it’s behind auth
or I guess here with auth I use okhttp & add auth params
unless you’re also downloading auth’d stuff in code?
Uhhhhhh
I just remember doing auth stuff with okhttp
can't remember exactly what it is
probably some api token
I’ve never used okhttp
http library I think I just added url parameter
do you know what "Bearer Tokens" are or something? That sounds pretty familiar
idk if it's related though
the http api that was added in jdk11 is more than sufficient for my needs
never needed to look into okhttp
oh I usually use java 8
fucking dinosaur
dinosaur
I meant java 8 for developing without kotlin
dinosaur¿

it's just that a bunch of people use java 8 with 1.8 (I'm guessing that spigot or smth doesn't support newer versions?? idk) and so I'm used to it
I do use java 16 and 17 though
because 1.18 requires it
and 1.17 iirc
okay to be fair
I haven't developed on 1.8 in like forever
probably because I don't really play minecraft anymore
:(
I develop for it but I don't play it
weird
TY IT WORKED
TY PIGGY
AND STAR 🤩
🐷

🐽

anyone know a cheap proxy seller? I need romanian ones to be more specific
Uuuhh IDK about Romanian ones, but I use a VPS hosting provider called Winstri and I just threw NGinx on that.
(someone will probably kill me by saying this but...) Anyone knows if there's an more up-to-date alternative to this: https://github.com/mabidux/Java-SQLAPI or if it's still good enough?
Why don't you do your own? 1. A bit lazy. 2. I actually like the structure of this api lol. 3. I can't afford to lose much time doing it preferably.
HikariCP
https://github.com/mabidux/Java-SQLAPI/blob/main/src/br/com/abidux/sqlapi/models/Table.java#L20 this doesnt look good lol
Does this method of setting player slots still apply to 1.18.2?
Method serverGetHandle = plugin.getServer().getClass().getDeclaredMethod("getHandle");
Object playerList = serverGetHandle.invoke(plugin.getServer());
Field maxPlayersField = playerList.getClass().getSuperclass().getDeclaredField("maxPlayers");
maxPlayersField.setAccessible(true);
maxPlayersField.set(playerList, slots);
Server#setMaxPlayers(int) ?
ORM = ?
But have you seen https://github.com/mabidux/Java-SQLAPI/blob/main/src/br/com/abidux/sqlapi/models/Database.java?
Very nice use of interfaces and abstract classes
lul

I would probably do worse knowing myself lol
Ah, right, when did it get so simple lol
d;spigot Server#setMaxPlayers
int getMaxPlayers()```
Get the maximum amount of players which can login to this server.
the amount of players this server allows
d;paper#setmaxplayers
boolean isEmpty()```
Check if a vehicle has passengers.
True if the vehicle has no passengers.
void setMaxPlayers(int maxPlayers)```
Set the maximum amount of players which can login to this server.
maxPlayers - the amount of players this server allows
bunch of people did
I'd recommend looking in their message history as 2 months ago they were requesting for someone to make plugins for them 🥲
if you want you can make a report with /report to stay updated
I would also recommend going on their test server first, although that won't guarantee it not being a scam, it'll help
oh this same kid scammed oothers?
yep - search in message history
🥴
search "cufp"
now I'm wondering how many people he scammed
since it's at least 3 now
or actually u don't have to search its right in #minecraft
Hey, i wanna make a plugin for a prison server That adds Pouches, which are unlocked after the player has broken a certain amount of blocks while they have the pouch in their inventory. Does anyone have an idea how to go onto that, with the least amount of work for the server? (i can imagine looping through every item in the inventory on the BlockBreakEvent could be alot for the server to manage)
id say try it and find out
tbh looping over 36 slots a few times every second isnt alot really
If you're really worried about it though, you can cache the slot the pouch is in, then just double check on the block break to make sure it is still there
but it would be per player, and with them breaking blocks instantly is gonna make it trigger around 15-20 times per second per player
If it isn't, then you loop and cache it again
that sounds good, but it would be very hard to catch every way a player could get a new pouch in their inventory, to cache its slot index.
You would have to default to looping if it isn't found
that optimizations for you, pain.
Or you can cache the inventory and check if the old inventory is the same as the new one
If it is, then don't check for a new pouch
Although that would still do looping lol
That didn't make sense
I honestly would not be too worried about it
i just never cared much about optimizations but with my current plugin i wanna make sure its not gonna make the server slow as hell, since it contains about 80% of all my servers features xD
but alr, thanks guys. Imma try it out with normal looping first and check if it works.
If the pouches are the things causing lag, you have bigger things to worry about
i think ive iterated 510k blocks before using nested forloops and havent had lag so id assume looping over 36 itemstacks, 20 times a second wouldnt cause too many issues
alr, Thanks 🙂
that like 720/sec, you got 100 players you got 72000 iterations
caching could speed that up
well, when you find a good method for that
trial and erro
i could make an gui to store the pouches and only check for those, but i dont really want to do that. i want the players to have them in their inventory
just do the way you want to
if it causes lag on production, go back to the drawing board
Is there any plugin tools wont break and armor?
this isnt the chat to ask about plugins other then if your coding them
I'm curious
does hacktoberfest need you to PR to 4 different repos or can it be only one
can be the same one
but like ultimately it's up to their discretion whether they'll consider those or not lol
so for example if the things you contribute are big enough it could count right?
they don't have to be large, they just have to be meaningful
which is kinda up to their discretion, for example a whitespace fix in the readme won't do it
so I have another question related to git
I have several files
which I'm working on one by one
I want to push these files to the main repo
but not in a single go
I want to for example only push one
from all of the ones that haven't been pushed
as far as my git knowledge goes, I would only be able to push all the files at once
how can I avoid so?
No, you can select what files to add
I forget the exact term
Track I think?
yeah thats what I'm asking
Or actually
I meant that I dont know how I could do so
If you're using intellij git you can still keep all files added
If not then git rm -rf --cached .
Writing on phone btw
So I can't really use code bloxks
Aww why vscode
Or remove whatever files
Either remove the files that u want to remove or remove all and manually add
Just make sure to track all files with git add .
alright

me when someone brings up Java generics 🤓
Also @potent nest
🤓

Yes.
good
just accidentally learned you can change any github url to .dev instead of .com and it will open the current file in a visual studio code browser session
alternatively accidentally pressing . in an open github file will do the same thing
yeah, pretty nice
what would be an average cost of a professional website for a company?
like 5-6 pages, ex. home, about, news, products, prices, contacts
like what's a "normal" amount to charge for it? (i know it's somewhat relative and depends on various things, but just looking for opinions)
is this a static website? Or they need an account system to post news, products (buy them?)
like a from scratch design, not just plop bootstrap and ready to go
well, static/non-static
static just means no real backend
OOP is so difficult to learn man
And I oop
work with functional languages instead of oo languages, ez

:true:
:truen't:
Still having issues with Minimessage setup, I don't want to build on just paper
pros of trying to update to minimessage is I fixed my github
Why would you have to build on just paper 🤔
native adventure support
can't seem to get it to shade
for some reason it embeds the jars at the root of my plugin jar
Sure, but that's a can not a have
for some reason if you leave Elements in build it does it as a jar for Kyori stuff
Uhm can someone quickly tell me what the 0 in Header is?
I know that the 9 is the total amount of Clusters but what's the 0 💀
(For reference, it's an MTF-Record AKA used in NTFS (New Technology File System, commonly used in Windows)
Ok so I made this for another project I am doing, anyone want to tear it apart in a code review?
https://github.com/Fisher2911/TestORM
Example use: https://github.com/Fisher2911/TestORM/blob/master/src/main/java/Main.java
ok I found an issue
🥲
totally
skript superior
kotlin is better though
add .idea to gitignore and ```
git rm -rf --cached .
git add .
What does that do?
first command removes all files from git, second files adds all files from git
you have to do that in order to remove the .idea from git
Oh
or ig you can remove the folder but i just remember those 2 commands
oh lol
Is there anything bad in the .idea folder?
no, it's just it's IntelliJ related stuff and not really related to the code
sometimes it's included
Okay thanks, as long as I didn't upload any passwords I'm good lol
I think
🥲
I think IntelliJ's (or plugin's) gitignore generator is better
it excludes specific directories and files in .idea
@sweet cipher update gradle to 7.5.1
👍
Lol I'm just going to copy and paste this into my other project, this is more just to see if everything works well
But do you know how to set the default gradle version?
Nope, wait for jetbrains to update it
you can change the project ver in https://github.com/Fisher2911/TestORM/blob/master/gradle/wrapper/gradle-wrapper.properties though
assuming you set intellij to look in that file
Yeah I always have to change it each project
💪
uhm guys what's more user friendly:
1 - https://url.com/class/2/gin
2 - https://url.com/class/gin/2
3 - https://url.com/class/2gin
(aspect/design wise if that makes sense)
Depends what 2 and gin are
2 is the year and gin is the section
school years in luxembourg are weird
primary school is from 1 to 6
and then high school from 7 to 1
probably 1 then
I mean, not weird for me
wait is it 1 or 12
but since most systems are the opposite
so it goes back in high school?
1 noob
so we have till the 13th year
yeah i retract my statement
xD
1, 2, 3, 4, 5,6, 7, 6, 5, 4, 3, 2, 1?
i just assumed the "1" was missing a second digit
yes
holy shit. why?
yes but it makes sense because the pronunciation is different in both occasions
no idea
oh no. that does not make sense
why is the pronunciation different?
how does that make more sense?
like gaby said, def 2/gin
second 6
lmao
6.2
it still doesn't make sense but WE can differentiate it because of the pronunciation
well ok
translated, from 1 to 6th in primary we say for ex. 6th year
definitely 2/gin anyways
yes
yes
also addressing the question
this isn't so much todo with being user friendly, it's more of a logical decision
generally the idea is to make the site user friendly, so people don't have to look at the url
good point 🤔
project be like
tf is svelte
have you never heard of svelte? even I, a person that hates making web stuff have heard of it.
dude when I do web dev, I use bootstrap, html, css, some js, some php if I want to reduce boilerplate
that's it
it just seems so unncessary
Svelte = Frontend framework
SvelteKit = Backend framework built on top of Svelte.
it's like, a better Next.js or whatever
simply PRO
go to sleep grandpa
agree
:(
tab pickup on firefox is nice
https://www.reddit.com/r/ProgrammerHumor/comments/yctuj8/does_this_belong_here/?utm_source=share&utm_medium=android_app&utm_name=androidcss&utm_term=1&utm_content=share_button google sheet best db
hahaha
:)))
INR - indian rupee?
INR
yea
that's INR apparently
ye ye
guessing it's a typo?
yes smh
they should go in descending order of size
where's the fun in using svelte tho
swear to god I thought we had an crypto bot in the server for a sec
so if a year contains sections, then year should be first
wait wut?
half the "fun" of web dev is wanting to kill yourself because of css
these fancy frameworks just skip over that
all. https://svelte.dev
lame
there's still CSS in Svelte?!?!
or because html, or bcs js
Svelte just does the JS lol
or because web in general
false
Svelte isn't a css framework lol
years have multiple sections I'm assuming? So it should go year -> section -> class -> person, etc. right
big to small
yup
Tailwind is, but tailwind pretty much just speeds up css, you still kill ys with it lol
too many frameworks
uh that wouldn't be exactly what's needed, check #showcase, that's my use case
why can't people just make one and be good
eh I have 4 and I am good
bad
bootstrap is all u need
I mean, not necessarily one for js + css + whatever else, but one that's good for each instead of 30 for js, 30 for css
Svelte + SvelteKit + Vite is like fast af
I can't read whatever language that is, but I'm saying that like 1gin and 2gin and 3gig, etc. are all per year yeah?
so like year 1 will have those, year 2 could have 5 gins and 2 gigs, etc.
wdym "per year"
.
start with the year, it makes more sense
the number is the year and the "gin" is the section aka it exists 1GIN, 2GIN, 1GIG and 2GIG
regardless same classes (or whatever gins is) are found in multiple years
the purpose of the website is to replace the website I linked in showcase, aka some type of page to download everything needed for class.
oh wait what, the number is the year?
yes, like, school year (aka in american terms, grade)
it's not like 2022-2023
so https://url.com/class/2gin, etc?
ye
ugh but maybe /gin/2 could be good
i dunno, if there's only like 5 it really doesn't matter
there is only 2
well, 3 of gig and 2 of gin
and that's all
Deluxemenus support gradient?
no
it does if you try real hard
Any takers?
I would've If I had time or any SQL knowledge
^^ too much SQL for my liking 😂
What is that . placement on those chained calls 😭
yes
Lol
I'm keeping it that way just for you
I thought you were talking about on the SQL queries
test()
.hi()
.other()
```is better
does a vue alternative to react native exists? i saw vue native but it is deprecated
Use Svelte and SvelteKit ez
._.
this pains me
what about
test()
.
hi()
.
other()
Also you're supposed to have a different header and license file
Pretty sure
At least that's what I do
Please don't violate
[fullname] would be pretty pissed.
They worked all of [year] to make that
Exactly
Nobody has said anything about the actual code lol
This code review is not going well
Oh I didn't even see that
header depends on the license, with MIT you don't need a header at all
I don't use SQL
So I can't really help much with that
Unfortunately
Well I just want feedback on the actual code, not necessarily the SQL
I swear I turned off the ping
server_name map1.-------.org;
listen 80;
listen [::]:80;
access_log /var/log/nginx/reverse-access.log;
error_log /var/log/nginx/reverse-error.log;
location / {
proxy_pass http://65.---.--.114:8804;
}
}
anyone knows why my nginx reverse proxy isnt working ? Its supposed to redirect me to dynmap but its instead redirecting me to pterodactyl
try 127.0.0.1 instead
and make sure the port for dynmap is 8804
i tried that, still moves me to /auth/login at pterodactyl
yea its 8804
The default configuration provided by pterodactyl acts that way… point a subdomain and create a new nginx config…thats what I usually do everytime atleast
Lets goo
I finally figured out how to easily implement slash commands to my discord bot without making it hell to deploy each time
you're not setting the commands each time you deploy
right?
Actually I technically am, but I'm doing it the correct way
where you set them all at once
and only as needed
uhhh
like you have a special startup flag?
since it's only supposed to be updated when you change the commands
assuming you're using global commands
It doesn't really matter if you update it every deploy or not however.
My dev bot just always pushes them
but the main one watches git for command changes
If the Placeholder returns as null, is it normal that it will return as a whitespace?
Or is there any pre-defined placeholder that does this?
Planning to create a javascript but thinking it would still be the same.
If the return is null PAPI will replace it with an empty string
I have this in my chat plugin: {javascript_blitztag} {guilds_formatted} {luckperms_prefix} {luckperms_suffix} and if it returns as null, it returns as a whitespace. Like this: Beginner . How can I avoid long whitespace to show it like Beginner instead?
I tried doing {javascript_blitztag}{guilds_formatted}{luckperms_prefix}{luckperms_suffix} but still shows Beginner .
Those white spaces aren't from the placeholders
They are from between them
P1 P2 if both p1 and p2 are null there's still a space inbetween that will show
I have this:
I tried doing
{javascript_blitztag}{guilds_formatted}{luckperms_prefix}{luckperms_suffix}but still showsBeginner
Are you sure you reloaded after making the change?
Yes I did. But let me try to reupdate the plugin. If so, I think the Chat Plugin needs to be fixed. Thank you by the way for clarifying that.
I'm dumb. I have this javascript created, which only adds a space if it contains something:
function CodeHere() {
var x = "{" + args[0] + "}";
var value;
if (x){
value = x + " ";
} else
value = "doesnt contain something";
}
return value;
}
May I ask how to load the placeholder value first before entering the function? It seems here that it always returns as true.
Hello. I'm having a problem with the creative. Some blocks disappear after breaking them, here is a video for you to understand better. I don't know how to fix it
https://files.fm/f/z8h2yv862
constructor AutorankCommand in class me.armar.plugins.autorank.commands.manager.AutorankCommand cannot be applied to given types;
Cool
I screwed up my constructors last night, seems I have a super constructor that will not go away
what I'm attempting to do is add a few lines to a main command class
// plugin.adventure().player((Player) sender).sendMessage(no_permission);```
alright
show actual code @sturdy zinc
and what's the problem?
this lines I have // the second one plugin is red
I try to add a constructor and it breaks all my commands
Can anyone help me with the litebans ban list?
What's the best vps to buy for cloudnet or having multiple servers
need one rn just for developing but when done I plan on using OVH
hoping for it to be cheap too but couldnt find much online
?hosting
Free:
- Openshift: https://www.openshift.com/
2gb of memory, automatically expires after 60 days, but you can resubscribe as often as you'd like. - Heroku: https://heroku.com/
No CLI or SSH, no file access, might make your app sleep if you reach monthly uptime limit. - AWS (Free tier) https://aws.amazon.com/free/
Free tier containers from Amazon, expires in 12 months - Google Cloud Platform (Free tier) https://cloud.google.com/
Free tier google cloud servers
Paid:
- OVH: https://www.ovh.com/us/vps/
Full VPS starting at $3.49USD/month, choice of OS, high reliability. - Digital Ocean: https://m.do.co/
Starting at $5/month (USD), you can have your own server with 20GB SSD Disk, and 512MB Memory. - Linode: https://www.linode.com/
Starting at $5/month (USD), you can have a server with 20GB SSD Disk, and 1GB memory - Vultr: https://www.vultr.com/
Starting at $2.5/month (USD), you can have a server with 20GB SSD Disk, and 512MB Memory - Amazon(AWS) Lightsail: https://amazonlightsail.com/
Starting at $5/month (USD) (first month free), you can have your own server with 20GB SSD Disk, and 512MB Memory. - Time4VPS: https://www.time4vps.eu/
Starting at €0.66/month, get 20GB Storage, 512MB Memory, 0.5TB Bandwidth, and Daily/Weekly backups.
Various Linux OS distributions, IP addons and instant cPanel/WHM licenses. - VIRMACH: http://virmach.com/
Full Windows and Linux Desktop VPS starting at $7USD/month and $10USD/month respectively. - Sloppy: https://sloppy.io/
Starting at 5$/month (USD) You can have 500MB Memory, 1TB Transfer per month and 16GB of storage. Extra
storage and ram can be bought. - Bithost: https://bithost.io/
Just a forwarder to DO, but here you can pay with crypto currencies like bitcoin, dogecoin, etc - Galaxygate https://www.galaxygate.net/
Starting at 3$/month (USD), get 15GB of storage, 1GB of ram, and unmetered bandwidth.
@quasi totem
?best-vps-deal
contabo also
but that's EU iirc
Oracle VPS is also another option, if you don't care about using arm64 then you can get 24gb memory and 4 vcpu for free if configured right
What is arm64?
He doesn't need it @half harness
cpu architecture
arm64 works fine for minecraft though - it's just that some programs only distribute amd64 releases since that's the "main" one I think
I may be very wrong here though
At least judging from the reply
Did u want Windows, Linux? It all depends my dude.
(Me too but u never know)
So i have a private-mine core and want to make it span across multiple servers for better performance automatically. So lets say I have 100 players online, it'll have 4 servers (25 mines per server). So basically what should I use to make another server for every 25 mines.
linux never windows xd
EU or NA
I use it as normal shit cuz most of the stuff i use isn't supported on Linux, but for servers. Linux ftw
or other
NA
yeah I use windows for normal
but linux for server
pterodactyl too
Yes yes
ptero is awesome
ye ill use ptero
i used it like 4 years ago all the time
ptero >
And it's not that terrible once u know what your doing but oh well-
you got to pay for multicraft 🥴
Yee
so should I use like cloudnet or something If I want to make a new server for every 25-30 mines? Or how do big servers scale out stuff like that. Im use to just one-server type stuff.
No idea what cloudnet is
there's also like Waterfall/bungee etc
would it auto-scale or would I have to configure a x amount of servers.
configure - it's just a simple proxy
Isn't there some new software that you could link multiple servers in real time? So that everything you did on server one would also update on server 2 instantly?
And you could cross play between servers?
those are usually for like SMPs though
ye like im doing something like oplegends with private-mines and I want everything to be linked like it's on one server
Yeahhh
ik there is sqldatabridge
just not sure whether to use velocity or bungee
or something like that
anyone know if there are ever any issues tping someone between worlds when they just joined
Anyone know if there is away to message players once they have reached a certain statistic goal Ex. Mined 50 Blocks = Message sent
What part are you having issues with
Has anyone here gotten one of the new m2 macbooks? I kinda wanna buy a new m2 macbook air for school and software stuff but i want another input
for console to refresh it needs a full page restart, how is it not bad?
refresh how? The feed should be real-time
https://www.spigotmc.org/resources/guilds-30-sale.66176/
Hello. Tell me, is there any server where you can test the performance of the plugin?
Now that I have updated most of my plugin to minimessage, I need to see if there is an easy way to let server owners convert the &6 color codes to <GOLD> also I would like to merge the new line to my lang file into their old one
hey! im trying to make a plugin that teleports you back to the position you were at in a specific world only. so if i am in the spawn world and go to the SMP world, it automatically takes me to where i was last time. saving the data etc. works perfectly fine already but I can't get the player to go to where he was with PlayerTeleportEvent and the setTo method (I am using multiverse core). is there any way the setTo can override the multiverse teleport?
As far as I'm aware, there isn't one.
schedule a task to run in 1 tick to teleport to that location instead of modifying the To location.
I tried teleporting the player directly but i found out the event gets called just before the player actually gets teleported. How would i do it with a task?
I am not that into coding sorry
I know what it does but not how to do it...
Bukkit.getScheduler().runtask
And where would I put the code that should get runned?
Bukkit.getScheduler().runTask(MAIN_CLASS_HERE,()->{
//your code here
});
bukkit tasks are already ran 1 tick later. you don't have to run a timer task
Alright thank you.
and yes. it does need an instance of your main class. not the class itself
good
i have Main.instance this class and in the main class i just set instance = this right?
Well, I'd personally recommend you use dependency injection but making your main a singleton also works i guess. I know it's usually considered a bad practice however
you should either get an instance of your main class by passing your main class through the constructor of the class where the playerteleportevent is, or doing it through creating a static getinstance method in your main class.
the static instances is a bad practise but it works
i wanted to use the multiverse portals api but they dont even have an api reference which makes it really hard for me to use
multiverse doesnt have an api for portals atleasst according to their github page, they do kinda in the multiverse core as i see a reference to api in the src directory
but other then that not much
isn't multiverse portals another plugin entirely?
yes
it is
but theres no api docs for multiverse in general
very helpful multiverse dev
Docs?
Surely you mean code
very helpful
actually both
only api code in core, non in portals.
thats what i saw too :/
thats why i just suggested using a task, sure its probably not the best but its the only idea i got
hmm this isnt working for me...
Bukkit.getScheduler().runTask(Main.getInstance(),()->{
p.getLocation().setWorld(Bukkit.getServer().getWorld(this.data.getConfig().getString("players." + p.getName() + ".position.world")));
p.getLocation().setX(Double.parseDouble(this.data.getConfig().getString("players." + p.getName() + ".position.X")));
p.getLocation().setY(Double.parseDouble(this.data.getConfig().getString("players." + p.getName() + ".position.Y")));
p.getLocation().setZ(Double.parseDouble(this.data.getConfig().getString("players." + p.getName() + ".position.Z")));
});
am i doing something wrong? (i know you could put everything in a new Location(), but since i saved it as different parameters its easier like that)
@honest parrot @brittle leaf https://ci.onarandombox.com/job/Multiverse-Portals/javadoc/
there you go
what?
went to the multiverse core javadocs, saw the link they're at so I went to the parent link where I found a bunch of them including portals
https://ci.onarandombox.com/ some of them have javadocs, some don't.
im confused, why are you getting the player's x,y,z coordinate from a config instead of just getting the coords from the getFrom() location?
they get saved when the player goes into another world
its supposed to be a plugin that brings you back to the position in a specific world when you join back into that world.
wouldnt it be better to load the player's world position data into ram once and query that instead of checking the config every time
also having a single yml for every player is a bad idea
also dont use player names, use their uuid
Player.getUniqueID().
what if the server restarts?
save it on close?
i think its easier to save the data xD
yml has a size limit
not the file itself, the loader that the server uses
its like 3mb normally, paper pushes that up to 64mb
or atleast i think that is
you can hit the cap, then you cant load the data anymore
for anyone
holy shit but making custom ymls for each single player is kinda hard for my skill level xD
just do 1 big yml - unless you've got like tens of thousands of players you won't hit the limit
okay.
Abstract class moment
3mb = 3145728 characters according to google which is quite a lot
im struggeling with the API now tho. it says that theres a method called getDestination() and it gives me the datatype MVDestination, which I dont know how to use haha
isnt teaching better practices early better then just doing whatever?
storing yml for data isn't good practice, also, for newer developers it could become a lot for a small issue
I know it is. but i need that information
have you tried HIGHEST event priority?
after that ill just set the event cancelled and ill tp the player iwth my own commands.
how do you even set priority?
@EventHandler(priority = EventPriority.HIGHEST)
multiverse is using HIGHEST too.
HIGHEST = called last (well, there's MONITOR which is actually the last but isn't supposed to modify event data)
ah really
aw cmon multiverse
wait
what exactly are you trying to do
override a multiverse portal?
Cancel the event 😉
basically
i would do that but i still need to know if the destination world is the correct world
You can listen to it and cancel it still
continue plz :)))
thats what im trying to do. theres a method getDestination() but I have no idea how to use the MVDestination type
basically thats kinda what i am trying to do yes.
i would assume MVDestination.getLocation(Player);
its not :/
do I need the normal multiverse core API too?
so i can actually do something with MVDestination?
well mvdestination is a multiverse core object soo
gotem
holy shit it works
what does?
Not unlike Icarus you flew too close to the sun
okay now it isnt doing anything either :/
nevermind im actually an idiot
forgot to register it in the main
nevermind again thats not the issue
@EventHandler
public void onPortalEvent(MVPortalEvent e) {
Player p = e.getTeleportee();
if (e.getDestination().getLocation(p).getWorld().getName().startsWith("SMP")) {
if (!p.getLocation().getWorld().getName().startsWith("SMP")) {
p.getLocation().setWorld(Bukkit.getServer().getWorld(this.data.getConfig().getString("players." + p.getUniqueId() + ".position.world")));
p.getLocation().setX(Double.parseDouble(this.data.getConfig().getString("players." + p.getUniqueId() + ".position.X")));
p.getLocation().setY(Double.parseDouble(this.data.getConfig().getString("players." + p.getUniqueId() + ".position.Y")));
p.getLocation().setZ(Double.parseDouble(this.data.getConfig().getString("players." + p.getUniqueId() + ".position.Z")));
e.setCancelled(true);
}
}
}
i have no idea why it doesnt work :/
it works now!!!
i used p.teleport() instead
why are you using .startsWith()?
and not just .equals()
because theres SMP, theres SMP_nether and theres SMP_the_end
why not do something like
Set<String> SMP_WORLDS = new HashSet<>(List.of("SMP","SMP_nether","SMP_the_end"));
and then replace your check
if (e.getDestination().getLocation(p).getWorld().getName().startsWith("SMP")) {
with
if (SMP_WORLDS.contains(e.getDestination().getLocation(p).getWorld().getName())) {
means you dont include any worlds that start the same but arent supposed to be included.
new HashSet<>(List.of("SMP","SMP_nether","SMP_the_end"));
Might as well use Set.of() :3
just hope getWorld().getName() never returns null then
@NotNull
String getName()```
Gets the unique name of this world
Name of this world
d; paper world#getname
@NotNull
@NotNull String getName()```
Gets the unique name of this world
Name of this world
@Override
public void onMessageReceived(MessageReceivedEvent event) {
String message = event.getMessage().getContentRaw();
if (message.equalsIgnoreCase("ping")){
event.getChannel().asTextChannel().sendMessage("pong").queue();
}
}```
Why doesn't this work anymore for Discord?
I read that you have to get the bot verified or something to listen this event..
Is that true?
Yessn't
You do need to enable a priviledge on the developer portal
You need to enable the gateway in the API
You do not need to be verified if you're under a certain amount of guilds (like 100 I think? Developer portal should say)
Under the bot button
Ahh i see
Didn't knew this
Just started today with discord JDA java
But no tutorial has ever mentioned this
Might consider joining the JDA guild if you haven't already
Odd question, how can I get the correct drop of a Goat horn? Is there a goat loot table I can use? Trying to allow you to sheer off a goat horn
is IJ freezing on dependency indexing for anybody else?
I literally have to shut it down trough task manager lol
nope
Hi, Nice to meet U. I am a full stack developer with 7+ years experience and hope working with U. Best
Greetings everyone, I am a multi-purpose developer from Saskatchewan, Canada. I have 10+ years with experience with server technology, Minecraft java edition plugins, unreal engine and much more. I am hoping to get to know this community more and make a good impression to everyone.
Cool
Who decided that saskatchewan was a good name
That would have probably been someone in place of King Charles III.
with that grammar i doubt ur even 7
they could just like, not be a native english speaker 
and before anyone makes the point, you can be a developer without knowing english well
average american
But me?
F you barry
#DownWithBarry
exactly RIIH!
i downloaded the newest version of DeluxeMenus and its now working for me on 1.18.2 can someone help?]\
Hi everyone. I'm a web3 full stack developer. Currently looking for a job. Anyone interested DM me 🙂
how about you look for some bitches
why so many introductions today
Hi, Nice to meet U. I am a full stack developer with 7+ years experience and hope working with U. Best
who is interested in a new minecraft hosting dm me if u are
MittenNodes™️ 
Possible to have the purchase link of Mc-Market please
soon tm
Purchase link for what?
DeluxeChat has never been sold on MC-Market, and sadly DeluxeChat has also been discontinued.
Are you simply looking for a chat formatter or are you after those hover feature as well?
okay
chat formatter
Try LucksPermsChat on SpigotMC- it's free and does the job perfectly.
What do you think of VentureChat?
I used it once ages ago but never really like it since I wasn't used to the channels concept it has.
I do however hear it's a good alternative for DeluxeChat.
okay tks
Hello Humans. I am a fullstack web3 backeND developer from Austria with 20- years experience. I am Looking For a job and if you want to hire me Please dm Me 🙉
Thank you for you're time.
Thank you
that is getting kinda stale
No, he said 20-
so less than 20 years
-20 years of experience
no
I don't control you
happy to help!
such a nice Support
Bastion OP
What
overwatch 2
Huh?
412
dkim you're wrong but i appreciate the effort
?
Pretty sure
I generally don't add people.
My list is rather small
I don't even think EMI or Matt are there
lmao
Matt is there as well as red and boobi but not emi lmaoo
good
Excuse me
you're not excused
what?
Wait are we?
im on an old discord version i cant see replied messages
Oh apparently she is
I can
okay
no it is not fun
Bm is larger than the US
Yo btw, Sponge essentials is getting abandoned 😢
not so essential after all...
booty what
no you just suck
Just sad. It's been the goto plugin for years and dual is stepping away from mc
because Sojourn bad
that is not true
if you can hit shots she is the strongest dps by a long shot
however she might not be an optimal pick in the lower ranks
or if you have like 18 minutes of playtime
Bm says your bad
yeah i do
well done
😭
yeah I wasn't hitting my shots
also 1v1 against bastion is impossible
unfortunately
no it's not
you're right
