public server hosting
Hello, so after working on our server for a while, my friends and I are starting to think about bringing our server to the public. So after looking into it I have a lot of questions.
1. How much RAM will I need to support a bunch of player slots with no lag?
2. What would I host this server off of? I know a computer but would I need multiple? And if so, how?
3. What OS is best for a big server? I’ve heard Windows isn’t good for hosting big servers.
4. What server is best to host off of? Fabric, Spigot, Bukkit? Or maybe another is best. I’m currently using Fabric.
5. Can I copy a Fabric world into another server? Like is it possible to copy my Fabric world into a Spigot server?
6. How strong of internet would I need for my server?
7. How does Hypixel get their server online?
1516 Replies
Thanks for asking your question!
Make sure to provide as much helpful information as possible such as logs/what you tried and what your exact issue is
Make sure to mark solved when issue is solved!!!
/close
!close
!solved
!answered
Requested by joeytubehd#0
Any help greatly appreciated 🙂
1. We need more information. What are you planning to do? (SMP? etc). How many players are you aiming for
2. Same as no 1
3. Linux is generally preferred. Ubuntu is a common one (Ubuntu server!!)
4. same as no 1
5. Yes, see https://docs.papermc.io/paper/migration#from-fabricforge
6. same as no 1. You preferably want a decent amount both down and up.
7. They run over several nodes, and their architecture is fairly complicated (likely too much for you unless you’re planning on having 50k concurrent players with kube server scaling)
Migrating to or from Paper | PaperMC Docs
It's simple to migrate your server to or from Paper. This page will help you get started.
Mini game server like hypixel. We have games ranging from stupid simulator games to pirate role play story mode games. For player slots, we wanted to start small then get bigger if needed. Starting out with 500 I suppose
Okay.
That greatly increases the complexity.
1. This can depend. You’re going to need a lot of ram, and it will depend on how many players you’re planning to support between minigames. Possibly may need multiple nodes
2. Multiple dedicated servers likely. The architecture behind this is very complicated and detailed and very little docs on this application (mc minigames). You’d need containerisation, kube orchestration, live proxy server registration (check out rustyconnector), etc
3. Already answered
4. Paper or Pufferfish for sure (pufferfish is a paper fork with better perf)
5. Same as before
6. You’d be looking at a fair bit of bandwidth
7. still applies
Alright. Depending on the mini game there will be different size lobbies. And more lobbies depending on the popularity of each game. Also this is in the future a bit. I just thought it would be good to get the process started and see how much time/money it would take to get it working
you’d be looking at several hundred dollars
minimum
and a lot of time
I’m okay with that. Also you say a lot of RAM. Could you give me an estimate by chance of how much I’d need? I heard you need 1 GB per 24 players
uhh
okay
say you have 500 players concurrently
50 players afk or not in games
so ~450 ingame (estimate)
12 to a game (estimate)
and the 1GB per 24 is bullshit btw
assuming your players are close together and you disable tons of things like redstone etc, maybe 3-4GB usage per instance
that’s 150gb of ram
not including the hubs that players would be in before
VERY ROUGH ESTIMATE!
(450 / 12) * 4GB = 150 ish gb
Alright. That’s not too bad. I definitely need to look into having multiple dedicated servers more
You’ll need to do a lot of testing.
Develop your minigames, calculate how much ram they use. Base your scaling and hardware on that, and vice versa
same goes for cpu
cpu is also going to be a bit of a bottleneck
seeing as Minecraft is singlethreaded, you’ll have to have a thread (preferably multiple as things are offloaded onto other threads) for each mini server
Oh and going back to no 6, you’d realistically be looking at not self hosting and using a dedi provider or colocating yourself
unless you have the bandwidth for 500 players plus can pay for 24/7 electricity
and have a static IP
Eh yeah I guess you’re right about that
plus most residential ISPs won’t like you doing that much bandwidth
Thinking into the future, how many player slots could you realistically support with a dedicated host?
I can’t answer that
because
it depends on what hardware
and what you’re doing (I know you’ve told us but still)
with a dedicated host you get free unlimited use of all the hardware on the machine
so you can get more perf compared to a VPS where you have a smaller portion and are susceptible to noisy neighbours
oh and on another note you’ll have to think about ddos protection
anticheat
etc
That slipped my mind.
Alright well I figured it’d be better to do self-hosting but now it looks like it’s not 😂
I’m gonna look more into this and see realistically what I’d need
:ThumbsUp:
CPU will be interesting imo
You generally have two choices:
1. get a dedi with a ton of threads but live with not great singlethread perf (unless you go for something like a 7995WX lmao)
2. Get multiple dedis with CPUs like the 9950X which have very good singlethread but not many threads
2. Get multiple dedis
I mean iirc even Hypixel doesn’t self host haha
They operate out of a single datacenter
Oh really?
Wow
from what I’ve heard yes
but they have tons of nodes (we don’t know for sure but it can be assumed)
again, this is less important for minigames as generally you’re in a more concentrated area, so less chunks loaded, and generally the chunks players are in are already generated so there’s no cpu usage for that, and you’d disable stuff like redstone
still applies though
What I have is 2 lobbies, then I have 2 mini game areas both about 100 blocks away in different directions from one of the lobbies
Think I’m gonna move them to one area though now that I’m thinking about going public
wait what
2 minigame… areas?
You’re planning to have the minigames in the same server as the lobbies?
Like where the mini game hubs and the maps are
okay, there’s been a misunderstanding here
I think so 😂
by mentioning minigames and Hypixel, I’ve been under the impression that you want individual servers for each minigame
similar to how Hypixel does it
Thats what I would like to do but I’m not too experienced with that. As of right now they’re both on the same server, so I guess…what would I do copy the world and remove everything but one minigame in each one?
Or use worldedit to make schematics?
that’s just generally impractical
tbh
and it means everybody can see everybody else’s messages etc
and 500 players on a single server (or spread out over two) is no easy task
How do I even link the servers together?
velocity
or rustyconnector or any other proxy server
if your doing a scaled system like hypixel(and has been mentioned) you'll need a proxy like rustyconnector that allows registering servers while the proxy is running
Rustyconnector
is your best bet
GitHub
GitHub - Aelysium-Group/rusty-connector: A player and server connec...
A player and server connection manager for Velocity based Minecraft Networks! - Aelysium-Group/rusty-connector
If you are going to have a set number of servers with no scaling you could probably get away with using something like velocity but it wouldn't be recommended as when you scale you would have to take your server down in order to add additional servers.
Okay what exactly is scaling because I was thinking something different.
scaling is where the amount of servers you have fluctuates on demand
so
you’d usually have, for example, 4 minigame instances just idling waiting for players
as one is filled up and starts, a new one is spun up
and you could, let’s say, as you reach peak playercount times, in read the amount of idle instances
in preparation for the increase in players attempting to join at once
It’s, in short, the ability to expand your infrastructure on demand
to handle incoming ‘load’
in this case the load is players
*without compromising stability etc
Yeah I like that
Alright so I clearly need to learn a lot before I get into this
lemme send some useful guides
Kubernetes
Learn Kubernetes Basics
Kubernetes Basics This tutorial provides a walkthrough of the basics of the Kubernetes cluster orchestration system. Each module contains some background information on major Kubernetes features and concepts, and a tutorial for you to follow along. Using the tutorials, you can learn to: Deploy a containerized application on a cluster. Scale the ...
Thanks. Also one thing I’ve heard is shockbyte is good for doing servers like this. Is that bullshit too? 😂
Simeon Ratliff
Docker
Docker: Accelerated Container Application Development
Docker is a platform designed to help developers build, share, and run container applications. We handle the tedious setup, so you can focus on the code.
oh
please avoid shockbyte
and apex
and bisect
they have awful hardware for awful prices
plus I don’t think any of them are dedi providers
Oh okay
they offer mc servers
So what would you recommend?
where you just get access to a web panel
okay
you want a dedi provider
what region are you looking for?
US? EU?
sus?
AUS*?
US
you have people like reliablesite etc
I would
maybe consider making a #marketplace post with your PLEB
!pleb
What's your PLEB?
Plan/Players
Location
Edition
Budget
just ask about possible dedi providers
etc
You don’t have to choose a host immediately
just to get an idea of who you can go with, the benefits & downsides of each
etc
So marketplace has people who have dedicated providers? Before I thought it was just people who had expensive computers and hosted servers off of them 😂
bruh
I said before. I didn’t really look through it too much until today
But still
The ram doesnt matter too much
From what ive seen its the CPU that really matters and the ram a slight afterthought
Oh okay
You both have said different things
in this case ram is more important than usual
cpu is less important because minigames are arguably less laggy as players are generally closer together
Dedicated servers means you get an entire machine
oh minigames
read the thread.
yeah dedi or vps
alright sorry
wouldn’t do vps
no worries
i would bc its cheaper to start and that we dont know if hes gonna be a big server or no
and he can always migrate
Why not vps?
I would say vps bc what if it doesnt go to big of a server?
I would do VPS and then dockerize his shared servers
1. You need all the perf you can get
2. VPSs generally have less perf due to virtualisation
3. You’re susceptible to noisy neighbours
yeah ur right
but like
what if it doesnt get too big
theres a pretty big difference between a 50 person server and a 500 person server
If you’re aiming for 500 players you need the money
We need clarification from @-Joey if they know they will get this many players or if they’re aiming to
As I said before this is in the future. Today I was more getting an estimate on the resources, time, money, etc I would need
Okay, I see
so yeah, you could maybe do a VPS
but just keep in mind this
But the thing is I don’t think I’d be starting this until I know I’d be getting 500
In that case you’d be definitely looking at a dedi
Which in that case I’d do dedicated?
yeah but like
yeah
thats a different question
Start now or Wait Till Enough Interest
Id start now with a small vps or even a playit.gg solution for temporary testing
Then once you get bigger you can start moving to a larger vps or a dedi
You can either just get an oracle cloud free tier server and mess around, or set up WSL locally and mess with kube, docker etc
get familiar with it
@-Joey do you have an idea of your budget?
i like that idea
When i started i just had a mac and a wifi
yeah
now i have 6gb of ddr5 and 4 threads of an AMD Ryzen 9
its definitely a nice starting place
im looking into an even bigger server - self hosted this time as I want port 19132 without the extra budget
Ynw ima just make a resource with all the info on this in #resources
when ever someone asks a question like this we just tag the post
Maybe making a GitHub repo for it (just a readme kind of thing) or a setup.md page might be better
If you do the first one then you can just link it in resources
alright
ima just make a github repo similar to setup.md but better
this one isnt as fast but it would be a lot more comprehensive
wait
how to make new pages on setup.md
GitHub
GitHub - setupmd/docs: The handbook for Minecraft server administra...
The handbook for Minecraft server administration. Contribute to setupmd/docs development by creating an account on GitHub.
you’ll have to fork it
nvm
It’s monthly payment right?
yes
if you're writing something like hypixel and you already figured out a solution to scaling, simply figure out how much memory each minecraft server instance needs and spec out nodes based on the target amount of instances you want to run
correct
realistically, for development purposes anything can work. As long as you have a way to scale across multiple nodes, you can figure out the hardware after you have the demand
Since my server is on one right now to make it multiple I could just probably use a worldedit schematic to copy the games/maps right?
technically yes however you’d likely have to have a custom plugin to reset the maps etc
Or I could copy the world and just remove the other games that way I don’t have to change coordinates
if you have java developers, you probably can directly copy the chunks
loading a new world will lag everyone on the server. paper mostly fixes it but can pause the server for like 250 to 500ms sometimes
^^^
And if you’re on one server 500 players won’t be very feasible
It’s not impossible
but not easy in any shape or form
No like before anybody is on the server. Like preparing for it
yes but the worlds are still going to have to reset
after each minigame is over
Uhh
Maybe there was a misunderstanding. Or I’m not understanding 😂
your minigames are only going to last a certain amount of time, correct?
when world stuff happens on my server, this ends up happening


Hmm
(I run a minigame server network, although it's not public)
Weirdest autocorrect ever
Oh okay
.
Sorry sorry yes
so
how are you planning on resetting the maps
the 308ms one would've specifically been unloading the old map and loading the next map I think
Like bridge is one. I’d use the fill command for that because it’s flat. But for stuff like bedwars I would set all to air and the map will be kept in a structure
you still need something to orchestrate that
what’s going to determine when to do that
etc
Scoreboard timers
:/
I suppose
And some other stuff
what if
everybody dies
or someone wins before
or everybody leaves
Okay right now I have my server set up with command blocks that repeat functions in my datapacks. Is that bad? I’ve heard some people say it’s fine and some say it’s bad
it’s very easy to make datapacks poorly optimised
I mean, it really depends what you see in spark
^^
and with 500 players that’s very likely to happen
it's very apparent if a datapack is causing lag
yeah
So what am I supposed to do with my datapacks?
uhhhhh
realistically you’d use plugins
or just
Oh right
use spark
and see if your datapacks are causing lag
Alright
this section here on spark will get larger

So plugins do commands? I thought datapacks were what I’m supposed to use for that
specifically stuff that's related to commandfunctionmanager and brigadier
May have phrased that wrong
plugins are generally more optimised as they are code based
where datapacks run commands every tick (every 0.05seconds) (assuming you configure it properly)
I’ve never worked with plugins before. Another thing I should learn before getting into this
By that I mean I’ve never made one
it’s a very different learning code that’s for sure
but you should get familiar with them generally
I think I need to wait a little while before diving down the rabbit hole of public server hosting
yes
it’s not easy
So what would you suggest I learn before doing this? Plugins, proxies…
everything
Server software
optimisation
plugins
proxies
setup.md
Minecraft Admin Wiki
We're setup.md, the Minecraft administration wiki, written by enthusiasts and targeted to the novice.
Alright. I’ll copy the articles you’ve sent to me into a bookmark
Thanks for your help
no problem
Also what do you mean by noisy neighbors?
seeing as a VPS is where multiple people get given access to portions of the same machine
noisy neighbours is where someone will take all the resources for themselves
leaving none for you
even if they only meant to use 2 cores for example
Cloud Computing
What is noisy neighbor (cloud computing performance)? | Definition ...
A noisy neighbor is a tenant in a multi-tenant environment that hogs resources which creates performance issues for others.
Ohh okay.
Yeah so dedicated host would definitely be better
for your playercount yes
Alright. I’ve got some reading to do 😂
You were very helpful
Also I use geysermc on my server for bedrock support. And id like to use something like viaversion so I could have clients from older versions. Are those still efficient on bigger servers?
Yeah, those work fine
Alright. Viaversion has an issue though where it doesn’t work on servers 1.20.2 or higher. Do you know of any other older client mods?
what?
viaversion is a plugin that you put on the server
along with viabackwards
Yeah and on servers 1.20.2 and higher it doesn’t allow 1.19 and below
that’s not true
and anyways why wouldn’t you be using 1.21.1 as your server version
I am just some people like 1.8.9 pvp
that’s
not how it works
?
What do you mean?
You run viaversion and viabackwards (and via rewind to support 1.7 and 1.8 clients) on the server
and that supports basically all client versions
to join your whatever version mc server
Yes
so
what are you on about then xd
What do you mean by this?
you said this
but that’s not true

Oh that’s what we’re talking about now
yes
Sorry I thought we were talking about the PvP now
oh lol
if you’re wanting the old combat you either run 1.8.x server software and enjoy the exploits you’ll have to protect against
or you use a plugin that brings it back
What does hypixel do for that?
I thought they used something like viaversion and it has the effect of that
Hypixel runs a 1.8.9 fork of their own iirc
and they would use something like via* yes
not sure if it’s via specifically or their own impl
likely their own impl
Yeah so I thought joining my server on 1.8.9 would give me 1.8.9 PvP
technically yes
But if you joined a 1.21 server on 1.8.9 you wouldn’t get the 1.8.9 PvP
So what would I have to do to get that?
So your server software has to run 1.8.9 or below to have the old combat mechanics
You said 1.8.x software
yes
Oh okay
But you can still use viaversion to allow later client vers to join if you want
Yeah but problem with that is I’ve built this server on 1.21 so wouldn’t that cause corruption?
Setting it back to a past version
You can’t downgrade, no
so you’d likely have to wipe your world and start again
But if you’re doing something like Hypixel with small separate minigame servers your hub can run whatever ver and your minigame servers 1.8.9 or whatever
Ah. So is that what hypixel does? Their server is running on 1.8.9 software?
Ohhh okay
right now yes I believe
they are moving to recent versions in some game modes
Alright. Only problem with that is I just wouldn’t be able to get the newer blocks
yes
And going back to this yes it is. Let me explain
I can run a mc server in 1.20.2 and let 1.19 and below clients join??
When I run viaversion and the other ones on my 1.21.1 server, I try to join on 1.8.9 and it doesn’t let me
you need viaversion, viabackwards and viarewind
I asked about this in the viaversion discord and they say that there’s a bug where viaversion doesn’t let clients under 1.19 join unless your server is 1.20.1 or below
they’re three separate plugins
Yeah I got all 3
And via fabric
when did you ask about it?
Because I help run a 1.21.1 server and I can join on 1.13/14/15/16/17/18/19/20 and it’s fine
Probably a week ago. Maybe more
No longer than 2 weeks though
are you running the latest dev builds of via*?
Pretty sure
did you download the plugins from spigot / Modrinth
or Jenkins
I’ll re add the mods and try again. Maybe they fixed it since I last tried
plugins*
Modrinth I believe
that’s not the latest dev builds
bear with
https://ci.viaversion.com/job/ViaVersion/959/ viaversion latest dev build
Viabackwards https://ci.viaversion.com/view/ViaBackwards/job/ViaBackwards/497/
Viarewind https://ci.viaversion.com/view/ViaRewind/job/ViaRewind/87/
:/
😂
https://modrinth.com/plugin/viaversion/version/5.0.4-SNAPSHOT+539
those are the same exact file
im seeing 539 and 959
:/
look at the description
hold


Okay I stand corrected
Interesting bug
Alright I think I’m gonna move my server to paper. You said paper or puffferfish. Which one is better?
puffer
Pufferfish Host | Downloads - Pufferfish Fork
Download Pufferfish and Pufferfish+ Minecraft server jars
Is it harder to find mods for pufferfish since it’s less popular?
modrinth and hangards use github build numbers, not jenkin's

interesting
Only mods I’d be getting are geysermc, viaversion (if it really does work now), luckperms, essentialsx, essentialsx chat, vault, and maybe some optimization mods
uh
what do you mean ‘optimisation mods’
xd
To make the server performance better
Is that not good to get?
mods don’t work on paper / forks…
and generally you shouldn’t use clearlag plugins
Ohhh right
!optimise
You can follow these guides to optimize your server
Admincraft Canned Responses
Wait so do plugins work on any plugin based server? Like Bukkit, Spigot, Paper, Pufferfish all take the same plugins?
I’ve always used mod-based servers. Never plugins
all bukkit and spigot plugins will work on paper or pufferfish
paper plugins won't work on spigot/bukkit though
So where would I look for pufferfish plugins?
Is there a designated website for them?
just anything that says paper/spigot/bukkit runs on pufferfish
pufferfish doesn't need it's own plugins
Oh okay
And just to check again, transferring worlds works just fine?
Like I have a fabric server as of right now and if I transfer the world to pufferfish there shouldn’t be any issues?
as long as you don't have any mods with custom blocks/items then yeah it's fine
Oh no I don’t
just make a backup
Alright good to know.
So all I have to do to make a new server on pufferfish is download the pufferfish server installer, and put the world in the world file? I don’t need to change my port forwards or anything right?
Oh wait no I wouldn’t need to change the port forwards that wouldn’t make sense 😂
for pufferfish you just run the .jar file itself, there's no installer
https://pufferfish.host/downloads
Uhh
There’s no 1.21 option
1.21.1 and 1.21 are the same
Oh nevermind pufferfish+
pufferfish+ is paid
Alright so I have downloaded Pufferfish and I’m confused. Why is there a bukkit.yml, a spigot.yml, and a pufferfish.yml?
because they all do different things
pufferfish is a fork of paper, which is a fork of spigot, which is a fork of bukkit
so each of their config files have different settings and optimizations. I recommend eternity's paper guide: https://paper-chan.moe/paper-optimization/
It's highly advised to go through each one of these, and read up on what each config setting does, then tweak it for the needs of your server. Don't go changing things at random without reading about it first, or you will break farms and end up making things worse not better
Paper Chan hideout
Paper chan's Little Guide to Minecraft Server Optimization!
The most complete Minecraft server optimization guide with everything you need to know about running a Paper Minecraft server plus Paper Chan!
Thanks. I do have one question. I used to do /reload when working with datapacks but now with pufferfish it seems like that’s not the way to go anymore. It says it can cause bugs. How can /reload cause bugs?
Why you should never /reload on Spigot, Bukkit, and Paper
The reload command in Bukkit is fundamentally broken and flawed, here's why, and what you should be doing instead.
why you should never /reload AT ALL
Uspigot would help with this a lot but its a paid jar
/reload on bukkit reloads plugins which isn't safe. Most plugins have a reload command that reloads the config

^screenshot above is how you can still reload datapacks
Ohhh okay thank you that makes sense
Scrolled through realized I didn’t answer this. Probably 200 to start off. Maybe more depending on what I need
at that point id just try and get 100 more and get some owned hardware
you can get a cheap server with 8 cores and 64gb of ram for $299 if you get it used/refurbished
Wouldnt handle 500 players and doesnt include any extra cost
my 6gib server (when pretouched down to 2.7gib) can handle 30 players
i think 64gb can handle like 500 players
WHEN OPTIMIZED
Im not talking ram wise
oh the cpu
that moment when servers tick using ram capacity and not cpu performance
I haven't read the whole conversation, but please stay away from Kubernetes if you have no experience setting up cloud environments. It will get very expensive very fast if you don't know what you're doing.
yeah its a zeon with clock speed 2.4ghz
Not to mention how much you would have to split, jvm overhead, normal mc overhead
i doubt that @AeonRemnant would agree with you
run Gate Proxy
no bedrock support but still
Bro is clueless
it takes 10 megs
I would 1000% agree with him. Kubernetes is wonderful if you have extensive experience and knowledge, if not then it's one of the most lethal footguns in all of DevOps.
gate proxy takes 10 megs of space
it was a joke lol
ik
I swear Kube is terrifying. :OMEGALUL:
I have a xeon based server with 64gb of ram for the project. With kubernetes, I was only able to get like 12 minecraft servers running and starting multiple servers at once actually caused the servers to fail the health check because they took too long to boot up
i thought it was your only best friend HMMMM
docker
Can't even call it a footgun tbh. It's more a foot-heavy-artillery.
what do you think kubernetes is???
docker but different
Lol
it's not?
I mean it's a close enough description.
it's a different way to run OCI containers
that's all
Potato but different
In fairness OCI is largely just Docker donated.
virtualize the servers
imagine you took docker compose and docker swarm but made it 100x more complex
...
that's kubernetes
Docker:

Kubernetes:

💀
and then
virtualization
"C:\Users\Owner\Videos\2024-09-19 08-01-57.mp4"
Lmfao
there
virtualization
Pff no. Virt is big danger.
I love 2024-09-19 08-01-57.mp4
hyperv is life
hyperv is love
For some rare things, yes.
For a vast majority of things? No.
yall this thread is so massive it should become its own channel 💀
hyper-v server 2019 is fine
agreed
2024 is complicated asf
It's alright. Nothing particularly special.
there's no hyperv server 2024 or windows server 2024?
2025 is in beta for windows server, but hyperv server is discontinued
I'd give HyperV in 2024 a solid high B tier.
ik
but what about
qemu
(that was a joke btw)
QEMU is a standard for good reason, ngl.
or even better
just use kubernetes on windows server
ez
or even better
Love being able to use one workflow to make ARM and x86 OCI containers.
why not just use aternos and a single bungeecord network and a loadbalancer
yall wait
i have a question
what about this code
Yeah this is not awesome.
GitHub
GitHub - ysdragon/Pterodactyl-VPS-Egg: Pterodactyl VPS Egg
Pterodactyl VPS Egg. Contribute to ysdragon/Pterodactyl-VPS-Egg development by creating an account on GitHub.
is this real
My current incarnation of my Melange fueled nightmare is this dockerfile. It's not cleaned whatsoever, I'll go shrink and clean it later.
GitHub
GitHub - ysdragon/Pterodactyl-VPS-Egg: Pterodactyl VPS Egg
Pterodactyl VPS Egg. Contribute to ysdragon/Pterodactyl-VPS-Egg development by creating an account on GitHub.
This ong
ungodly
Getting issues trying to use QEMU to build Melange.
for reference, it's structed that way to use a docker container as a sysroot for building. Specifically didn't want to use qemu emulation to run gcc/clang
when you use qemu it says "Outdated (qemu) container in use"
can you tell which test ran native on x86 and which one was emulated arm64?


Wow you guys chatted a lot 🤣
I do not have experience setting up cloud environments but I plan to learn.
So I’ve heard a few different an opinions. What’s the difference between rustyconnector and kubernetes?
they’re two different things
RustyConnector runs on your velocity proxy and handles sending players between servers
and can link into Kubernetes, which is a scaling software
Ohh okay that makes sense
@-Joey Well, to expand on this Kubernetes is a COE (Container Orchestration Engine), same class of software as Docker.
Study into Docker and imagine you have to fine grain specify everything to do with an install and there's nothing automatic, then you have about the idea.
Hmm. So Docker is just kubernetes but simpler?
Basically
In the most overview way possible? Yes.
They both act to boot and maintain the lifecycle of software inside containers.
Alright. I’ll look into Docker
what about just
hosting on a potato
So just to check, not sure if this was covered, rustyconnector, docker, and kubernetes all work with geysermc right? Like bedrock players could join and play the same way?
yep, as long as you've got geyser running on the proxy and backend servers
do bear in mind that some ddos protection providers often actually charge more for bedrock support
take TCP Shield, they only support geyser on their $100/month plan (or 250/month)
Mm. Alright
and neoprotect only provides the default bedrock port on their 30eur plan, plus they limit how many bedrock backends you can have (and backends overall)
So how exactly does a dedicated host work? How exactly would I get access to the machine? Would it be as if I’m in my own?
And when I do ask in marketplace should I ask for one that comes with ddos protection?
A dedicated server host means you get an entire machine to yourself. There is nothing on it, just an OS (usually a linux server distro like ubuntu, you specify on order). You have to install the panel yourself, set up firewall, etc yourself.
You don't get a UI, but you use SSH (basically a terminal through a client like Termius) to access the dedi.
Then you can set up something like pterodactyl (web panel) and give trusted people access through that to your mc servers
If you want yeah
Oh okay. That’s not bad. Don’t think I trust anyone enough to give them access to it though 😂
So who exactly provides the dedicated host? Is it just somebody’s computer in their house?
I assume it’s more than that
It is in a datacenter
Oh okay
https://www.reliablesite.net/data-center/ <- example, reliablesite's datacenters
So I’m southeastern us so I’d want New York? That seems like it’s the closest
If you want.
Bearing in mind people would be connecting from not just the US, but europe
so you want somewhere that has some decent connectivity / ping to the EU
So I’d probably want to weigh it and find where most people would be connecting from and try to go in the middle
EU would have good connectivity. Interesting
Any idea where hypixel’s provider is?
hypixel is chicago iirc
Oh interesting
indeed
So does EU have better connection than US? Or does it depend on things.
not entirely sure
depends on the quality of networking for each datacenter
yeah
at this point this isnt even a question
this should be a fucking channel
Haha it should 😂
i've seen more messages than 556 xD
Most I’ve seen is in a commands thread for making animations. It was like 1174 or something 😂
oman
Is there really a way to figure out the quality until you pay for it?
usually you can ask datacenter providers for an endpoint to ping
Oh okay
So people in marketplace are just representatives of data centers?
some of them are, some of them are just mc server providers
but
well, no
some of them have owned hardware in datacenters
and they represent a company that sells them
Ah. This thread is very educational 😂
Ping, mtr, dig and TCP port check from multiple locations
The Best Ping+MTR combination Ever, plus TCP port checker and DNS diagnostics with dig from multiple locations.
Cool. I’ll probably not need that for a while though.
alright
yall heres what he needs to know
For a minigames server there are a few options
1: Seperate servers
2: Seperate worlds
Go with 1 for best customization
that's
already been clarified
You will need 1 server for your proxy (2 gigs)
Anywhere from 1-20 lobbies (id say start with 1 at 4 gigs)
why are you repeating stuff
And anywhere from 5-100 minigame servers
Summary
you are not summarising very well
For this use a dedicated server
plus... they have already read everything
not perfect remember
ok then
so close it
thats DCS to DCS
not end users
true
it gives a useful insight
ping it
ping the ip
what
that's
...
...
Isn’t kube supposed to create more as it’s needed?
yes but you still need capacity for it
That’s something I need to set?
I think for 500 players 100 would be too much. Unless everybody is in the same game. Plus some games have 1v1s, so theoretically we could need 250 or more if everybody is on the same one doing 1v1s
yeah...
well
by capacity I mean your hardware needs to support however many minigame servers
whether that's multiple nodes (from the sounds of it you likely will need multiple)
or just a portion of a machine's resources (which isn't the case)
For 500 you really think we’d need multiple?
I figured I could get away with 1 for just 500 players at the start at least
with 250+ minigame servers, yeah
well
it depends how much ram each server would use
which would dictate how much ram you need per node
If it’s just 1 minigame with its lobbies and maps. It probably wouldn’t be that much per server
and what CPU you use.
Realistically you could choose a cpu with more threads and a worse singlethread (not aawful though)
so you can fit more servers on as you have more threads (ram also matters ofc)
But that also depends if they do 1v1s or other modes
Didn’t you say Minecraft is singlethreaded though?
Wait never mind.
Would I need a separate server for each game mode? (1v1s, 4v4, ffa) most games have different options like that
not particularly
you'd need different kubernetes configs for each type of server that can scale and orchestrate itself individually
but they can be on the same machine
by "server" are you talking about mc server or physical machine?
Whatever kube does
Kube autocorrected to lube 💀
Like you said kube creates a new server as needed. That’s what I’m talking about
they create a new mc server as needed yes
So that’s what I mean
i'm not too familiar with kube so @Snow Kit or @AeonRemnant would know more (sorry for pings) but you'd need different kube clusters or whatever they're called to make different minigame servers (1v1, 4v4, etc)
and they would create and remove servers on their own as needed
Mm
So do you think docker or kube is better?
kube
Why do you think kube is better?
Just curious. Since I don’t know much about either I’m just getting opinions 🙃
kube is better only for minigames
if you're just running one off servers, docker is better
think of kube as docker but with more complexity and functionality
complexity 100%
😭
Yeah and Butter thinks Docker sucks so I’ll try to figure out kube
butter has 5 iq
Well okay 😂
So if I’m correct, rustyconnector is the proxy and kubernetes is what determines the servers that need to be created and removed?
from what I've heard rustyconnector will tell kubernetes to scale servers
Ohh okay
(I personally use agones for my kubernetes minigame scaling)
What’s the difference between the two?
rustyconnector runs on your velocity proxy
and supports server registering / unregistering in runtime on the proxy
and works with kube
Velocity as in the server software?
yes
well kube native dynamic scaling is coming in v0.9
So if I’m using pufferfish that wouldn’t work
Unless those are linked
you are not listening
pufferfish is the backend
velocity is the frontend proxy
so pufferfish would be what your lobbies / minigame servers run
and velocity is what orchestrates all of it
all players connect to the velocity proxy -> they get sent to a configured hub backend -> they choose where to go from there
Ah. That’s right.
I apologize
no worries
not your fault
you are listening
i was just overreacting
No you’re good. I’m new to this stuff so it’s just kind of confusing
I host a 500 person server at my house just fine. I usually get 2-300 players a day. No issues
A minigames server?
Yes
No lag?
Very rarely
What cpu do you use?
a single mc server?
A day or at once
^^
Based on what you guys have been saying that doesn’t seem possible
it's possible for a single server
Possible doesnt mean its a smart idea or cost effective
i mean it would technically be possible for any network, assuming:
- your ISP is fine with the bandwidth, which is often not the case with most residential ISPs
- you can afford the electricity, and happy with the noise
- happy with the increased chance of power cuts and ISP outages
- can afford the hardware yourself
- you are rich
You are rich 😂
Antiddos costs, hardware depreciation aswell
^^^^
and with dedi providers you pay monthly
with self hosting you have to own the hardware yourself
maintain it
Yes
At once
that's completely different to a minigames network
?
what do you mean "?"
just saying "i host a 500 person server at my house just fine" means nothing.
That's one machine (assuming), and your scenario won't be exact to theirs. Your ISP might be happy with the bandwidth you use / push. Joey's ISP might not be. Same for power. Same for noise. Same for budget
In this context, we're talking about a minigames network. That's more bandwidth, etc
I have mine set up with multiple structures for different lobbies and I have them so they go in designated areas and if one fills up it places another one and teleports the players there
You are right with the ISP not being okay with it, but we do have similar situations…so I’m just saying this could work, as long as his provider is fine with it
fair
I feel like that would cause a lot of lag
How so?
wondering about your thought process, not hating
With placing the structures, and having to delete them, and always having to test if one fills up, just in my opinion I think that’d be laggy
ehhhh
yeah it can be
it all depends
As long as you set it up right you should be fine
on a single mc server you can use a cpu with a really good singlethread, plus lobbies don’t have as much lag as actual mc servers as it’s usually just void with no entity spawns
but on a server network it isn’t the case
well
that depends on the cpu as well
there’s a lot of variables
Hmm
So would using Brody’s method be better than doing kube for my situation?
How many mini games do you have?
And again it’d also depend on your cpu, your isp, and some other things skullians mentioned
By the time this server will be up probably 20-25
But not all of them are really that heavy
Like I have some parkour games, some stupid simulators…with just the heavier games, probably 10, maybe a little more
So you could probably go either way. I have 19 total games but most of them are heavier games. So you could probably get away with using my method as long as you make enough lobbies
All depends on what you’re looking for.
Brody would you mind telling me what server you own (in dms), im curious
Me too I’m also curious
Why does pretty much everybody in this thread have server owner role? 😂
Server server role?
Oops
Server owner I meant
Eh yeah that’s fair
On a completely unrelated note, what does :upvote: do? I know it’s an upvote but what does it do?
It’s just generally an indicator to show this is a ‘cool’ thread or something.
Primarily used in #marketplace along with :Downvote: to show approval / disapproval of a host
Oh okay. I figured you’d use it if your thread wasn’t getting seen and if you click it, your server goes toward the top 😅
Well when you send a message in a post in bumps it to the top anyways
Ah
So if I use a data pack on a server and use kube it would work for the other servers that kube makes right? That’s probably something I need to configure I’m guessing.
Same with plugins
Well, you’d setup kube to make a mc server and import a pre-made world with your datapacks in
so yes you’d need to configure it
You’d also want to import configs that improve performance
things like disable mob spawning if applicable, etc
nerf ticking
Oh yeah I already do the disable mob spawning
And to go back to viaversion… when you were talking about the latest dev builds, was that on fabric? Or were those on spigot and the other ones.
If you remember
as plugins yeah
So you’d put the velocity geyser plugin and the latest Via* dev builds on your proxy
-# Via* = all the via plugins
and then put the normal geyser and latest via* dev build plugins on all your backends too
bad
no
just wrong
in every sense
via version goes on one or the other
backend recommended
that’s what 22 hours of being awake does for you
that ^
geyser only goes on proxy
floodgate on backend and proxy
i stand corrected
Well as of right now my server is on fabric. I don’t think I’ll make the change to plugins yet until I’m closer to getting my server public
well that isnt the smartest idea
you want to do it NOW so you have more time to fix bugs etc
waiting brings no benefits
Alright well I do have one question
So I noticed under the world file pufferfish has world, world_nether, and world_end I think, my friend made some stuff in the Nether on fabric. But on fabric there’s only the world file. So will his build in the nether transfer too?
bear with
Migrating to or from Paper | PaperMC Docs
It's simple to migrate your server to or from Paper. This page will help you get started.
You’d want to look at the migrating to part
👍
I’ll look
Uhhhh
Okay that means I did something wrong 🤣
When I set mine up, I downloaded the pufferfish jar. Made a new file for it and put it in there. This is saying I’m just supposed to replace it with my fabric jar and run it.
uh
where are you seeing this
it just gives you a guide for migrating the worlds
ffs
hold

This is what I read
https://docs.papermc.io/paper/migration#to-vanilla see this
Ik it says to vanilla but you can see the folder layouts
Migrating to or from Paper | PaperMC Docs
It's simple to migrate your server to or from Paper. This page will help you get started.
sorry, that page isn’t very clear, that’s my bad
vanilla layout is the same as fabric
Oh I thought it was
Well at least close
I know it wouldn’t have the .fabric 😂
hahaha

I assume I put the /world/DIM-1 (pretty sure that’s in fabric too) where the /world_nether is and rename it to world_nether?
Wait that doesn’t seem right. I don’t think fabric is laid out like that.
wait
I’m
being very dumb
I think
😂
@ProGamingDk help
i am getting confoooooosed
this is what sleep deprivation looks like
Sounds like a song by JVKE in my opinion 😂
Okay
i think
you just need to replace the fabric jar with the pufferfish jar like it said
I think it may have been the case where you had to change folders but not anymore
make a backup ofc though
ahahahhaha lol
Oh definitely.
I’ll see if that works.
I think I’ll try this and see if it works
:ThumbsUp:
Because in theory it should
Would try just replacing the jarfile first
without modifying folders
save the effort of changing the structure
Yeah good idea
Oh my gosh this thread is up to 810 messages
Was only like 2 hours ago it was at 556
If that
:LUL:
time flies by
This should be made into a channel though. I feel like a lot of people ask in threads about public server hosting
@-Joey What do you host your server off of?
nothing
this is purely hypothetical research if you read the thread
Yeah hypothetical but right now a crappy 5 year old laptop 😂
It somehow performs well. I have no idea how it does
As a laptop it sucks. As a server host it’s amazing. It’s crazy
Ah
If I were to buy a beefy computer to host it off of from the start instead of a dedicated provider, I know there’s a way but I don’t know how, do you know how to hide your ip address so you use something like “mc.hypixel.net” instead of 192.67.323.85?
Yes I know 192 is local…it’s an example 🙂
1. Youd have to look into that. I’m not very familiar with server building and you’d either buy a prebuilt server or buy parts and assemble it yourself. Who knows.
2. You can buy a domain from the likes of cloudflare with that, and use an A record to make a subdomain that routes to your proxy’s IP
Oh yeah I’d do a custom build. And okay I’ll look into that
for example for play.hypixel.net I would make an a record and set the name to ‘play’
Also that’d just be for when I have <500 players. And this is also hypothetical. Not sure how I feel about people connecting to my home internet. Even with ddos protection. And I don’t know if my ISP would like that.
👍
Yeah, you’d have to contact your ISP and ask them about it. You’d also have to look into your electricity costs and calculate the price on running it 24/7 based on estimated average power consumption
another option would be colocation where you pay for rack space (with power, networking included) in a datacenter, and you provide the machine yourself
but
that’s a lot of work
Yeah I’d honestly prefer to do a dedicated host.
yeah that’s fair
If my budget is 200/month do you think I could get something good?
wise choice probably
I’d be willing to go higher if needed though
depends on location etc
uhhh not entirely sure.
You’d really have to do some calculations. A LOT of variables.
Location like pro said, etc
you’d also need to calculate the hardware you need
i would maybe set up a mock minigames server and see how many resources they take up
You said 150 GB of ram as a rough estimate so I’d need to calculate that. And you said connectivity also depends on a lot of things
oh I wouldn’t go by that 150gb ram estimation
Yeah I’d test myself
seeing as a lot of your minigames are things like 1v1s, that’s possibly 250 servers
say 1GB usage each that’s 250gb of ram usage
(example)
yup
my question is how
are you going to do that
Gosh if my sever grows I’d need a ton of servers
?
How am I going to do what?
Also
when measuring things like RAM
you want to take note of the total heap usage
and not metrics from things like Spark
Can you elaborate?
because heap is the resources used
Your mc server could be using 500mb but heap used is 1GB, so you’d be actually using 1GB of your machine’s ram
that’s a rough explanation
so if you had, for example, 10 servers
spark says they are using 400mb but heap is 1GB, you’ll be using 10GB of your machine memory in total
so you have to take that into account when measuring ram usage
So you need some overhead
plus you need to account other processes other than the mc servers using your ram
Linux itself is very lightweight but things like Kubernetes, Docker etc will need some resources
So probably multiplying what spark says by 2 is safe?
Seems like that’s what you said but I could’ve misunderstood
Don’t do that. You want to be able to fully measure the heap memory, rather than estimating it. That gets you a more accurate result.
You can use things like VisualVM
So spark shows heap?
Oh
something like /spark healthreport shows current usage but not heap
however
making a spark report let’s you see the heap
Is there a command for that?
permitting you’re on the latest spark, just /spark profiler start and then /spark profiler stop whenever you’re done, and go to the memory tab
Memory tab is within the files or is that what’s in f3?
Hold up I’m gonna scroll up to snow kit’s message
/spark profiler stop returns a link that you open
Spark Profiler
Spark can be used to see why your server or client is lagging.
Users can share a spark report via
/spark profiler start --timeout 300
which creates a report after 5 minutes. The spark report is useful in debugging why your server is lagging, so ideally you should always provide one while asking for support.
Download | Website | Docs
Admincraft Canned Responses
also f3 shows the client ram usage
Yeah I thought spark added a new menu or something
Ohh okay
So spark shows total server performance? I thought it was just datapacks.
Is it like you can pick a category to see how much it uses? Like /spark datapacks or /spark plugins or something
no
Home | spark docs
Welcome to the spark documentation.
I’ll take a look
Question. How do they show the lightning bolt in chat?
Is there like a way to show emojis somehow?
certain text emojis work in mc chat
Gist
Minecraft allowed emojis
Minecraft allowed emojis. GitHub Gist: instantly share code, notes, and snippets.
My mind 🤯
Too bad they don’t allow the turtle emoji. That would’ve been something 😂
And you have like 2
No docker is great
I thought that’s what you meant by “Why don’t you just…host on a potato”
Finally have access to my pc. Trying this
just... dont listen to butter
^
it was a joke
Alright 😂
So I did this, one problem. My datapacks aren’t working now because the commands behave differently with some plugins I installed. I think it’s essentials. I have been told to do minecraft:(the command) instead but I can’t do that in a datapack. I’m not sure what to do
Confirmed. It’s essentials
disable those commands in essentials
and use command alias overrides
That’s in essentials config.yml right?
and since I know everyone else will say it, use plugins over datapacks
i believe so
I’m not experienced enough with plugins to make my own yet, I’m trying to learn
This thread is just for me to prepare for hosting public, and learn the stuff I need to, so I could make my server public
👍
stop hating on me
its the truth?
im not hating just stating the obvious
ok
Could somebody send me a video or something for making a plugin? Like instead of datapacks using plugins to process the stuff for my games. I can’t find anything on YouTube.
Or anywhere for that matter
https://youtu.be/tnJZMaoMPhE Kody's series is fairly decent
if you don't want to do it yourself check out discord.gg/helpchat
I think it’d be better to learn myself so that I can troubleshoot it if something fails
But thanks I’ll take a look at that series
yeah fair
it's a really nice skill to have
So I use datapacks to make custom recipes and advancements. Can plugins also do that?
Yep!
Same format and everything?
not the same format because it's programmatical (although if you use the json thing for advancements that does kind of mirror, see https://youtu.be/Tw2e8TRdtzk?t=298)
👍
Thanks
On a completely unrelated note, you have the server owner role. What server do you own?
i run a modded server
very small
Oh okay
So who gives out the server owner role? How would you get it?
#welcome
you just
take it
Oh…
Didn’t even realize that was there 😂
it's easy to miss
Yeah with admincraft I tend to just go into the forum threads and don’t even acknowledge the other channels
Hey, am I able to set kube up so there’s an area that shows the different lobbies and when a spot opens up a player could choose to join a certain lobby? That way if their friend goes in a lobby they can join the same one
You’d need a plugin for that using velocity’s server switching feature
Actually DeluxeMenus could likely do that pretty well
Good to know. Thanks
@-Joey
joeytubehd has reached level 2!
Roles Added:
Level 2
Hehe level 2 😎
You need to make your own placeholders in placeholderAPI, fyi
It’s fairly easy though
Minehut has that feature for example
So does hypixel iirc
Alright. I have a lot to go through. Thanks for the help
Another thing I’m curious about… how would I set up anti cheat? And hack protection? And if these are set up correctly I shouldn’t need mods on all the time right? Because once this is online the only mods I’d have would be me and 8 of my friends, but I don’t want to have to have mods on all the time.
And if you think 9 is small, reason being is I don’t trust many people with mod capabilities 😂
Anticheats arent perfect
Especially since you probably cant afford polar and theres no real good bedrock anticheat
Wouldn’t it carry via geyser?
Like Java anticheats would work for bedrock too, just like how Java plugins work for bedrock too
No
Not at sll
Bedrock movement etc is completely different
Oh right
@-Joey
Level Up!
Congratulations <@800415983033909279>, you leveled up to level 3!
So would false flag and or not detect at all
Most anticheats disable themselves on bedrock players
Well Java players would be more important probably because that’d be where most would come from I assume
Basing off of crossplay servers I’ve played on
What exactly is polar? Just a high end protection service?
Bedrock is a huge playerbase aswell
True
But I feel like java is more popular among people who play servers
According to people its the best, its just not cheap
For your player counts its 59 euros a month
For just the anticheat
What else is there?
Other than the anticheat
?
Polar is just anticheat
Oh I thought you meant polar had an anticheat for 59 euros and there was extensions for more or something
But yeah that is not cheap 😂
So you have the Server Owner role. What do you do for hack protection and such?
Rest of the 60 is done by server mods I’m assuming?
Mm. So I’m probably gonna need a bigger staff than 9 people 😂
Oh 500 players to start
That was probably hard
Yeah. Also is reporting a gamerule? Haven’t used it in a while but I thought it was
And also this thread is purely for hypothetical research for learning public server hosting and getting the knowledge needed to run a server with a lot of people.
Ah alright
So will the staff only get notified when they’re online?
Like custom items/entities?
That’s smart
Ah. Yes we do. I plan to do Luckperms, Geyser/Floodgate, Essentials, Essentials Chat, Vault, and some kind of reporting plugin
Alright. Any chance it has something like email or something so we could get notified if a mod isn’t online at that time?
That’s at the start. I’d have to think of something better if the server grows. I’d probably have to hire mods or something
Oh okay
Also probably an npc plugin like citizens, and a payment plugin like Tebex, there’s probably more I’m not thinking of at the moment.
Haha yeah. I am a little iffy about hiring mods because I really don’t trust many people with that much power
Yeah I suppose
Yeah and I plan to join frequently to make sure things are running smoothly
But they’d still have access to gamemode so they could place/break. That’s honestly the only thing I’m really worried about. Kick and ban are fine because I can look back and people could essentially report a moderator for abuse. And that replay plugin sounds good too.
Also do you know if with luckperms I can give them access to a command but only some of it? Like give them /gamemode but every gamemode except creative.
Yeah but isn’t that also only if you’re online?
If you use essentials then yes
No
It logs everything basically
So you can look at actions done while you were offline
Yes but what I’d like is a way to get notified when something is done even if I’m not on the server
I am using essentials
That’s probably fine actually as long as an admin joins every so often. Moderator is the lower version of admin which gets most commands
Hey, sorry to go back to something said a week ago, but if I have my server running on 1.8.9 software, does that mean if I join it on a version later than 1.8.9 I wouldn’t get the old combat?
Not entirely sure.
It’s possible that you wouldn’t because the client itself stops it
!try
You should try it and see. :) https://tryitands.ee/
It might work actually
it probably would, unsure how Via* & the client would handle it
Oh okay. Well I would like it to only work if they joined on 1.8.9 like how hypixel does it
uhhh
I don’t think Hypixel ‘does’ it like that
they do it normally
viaversion (or their own impl) + 1.8.9 servers
If you join hypixel on 1.8.9 you get
The old combat. I don’t think you get it otherwise
are you sure that’s not the client stopping that
I don’t think so
I’d have to check again. But I’m pretty sure it works like that
Check it on Hypixel and see how it compares to your server
Sorry for the wait. No you don’t get it in 1.21
Only 1.8.9>
Also I know this is probably impossible, but is there a way to see what version people are in, and if they’re below a certain version, then it runs a command? Basically in one of my games, some of the items are unobtainable on 1.8.9
uhhh if you want to block versions from joining viaversion does that
but uh
bear with me
https://modrinth.com/plugin/viaversionstatus well look what we have here
Modrinth
ViaVersionStatus - Minecraft Plugin
Displays players' client versions when they join your server
it should be what you’re looking for
it lets you specify commands from the looks of it
Thank you. That looks good. I’ll try it out tomorrow
Thanks this seems to be exactly what I’m looking for
Another question, how do I make a domain for my server? Like mc.hypixel.net
1, you need a domain. get it from cloudflare because you are gonna be messing around with cloudflare anyways
2, setup the domain to redirect ip connects with domain, so if they join with domain its actually just joining the ip masked as a domain. :thumbsupcat: there is a ton of guides online to do those type of stuff so feel free to get to reading or watching
Oh okay. Thanks
when using cloudflare, do not proxy the record for your server as it will result in players not being able to connect.
The record?
the A record, make sure it’s in DNS only and not proxied
there’s a little toggle
Ah okay
So going back to kubernetes
Is there a limit to how many servers get made? Or just the one I set?
And does more servers cause more lag? Reason I’m asking is if I have 500 players online they theoretically could all happen to pick a single player mode of a game. Resulting in 500 servers. Not to mention if my server grows that’d be a lot
iirc you can set a maximum number of servers to be created, and if you don't set one or set unlimited it will keep creating until it can't create more due to lack of resources.
Oh okay. Does more servers cause a lot of lag? What would happen if there were 500 at once?
500 created at once or running at once
Running
if running, as long as you have the resources you shouldn’t encounter lag
e.g. you have 12 threads and you make 50 servers, you’re going to lag
So resources, meaning how much dedicated ram the server has?
and cpu
and disk speed
and technically bandwidth
As long as I find a good location the last one shouldn’t be an issue
If I remember correctly, you said singlethreaded is better for what I’m doing?
well, Minecraft is singlethreaded
so you want good singlethread perf but preferably a decent number of threads
Mm. Okay
for minigames singlethread isn’t AS important as, let’s say, an SMP
because everyone is usually fairly close together
and you’ll usually nerf most stuff like entity spawning
and chunkgen would be non existent as the map is already there
Do also note that things are offloaded onto other threads
but very few things
Most games this is true. But there are some story mode kind of games that players could be far. And I’m thinking of adding survival, not sure if it’s a good choice though
What do you mean by ‘survival’
Just a survival world. Pretty simple
like an actual SMP?
As a minigame? Or just a server
How bad would that be? I haven’t added it. It’s just a thought
You would be able to teleport to it from the main lobby of the server if that’s what you mean.
It would use far more resources
You’d be looking at 2-3 thread usage (preferably 3), 12GB+ ram usage or even more depending on player count
more storage use
Problem with that is, according to what you said, singlethreaded is better for mini games, and 3 is better for an smp. So whichever one I did, I assume it’s cause lag toward the other one. How would a smp behave in singlethreaded? (Since most of the games on the server would probably run better with that since they’re minigames)
You’re misunderstanding.
Minecraft is singlethreaded but a minigame server won’t use as much cpu as a survival server
Ohh okay
So multithreaded wouldn’t mess with the minigames?
and multithreaded is irrelevant
I’m just saying you might want to give more cpu % because it will use more than minigames
it’s still not multithreaded
(100% ptero cpu is 1 thread)
Alright
calculations are key
So a little while ago you said to text how much ram each of my minigames use to see how much ram and stuff I need to give my server. I’d need to give it more if I use kubernetes won’t I?
Like each game x how many servers
kind of, resource usage of each minigame * how many active minigames you’ll expect to have
then figure out how much resources you’ll need in total for all games combined + leave overhead for other things
Spark does that, correct?
Some of it at least
yes however for ram you’ll probably want to measure JVM usage
because spark only provides the server usage, while ptero provides JVM usage
JVM usage will always be higher
Oh okay
for cpu you can use spark though
So this might be a stupid question, but if I buy space in a datacenter, is what the server is hosted off of a computer like the one you’d play off of? Just a lot more space, or is it multiple working together for my server? Or maybe something different
so depending on how many resources you’d need you’ll need multiple ‘nodes’ aka. Machines
the machines are just computers with really high specs with a OS like Linux
then if you have multiple nodes they usually communicate with a kube operator or whatever
which tells which machine to make a new minigame
etc
Oh okay. So to gain access to the files inside of it, is it through a website as if it was a hosting platform? Or is it some other way?
And (i don’t trust anybody enough to do this) would I be able to grant access to others?
If you’re renting a dedi or doing colocation, you have full SSH access to the machine
No one else can touch it
usually you’d install a web panel like pterodactyl and give people access through that
Oh okay
Oh and this is a very minor thing that doesn't matter really. I used to host a server off of Aternos and when it was offline, it would say "Server offline" and if it was starting it would say "Server starting". But when I do either with my current server it just shows up plank in the motd slot. Is this possible or is it just something hosting platforms do?
op plank????
Huh?
You said ‘it just shows op plank in the motd slot’
am I not understanding something
Oh sorry
Typo 🙃
You mean shows blank?
fairly sure aternos does some custom stuff
because you can’t customise the MOTD
Yeah when I start it, or it's offine, there's just nothing. Well actually no, when it's offline it says "Can't connect to server"
Oh okay
yeah that’s because it’s offline and it’s not responding to pings
Curious how Aternos does it though
Some custom router magic
just
don’t go offline xd
or do a reverse proxy etc
proxy in front
and a plugin on proxy etc to handle it
Oh okay
Hey any chance either of you are familiar with TitleManager?
just use Tab by neznamy
^^
Yeah I do
But I want a sidebar too
it does that too
Tab does that???
yes
it does scoreboard
I've never seen that
How do I set it up?
they have a wiki
I'll look at that
I can't believe I never knew that
Alright I got it up. Now I need to figure out how to remove it for people during some games
Question. On the wiki this is what it shows for doing what I want to do: ScoreboardManager#showScoreboard(TabPlayer, Scoreboard) is this supposed to be as a command? I'm not understanding
no
youre under api
Ohh that makes sense
Don’t see anything else for scoreboard visibility other than under api
Am I missing something?
I'm looking. also for using api you would need a plugin.
You can also use conditional displaying of the scoreboard
This is an example where they show how to do so on a per world basis (it's not limited to just checking worlds)
https://github.com/NEZNAMY/TAB/wiki/Commands-&-Permissions#tab-scoreboard-onofftoggle-player-options shows commands that can do it
GitHub
Commands & Permissions
"That" TAB plugin. Contribute to NEZNAMY/TAB development by creating an account on GitHub.
I’ll check it out
Is the plugin PlaceholderAPI by chance? Because I have that installed
Sorry I should clarify, that's for people making plugins so their plugin can interface with the tab plugin
For example, some minigame plugins will tie in and change the details of the tab and scoreboard for their own purposes
Yeah that’s what I want
Well wait never mind. Gosh sorry. I’m sleep deprived and read that wrong 😂
Alright so I think I got it. Question, I used the %group% placeholder, and it shows the group as all lowercase when I made the display name uppercase. Why? And how do I fix it?
And if it is fixable, am I able to make it a certain color?
I would imagine both are fixable, I am unsure how to do so. All I did was read the documentation. I would maybe see if that plugin has a discord or something to ask these questions if you can't find the answer by searching the wiki.
I've always used Bisect and never had any issues?
Which provider would you use for EU ? (Im new to this Minecraft stuff)
Bisect just has shit tier value and doesn't provide any benefit to justify why they're so expensive.
As for the EU? ServCity is pretty damn good.
Alright thanks man, I'm gon stick with bisect for now, but will Def keep servcity in mind!👍🏻
My man, Bisect is around 3 times more expensive with worse hardware on average. :husk:
Oh shit, didn't know, I'm not home havent checked servcity yet
Yeah.
Their budget for MC uses Xeons, ServCity budget for MC uses M128-30s. The M128 is a lot newer and more capable.
For context for their premium they often use old hardware like 3000 series Ryzens, ServCity is using 7000 and 9000 series Ryzens.
They just deployed their 9950X nodes.
budget is the same as premium for bisect lol
Bruh really? I thought their Premium CPUs were Ryzens.
There's no way they're Xeons.
No shot.


Ah...
Ok nvm me, Serv is probably at least 3 or 4 times faster for a third the price...
:D
Jeez,
Thank you very much then.
I will Def switch 😂
Insane how Bisect has business. Ig those modpack ads really do work.
I only found them cause I used them for palworld back when that launched. I just got so used to that control panel that it just seemed stupid to have to learn something else😂
Oh yeah they probably show ads over in Palworld land as well...
So should I be looking into ServCity? Or should I make a post on marketplace first for dedicated providers? I won’t be making a post yet because I’m a little ways off from public hosting right now.
Serv is about the cheapest you can buy for quality but you can make a marketplace post if you’re curious.
Alright. When the time comes I’ll make a post and compare hardware and prices and see what would be better for what I need.
So by your posts I’m gathering that ServCity is based in EU?
eu only
rn
Alright. I’m not set on the location yet so that may work
I want them to be able to join, just not certain games. Is that what this does?
like, they can join on whatever version but restrict certain players on certain minigames?
Yeah like...trying to think of an example
Well I have KitFFA and some of the kits I don't want people from like 1.16> to be able to buy/equip due to the fact that there's an item in that kit not added
So I want people to be able to join KitFFA but not be able to buy that kit unless they are above 1.16
hmm, i think thatll be too much on youre plate. might just make a universal kit that works on all versions
Yeah that'd be better
Now that I think of it, I think there's only 1 or two. One has an elytra, and one has a netherite sword
Honestly you might have to make a basic custom plugin
where it gets the client version of the player when they click on the npc to join (or however you have it)
and if it’s not the desired version(s), stop it
But honestly, limiting minigames to specific versions will just annoy people
You’re right. I think I’ll just use blocks and mobs that were in 1.8 in those games.
Honestly now that I think of it, there really aren’t any games that need to be limited to a version. Just a few kits in Kit pvp. So I could probably just get rid of those kits, or maybe make a custom plugin that doesn’t let them buy it if they’re below the version the item was added.
But that would still annoy people
I mean, better than limiting the entire gamemode
either do what you said, or just make all kits *-version-friendly
Only ones that are realistically needed are 2 that have elytras
One has a netherite sword but it’s very unpopular so not needed
eh, for things like that just give em a diamond sword with buffed stats
but yeah I can see how an elytra would be a problem, not sure how suitable an elytra would be for kitpvp anyways xDD but that's not up to me
If there’s a kit with a bow it’s honestly not too bad. And he’ll run out of hunger eventually
fair
And this one is called “One”. He was highly requested. Basically he has one heart, and has a one shot sword. But it didn’t turn out nearly as good as people thought it would
ah, rip
Do you mean dns
Because redirects break the game
iirc cloudflare doesn't care about srv records unless you have their enterprise license or something
proxy*
Cloudflare is fine with SRV records, what they won't do without enterprise is proxy TCP/UDP traffic, they'll only do HTTP for free.
yeh thats what I meant
but if you don't use a srv record and proxy your A, it wont work
Yee
So how exactly would you set up kubernetes? Like I’m guessing it doesn’t just go in the plugins folder 😂
Kubernetes
Kubernetes Documentation
Kubernetes is an open source container orchestration engine for automating deployment, scaling, and management of containerized applications. The open source project is hosted by the Cloud Native Computing Foundation.
set up a local server (use WSL on your local machine, whatever) and screw around
Hm. Alright thanks
You can do whatever you want, but I think you are focusing on the wrong things. Kubernetes is "necessary" for huge networks with thousands of players and will add a lot of complexity to your setup and therefore lots of possible security risks when done wrong. Focus on developing the best possible product (= mini games) and after that, marketing, but there is no valid reason to use Kubernetes for your server at this point, especially because you lack the knowledge about linux server administration, containerisation and spigot in general.
I’m more just learning what I’d need to do. This thread is purely hypothetical research
But you are right about focusing on making the best possible product
Oh, sorry, I thought you were mainly interested in shipping a minecraft server product. If your primary focus is learning about all kinds of technologies (which you could possibly use) then there is nothing wrong with looking into Kubernetes and related stuff.
You’re good. Just basically exploring my options and seeing what would fit best for my situation.
But yes I suppose I am mainly interested in shipping the Minecraft server product. So you said Kubernetes is for big networks, what would you use for 500 players? I’ve heard a couple people say just host it in the same server and use structures to make lobbies when needed. Very different opinions here 😂
500 can be done on a normal velocity network
Right I think I remember you saying that
500 players is definitely possible on a simple velocity network, but I would suggest setting up something very simple for about 50-100 players. If you have 50 to 100 players, I guarantee you there will be people helping you out on scaling the whole thing.
If you got a great product and people want to use it, finding co-workers who can help you with the technical stuff is really not the problem.
^^ but still having a good in depth understanding of what you’re running is ideal
That makes sense
Starting out with 100 as the cap, I’d go with my way with the structures. It’d be easier considering you don’t have that much knowledge in this area yet. You definitely should still research Kubernetes, containerisation, etc… even if you do. That way if your server does grow you can know what you’re getting into.
You should learn what you need now and in the foreseeable future. In my opinion, Kubernetes is not one of these things.
But still agreeing with this. Having a good understanding about how your stuff works is necessary, even later when you have people managing the technical side of things.
Gosh didn’t even think about bringing people onto the technical side of things. But yeah I don’t think I could do that all myself.
In the future I mean
yeah, as you grow you’ll likely need other people to manage
As your server size increases you’d likely need somebody on standby at all times. Guessing you wouldn’t want to do that 😂
^^ having people of different timezones is really beneficial
e.g. your server goes down at 3am for you while you’re asleep, but it’s 3pm for the other person
Or just get some loser who’s willing to stay up all night
xd yeah
Curious how I could hire somebody for that. Really need to trust somebody to give them that power
True
Oh absolutely. It’s one of those things where it’s VERY difficult to find people
you’re either really lucky and have someone you know and trust well
or you cope
or you hire someone who you think you trust and keep 10003928174747291 backups
I probably have 8-9 people who I had in mind to be my managers. But probably only 1 I’d trust with the server files and stuff
You could make things easier by just looking for a co-founder who has a technical background.
which would also require a lot of trust
By managers you mean moderators then? To just keep watch of the server in game?
looking for someone external means you’ll be investing a LOT of trust
Yes
Yeah, it’s hard to know who’s just waiting to screw your over, and who just wants to help.
yup
At 100 players you might be okay to do it yourself. But if you’re anything like me you’d probably be checking a million times a day
But you’d still want some moderators in game to keep watch and such
having alert systems are ideal
you could make a plugin to check for server status, ping you if it’s offline
etc
I recommend coreprotect
For moderators if you don’t trust them
CoreProtect for public static servers like an SMP
for minigames no
Fair
also having something that logs staff interactions is a must
console does log it in fairness
but that can be lost VERY easily
Are you at all experienced with making plugins?
I wonder what your marketing strategy is to attract hundreds of players. This is the main problem I would think about.
Honestly, I’ve never made one before. But I know a fair amount about how they work.
I have a few things in mind but I’m more thinking of the server itself at the moment.
My most important word of advice that I often live by:
fuck around and find out!!
Being able to make plugins, read stacktraces / errors (vital skill) and edit other plugins’ code is so, so useful
I can usually figure out what the errors mean in my plugins. But again that’s another thing I am not an expert on 😂
I’m more experienced with C++ than Java
I mean
Any form of programming experience is useful
Minecraft servers don't fail because the hardware is bad, they fail because the players don't enjoy playing on it. So don't spend too much time figuring out the best way to scale this thing up, just build something, release it and see if people like it.
Yeah that’s what I’ve been trying to do since start of May. Got a few good games right now, but am still building.
Player retention is key
but definitely focus on the game and not releasing quickly
quality is the most important
Oh yeah of course
obviously releasing as soon as possible is ideal but not if it compromises the quality
If you already got some games, you can get some people together and get some feedback. That's what really brings you forward.
Really, get user feedback as early as possible.
oh yeah, getting other people to test things is really useful
Other people always find ways to break your stuff
lol
I’ve gotten some friends and others on to test. Most popular category is definitely PVP
Oh yeah PVP dominates in pretty much all servers
As always, the most important question is: Why should players play on your server and not on Hypixel/...?
So make sure you design your server in a way that you have a good answer to this question.
eu
hehe
That’s accurate
playing Hypixel in the EU sucks
Well my server will have a wider variety of games
Just more games or better games?
more games... than hypixel?
that doesnt sound healthy
for anyone
or possible
but
hypixel has the player count and STILL has dead gamemodes
having unique games is good
if you have more and a way smaller playerbase
thats just not great
Well hypixel doesn’t have that many games
Do one thing and do it good, thats what a venture capitalist would tell you.
uh…
it has like 15?
they have
+
A LOT
Have you seen the arcade alone?
there’s about 20
Oh shoot I forgot about the arcade
yeah
Okay scratch that

Yeah if you have tons of games and a smaller playerbase, you either spread them out way thin
or they all concentrate on a couple popular game modes
and the dead ones waste resources
Alright well I didn’t say more games I said a wider variety of games
that’s fair
just
please don’t spread yourself too thin
That’s fair
your health is more important
‘don’t bite off more than you can chew’
Hold on let me see how many games I have now
Technically I have 9 games
not bad
nice
What kind of games? Like are they actually good games?
Okay 7 😂
still a fair few
What were the other 2?
Just some stupid simulators. They were only made because I was bored. They will most likely be gone by the time the server actually goes live
Hypixel started with 2 games and still got players.
honestly?
Work on the game modes you think will be the most popular.
Scrap that, work on the games you have, get players to test and see which ones they like.
Then if you want, prioritise them first. As you grow you can add more games as they will cost more money to run
I would start with one game and make it the best minigame in existence.
it’s up to you tbh
I think the amount of minigames won't convince many players.
yeah
Another issue with having that many games (even 4 or 5 is a lot) is maintaining it
fixing bugs on every one
adding new content otherwise players will get bored
etc
plus moderation
pricing is a BIG hit too
My games: KitFFA, with TONS of kits, Turtle Tag, just knockout basically with 5 lives, ParkourX, parkour, DropperX, droppers, Escapee, escape rooms with riddles and stuff, and The Craft Cities, city roleplay
KitFFA is the most popular and the one I work on the most
I put them in order of most played to least played
what’s the difference between:
1. parkourX and parkour
2. Dropperx and droppers
3. Escapee and escape rooms with riddles and stuff
I'm pretty sure there are servers out there having the exact same game modes, but having the advantage of an already active playerbase.
So make sure you are aware of the competitors.
ParkourX, is the name, DropperX is the name, Escapee is the name
Unless I’m not following
oh
ohhh
sorry, I was counting each thing as a separate minigame
Escapee is gonna become kind of like Squid Game soon too
my bad
You’re good. I wasn’t really that clear
nah dw, not your fault
On a totally unrelated note, that was 6 games. Do you only have 6?
‘only’ is not the right word
that’s a fair few
especially for one person to manage
I more mean he said 7 before
even 2
eh that’s fair
And it’s not just me. A few friends helped make most of these games. So they’ll maintain their own for the most part
I do have a seventh but I realized now that it’s kind of stupid and not really worth mentioning with the other 6.
okay that’s fair enough
-# I hope you’re still not using datapacks
Its parkour meant to make you upset. It trolls you at every corner. Which I’m probably gonna get rid of. Another one that was a product of 2 friends bored at midnight
Uhh
I am right now. I don’t know enough about plugins yet to make a full switch to just that
When the server goes live it would be plugins
that’s fair enough
Try move if possible, there’s way more things you can do
Datapacks aren’t too bad but they’re not ideal and they’re generally messy
mc commands are kind of messy in general
You can still use datapacks for some things. Simpler things
plus often not very performant
this
What would be classified as “simpler”?
like…
scheduled announcements or something
Well yes, but you can also use a plugin like SuperLobbyDeluxe for that
Pretty sure it does that
And of course, you’d need datapacks for custom advancements/custom recipes
I was seriously thinking about using a command block for my teleporters. What was I thinking
Okay definitely don’t use command blocks.
Honestly I think Citizens is best for teleporters. Using NPCs. That’s what I do
DON’T USE CITIZENS!!
use ZNPCsPlus!
Woah
citizens is… entity based
and laggy
ZNPCsPlus is fully packet based
I’ve never had any issues with Citizens before
I’ve seen it use 4+% of the server thread on a good day
the fact that it’s entity based is bad overall
easily uses multiple % main thread
if you use player entities
its even worse
I guess you’re right.
Even if they are player entities, is that really that bad considering that you wouldn’t have that many?
yeah but citizen’s code is generally laggy
which is what causes the lag
a player entity standing still is fine
but it’s the code that citizens runs that lags
Well I actually got a different version of citizens. Maybe that’s why
What do you mean different version? Like a modified version?
Yeah. I’ve actually never looked at its code 😭 but a friend of mine sent me it. I don’t think it’s made by the same person
Never mind first message didn’t load for me
Well it works. I haven’t used the original citizens in a while but iirc it works a lot better. That’s what counts right? 😂
Why is citizens code laggy?
It’s just the dev not being very smart
Fair 😂
So by ZNPCsPlus being packed based, it doesn’t load entities, it just loads things that look like entities?
Can you still import your own skins to it?
Yup!
Yup! No entities!
Oh okay
Also what’s wrong with what Brody did? Nothing against you I’m just curious
Oh no I’m not saying he did anything wrong
I’m just saying use ZNPCsPlus over citizens any day
because of the perf improvement and better features
Ah alright
Oh this is random but how do you get the waypoints to save in citizens? Every time I get out of it, the waypoints don’t save
By “it” I mean the wayfinding menu
The waypoints…?
Do they have those in ZNPCsPlus?
Basically you can right click to set different points where the npc walks through
It’s great for making games
ohh
you dont usually download plugins from "friends"/direct sources
especially at larger sizes
Fair
people betry friendships for maliciousness etc
unsure
about ZNPCsPlus
While that’s true, this is a lifelong friend who is a member of my server staff
sure, but generally speaking
Yeah you’re definitely right. Just saying. It really just depends on how well you know them
some people do spend years getting into a friendship just to betray just saying
How did this go from server hosting to life lessons? 🤣
trust me
you would be VERY surprised
everyone has a dark side
take 2b2t for example
someone got jealous of their friend’s base and installed malware (committed a crime) onto their friends’s computer via usb to get coords of it
That’s insane
yup
How does 2b2t still exist???
anarchy
I thought that was gone a long time ago
and it’s arguably famous
nope, still as lively as ever
Eh true
Wow
So explain this to me. How do you run commands in a game via plugins versus a datapack?
you don’t
you use the code version of it
e.g. if you want to summon particles you’d have to use paper’s particle builder
Ohh
but you can technically still run commands in a plugin but it’s not recommended
there’s nothing bad, it’s just that using the code format is easier for maintaining
well yes
especially if you’re running a command every tick
Mm. So it’s not at all even close to the same as Minecraft commands?
running commands in a plugin has same issues as a datapack
^^^
most issues do arrise from execute @a
no it’s not.
Check out some plugin tutorials from the likes of Kody Simpson
I still have command blocks in my world 😭
ouch
yeah no
get rid of those
Well right now it’s mainly datapacks. But it started with command blocks so some stuff I thought it’d be better to keep
please learn plugins
Like using the tick.mcfunction, I want to avoid lag so I use a repeating command block with a redstone block and turn it on and off when needed. But I am so excited to plugins instead because that’s much more efficient
you will thank yourself in the long run
Yeah 😂
:Gladge:
1526 messages oh man
Most I’ve ever seen.
Probably because it’s such a popular topic here
Install the tools, install https://talos.dev on bare metal or VMs, setup your cluster, bootstrap your cluster with the software you need using an ArgoCD AoA for that, congratulations, your cluster is now in a ‘ready to do anything’ state.
That’s probably the most simple sounding, but complex statement I’ve ever heard
For Kube you want at least a GitOps manager, CNI, CSI, metrics server, VPA and HPA arrangement, and reliable Git deployment. :)
Fr.
Thank you. I’ll look more into setting this up. Ill probably work on making my games better first though
In all seriousness you don’t need Kubernetes.
It takes years to learn and it’s one of the most lethal footguns that exists in IT.
Oh wow
you just need something that can orchestrate server creation and management
I mean. Starting with 100. I guess that’s what I’ll do now
Starting with 100… servers…?
Hold on let me scroll up do ProGamer’s message
Oh gosh no. Player slots 😂
Yeah no ok.
Just use Docker.
What exactly is the difference between the 2?
kubernetes is docker complexity * 10000
Kubernetes is an orchestration tool for managing multiple containers
Yeah but probably Docker quality * 10000 right?
Oh yeah, kube is great
but complicated
Docker handles a lot of stuff for you, Kubernetes is more powerful but it’s also a handle everything yourself kind of system.
If you wanna think of Docker as Lua scripting then Kubernetes is C++.
That’s a good way to put it 😂
I can’t find the message
But ProGamer said that it’d be better to just run it on a simple velocity server
Velocity is the proxy, MC servers are the backend.
He is correct.
Yeah but velocity isn’t going to orchestrate minigame server creation itself
So what exactly does a simple velocity server do versus kube?
Velocity is just a mc proxy
for moving players between servers
WAIT WHAT
WHAT JUST HAPPENED
:Thonk:
Velocity is a proxy, it handles moving players between backend servers. Kubernetes orchestrates software.
I sent this message
Not Brody 😨
And the ones below it
Ohh okay
?
Huh. That is weird
So velocity doesn’t create servers as it needs, it just puts players between servers?
If I’m understanding
Yes.
It’s kind of more than that though
If you wanted a software that creates servers dynamically then you have 3 choices.
1. Make something yourself
2. Wait until Juice and I finish the autoscaling with RustyConnector.
3. Use Kubernetes with Agones and Shulker.
By make something myself, you mean make my own kubernetes essentially?
Oh okay
-# RustyConnector is a velocity addon that supports dynamic runtime server registration and soonTM auto scaling
GitHub
GitHub - Aelysium-Group/rusty-connector: A player and server connec...
A player and server connection manager for Velocity based Minecraft Networks! - Aelysium-Group/rusty-connector
Nah. You could write software built on Docker to handle it.
Oh okay
That’s what Juice and I are doing, RC is going to be a sister software to handle it.
Interesting. So that would kind of be like Kubernetes?
yeah
Very loosely, yes.
in a nutshell
It would be the same end result
Alright
@-Joey I recommend doing this for your server. So you have a geysermc server correct? Or are going to have one?
Yes I have one
Okay so before you go live, I recommend making optional bedrock lobbies when people join your server. Like when they join my server a message says “[!] You are playing Bedrock edition on a Java edition server. Would you like to transfer to the Bedrock lobby?” Then they click yes or no. It helps keep things more balanced
How do they click yes or no?
As far as I know you can’t do click events on bedrock
could be a UI or something
Ohh
DeluxeMenus or zMenu or similar
That’s right
That’s not a bad idea
Because for my PvP games, in bedrock you can hit the players through the corners if they’re right up against it. You can’t do that in Java. Plus bedrock has different PvP. That’s a lot better
Hey if I were to use Kubernetes or something, would I be able to have it transfer bedrock players to a bedrock based server? So it doesn’t show a prefix before their name.
I don’t believe you can.
honestly seeing as your hubs would be a static server that doesn’t get deleted or whatnot
You can just transfer bedrock players to there
and then the npcs or however players choose to play minigames direct them to the bedrock version of the minigame
but that would mean you’d need double the amount of servers on standby for each minigame
and you’d have to develop two of the same minigame, one for java and one for bedrock
I have a completely separate hub for bedrock players. With the same games though
What’s the benefit in that though?
So what you’re saying, is to have a bedrock version at each game?
hold on
they mentioned this
‘bedrock has different PvP’
‘have it transfer bedrock players to a bedrock based server’
unless I misunderstood, this gives the impression that you’d have a slightly altered minigames map for bedrock
actually no
I’m being dumb
ignore me
Haha you’re good
you can have the same minigames map assuming all the players were java or bedrock only
but that would mean java and bedrock players can’t play together
It’d be the same map but only bedrock players in it that way Java players don’t get screwed over by the bedrock stuff
yeah
Players might not be happy with this
No
If he’s doing it my way, it says when they join, “Would you like to switch to bedrock only?” And you can click yes or no
So you can still play with Java players. It’s optional
yes but with PvP related things it would give bedrock an advantage no?
I suppose
I guess you’re right, but I tend to actually not have
This issue
How so?
Well I build most of the maps in games like that to not have that many areas with corners like that
wait
hold on
I fill in the corners
surely the java server would invalidate player damage through walls from bedrock?
Surprisingly no
But yeah, this was what I was about to say
you either do that, or you do separate minigames servers for bedrock and java for PvP minigames
Yeah in my game turtle tag, there’s a corner and I’ve played on bedrock and it’s so unfair I can knock him out of the corners
Free kills though 😉
:LUL:
So I had an idea
I think it’s a bad idea. Considering how hard it’d be to set up but…private servers?
elaborate
What. Like players can pay to get a private server for just them and their friends like Roblox?
Yes just like that
I mean. In theory it could work. In theory
in theory
practically? No
it would cost… a lot
And server space
if you did something like make it only accessible through a rank then maybe
to help offset the cost
but still
it’d still scale a fair bit as you grow
I wanted to make it so players could pay to get their own private server. It was just an idea. I didn’t think it could work
Bro what
I’m so confused
hm?
Again…I sent this message
My messages are sending as other people
blame discord mobile haha
Yeah that’s it 😂
It’d be a lot of space. And servers open
Just not worth it
^^
in the future as you grow, you could consider it if you find a feasible way to offset the cost
Yeah and if there was 500 players and all 500 bought private servers in different games
but I highly doubt you could do private servers initially unless you can afford it or have tons of server space which is unlikely
well, what’s the minimum player count for your minigame
Depends on the mini game
which minigame has the lowest min player count
Well there are some solo games 😂
Kidding. Probably 2
so technically you could have 250 private servers running
which is… a lot
Yeah…
*at 500 players
And they don’t delete when they’re done. Think about that
250 running at all times
And that’s only 1 game. Yeah no
-# when you have an orchestrator (whether that’s rusty or kube or whatever) the servers would self terminate
but that’s still
a lot of ram usage
That depends
and resources in general
how so?
How do 😂
autocorrect on mobile
lol
I get that autocorrect every time. It’s stupid
yup 😭
@-Joey I think your best bet is waiting for RC, I won't lie to you.
Well.
On how it’s set up
Not built into the proxy fully anymore.
in what scenario would they not terminate
oh is this the standalone thing
still better than having kube and agones and shulker and whatnot
Wait did you say static servers are the ones that don’t terminate themselves?
oh
Like if you set one as a static server?
The RC Operator is going to be a sister software, it sits on the COE and orchestrates the servers, RC Core sits on the proxy and handles the networking on the servers.
well yeah, the things like the SMP if you had one and hubs wouldn’t terminate
Probably misused that
but minigame servers would after they finish
e.g. PvP servers: once someone wins, the server usually self terminates after x amount of time
e.g. 1 minute
Theoretically I could set up private servers like that
well you would, but it’s still a lot of resources
Yeah that’s what I meant
best case scenario your minigames use 2-3gb ram, 150 servers alone that’s ~450gb ram
If you want rentable servers then you're looking at a LOT of compute best case scenario.
well, static servers are irrelevant here
That’s not as bad as I was thinking
Well that's for minigames.
He shouldn’t set it up like that but I just meant if he did
^ (what poncho said)
gotcha
If you start doing stuff more elaborate then you could reach into the terabytes of RAM pretty easily.
Sorry wasn’t being clear
no no not your fault
Fortunately minigames don't require all the compute in the universe so you could easily use ARM or Xeons.
^^
Cheaper RAM.
you’d absolutely want to use machines with high core / thread count
the singlethread will be worse but minigames use far less cpu than SMPs etc
The RAM capacity is more important.
^^^
@-Joey Do you plan to have survival on this server?
it’s a bit of both
but primarily RAM
Probably not now
Makes sense
you’ll have to also factor in things like bandwidth, ddos protection (which will get VERY, VERY expensive at the kind of player counts we’re discussing), as well as anticheats
Either way RC is the backbone you should be using here. Very horizontally scaled projects like this require more advanced network backbones.
And honestly? Maybe Kubernetes.
^^
Yeah I have no idea what to do for anticheats and stopping hackers
Buy Polar.
Call it a day.
^^^
polar is the best out there
I think it was discussed a while ago but I am not scrolling up for 27 years just to find it
SaaS anticheat so most checks are done in the cloud
Is that the one that’s 50 euros a month?
yes
I remember the guy saying that
but if you have more than 6 dedicated servers you’d have to go custom
as in contact polar and get a custom plan
Oh okay
but realistically
you probably wouldn’t go past 6 dedicated servers at 500 players
@AeonRemnant you think?
it’s a lot of variables though
Dedicated servers?
Gosh 6?
I doubt it at 500
Like dedicated hardware?
entire machines
List me all the specs.
oh god knows
6 minigames
500 players
1 server can do it
… you think?
Yes...
mmmmmmmmmmmmmh
Minigames is void
Of course. That brings some downsides though.
No entities
How many mc servers can 1 dedicated server realistically handle?
No redundancy and the such like.
depends on a lot of things
networking speed on one machine
Amount of threads
Depends on server and machine spec. If you had a capped out M128-30 then probably a thousand servers?
Depends on how much Ram each game uses too
RAM
drive perf
Ram, cpu, gamemode
That’s not too bad
yeah
That would VERY much be a bad idea though.
When you're talking hundreds of servers you want to avoid something called extreme node verticality.
redundancy would be the killer
So, not saying I’ll reach this, but if I do get 200,000 player slots by some miracle, how much dedicated hardware would I need?
oh god
that’s
a big goal but
Cant calculate
yeah
Sorry to say but, I don’t think you’re gonna reach 200k
A Hypixel rival? A couple thousand servers of various make to handle various jobs.
It was just hypothetical
Gotcha
A couple thousand…
That’s…a lot
yep
200k isn't a small amount.
1000 machines?
you could be looking at beyond that
Bare hardware? Probably a few hundreds nodes.
Holy
Servers would need more.
JEEZ
Does 1 data center even have that many nodes?
oh absolutely
Are you able to spread it across multiple? 😂
Remember as well when discussing that scale you're not talking about 'how many X to run Y', you're talking 'how many X to run Y with replication Z assuming W overhead'.
if you were at that scale you’d probably colocate
Colocate?
and buy a ton of rack space
basically where you buy rack space in a datacenter
you provide the hardware, machine everything
datacenter pays for the power and networking (included in the monthly cost)
How would that be possible?
buy the hardware, build the machine then ship it over lol
Well yeah 😂
I mean how would you do that much
Rough math says you could replicate Hypixel with maybe 55 nodes if you were pushing 120 servers per node and 30 players per node.
Redundancy and other overhead/jobs means you're doing hundreds.
well realistically you wouldn’t get 200k players overnight, so as you grow you’d deploy more nodes
you might initially start as renting dedis
It was more just hypothetical
then move to owned hardware
yeah
You would also pay someone for most of this stuff at that size
^^
Well okay. I have much more respect for hypixel employees
^^
The hypixel team is formidable
To be very clear it's easier to run Hypixel than it looks.
Uh
It looks one fuck of a lot harder than it is.
Once you get the base foundation in it’s just a matter of adding to it
Pretty much.
Hypixel would realistically make everything modular
Yep.
add a new minigame? Just add it in to whatever system they have
new node? Just chuck it into whatever
And remember you can always use containers to remove so many problems like config drift.
They have provisioning software
yeah
Wow okay
That has failed em once
they are VERY custom
Wait so are hypixel’s lobbies (like the main game hubs) all in different static mc servers?
and bear in mind they are so performant because they run a 1.8.8/9 fork
the hubs are all static yes
I’d like to do that for the PvP
although they often go through restarts
That’s fair
Oh but remember like…wow probably 2 weeks ago in this thread
We’re were talking about how if someone joined jt 1.21.1 server on 1.8.9 if they would get the old PvP?
Well apparently they do. My friend got the 1.8.9 PvP by joining. Now I’m confused
So another bit of info for you is Hypixel does something called rolling restarts.
They've basically turned their infra into a treadmill, they spawn new servers to drop people into and drop the old ones out to be rebooted, means none of their servers are older than 12 hours.
Oh wow
Yep.
No reusing booted servers, once it's empty they kill it off and roll a new one, reliability reasons.
So you’d get booted if you’re in by yourself for long enough?
Unsure.
Probably though.
There's actually a hidden benefit to rolling restarts.
That sounds very complicated
The game always looks busy and full because you're shoving people into the most recently available server.
Ooh
Uhuh.
It's clever.
So does hypixel use these same plugins that are popular? Like Tab for example?
Or do they use their own custom version?
They might have some stuff floating around, but a LOT of Hypixel is going to be custom work.
Oh wow okay
A lot is fork
Citizens fx
Spigot fork
Bungeecord fork
This checks.
hypixel has their own dedicated team of developers
Yeah that makes sense
people who purchase ranks basically funding the development of these minigames
Alright. Well I wanted to have credits so people could by kits in my games, and 4 different levels of premium
Don't do that.
And people can get credits for free by playing games so it’s not pay to win
At very best that's the kind of P2W that'll piss people off, and yes that is P2W.
ngl that's pay2win
So Hypixel’s credits are solely for cosmetics and ranks?
yep
That’s how it’s not pay to win?
You cant get gold
1. You can earn credits to buy kits in a competitive mode.
2. You can buy credits with money
Whoops, P2W. :husk:
Okay how about this
Hypixel does network/game boosters
hypixel specifically made it so people with ranks don't have an advantage over regular players
Credits: achieved for free by playing games to buy stuff in games
Some other kind of credit name: you can buy cosmetics and ranks, like hypixel
Except resale value for skyblock cosmetics
Which usually isnt a lot but yes
but doesn't mean you only get cosmetic, you have access to private servers (bedwars,skywars, minigames etc)
That's valid. I'd also put in some way to slowly earn the premium currency.
Like maybe 1 per 5 games
I don’t know. Or maybe in certain games
Don't have them per per game, have them be performance and objective based.
Rewards people for being skilled.
Do you think it’d be pay to win to be able to buy a booster so you can get like 20% more credits per game?
Mhmm.
That’s fair
Definitely
That's paying for an advantage. P2W simply means paying for advantage over non paying players.
But that will be allowed to be bought with real money due to the fact that it doesn’t give you in game stuff
Only cosmetics and ranks. And maybe extra speed in the lobby
That's fine. I mean don't do lobby speed either.
Just do cosmetics.
Nobody needs to be adding P2W into the game.
No like speed in the hub. It goes away in games
Yeah I wouldn't.
Why? Just asking
Cause it’s stupid? 😂
Anything that can effect a player to give any vague benefit over a non paying player, even being able to move quicker, is unacceptable.
Even if it goes away in a game?
Yes.
Wow
Anything giving mechanical advantage is hard unacceptable.
Okay then I need time change up my shop a little bit
What about an elytra so they can fly around the hub? That’s cosmetic in my opinion
Nope, that's mechanical advantage.
Damn
Have it be earnable with in game currency you cannot buy with money.
That's the rule.
If you can buy it with money it can ONLY be cosmetic.
I mean honestly I don’t see players spending tons of time in hub
Yeah I guess the shop can have some stuff that’s pay and some stuff that you can get with in game currency
Yeah I suppose
Depends what's in the hub, buying speed is a stupid and risky idea.
Nor do I see anyone buying it
Limits what you can do while still being fair.
Most things in the shop will probably be bought by credits
I’ll call the pay version tokens that way we can differentiate better
This is valid.
i don't get why people spend money on a server just to get an upper hand against other player, that thing alone is stupid ngl
I mean
Winning feels good and people are addicted.
Yeah I was gonna say haha
Exactly that. Same words everything
but unfortunately, that's being addicted to winning smh
I myself see this as a place for people to have fun, so I don’t even have an entrance for my players to pay nor donate, everyone’s the same
"i hate losing, lets get into credit debts to win against others" L+skill issue
This is what I have in my shop, trails, pets (only in the lobby), set off fireworks in the lobby, and a player cannon so you can put your friends in a cannon.
And just so you know I checked with some people and most said they’d be interested in buying those.
That’s smart
What do the pets do?
Just follow the player around
Perfectly chill then.
And the different premium levels give you different chat tags, and oh shoot
I was going to make some premium only kits but that’s 100 percent pay to win
Yep, avoid that. :LUL:
Not sure what perks to give the premium people then 😂
Maybe trails?
Periodic premium cosmetics.
Hmm
Why do people buy hypixel premium?
They support the game from fun.
Oh okay
cosmetic, private servers and support the development of the server
Oh hypixel does have private servers?
yup
but that's only accessible if you have like MVP+
Oh okay
Well I don’t think I should have that on mine. At least from the beginning
you can make a party of 4+ and play on a private minigame entirely
Due to space as said previously
Mvp++
You also need a rank if you want to make a smp
Atleast used to
seems like they changed it again
Hypixel does have some huge whales, go in bedwars lobby 1 and you can basically get vip for free
Because people want a different colored +...
Are you able to choose your chat color? If you get a rank
well hypixel isn't hosting on 1 server, they have multiple servers for 1 big server
Oh yeah
I mean in mine
Haha I never knew that
i have vip+ because of it, i aint proud tho
Maybe not but it’s kinda funny
So I’m using scoreboards for my credit/money system in my server. Once the server goes live, is that still what should be done? Or is there a money plugin that would be better than doing a scoreboard?
Scoreboards are probably sufficient. They’re also easier to display in Tab.
Coinsengine is nice
For custom currency support
Alright.
So I gather that scoreboards work fine but using a plugin would be better?
Wouldnt use scoreboards (vanilla thing) in prod
It can get very laggy
With a lot of unique players
True but I think from the start it’d work fine
Start with something proper thats easier to setup no?
Switching later on is a hassle, not great and slower
Than just starting by using smth like coinsengine
Yeah you’re right. And if people get money in the scoreboard, then you transfer to a plugin that’d get messy
Sorry brain fart 😂
Only thing is placeholders
Coinsengine has placeholderapi support
Oh okay. I personally have never used it.
While maybe it seems unethical. I use scoreboards 😅
Hm okay
I’ll check out Coinsengine. Thanks for the help
That is unethical
I mean I get a steady player count of 1-200 players. Never been an issue for me.
And you never thought to move away?
Are we talking about the /scoreboard objectives things
Yeah. I’m in a bit of a weird situation let me explain
Basically, a friend of mine was running a server and didn’t want to anymore. So I ended up becoming owner and he had set up his server with scoreboards. He already had a steady player count of about 100 players so I didn’t really think it’d be good to switch since quite a few people had money via the scoreboard objective.
The server was not set up correctly to say the least 😂
Wow okay
Basically he originally set the server up as a friends mini game server, then kind of made it public as is.
Oh okay. Sucks you couldn’t change much. Mine is set up as a friends mini game server at the moment. A lot I need to change before it can go live
Obviously. Otherwise this thread wouldn’t exist 😂
Yeah. You should definitely go with a currency plugin. While I haven’t had issues with it yet, if my server grows more I’m kind of screwed. So don’t make that mistake. And as said before, try to get to know plugins well before you go public. Then you can make your own if needed.
It’s a ton of work. Make sure you know what you’re getting into
plugin choice is KEY
Especially on big scale
you have no idea how laggy plugins can be
^^^
Can you really know how laggy it would be on a big scale, without…being on a big scale?
elaborate?
Sorry. I mean, plugins can sometimes be fine with a smaller amount of players, but be laggy on a bigger scale if I’m correct. So how can you really know if they’d be laggy on a big scale, without being there?
Plugins can still be laggy on small scale
but things like spark give you an idea of what plugins are laggy
some things you can’t avoid obviously
but it’s hard to know, you can always do some testing
get maybe 10 testers on, make some spark reports and see what’s causing lag
Alright. That makes sense
And you can always double check here. Because more often than not, somebody has probably been in your situation.
One thing I’m wondering. With adding these plugins to my server, there’s a lot of commands that come with them. A lot of them are default to people who join, but I don’t want people being able to use some. Is there a way to just disable all commands for default people and just choose the ones they have? I thought LuckPerms could do this but I haven’t found anything.
LuckPerms sets the default to whatever commands the plugins make default. You could remove the commands you don’t want them them to have access to. That will take them away from the default group
iirc you can put a command in, then there’s a button that says false that way they don’t have it.
I could do that. I’m more asking if there’s a way to just take all of them away, then be able to just pick the ones they have instead
So it’s quicker and it’d be more organized
Uhh. I’m pretty sure you can’t. Think you’ve just got to remove the ones you don’t want them to have.
Okay thanks 👍
But keep playing around with it. I could be wrong
Oh yeah of course.
You can absolutely virtualise a bigger layout like that, you just need enough hardware and dedicated resources to replicate the load. Say 2 or 3 hundred gigs of RAM or something and like 30 cores of run bots that sim players.
Oh okay. Something I’d test when I get the server
So, this is kind of random. Well not really 😂 but you’ve been in this thread for a while, based on what I’ve been saying, since you’re a ServCity admin, could you give me a rough estimate on how much server space would be?
I'm actually not a servcity admin, neither am I Poncho. :LUL:
I stole his name, check my profile.
🤦♂️
I’m sorry 🤣
But I can tell you about server space. What info specifically are you searching for?
Haha I was just asking for a rough estimate on how much it’d be for dedicated hardware and stuff.
Well, the hardware price remains the same if you're buying single servers, goes down in bulk orders through suppliers.
Think a few thousand for a 9950X server with max spec.
Is that monthly?
Colocation tends to start at about $60/month/RU.
That's the entire server.
If you wanted to own the hardware you buy it or LTO it, then pay colocation price.
Ohh that makes more sense
If you wanted to rent it? You're looking around $200-240 USD per month per server.
Thats…honestly not bad.
It really isn't.
I was expecting higher to be honest. So by per server what exactly to you mean? Per node?
Per physical server.
Bare metal.
Ah
Thanks. That helps a lot
So how hard would it be to change from docker to kubernetes?
If I were to start at docker
It would be a learning curve for sure
Oh okay.
Extremely. Docker knowledge for the most part doesn't translate to Kube, not the important bits.
Oh uh okay
Think of Docker as a very simple abstraction of what Kube is.
It’s not like learning one skill that translates lots of parts to another, there’s missing data if you try going from Docker to Kube, you still have to learn a lot of design fundamentals.
Some bits do translate. They use the same YAML based structure, the same containers, the same build mechanism, etc.
Alright. So I’m gathering that Docker is better for smaller player counts and Kubernetes is better for higher?
Sorta.
Docker is fine for a majority of things.
You can run high playercounts on Docker with some custom software, Kubernetes is for you need a VERY custom layout.
Oh that makes sense
You don't "change", you will "add" Kubernetes to your server setup. Docker gives you an isolated, reproducable environment (= container) which you can deploy your minecraft server in while Kubernetes uses docker (or some other containerization software) to manage containers across different physical or virtual servers (e.g. scale automatically, provide new minecraft servers when the existing crash, ...).
Ohh alright. That makes more sense
So Kubernetes is more for scaling? I thought that’s what both of them did. Just different
Docker can’t automatically scale. That’s what kube is for. Docker has no way of knowing in what circumstances it needs to create, delete or change containers
Yes. Sorry that’s what I meant
An example of kube is you have a skyblock gamemode and people go to create an island, so kube creates another container for their individual skyblock instance. They delete the island or in some configurable way their island gets deleted, so kube deletes/archives/whatever the container. Same with lobby servers if you have a large network
I’d go with Kubernetes if you’re up for learning it.
It’d most likely be better for the server you’re running
Alright. Thank you guys for your input
On a completely unrelated note, what would be another good plugin I can use to display people’s ranks (via luckperms) in chat? I’ve been using essentials and essentials chat. But essentials really pisses me off.
LPC, carbonchat
essentialsx chat isnot good
Yeah I hate it. Only reason I got it in the first place was I was following a tutorial but now it’s proven itself to be very bad 😂
I’ll take a look at these
Also is essentials the plugin that makes operators’ usernames red?
yes
first line in config
Ohh right. Forgot
Alright I think I’ll try LPC. Looks like it can do everything essentials chat can do.
Understand that while I agree that learning Kube is rewarding, this is a multi year time investment. It’s not like Docker that you learn in a week.
Fair
Maybe start with Docker. Then as you learn Kubernetes you could eventually move to that. But you can do higher player counts on Docker. Probably would have to customize it a bit though
Alright. Think I’ll listen to a past message and focus on making the best possible product first. I have too many games right now so I think I’ll make a developer lobby with the in-development games and some games that I don’t want to release yet. Like I think I’ll start off with only 1 of each category then slowly release more.
1 each category? How many categories do you have?
PVP, Strategic, Horror, and Roleplay
Maybe mystery
How are you getting the players to the games? Are you going to use an NPC plugin?
Yeah most likely
Seems to be the most practical
Probably
Oh and going back to this. I have a roleplay city, and I was going to make it so if you pay credits, then you get access to an exclusive city. I was thinking of adding a casino where you can gamble credits (the ones earned by playing games)
That’s not pay to win is it?
Uhh. I don’t think gambling is a very good idea. The exclusive city is fine though.
Okay. It was more just a question. I didn’t add it yet
Anything where you gamble is never a good idea for a number of reasons.
I guess you’re right
casino got one of the most unique servers of mc blocked
with 0 hessitation from mojang
(origin realms)
so... dont
Yeah…
Maybe if I set stuff up a certain way
How do you mean?
Like. Maybe hmm
What were you thinking of doing originally?
just gonna say dont do it
Yeah…
getting blocked is not a good look
And people could lose their credits then…retaliate
That’s what I was thinking
What exactly do you mean blocked?
Might be a stupid question
noones able to connect to your server
your server gets put on twitter for being blocked and a website /shrug
Yeah but don’t I control who connects? I didn’t think servers could get shut down
mojang does
So they can't shut it down, just prevent any client from connecting to your ip/domain
Ah
well if you bypass enough they go for your host
like host then ip
Yeah okay
right
Oh also, do you think I need more than 1 lobby from the start?
Wouldn’t be a bad idea to have multiple. Sure a lot of people will be in games but still
ehh, i would say have em ready to be published
Hypixel has 27 I think. Definitely don’t need that much from the start. 1 could probably get the job done
but dont "publish" them
^^^
Release more as needed
2 lobbies already spread players out half, even before going into games
How would I send players to the least filled lobby?
Some custom impl maybe
or something like RustyConnector if it can do that in the future
@Juice
Okay
I’m guessing it’s the same thing for if players leave during a game?
LEAST_CONNECTED load balancer
Elaborate
there ya go
Thanks
If players leave the server at all, I want it to send them back to the least filled lobby when they rejoin
Literally just read like three messages, have no clue if that’s what ur looking for, just saw “filling up servers with the least amount of players”
Without looking it up at all it seems fine 😂
⤵️ Load Balancing | Aelysium Wiki
The wiki for all of the Aelysium's projects, including RustyConnector
Yeah got a few load balancing algos in here
Thanks I’ll bookmark that
Smh Juice, when is RC core getting the ‘cheats users go in the bin’ load balancer, smh my smh my smh.
RC builtin anticheat
I’ve been considering it actually.
Machine learning anticheat that doesn’t ban anyone, it just uses RC to yolo them into a hacker exclusive void.
mmmm machine learning
sounds like hell
Basically Homeless already has a machine learning system for this.
And it’s proven working recently.
Homeless?
Basically Homeless
YouTube
I Built a Robot that Plays FPS Games
In this video I build a robot that plays FPS games to emphasize the shortcomings of traditional anti-cheat. Then I provide a solution with WALDO, the world's first working visual cheat detection solution.
This video was made possible by Micro Center.
Shop Micro Center's Top Deals: https://micro.center/fb11a2
Shop Micro Center's Fall Savings E...
wtf cool
that’s still very different to an anticheat
there’s so many variables
No no, this displays using a machine learning bot to cheat, and then Waldo, the anticheat to catch it.
This proves Waldo can catch a bot watching a monitor and using a mouse and keyboard.
ah
That sounds awesome
A little harsh, but awesome 😂
there’s no harsh when it comes to cheaters
Yeah I suppose. But I feel like if it’s their first offense it should only be for like a week or something
I do agree with that statement though
Eh no. Because chances are they’d do it again.
first offence, probably a month
most hackers won’t bother waiting
just have an appeal system
Yeah. And what happens if it misfires? I get anti cheated in hypixel bedwars a lot.
Well definitely have an appeal system. I guess you’d need undeniable proof that it misfired
Hypixel’s AC is very advanced and they created Atlas for a reason
I second this. It misfires a lot during matches
Well not a lot. A bit though
I mean, you don’t really have many other options other than using polar or something
That one was 50 euros a month right?
yes for high playercounts
59 for a large server, 29 for medium, 15 for small
500 players you’d go with large.
Just read through it. So it says up to 600. If I have more do they stop their service in my server?
custom deal
custom
Ah
Polar is very good. It should work just fine with your server
Do they have a reporting system?
Or is that something else?
By reporting do you mean like
a system where players can /report someone?
Yes, like “/report player hacking in PvP”
you’d need a custom impl for that
Ah okay
and if you wanted something like Hypixel atlas that would be more complicated
What’s the difference? I’ve actually never reported a hypixel player with atlas
You could make a custom plugin for this. Have it send reports of hacking to moderators. And iirc there’s a replay plugin that records the last 2 minutes of gameplay so you could catch the person.
That wouldn’t be too bad once you know a bit about plugins
Hypixel atlas is where players (usually limited to players who are beyond lvl 50 in the gamemode) can watch ‘replays’ of the suspected hacker
and say whether they think they are or are not hacking
So kind of like a jury. That was a good idea
Yeah kind of. That’d be pretty advanced to make though if you’re thinking about it 😂
2223 messages. Jeez
Yeah. Also a video was sent here a little while ago about making plugins and I forgot to bookmark it. Anyone remember what it was?
How long ago?
Gosh probably a month. Never mind I don’t expect you guys to remember
Kody Simpson
likely
Kody Simpson’s spigot plugin series
That sounds familiar. Could’ve been it
here it is
No way you found it
That’s crazy
There’s 90 videos in it by the way
scrolling lol
Wow. Well there’s a lot to learn 😂
i haven't seen it but it probably doesn't cover half of what you can do lol
Yeah but it will definitely help you get started
It’s worth it, trust me
honestly I just watched the first videos where it does the basics
then scrolled through and watched what I liked the look of
and then looked at his advanced series and started screwing around with it myself
When I swapped some of my most advanced datapack stuff into plugins it took me a matter of hours to swap it and performance and ability to do things went way up lol
plugins can do so much
oh absolutely
it’s a really useful skill
A matter of hours?
I had a bit of plugin experience before, but knowing how to read and being willing to ask questions sped up the process significantly
I didn't even use videos, I used spigots plugin development guide and asked questions in PaperMC and SpigotMC
Oh okay
FAFO is the best way to go imo
Think I’d just keep this thread open and ask in here. If nobody knows then I’d ask in Paper/Spigot
fuck around, can’t figure it out ask questions (here or wherever), google it etc
then repeat
Haha good advice
and increase the complexity of what you’re trying to do as you go
First thing I’d like to do is probably make a custom command. Probably relatively simple at the start
check out https://cloud.incendo.org/
it’s a command api and it’s VERY nice, especially their annotations
it’s kind of hard to get a hang of initially
or just stick with basic Bukkit
or check out CommandAPI
Thanks
Oh does Kody not go over that?
its very preferntial
preference*
for some things and new things come out
Kody goes over normal spigot commands implementation
But as you add a lot of commands it gets very messy and you either live with it, make your own impl or just use an api which makes it 100x easier
Sorry, what do you mean by impl? I thought you meant make my own plugin when you said that
implementation
so your own commandManager system
Ah
^^
So I did know. Never mind then 😂
So I’m guessing an api has templates to go by?
That’s why it’s easier?
kind of yeah
It handles the heavy stuff for you
example ^
https://github.com/TerraByteDev/SkyFactionsReborn/blob/main/src/main/java/net/skullian/skyfactions/command/faction/cmds/FactionCreateCommand.java
I use cloud command api for their annotation based stuff
Ah okay. Thanks
By this you mean “I’ve been considering asking juice to write more free software for me”
Nah. This requires someone with more knowledge than you have. For the kind of scaling I’d need it really does need to be in Rust or C.
Otherwise that kind of service is going to demolish my poor Kube cluster. JVM overhead isn’t a laughing matter.
Or ig Java would be fine if I redo the servers as Minestom.
Yeah tbh I ain’t fuckin with anticheat stuff
@AeonRemnant Random question. What’s going on with your profile picture? It shows a red eye in your chats, but when I click on you it’s different.
Basically I stole Poncho's profile and he has mine, the red eye is my normal.
lol
@-Joey Do you plan on doing a separate lobby for games? Like how Hypixel has a Bedwars lobby and so on.
For some most likely. Like the more popular ones, and ones like KitFFA which would have kits to buy before you get in the game
Alright. That’s fine
So I have enforce-secure-profile as false in my server due to the fact that without it I can’t chat. Is it bad to not have on? And why doesn’t it allow me to chat when it’s true?
mojang being scuffed, its fine to have off
need it for geyser etc aswell
Alright. Thanks. Also this is another random question, what’s the reason geyser has you put a prefix at the start of people’s names? I thought I saw it was so usernames don’t collide but that seems weird to me
@-Joey
joeytubehd has reached level 3!
Roles Added:
Level 3
Yay level 3 XD
why is that weird? bedrock can have the same name as a java user
making them collide and do very not good things
That was more what I was wondering about. What’s the harm with having the same username? (might be a stupid question my apologies)
anything that doesnt use uuids, inventories should be fine actually due to playerdata being uuid based? ig
Ah okay. Don’t know why I didn’t think of that.
So you have server owner role. Does your server have bedrock support?
currently dont run one, but the ones i setup usually do yes, and i manage a few dedis for servers that do
Random question. I’ve been using Visual Studio Code for my programming. Kody uses IntelliJ. I’m probably fine to use Visual Studio right? Just thought I’d check before I downloaded it
i would use intellij
its made with java in mind
and has development plugins for it for mc
Oh alright. That makes sense. Thanks
This isn't really a straightforward answer and VERY much depends on your own style, not what everyone else is going to tell you.
Everyone will tell you to use Intellij for Java and other tools and IDEs for other things, this is very much a valid way to program, but it also depends on your particular workflow and testing methodology.
If you're the kind of person that uses Docker to test your Java code in automated ways, or uses Ant to test Git workflows locally for the same reasons then VSCode is probably a better fit for you specifically.
If you're doing multilang projects where you frequently change from Java to Go to Rust then Zed or VSC might be a better pick.
If you're the kind of person that likes to use keybinds over GUI elements then Vim/Neovim/Zed are going to be better than VSC or intellij.
Experiment with all of the options, see which one meshes with you the best.
Hell, some people don't even like Git to be integrated with their IDEs and thus use something like Gitkraken externally and a lightweight IDE to run their code projects, this style usually overlaps with the Vim and Zed crowds.
And this is not to mention people that use remote editing, like if you want to write your code on an Ubuntu VM with your UX on your main OS then Intellij is functionally a cripple for that over VSCode or Zed.
It depends on your taste, don't let people railroad you into theirs.
ok how did public server hosting turn into coding
OP asked a question.
oh
same thing
I’m using datapacks at the moment and part of getting my server public is transitioning to plugins. So I’m just asking some plugin development questions here.
ah ok
Some threads turn into this #general chat like thread where OP is asking ALL of their questions, no matter how unrelated, in a single thread.
I am by no means a staff member but I think we can all agree they should be separate threads
Way more organized, and if someone searches through #questions with their issue, they can find threads dedicated to specific questions, not this general random question and answer thing going on
Honestly man? He'd have made like 18 threads by now. For people asking a million not really in depth questions I'd rather just have it in one thread.
By no means do I think every question should have their own thread, but I think grouping questions together is helpful for anyone stumbling upon the thread to get anything out of it.
“How do I set up my server” is one thread
General plugin recommendations and discussion is another thread
“How do I get started in plugin development” is another thread
Not trying to be some dick telling people what to do I just think it’s better that way than a thread consisting of 1000 questions that end up completely unrelated from the original post
Yeah that's fair.
I agree with your statement, but these questions tend to come up mid conversation so it’s easier to just ask in here while people are actively chatting.
And everything I’ve asked has all tied back into “public server hosting”.
If you're the kind of person that uses Docker to test your Java code in automated ways, or uses Ant to test Git workflows locally for the same reasons then VSCode is probably a better fit for you specifically.the precommit git hooks work perfectly fine in all jetbrains IDEs?
If you're doing multilang projects where you frequently change from Java to Go to Rust then Zed or VSC might be a better pick.Idea has plugins for Go, Rust, Javascript (built into ultimate?), PHP, etc. As far as I know, you only need to use the dedicated IDEs for C/C++ and C#. Those aren't available as plugins for Idea
If you're the kind of person that likes to use keybinds over GUI elements then Vim/Neovim/Zed are going to be better than VSC or intellij.Idea and VSCode both have plugins for vim keybinds
1. They work fine but there are better extensions in VSC for more fine grained work. Not usually needed, but they are better nonetheless.
2. Ok cool and that's langs that don't have extensions which is weird.
3. Zed is outright a better experience than both atm, idgaf if the others have extensions for keybinds, Zed is built for it.
I should also mention that idea just works over SSH and runs the IDE on the remote machine as a server. It's been a built in feature for the past 3 years
VSC has had it since the dawn of VSC lmao.
It really hasn't
I mean through that one extension everyone and their cat uses.
Was made very fast.
you guys might as well rename the thread..
Everything ties back into server hosting in my opinion. And I didn’t expect it to turn into this 😂
ikr
but it keeps things nice and lively
rather than dull and serious env
Fair
Hey so you guys said I shouldn’t use scoreboards for counting player credits. So a few questions
1. I also want to count player wins, so is there a plugin to use that’s like scoreboard objectives that way I can count Credits, Wins, and Levels
2. Can I use scoreboards for counting how many plays each game has?
1: use a plugin called server variable for that
2: you could but its way more complicated then just using something like placeholders
if your on spigot based server
It’s a paper fork
yeah then do that
How is using scoreboards more complicated than using placeholders?
I feel like placeholders would be for displaying that
depends on your game style
since placeholders are stored better most times
it also depends on how your game works, if it is datapack dependant (like something executes when you win through a datapack) you might be better off using scoreboards as its hard to get plugin commands working with the vanilla minecraft command syntax
My server is datapack based at the moment but am making the switch to plugins
Hmm okay. How would I display how many plays each game has with placeholders?
I assume it’s a plugin for papi
If you’re wanting to implement custom placeholders you’ll have to make a custom plugin that registers a placeholder ‘expansion’ to create new placeholders
Oh okay. I’m getting through Kody’s tutorial slowly but surely. Hopefully I’ll get there soon 😂
Kody doesn’t have a tutorial on PAPI afaik, but PAPI itself has a nice guide on it
The creating a plugin part is more what I meant but I’ll try to find a papi guide
Just use server variables plugin, doesnt require any coding
I’ll check that out
Question. Only one word... BungeeCord?
One word…. Begone
Use Velocity
it’s more modern, more up to date
Was about to say 😂
plus you have some really cool tools like RustyConnector on velocity
Oh alright. Thanks. Only reason I ask is Hypixel uses BungeeCord. So was curious
Well Hypixel is older. And I didn’t even realize they use BungeeCord.
yeah they use bungee
and tbh, it’s one of those things that you use and you don’t move from
Clicking F3 you could see
especially on hypixel’s scale
no point in remaking all their proxy plugins to support velocity
Yeah but I never realized that 😂
Yeah makes sense.
It’s very satisfying learning this stuff then coming back to messages I didn’t understand and understanding 😂
This is so true.
To give you a bit more info on proxies, all a proxy needs to do is move traffic from point A to point B. The type of proxy you use doesn't really matter if you have developers to actually do things. For example Minekube Gate is likely much higher perf than Velocity has any hope to be.
And by the Kube I gather it works with Kubernetes 😂
Nah, it's just a name.
Oh..
Minekube has no relation to Kubernetes. :LUL:
Interesting name choice then
So this is a better choice than Velocity?
If you have devs.
It'll perf faster, but need more work.
Look into both see what would work better for you and your server
^
Alright. Still am a bit iffy on giving other people access to that much though.
Oh definitely. Hiring devs and moderators is hard.
Want a big secret? You don't have a choice.
You MUST trust them.
Inability to trust in the motivations of a dev means you don't have a dev.
^
Yeah I know you guys are right, I’m just a bit paranoid
Just make sure you’re thorough when hiring
You'll learn how to be less paranoid. Just make sure you pay attention.
It's one thing to give people access, it's another thing to give them access to everything without safeties.
At the start it can be scary. As said, you’ll learn to be less paranoid.
Probably the biggest lesson is when you lose a month of dev time because you tried to keep everything too safe.
Just make sure your API keys and RBAC are safe, those two alone will stop 70% of issues.
Noted.
Hey this may be an odd question. But as an extra precaution, is there a WorldGuard type thing for the server if somebody does decide to try something?
Define 'the server'?
Sorry may have been the wrong word. Protecting anything a dev has access to
Ah.
Well yes, there's a lot of ways actually.
Firstly RBAC, Role Based Access Control. It does what it says on the tin.
Secondly SSH keys, forcing access to critical resources over secure tunnels is a must, makes it easier to attack resources.
API keys for automated deployments and testing are also a must, if someone gets access to a key you don't well want them to have full control.
Oh okay. Thanks I’ll look into those.
You have VPNs, bastion servers, simple backups, internal domains, even things as easy as not using passwords to sign in.
These are all little pieces of the cybersecurity suite.
2fa!!!
ish
2FA, yes.
Hardware MFA as well, things like a Yubikey.
If you really do need to be certain only that dev has access, make them sign using a Yubikey in a passwordless way over an SSH link through a tunnel on an internal domain.
There's not a good way to attack that surface and every hacker knows it so they won't be trying there.
That sounds good
And to defend against internal threats? Backups are THE key.
Take them frequently, test them frequently, an untested backup is not a backup.
Oh yes. If I were you I’d make a backup at least once a week.
Full backup once a week, incremental backup twice daily.
Keep the lasty 6 dailies, the last 4-10 weeklies.
What do you mean incremental?
basically where rather than taking backups of everything multiple times, you only update what was changed
Think about it this way. We’re gonna take a backup of that weekly snapshot. This will include heaps of random ass files that aren’t likely to change, so why back them up on the dailies?
so you take one big backup of everything, then, lets say only 1 file changed, you only back up that
Ah
Ergo you can get a ‘full’ backup by merging the last full with whichever incremental you want.
Makes sense
Never underestimate how much space that can save. Thousands of TB…
but still, occasional full backups are useful
Yep, once a week at minimum.
For mission critical shit such as databases it's not uncommon to see a full every few days.
This is a good idea. I even have a separate drive just for backups 😂
Right I should mention that as well, thanks.
@-Joey I cannot stress this enough, and I've never had a greenie listen to me on it, but I'm gonna tell you as well.
BACKUPS IN THE SAME PHYSICAL AREA AS YOUR MAIN STORAGE ARE NOT BACKUPS
^^^^^
3, 2, 1
Skullian knows.
three copies made of the data to be protected
the copies are stored on 2 different types of media
1 copy off site
Data Backup
3-2-1 Backup Strategy Explained: Is it Effective? | TechTarget
What is the 3-2-1 data backup strategy and does it work? Learn more about this methodology for data backup and recovery, and its steps, applications and challenges.
Remember, 1 is none, 2 is one, 3 is done.
Stay to the damn rule.
Thanks
I will 😂
Almost 4 years using Discord, never knew you could make bigger text like this.
Yeah nah any markdown formatting works.
I’m definitely regretting some decisions I’ve made with building my server
That can happen 😂 and like what?
Well for 1. Building everything on the same world.
I run my stuff on the same world. But I do not recommend it. I think I might change soon. And I personally have never used them, but WorldEdit schematics I think can copy builds between worlds.
So uh this is random
My server’s name is PlayCraft and this version of the server was made May of this year. But I just found another server named PlayCraft and I’m wondering if my server could get taken down or something for using that name.
That one was made in 2021
honestly
if you’re small then they probably wouldn’t
but if you grow it’s a possibility that they could take action
Well that server is pretty small. Today they have 1 person online and that’s the most I’ve ever seen honestly.
Oh okay that makes sense.
Sucks. This server’s had 3 names over the years and all of them are taken 😂
Does it have placeholder support so I could use it as a display condition with tab?
Sorry I made you wait so long 😂
And is there a limit to how many I can do without lag? I'd like to use this for a lot of things
Yeah
The plugin itself shouldn’t cause lag at alll
Server variables is well made. You should be able to make everything you need without lag.
Would it be possible to have my server be Pufferfish for each mcserver but then have a few on forge with war mods installed?
Those forge ones would only be for specific people. As in not public
velocity does have support for forge to some degree, check out their docs there’s some extra stuff you have to do
Oh okay. Thanks.
We have uploaded your file to a paste service for better readability
Paste services are more mobile friendly and easier to read than just posting a file
hs_err_pid4940.log
Requested by joeytubehd
Sent this in wrong thread. Apologies
smh!!!!!!!!!!!
Haha sorry
I have a pay to win question. People can get Credits within the game to buy stuff in that game. But it can’t be bought with real money, and the credits are game specific. Is it pay to win?
No.
That’s earn to win.
Pay to win is if they have any mechanism by which they can accelerate getting credits over gameplay.
Okay. I assumed but thought to ask. I will have credits that you can buy but I’ll do it like hypixel and it’s for cosmetics and ranks
Yep, make sure you can only earn them if they have gameplay benefits.
Cosmetics are fine to be earnable and buyable.
Alright thanks
Honestly I may even take credits earned from games out completely and make things like kits in games, you earn xp and get them
if credits can't be bought and items that can be sold for credits can't be bought (ie: hypixel skyblock booster cookies), then that's fine
That was another thing. I was thinking about letting people return kits for example. But I’m not sure if I should because people could abuse that easily
Not the same thing I know but it came to my mind when you mentioned selling things for credits