#folia-help
1 messages · Page 23 of 1
And when you start getting more and more cores, you start losing out on single core perf, so individual regions can handle less
The best hardware for the job is going to depdn on your players and their spread
like, if you have everybody spread out like crazy, yea, a eypc looks really attractive for the sake of its core count
otherwise, you're generally stuck between thread count and single thread performance in order to find hardware powerful enough to support your players regions as they do stuff in them, but to also have the work spread that makes it worth adopting folia
a 1 core CPU means that you're going to generally lose out, but, who knows, maybe the OS scheduler ends up working out nicely in terms of masking it
4 cores is hardly above the minimum for a standard MC server, but, will have some benefits over running paper assuming you're not overloading it with plugins; it's just, is it worth breaking all of your plugins for the sake of folia at those counts/scale?
@viral stone
yay
cat’s name says no ping.
did you even see what was here?
ok
So folio is the same as paper but with mutlithreading to improve performance?
Folia can use more threads than Paper, yes.
Folia is a fork of Paper that adds multi-threaded region support. Many plugins will require updating to support Folia. There is no ETA for publicly available builds.
For more information:
Folia will:
- NOT be backported to older versions <1.19.4
- NOT be merged into Paper
- NOT be ported to Fabric nor Forge
Stay tuned to #announcements for any further info about releases.
How much of a difference does it make?
Depends massively on your playerbase size, server style, and avaliable hardware. For 99% of servers, they're best off sticking with Paper
That depends on your specs, the type of server, the behaviour of your players, and many more factors.
Interesting, where would it benefit? Like with specs and all the factors alligning that would make folio beneficial, how would it be beneficial? WIll it just run generally faster?
I'm just trying to find where it would be beneficial to use folio vs just sticking to paper and what that difference looks like
as per the FAQ
What server types can benefit from Folia?
Server types that naturally spread players out, like skyblock or SMP, will benefit the most from Folia. The server should have a sizeable player count, too.
Folia is slower than Paper if your players are in the same region
Huh why is that so?
it adds some small amount of overheads to the entire process of ticking
Also would it be benenficial when your server has multiple worlds like say 50 worlds and 100 players in each
Assuming your hardware is good enough, yes.
Huh, okay thanks!
Why not multiple servers, in that case?
Nah I was just putting out an example, I'm not trying to do something, just learning
I see
So you’re saying even 4-core folia would have performance benefit over running Paper?
in the right cases, yes
I run an SMP with a 40k diameter map
Playercount always topped out at 130 (with massive optimisations) before lagging
great, but do you have plugins
Yes, 55% of them are compatible/have compatible alternatives
~15% are self-dev and the rest I’m still waiting on updates or alternatives
there is no guarentee that itll run faster. youd have to test it
Yeah I know. I have the recommended core-count for folia anyway. My main thing actually is that I want to cut back on entity and hopper optimisations to make player experience better
And only way I can hypothetically do that is if Folia improves performance massively
how many cores do you actually have
not sure why you need 2 proxies on 1 machine
Hence why I’m asking if I can go lower than 16 and how much lower I can go while still experiencing better performance than paper
I have 2 SMPs
so?
2 minigames servers for my main SMP
So in total that’s 5 servers that aren’t my prospective Folia server using up cores on the CPU
If it comes down to it I’ll just end up renting a EPYC machine from hetzner if I really need to
the recommended specs for folia is 16 cores, assuming your giving all of them to folia. by running other things, you go below recommended
I know that’s the recommended but I have doubts that that’s the absolute lowest you can go while maintaining good performance.
There's not much data on this
Even if there was, it's too unpredictable, even more than Paper
is the /data command not available in folia?
or rather why is the /data command disabled per chance?
yes thats the commands that are disabled, but is there a reason? are they hard to implement?
Anything that's disabled is either difficult to implement or broken because of regionizing. Some of the latter just won't be fixed at all. Some may.
What do you think about this fork? According to the developers, it can fix a lot of problems with folia and will be able to support more plugins, but I still don't see it being very popular anywhere:
https://github.com/LuminolMC/lightingluminol
I mean, we don’t support forks and don’t have the capacity to analyse every single one; but, most of the “make bukkit plugins work” are basically throwing our safety checks at the risk of introducing crashes, or, by adding logic which basically slows the thing down
If people have actual solutions for issues, the project is open source, we just recommend talking to leaf first
not to mention thats a fork of a fork
Hello
When the server reaches an average of 40-45 players, it suddenly resets the server by itself in the middle of the game. Even though there is no error warning from the console. What could be causing this? There is no crash, but when the number of players reaches 40-45, the server restarts itself.
Sounds like a memory thing.
But I believe you’ve been told before that we don’t support offline mode servers.
I think so too. However, my server has 90gb of ram. The machine has 128GB of RAM. Isn't this RAM enough for 45 players?
As I said, we don’t support offline mode servers.
I believe this is absolutely enough.
You have 90gb of RAM allocated to a single server? Is that normal for Folia?
Yeah
90GB ram is only for survival server.
So, why does the server restart itself without any crashes when the online count of my server increases due to RAM? Could it be because of the flags?
I mean, if you set Xmx too high and the OS kills it, that could cause such issues
I got support for flag installation from here. so there shouldn't be any problem
I have no idea what support from here means in regards to your OS setup
you would need to check dmesg to see if there is any information there that petains to the OOM killer
I'm using Debian 12, which is the operating system everyone generally uses for folia.
otherwise, all you can do is keep your eye on console
I mean in terms of your memory utilisation, how your panel is setup, etc
I understand it's all based on pterodactly. Actually, they are all standard installations, we did not do anything special.
I'll try checking dmesg.
and your container allocation?
What do you mean by container allocation?
the amount of memory you've said that the container can use in ptero
If your container has a memory limit that is less than all the RAM on your system you can hit the OOM killer or just fail an allocation (which most programs respond to with an exit() call) even if you aren't actually running out of RAM
Ahh I see, I'll check that.
There is no "normal" as it depends. Anyone givin you a number would just be pulling it out of their rare
Right ok. Would it typically be higher than for a normal Paper server? Because I noticed above in chat some guy said he had 90GB allocated and people acted like that was normal when obviously that would not be normal for a Paper server.
So, I don't understand correctly, I want to make sure that if my server is running on 90 GB of RAM, I need to give pterodactly more than 90 GB of RAM, should it be a number like 91 GB or 95 GB?
¯_(ツ)_/¯
If your Xmx is 90GB then you need to allow for more than 90GB, yes
I think the general rule of thumb was 30% more but at that level perhaps that isn't true
No, that's not normal and that person is likely dont know what they are doing.
Thank you so much for helping me. I think this is where the problem really starts.
How would you like to disable oom killer? Is this a healthy method?
If you disable the OOM killer your server will just die
set the memory limit to 0 or whatever
Disabling the OOM killer disables overcommit, lots of programs "allocate" a ton of memory they never actually use due to things like mmap'ing files or doing tricks to optimize based on a particular address space layout that has big holes in it
All those programs will just fail to run
i'm assuming that they mean pteros killer
set the container limit to 0 and let the OS deal with it rather than being constrained to the containers limit
ofc, you still need to ensure that the OS has plenty of ram free, etc, etc
What you say sounds good
I understood thank you
This is what you're talking about, isn't it? It looks like 512 as standard. I'm going to make this 0. Is it necessary to restart the minecraft server after doing this? Or do I need to do anything for the pterodactly to recognize it?
How can I see the memory limit I set in ptero or where can I control it exactly?
this one you talking about?
then yea, that is probably fine
So that's not why the server restarts itself?
I will make it 0.
50 players shouldn't be using 90GB anyway, like even with the general rule of thumb that Java will use what you give it I can't see it actually growing up to 90GB unless it's been running for hours
I'd be more likely to blame a bug in ZGC
If it's the OOM killer you should see a message in console that says "Killed"
Do you think the problem is having too much RAM? It's okay when there are 35 players. But when we exceed the 40 player threshold and approach 50, the server resets itself.
It won't get logged to server.log or whatever though, you'd have to be able to see the actual tty the server is attached to
I looked at the server console logs and there is nothing saying "killed".
I really don't know what to do at this point.
There are, as far as I know, only 4 ways to stop the server.
- Shut it down normally which will be logged
- Kill it via signal which will, depending on the signal, either do a normal logged shutdown or just say "Killed"
- Have a JVM crash which should output a crash log file somewhere
- Unplug the server from the power outlet, no log of any kind
well, ptero has those dumps sent to /tmp iirc
So either you have a log somewhere, you have a whole machine crash/power loss, or it's the OOM killer and you just can't see the "Killed" message
I will check
Now I have my settings like this. Also, OOM killer is already in disabled mode. I thought it was open.
If OOM Killer was disabled, it was not possible for me to see this log?
I thought it was enabled
I mean, /tmp inside of the container
and disabling the OOM killer there just basically causes the container to freeze instead of killing the process
So is enabling it a better option at this point?
Yes I found the file but I don't have access I need to fix this
whats your server ip
you can send me dm?
Amazing how if you nag enough and at intervals far enough apart, people will help you even if you're in offline mode.
(65ffa95f2d5bd6481a0648e1) // @full anvil (@tommasino / 627264586483105823) has been banned by @fair merlin (188417437295706113)
Reason: Scam spam
<@&748618676189528155>
@arctic tapir
I'm wondering, together with my friend I'm running a very heavily modded Forge server, are there any ways to keep that server and mods whilst integrating Folia or is that something for them to develop? The server is a dual Xeon 14 core setup with 128GB of RAM but now when we blow something up with TNT, run some redstone farms or fill a lot of blocks, we get lag and sometimes even a crash.
Forge and Paper/Folia are pretty different. No mods work on Paper/Folia.
So you'd have to look and see if you can find plugins that would duplicate whatever you're currently using as mods. Some stuff has a plugin counterpart, some doesn't.
You need hybrid server
Paper strongly discourages using any kind of "hybrid" setup.
Also AFAIK there is no "hybrid" Folia fork.
theres a way to do that with paper but not folia as folia is extremely beta
im pretty sure its called MhoistMC
but i recommend you use SpongeMC instead its got its own plugin system and its alot more stable
its a proper hybrid
Np
We mostly use the create mod
Yeah that's pretty involved, don't think anything remotely like that has been done in a bukkit-based server
But, again, on a "hybrid server" you're basically getting the worst of both worlds. It's going to be slower than just Paper or just Forge.
the fastest hybrid server is Banner.
Okay, but isn't that something you can "fix" with using multicore?
I mean, it's got 56 threads
You could try it and see I guess. I don't have much forge server experience. The create mod is pretty heavy, though.
Either way, for more info about those server softwares you'd want to find their Discords and ask them.
you can try the "Performant" mod for forge its supposed to ease alot of server load
They might be able to direct/help you more.
Yeah, thanks. I just ended up here because Folia is supposedly the only real multicore/thread MC server so far
Paper is multi-threaded also. Folia just has multithreaded regions.
theres also a forge mod called MCMT which uses multi core but its a buggy mess
It appears Banner is Fabric+Bukkit, that gives an opportunity I guess. Reading into it, thanks alot guys!
Yeah, I haven't read much good about that.
Does anyone know if there is a way to get the command blocks working?
The ones I put in do not execute the command when touching the button.
And I need them a lot for this new server 😦
you shouldn't need/use command blocks, that's what plugins are for. Also check out the list of disabled commands https://docs.papermc.io/folia/faq#what-commands-does-folia-disable
I have not yet found a plugin compatible with folia, that allows a user in survival to perform tp only to 3 or 4 predetermined places.
That with the command block solved it wonderfully and it worked very well
They made small spawns in different distant cities so they could go from one to another.
Unfortunately command blocks are likely off the menu for Folia. At least for the foreseeable future.
I'd imagine getting command blocks working is doable, they're just block entities
your biggest headache is going to be that most of the commands you'd use inside of command blocks are disabled becuase they assume that they have access to global state
how do u even install folia
you need to compile it yourself
these are called warps
i believe essentialsx has a folia branch
no existing forge/bukkit hybrid will ever support folia. afaik, every current hybrid just attempts to implement the bukkit api on forge or fabric. you could implement the folia api on forge somewhat easily (about as easily as the rest of bukkit), but its not the api that adds regionized threading. you would have to port all of that internal logic to forge, and just like how folia breaks most existing bukkit plugins, it would also break forge mods for the exact same reasons, making such a thing quite pointless. the "easiest" way to get a forge/folia hybrid would probably be implementing support for loading forge mods on folia (either as a fork of folia or as a plugin), but this would still break nearly every forge mod, again rendering it mostly useless for that purpose
you providing a copy pastable list of commands really defeats the purpose of why there aren't any downloads to begin with, doesn't it?
it still takes some skill atleast!
yeah you gotta be able to find the control, c and v keys on your keyboard
The main problem is command blocks need their commands to give a response the same tick for their redstone interactions but most commands in Folia are not going to be able to do that because they need to shift to the global scheduler or specific region/entity schedulers to do their work
I don't think that's going to be fixable
So you could have command blocks run commands but not give an output, I guess
Then you get back to "a lot of the commands they want to run are disabled" and that's a whole thing too, some of those are likely never coming back
Well, that is the fun host of caveats
theres also actually a bukkit issue I forgot about which has long caused some fun issues
message.txt by @jagged hearth: https://pastes.dev/sY8AckFv16
I'm going to guess that that is either not folia, or that skript is dum
What breaks command block chaining etc, right?
The big issue is that many of the commands that people use commands block for assume that they can touch global state
They could be fixed to work, but theres a few headaches and caveats that I don't really see there being a big strong priority for them to be patched
hello there
I have a problem if I join to folia server via velocity and modern forvarding with client vanila no problem but I join with client a fabrick it's dont join me to the server.
How fix this? thanks
My english isn't be great sorry
latest.log by @warped mural: https://pastes.dev/OXIDe6G0wh
Maybe try to figure out what mod is causing the issue?
Would there be any harm in loading my world with regular Paper after I used it with Folia? I got some world editing to do and I don't think there is a worldedit fork for Folia
should be fine
I also have Velocity on Modern Forwarding and using Vanilla and Fabric. I am able to forward to Folia just fine. The only difference I have is that I go from Velocity -> Paper (lobby) -> Folia (server). Perhaps that might help isolate your problem. Also disable all your mods on Fabric and see what happens
voting to have a separate donor pot for folia
Yeah that ain’t gonna happen.
It’s a Paper project so it falls under the same bucket. I don’t think Leaf has GitHub sponsors setup though. Not sure there is any way to directly sponsor/donate to him.
directly put aside money for the big expensive test servers
@subtle fjord there you go ^^
Now leaf can upgrade his cardboard box under the vancouver river bridge to a water resistant one 
vancouver might be a bit too expensive
ok
no posts

Yeah, guessing it's mostly a way for people to sponsor him because he doesn't do Github sponsorships.
Maybe he'll post something there eventually?
Error be in a mod it´s works if I delete all mods
what should I do?
Read it
above that
Where?
I mean if you are able to read what you should do and don’t know how to configure git folia might not be right for you
But
Read the part where it says that you should tell git who you are
I have a problem: when 15-20 people gather in one place, the lowest region somehow gets overloaded, and in this area, players experience a significant drop in TPS
When players play separately, everything is fine.
sounds expected
Yeah that's how Folia works
A single region is going to be somewhat less efficient than just running a Paper server but should generally be similar, sounds like with whatever hardware you're using a single core can't handle more than 15-20 people doing whatever your players are doing
Is it possible to configure this in any way?
It's not great when people gather to spend time together and the server gets in the way.
configure what about it?
You can do the same performance tuning as with Paper (turn down mob spawns, lower entity activation and tracking ranges, etc) otherwise your choices are get better hardware, keep your players from doing that, or just accept it
There is no way to have multiple regions that overlap (or even get close to touching) so when players meet up they all end up in one region and you are effectively just running a less efficient Paper server
Thank you for the explanation.
feels like a weak cpu, a region won't be that much more laggy than a paper server, and paper can handle a lot more than 15-20 players
When was folia added to the paper api? I didn't think it would get added until folia was considered finished and stable
Folia is still in active development. The API isn’t really connected to that.
Will it remain in the active development phase for a long time?
Unknown. We don’t have a timeline.
I mean it’ll be “active” in the sense that it’ll get updated with new versions and bug fixes either way.
But it's not going to be abandoned?
That would suck
Not planned to be abandoned, no. If Leaf were hit by a bus that might change.
project with bus factor 1 
Sounds like an intricate plan to gain ownership of the project
"your honor, that couldn't be me driving the bus, for I can't see properly"
He's going to be Isekai in the world of Minecraft if he gets hit by a bus
Truck-kun (or Bus-kun) makes another victim.
Folia is a fork of Paper that adds multi-threaded region support. Many plugins will require updating to support Folia. There is no ETA for publicly available builds.
For more information:
Folia will:
- NOT be backported to older versions <1.19.4
- NOT be merged into Paper
- NOT be ported to Fabric nor Forge
Stay tuned to #announcements for any further info about releases.
lots of folia's api was added to paper in 1.20.1
https://github.com/PaperMC/Paper/pull/9360
(you can check the version by clicking files changed -> ... on one of the files -> view file -> in "Paper/patches/..." click Paper -> check build.gradle.kts)
oh, yeah, the download link for build 28 is working
shh
(it's been there the whole time the project has existed)
Same as anything else though, no sharing 😛
People have to figure it out themselves
Will folia come out one day as a jar or is it created so that everyone can compile and modify it???
Likely will one dat
⚠️ Please do not share any links to builds of Folia at this time. We are intentionally not providing easy to find/obtain downloads right now - when the time is right, everything will be available through official PaperMC distributions.
@tranquil epoch with this commit, would you be able to use methods on bukkit entities that are not added to the server? For example if you wanted to create an entity with NMS only to use as packets, but its not actually on the server.
https://github.com/PaperMC/Folia/commit/3a91a4a5cfc8ead0fb0014341c6d1d4bc94c85fb
what?
if the entity is not owned by a world, i.e. it has not been added to the world, it is mutable from anywhere
Basically I want NMS enties for packets, but then we use the getBukkitEntity method to mipulate them (so we can limit the ammount of NMS we use)
Yeah but the thing is ig you use the bukkitEntity for the entity that is not on the server, it was still subject to thead checks
On paper that does not mater, and it works just fine, but on Folia it would not work cause of all the thread checks, but I think its now doable with this commit
Yes, which is what I said
if you've not added the entity to the world then it won't be bound to the region check
Oh, I must have missunderstood
Ok sweet, cause it was not like that before. I avoided adding folia support, cause all my entity NMS would have needed to be rewritten to avoid the thread checks
And by that I mean just using all the NMS classes rather than the bukkit ones
no, the check only allows interaction off-region
Ah alrighty
What are some glaring issues with Folia that still need fixing before PaperMC releases is it as a .jar
there are varying todo list scattered around
idk what the minimal completion of that list for a release looks like, however
Hello. Have anyone ever tried using folia on a 4 core oracle server? I really wanna know if it provides some gain in server performance with so little cores if any at all. Thank you in advance.
Use paper
Can I use folia with 150 players on Ryzen 5950x 16c 32t server? (for just an event)
also the view distance is gonna be really high something like 16-24.
Sounds reasonable if the players are very spread out
they are not spread out, they are in a 1.5k x 1.5k custom map.
I mean, that's pre-generated
Then Folia will be likely slower than Paper
Oh I see
do it in C:
.
wlep im blind
That was not the issue xD (And I'm sorry Im not sure if Im allowed to reply to your messages or not), basically the path where my Folia folder was too long which effectively didn't read paper
So if someone has this issue put your Folia folder you got from github directly onto the C drive
Yeah that’s been common on windows.
Heeey. What CPU architecture is your server using and how did everything go with folia? (if you even came to test it)
You generally don't want to use ARM CPUs for Folia.
I see, so it really need those threads
Yes.
Even high thread count ARM CPUs wouldn't be great probably.
But at only 4 threads Paper would almost certainly be faster.
Ok, thanks a lot
I did not test it.
can folia run on 8 cores
"can" yes
what about 4 cores
would running folia on 4 cores have benefit over paper
yes it can even run on 1 core
prob not mutch
maybe, probably not
unless you're running in an environment that is too contrained for paper to run, folia will generally ofer some advantages
part of the question is if inheriting all of the cons of folia is worth it when you don't have the cash to patch over them
Why?
What makes high thread arm cpu bad?
setSpectatorTarget don't work on folia?
prob because arm has diffrent instruction set and maby the ones that folia use reley on x86 instructions. But normally it should be both similar fast because its not that extremely diffrent
probably just a matter of the fact folia still requires good single core performance, and arm cpus tend to be weaker in that area
Especially the massive multicore ones
They're meant for web server cache and similar things
can folia run with 2 cpus?
unless they mean physical cpu sockets, not cpu cores
Oh, true, my bad
It'll use both CPUs if you have enough regions to justify it but there's some concerns with NUMA performance overheads in such a setup, so it's considered "unsupported"
yeah lol I have a mobo with 2 sockets so I was thinking
what's NUMA?
Non-uniform memory access?
is there a way to speed it up?
like over locking lol
To speed up NUMA you'd need to rewrite physics to change the speed of light 😉
Well, it's not purely a distance thing, some of it is due to going through a second memory controller and interconnect
But no
How would I do that? Is there a plug-in for it? /s
Hello
I don't know if it's right to ask here, but are there experts on ddos protection? I use the $100 tcpshield service. and I have the very powerful hetzner epyc server. My server was timed out 4 times today. There is no attack visible in tcpshield. I can't figure out what happened. Can experts on this subject help me?
You should try cloudflare spectrum
I mean, they only cost a sliiiight bit more
biggest cap 💀
you have a webserver running on it tho or only minecraft
?
because tcp shield only protects port 25565
How does this pertain to folia?
Problem is solved. I received an e-mail from Hetzner stating that the problem was caused by Hetzner and that the disk was defective and that they replaced the disk. Everything seems fine now.
💀
Hello there!
I'm trying to compile folia but I'm getting the following error:
Execution failed for task ':clonePaperRepo'.
io.papermc.paperweight.PaperweightException: Command finished with 254 exit code: git -c commit.gpgsign=false -c core.safecrlf=false submodule update --init --recursive
Can someone help me?
Some info:
OS Name Microsoft Windows 11 Pro
Version 10.0.22631 Build 22631
This is the terminal output (C:\Users\User1\Folia>gradlew.bat applyPatches --debug >> debug.txt)
debug.txt by @tame oriole: https://pastes.dev/Wd84wY4rQ9
try directly in C
I'll try here!
Same error
jdk22 may mess with the compiling this needs to be done with jdk17?
I mean that error usually means that the windows path limit has been reached and files cant be generated. If cloning folia direclty at c also doesnt work you can either try disabling the limit or go the recommended way of installing wsl2
iirc there is an issue on the paperweight repo that discribes how to disable it
How much players folia can handle in one region on this specs;
AMD Ryzen 9 7950X3D
64GB DDR5
10Gbps
there's no magical formula for determining how many players can play given system specs
it also heavily depends on what actions (sacrifices to gameplay, typically) you take to decrease load, as well as what type of server you're trying to run
towny, I am asking for wars. Sometimes 40 - 50 players can gather into one region and pvp.
youre good
@onyx valley there is a perfectly functional channel here
Thanks
Anyone got this issue before please ? And did you have more inforlmations about that ?
https://github.com/PaperMC/Folia/issues/211
if I knew the cause I wouldn't be telling you to add a JVM flag that will retain the full actual exception
Seems the same issue, did you found a solution ?
entirely different thing
Ok !
what is folia
Folia is a fork of Paper that adds multi-threaded region support. Many plugins will require updating to support Folia. There is no ETA for publicly available builds.
For more information:
Folia will:
- NOT be backported to older versions <1.19.4
- NOT be merged into Paper
- NOT be ported to Fabric nor Forge
Stay tuned to #announcements for any further info about releases.
Hello,
We are considering using folia on our Towny server. We are expecting 1000 online players. We are considering to use this hardware:
AMD Ryzen 9 7950X3D
64GB DDR5
10Gbps
There will be a spawn for opening crates etc.. and main map width will be -36864 -18432 36863 18431. Players will most likely spread out, and sometimes 50-60+ players can gather in one region for PvP. My question is can this hardware handle these player counts?
no one is going to be able to give you a good answer on that question
it varies on how you have configured your server, plugins, player activity etc.
assuming you get a 1000 players concurrent for most of your server's lifetime then i'd probably say no
pure speculation, but: 50-60 players per region should be playable.
but 1k players total might be an issue
online will be probably on 600-700 online for most of the time
1000 total / 50 per region comes down to 20 regions, so at least 20 cores/threads needed to tick that on full throttle
cpu you said you have has 16 cores
that's bare minimum of course
not to mention you'll 100% have plugins eating the rest of the cpu
i've ran a 200 player folia smp and that easily eats up 800% cpu because of farms
not to mention the additional shitty plugins eating cpu time
it wont be 50-60 players for all regions
hmm can AMD EPYC 9454P handle it?
again, purely speculatively, it looks better
noone can guarantee anything, minecraft is highly volatile game and there's way too many assumptions to say anything relevant
With the same CPU a pretty big render distance, it was starting to lag in a region when there was more than 100 players in the region.
We never had that much players in total.
Our only lag issues was that sometimes the players where grouping up for pvp and it was to much players for a single region.
well, yeah, folia's strength is being able to spread the ticking by the region, if there's one region, it's just normal paper-style ticking
Your map should be big enough so that players split, but you might have some dense players area.
that's whythe best type of server to use folia is skyblock
what was the total player count?
At peak between 300 and 400.
You can tweak it too for this
Of course this would be written by you
But you can have dynamite config values "per region"
It's just a suggestion of course
We have tried to play with the values
But regions need to have a white zone with no player in it between 2 regions
And we had really dense spot without constently 1 chunk between each groups player.
Anyways 18, 19 tps at 100 player per region is good enoth.
same cpu on 1k players
8tps
if you increase the amount of region threads, it will only be as good as your cpus scheduling
.
what host did you use?
pufferfish.host
did you use 7950X3D?
yes
hmm is using epyc can affect players gathered in one region?
yeah, of course
you're trading single core performance for more cores
nothing is free
not even performance gains
can threadripper handle more players in one region than epyc?
don't ask me as if I'd know
check single core performance score and compare them
single core performance is what will decide how efficient one given region will be
amount of cores will decide how many regions you'll be able to tick concurrently without diminishing returns
Just get a Threadripper Pro 7995WX. That would be the most epic folia setup ever. LOL
Ryzen 9 7950X3D's Single Thread Rating is 4152 while EPYC 9454P rating is 2981 so if 7950 can handle 100 players in one region, can 9454P handle 70 players in one region?
there is no math equation for it. if you really want to know the limits of a certain piece of hardware, you would need to test it
The equation is: the more money you have the more you can figure out by testing on various hardware
gathering 1000 players for a test is a bit hard..
and also getting Ryzen 9 7950X3D and EPYC 9454P same time is hard too
100 players on a 7950 sounds like you've turned things down quite a bit from vanilla too
So it depends on your CPU, your players, what kind of server you're running, your configs, and your plugins
Someone might get 100 players with "vanilla" setup on a 7950 while another struggles to get 20
do you think 24 cores are enough for 1k players?
we can turn some things down quite a bit from vanilla
can i use dual cpu's with folia?
Can you? Sure. Should you? No idea
NUMA is a problem in general, could be a larger problem with Folia but afaik no one has actually tried it
If you're not willing to just try things you should probably not be looking at Folia. No one has any answers for you on basically anything involving it 😛
It's too new and too niche
how i could try? getting all of these cpus and making 1k players join for a test is very hard
it will cost too much money
Thus why no one has any answers for you
Hello, since there are experienced people here, I would like to share with you a problem that I could not solve. After purchasing TCPShield for my server, I started encountering a problem that I could not solve. At certain times of the day, my players are kicked out of the server. For example, if there are 45 people on the server, 15 people are kicked out due to timedout and they can connect to the server again immediately. This happens 3-4times a day. It only happens to certain players. These 13-15 Players are thrown at the same time in the same second. This occurred after installing TCPShield. I can't figure out why. There is not a single problem with Velocity and other connections because this never happened before TCPShield. What do you think might trigger the problem?
Tcpshield
"hello, I put something in front of my network and then my network started going to shit, what do you think it is?!"
😂
make sure that you use proxy protocol, not their plugin, otherwise, like, eeer
I am already using proxy protocol. I don't use their plugin.
I talked to them and they don't seem to be too sure about the source of the problem either.
it's all generally going to be trying to work out the original of the issue, what side of the tunnel, etc
Can this problem occur if we use tunnel for java and not for bedrock?
a tunnel is a tunnel
that question makes 0 sense
either your traffic is going through their ingress or it's not
I understand, thank you for the information.
Does limbo at velocity affect this situation? Or is it necessary to make an adjustment for limbo?
I don’t see how that’s related to folia. If you have zero knowledge on how to manage a server, you should consider hiring someone who does. Also ain’t you running an offline mode network in which we don’t support here @keen carbon
Also, I see that you have DM disabled so you didnt get the moderation message last time. This will be your last warning about offline mode support. @keen carbon
folia jar download
We don't offer download links
either compile it yourself or figure out the downloads API
If you knew how to compile you should upload it in jar directly to make things easier
The entire point is that it's not easy to get
This is pre-release quality software which comes with a certain level of expectations if you want it
if you can't compile the jar yourself or don't have a team who can do it for you, folia is probably not ready for you yet
Hello again
Trying to compile folia on Windows 11 Pro, most recent build and with Microsoft Compliance Toolkit applied for Windows Defender, Update and Edge Browser.
I cant complete the compile process, followed the tutorial from here: https://www.youtube.com/watch?v=oTh9DjFgmTM
This is the following error I am having
The java version should be jdk17
Can anybody help me? If there is any manual or guide on how to compile folia on Windows I would like to consult it
see what electronicCat's message right above you, if you do not know how to do this, Paper is likely a better software for you. Folia is still in testing phase.
Hi @livid crag thanks for the reply
I'm interested in testing the program anyway
I have no problem with it being unstable but I can't even compile it for testing
If you can perform a debug or collect data from my machine to fix the error I would love to contribute
Hey, I appreciate the offer, but I think the project already has a decent amount of attention for debugging and testing. A few big servers already have them in production, such as 2b2t and donutSMP. My original suggest still stands, I think you should wait for official release of the software.
coming in 2025
This a gradle issue with JAVA_HOME. An easy fix is to uninstall all your JDK and download the one you want with an installer that will update JAVA_HOME for you.
another tip, I know you're probably going to, and Should, follow EterNity suggestion. Whenever you're going to build papermc, or folia or any other "heavy" software, use WSL or Linux, this will save you much trouble, and will also increase your performance crazily, since the resource management is just way better.. 🙂
PS C:\Folia> ./gradlew applyPatches --warning-mode all
Configure project :
paperweight-patcher v1.5.11 (running on 'Windows 11')
Configure project :paper
paperweight-core v1.5.11 (running on 'Windows 11')
Task :getPaperUpstreamData
Configuring project ':paper-api' without an existing directory is deprecated. The configured projectDirectory 'C:\Folia.gradle\caches\paperweight\upstreams\paper\Paper-API' does not exist, can't be written to or is not a direct
ory. This behavior has been deprecated. This will fail with an error in Gradle 9.0. Make sure the project directory exists and can be written. Consult the upgrading guide for further information: https://docs.gradle.org/8.5/userguide/upgrading_version_8.html#deprecated_missing_project_directory
Configuring project ':paper-server' without an existing directory is deprecated. The configured projectDirectory 'C:\Folia.gradle\caches\paperweight\upstreams\paper\Paper-Server' does not exist, can't be written to or is not a
directory. This behavior has been deprecated. This will fail with an error in Gradle 9.0. Make sure the project directory exists and can be written. Consult the upgrading guide for further information: https://docs.gradle.org/8.5/userguide/upgrading_version_8.html#deprecated_missing_project_directory
Task
patchSpigotApi FAILED
outside of "make sure that you actually cloned the repo", eeeeerr
yea i cloned it
it only worked after i used
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
if i use f3 + f4 im getting kicked
(with paper this didnt happen)
(only happens sometimes, not every time)
what proxy do you use
what version
velocity
3.3.0
what build
371
Folia is a fork of Paper that adds multi-threaded region support. Many plugins will require updating to support Folia. There is no ETA for publicly available builds.
For more information:
Folia will:
- NOT be backported to older versions <1.19.4
- NOT be merged into Paper
- NOT be ported to Fabric nor Forge
Stay tuned to #announcements for any further info about releases.
You’ll want to read the documentation. Command blocks also not work, correct.
oh i think its not folia
i think ist velocity
There is like a loosely known issue around that, just, the entire chat system is a mess and, generally, sigh
when i was using paper this not happened
but with folia it did happen
f3 + f4 is kicking me sometimes, send a message in chat is kicking me from the server also
now im going to #velocity-help because i have another issue i dont know how to fix lmao
Hey, just caught the error, could you check it please ?
https://github.com/PaperMC/Folia/issues/211#issuecomment-2035021197
Now reproduce without plugins 😄
(66117a282d5bd6481a064927) // @rotund vortex (@hvxevhedhwdgivdwihv / 1169537533399552032) has been kicked by @sullen sand (202850073812402177)
Reason: Inappropriate username, rejoin once fixed.
make sure that you actually applied the patches, and try using a shorter folder path
This is not reproductable, we tried multiple things in development server and the crash doesn't appeared
In production, we must get our plugins
I watched the issue with my developpers teams and they said it was 100% a folia error, not linked to plugins
Could you help me please ?
it's a concurrency issue
Ok, and how could we solve it ?
There is no magical solution
You'd need to work out how that internal collection blew up
Could you provide me a debug JAR ? So I can put it in production
I've +400 concurrent connected players, so I think this crash could appear multiple times, and we can catch the error
No
work out what is mutating that collection async
if your devs can't produce such a debug jar to see what is mutating that, idk what to tell you
Well, the decompiler failed
and what to do?
look at the log file and see if there is any useful info there
I think this could be useful for you: https://www.youtube.com/watch?v=oTh9DjFgmTM&ab_channel=kangarko
While we want to be helpful to people, Folia is intentionally not provided as a downloadable JAR yet due to its experimental nature. Only people who know how or are developers that know how to compile should even consider using it. If one does not know how to perform such a task, chances are the regular Paper JAR will be the best option for them.
Plus, cat really already explained to him 
the last two times that video is linked, are two people who watched it and still struggles to compile... so I doubt that would be helpful for this guy either.
Ok, I sent it because I'm not personnaly a developper and I success to do it with this tutorial
Did you know wich large servers are running Folia in production btw ?
2b2t, DonutSMP are two confirmed case. They both likely fork it and modifiy to their needs.
Ok, we recently moved to Folia to support more players, and appart this crash error, it's look stable everytime
DId you provide beta-test JAR for servers who want to test your new features ?
Leaf usually does on his PR yes (Leaf is bacially the person maintaining Folia)
Thnaks !
if something do need testing, a jar will usually be included on the PR and a short paragraph to explain what's being tested.
Ok, and can we submit our patch to be pushed in production ? We already made some modification to run our 100 plugins
It can be useful if they are directly included in the public version
what is your patch doing
Some patch to be able to run ModelEngine and MythicMobs plugins
that gives us literally 0 to go off
i have a feeling that this is going to be one of those patches that mangle folia to run bukkit plugins
lol
but, if it's "support non folia plugins in a folia env", just, no
Yes that's it
that's not the intention of folia
Yea, no, we have no interest in such patches, and I have no interest in providing support to you at this point
and you know what that's probably the reason your server is crashing right now too
You usually want the parts to fit the engine, not drilling holes on the engine to make the part fit... the best you can do is politely ask those plugin developers to provide support, or you know, just continue to use your privately made patch... 
such patches will most definitely break concurrency which you're now running into problems with
Where is the git repo for your source, out of curiosity?
yeah i found so much bugs right now
[20:36:29 ERROR]: Thread Region Scheduler Thread #0 failed main thread check: Cannot remove entity off-main
java.lang.Throwable: null
[20:36:29 ERROR]: [io.papermc.paper.threadedregions.TickRegionScheduler] Region #2 centered at chunk [11, -35] in world 'world' failed to tick:
java.lang.IllegalStateException: Cannot remove entity off-main
command worldborder its working
and if a player dies from worldborder
and gets kicked at the same time
when it relogs
and try to respawn
they literraly stop the server
for some reason
cut off stacktraces aren't going to help anyone, consider filing bug reports on github so that they can be looked at
message.txt by @frigid dock: https://pastes.dev/nVBooZxApl
message.txt by @frigid dock: https://pastes.dev/uCdDQYUmHS
message.txt by @frigid dock: https://pastes.dev/2YHPTokXOf
that was not an invitation to spam this channel with logs
sorry
com.nickuc.login.θψΩΠψΔΠφζβφωο.d(:44)
I'm desperate
Err, Folia disabled the worldborder, no?
ignore, im fixing that bug
Doesn’t mean it will work. 
but its working
Apparently not
the streamer that uses my server will stream in a couple hours, that is why im desperate
Your inability to plan things ahead and verify stuff is working proper isn’t our emergency
I tested everything all day, worldborder was the last thing to test
The worldborder command is one of the things marked as broken/not working properly.
Folia is experimental software still. Some stuff is not gonna work.
respawning the player during the join event is not supported
worldborder command seems to work for me, although I didn't do any messing around with it yet
I'm positive it works if you set it once and leave it the heck alone after
WB is probably fine given that most of it's client side stuff
I think it's just the avenue of it's not really been tested and easier to err on removing it
Are there any skills plugins that support Folia?
Plugin support is sporadic. Check places like Hangar for Folia supported stuff.
ye I've been using hangar and modrinth
anything new with folia in terms of reccomended flags or flags that ppl found success with
that's specific to each niche
Unsure if thous could be relevent
Is anyone in here familiar with editing existing plugins and make them 100% folia compatible?
I have a server that could use folia as we are on like 15TPS when most players we have are online
I mean the plugins "just" need to be compatible with a multi-threaded environment
unless you have a very big map and your players spread properly I doubt folia would help you though
Could folia theoretically work as the internal server for Minecraft clients?
theoretically? sure. but why?
theoretically, yea
Not aware of anybody having cared to try to replace the internal server in eons, however
If someone were to tweak the chunk region system to group smaller regions of chunks could it function as a way of multithreading single player world gen?
I'm curious to see whether this is possible
The limitation for chunk gen is how parallisable it is with a huge dependency/scheduling system behind it
it's not a matter of spreading it out, that is irrelevant
chunk gen is already parallel
(Mojang could do a better job of it, as has been done in paper, however, but that's an issue with their scheduling system and such)
But would it be possible to swap out the internal server with a paper/folia one
Interested to see how it would perform in comparison to the vanilla internal server
I wouldn't be surprised if some fabric mod exists to just load an arbitrary jar as the single player server
if you're expecting something which isn't "reimplement the entire system into a forge/fabric mod", basically, no
The way that the embedded server works is generally somewhat weird last I knew
Interesting
Like, paper as-is wouldn't work because we rarely touch the client only routes
ah right, forgot there are special cases for that in some places :S
Damn
Unless you were opening your world to LAN play it would just be slower than running a Paper server locally or installing a pile of Fabric optimization mods
Folia for a single player makes no sense, the whole point is to make the server work better when you have multiple (spread out) players
How can I build the latest Folia build? I tried first doing ./gradlew applyPatches but got an error.
best guess is to yeet the -Server folder, otherwise, you'd need to see what the error is
Magically started to work. All I did was git clone again. nvm
we cant really help if you all you say is "got an error"
when will folia be like out of beta and releasing proper builds or like prebuilt
There’s no ETA
in 2025
-GTA 6
Hey!
At Folia's current state, if we were to handle a big amount of players in a single world, should we split the world in 4 different servers (aka. sharding) or use Folia?
It depends
Can you list me some of those affecting factors?
You can use Folia if:
- You have the player spread and hardware to justify it
- You'rr willing to recode Paper plugins to work in it, noting the missing API
Got it.
What if we want to make multi-regioning?
I mean servers that are located in different regions across the world
If we wanted to share the same world across the world, would sharding Paper servers be better?
I mean servers that are located in different regions across the world
This requires proxies
Yes, I'm aware of that. I kinda meant should we shard them as Paper servers or Folia servers?
pretty much every single "one world!!" setup relies on low latency connections between instances in order to support transporting sessions as transparently as possible
you're not doing that with sharding
I thought sharding was splitting a world and running the pieces of them in different machines and syncing the data between all of them
Am I wrong?
That is correct, but, once again, they rely on being able to establish an entire server session switch transparently
you're not doing that if your server instances are spread out
you cant shard a world with paper
I know, I mean with proxies
not unless you're basically just running multiple entire regions with 0 syncing between them
There is inheriently no good solution for this, which is why everything is just a hack job
With proxies you're running different worlds, which can have the same seed
Do you mean the switching should be fast by "transparently"?
I am kinda confused on what you meant by that word
i.e. players do not notice that they're being switched between backend instances because the connections are fast enough to permit a fairly fast switchover
transfering between regions also has been janky and noticable even with low latency between instances
I mean, I didn't think on switching them at random situations like when player doesn't know
I was thinking the player would be aware they are switching, and it would be intentional
I guess I didn't know the definition of it very right haha
So sharding is what I want with player not noticing they are switching?
traditional sharding is when you split the world up into chunks and move people across instances as they move in/out of those chunks
this got a bit more fancy when people figured out that due to MCs state requirements if you want an actual survival esque experience, those regions need to be dynamic and not hard
Some small event type things will basically have the same world on multiple servers and abuse a proxy in order to duplicate state to different clients, etc, but, those are moreso for one off fun repeatable events, not something that you could actually apply to vanilla without going stupidly deep in terms of emulating stuff across instances
So, if the world was split up like this:
II | I
III | IV
and the player went from the borders of IV to borders of I, it'd switch instances?
Got it, I was thinking an intentional switch, my bad
Such as MultiPaper?
if you ever played an old MMO game and hit a loading screen while walking around, that was sharding
multipaper was primarily the 2nd one last I knew
I thought there wasn't any other systems like this
What is the first one?
or, wait, no, they don't go for the 2nd mode
I meant mode of my list, not, 2nd one to pull it off
Theres been many attempts at this
Oh, my bad
Who was the first one tho? Just wondering
I think MultiPaper is the most developed one tho, am I right?
idk, I don't keep a list
me and people like Mini used to speak of this eons ago
MP is the first one I'm aware of that was in the public
most of them are proviate solutions developed for servers like that big RP one
Yeah, seems fair
The reality is that there is no amazing solution for this due to all the state funckery, I was wrong on what approach MP was doing, they basically do a balance of mode 2/3, where they have state syncronisation somewhere and 1 server which picks up the ticking
Amazing support, congratulations
Instead of simply answering the question, prefer to say what you are not obliged to do.
That's why there are so many paid forks, so you don't have such lame support.
When a person comes here to report a problem, they don't want to know if they failed to do several tests before using foliage. Just getting support. Keep your bitterness to yourself.
And by the way, I think that bugs that are already known for festivities should be displayed on the download page so that before someone downloads them, they can already know what's going on. I didn't find this easily.
(66186a682d5bd6481a064938) // @waxen dagger (@trazodana / 393251035633942548) has been warned by @livid crag (177150983258767360)
Reason: keep your entitlement to yourself
And for these factors that using a paid fork is the best option, depressingly.
If you actually did read the original discussion thread you know that was totally justified
Thank you for giving warning just because I think it's stupid for someone to be stupid with someone else.
But sadly you came here already biased
I didn't come here biased, I had already read it. It's just depressing for a person to be unnecessarily rude.
(66186ac52d5bd6481a064939) // @waxen dagger (@trazodana / 393251035633942548) has been kicked by @livid crag (177150983258767360)
Reason: I will do you a favor then since you don’t wanna be here
I'm not going to complain about rude people anymore so I don't get banned because I just got kicked
Congratulations and great support. Incredible!
Folia is in a beta state, as signified by the complete lack of official downloads. We intentionally have it gated thus, as a "I know what I'm doing and acknowledge there will be bugs" acknowledgement. Even with that said, the original issue (lack of functioning worldborder) is explicitly stated to be disabled on our FAQ https://docs.papermc.io/folia/faq#what-commands-does-folia-disable.
GitHub should add a feature for that. I think the should all it something like "issue" so people having one can find it easy.
just noticed they're gone, so we're talking to no one.
Resume normal folia shennanigans 
Can I change the weather in different regions?
🏃
when offical multi-folia
Don't shitpost in help channels, please.
^^
srry
what: C:\Folia Server>.\gradlew.bat createMojmapPaperclipJar
Configure project :
paperweight-patcher v1.5.11 (running on 'Windows 11')
Directory 'C:\Program Files\Java\jdk-21' (Windows Registry) used for java installations does not exist
Task :clonePaperRepo FAILED
FAILURE: Build failed with an exception.
- What went wrong:
Execution failed for task ':clonePaperRepo'.
io.papermc.paperweight.PaperweightException: Command finished with 128 exit code: git -c commit.gpgsign=false -c core.safecrlf=false remote add origin https://github.com/PaperMC/Paper.git
- Try:
Run with --stacktrace option to get the stack trace.
Run with --info or --debug option to get more log output.
Run with --scan to get full insights.
Get more help at https://help.gradle.org.
BUILD FAILED in 43s
5 actionable tasks: 2 executed, 3 up-to-date
can somebody help me
and my internet works fine
Did you clone the Folia repo and use the instructions from the Paper to build? Not sure why you're using createMojmapPaperclipJar
um a video told me to do that
Don't follow some random video.
Just clone the repo and follow the instructions on the Paper repository.
the paper repo?
Yes. Folia is a fork of Paper.
You should be able to answer that question yourself very easily.
when i try to create a reob jar or apply patches it still says it can clone the paper.git repo
If you're having a lot of difficulty building Folia, you may want to consider whether the project is for you at this stage.
Any plugins you want to use are going to need to have Folia versions, and any plugins of your own are going to likely need a lot of changes to work properly.
It's also geared towards specific use cases. High end CPUs, lots of memory, players spread more than 1500 blocks apart, etc etc.
i considered it and u think i will be fine
i already have 16gb lppdr5 ram
and an intel core i7-1270p
cpu
For those specs you'd be better off using Paper.
the error is just saying that it cant clone the repo
uhh its 12 core
its use more cpu not gpu
Folia recommends 16 cores.
4 core difference
Generally not ecores.
And more than 16GB of RAM.
Right. With Folia the number of cores matters.
i accept the risk i guess
so can you help me with the problems
Sorry, no. I've already given you the info you need.
If you still can't compile it then, as I said, it may not be for you.
its saying it cant clone the paper repo
imma reinstall git and reclone folia
ok i builded it but what is the differ from folia-server-1.20.4-R0.1-SNAPSHOT-mojang-mapped.jar and C:\Folia Server\Folia\Folia-Server\build\libs\folia-server-1.20.4-R0.1-SNAPSHOT-reobf.jar
should my run.bat be java -jar folia-server-1.20.4-R0.1-SNAPSHOT-reobf.jar
PAUSE
I would attempt to explain the difference between the 2 but if all you want to know is which is "normal" then it would be reobf
> Configure project :paper:paper-server
e: file:///C:/Users/RitaSister/Desktop/ideaprojects/Folia/.gradle/caches/paperweight/upstreams/paper/Paper-Server/build.gradle.kts:214:21: Unresolved reference: filterProjectDir
e: file:///C:/Users/RitaSister/Desktop/ideaprojects/Folia/.gradle/caches/paperweight/upstreams/paper/Paper-Server/build.gradle.kts:214:48: Unresolved reference: it
> Task :getPaperUpstreamData FAILED
FAILURE: Build failed with an exception.
* Where:
Build file 'C:\Users\RitaSister\Desktop\ideaprojects\Folia\.gradle\caches\paperweight\upstreams\paper\Paper-Server\build.gradle.kts' line: 214
* What went wrong:
Script compilation errors:
Line 214: classpath(tasks.filterProjectDir.flatMap { it.outputJar })
^ Unresolved reference: filterProjectDir
Line 214: classpath(tasks.filterProjectDir.flatMap { it.outputJar })
^ Unresolved reference: it
2 errors
no, weather is a global state iirc
delete that build file that it's complaining about and run applyPatches again
Is 4 cores enough for Folia? (I have a person telling me they somehow benefitted running Folia instead of Purpur on a host with 4 cores and now I'm confused)
Yes, you can run on less
It would be an extremely niche situation where Folia runs better on 4 cores than Paper
Like, a server with less than 10 players who are all off building their own farms and such far away from each other might see some benefit from the farms not conflicting as much
⚠️ Please do not share any links to builds of Folia at this time. We are intentionally not providing easy to find/obtain downloads right now - when the time is right, everything will be available through official PaperMC distributions.
Tps will be low
Not really. That's depend on the amount of activity and the cpu thread power it self
It can be benefitial if you are having the player spread all arround the world, in different regions. If they are going to stay close together it's pretty useless and not benefitial.
The figure is mostly based on the investment, imho
Folia will work fine on smaller core counts but there will always be a ceiling of how well due to the lack of region threads
there comes the question of "how low do you go before you're just rewriting all of your plugins for the sake of a trivial gain"
That would depend on the amount of plugins you will need. You could check the list and if you have everything you need, you could try out folia. However, i don't really know how well these plugins will work in terms of performance/bugs. So overall, it's worth it? Depends. I would personally not use folia, as i have my own my cross-server setup. But if you have a basic survival with mostly a few plugins (that are already compatible) i would def test it.
(the list has not been updated since 2 months, so there could be more plugins compatible by now)
https://github.com/BlockhostOfficial/folia-plugins
And after all, i would consider using it if the playerbase is more than 100 player, if not i would not risk it.
But hey, you can have 100 players with folia with tons of mobs, or use paper with limited amount of mobs. So overall, its the experienice you are looking for your server.
how do i configure how many threads folia uses?
refer to the README
thanks
Hi guys,
I wanted to open a server in the future with multiple gamemodes and wanted to utilize the power of Folia to at least eliminate the cpu as the bottleneck(planning to run the server on a i7-13700 or xeon w system if I find a good deal). The questions are:
How much of the whole "gamemode infrastructure" can be covered by a singular folia instance? Is it possible to reap the benefits of folia to host multiple gamemodes on one folia server instance(non-minigame gamemodes like skyblock, survival, factions, prison etc.)?
Is it possible to set core affinity and how does folia deferr lower priority/intensity processes to lower binned cores?
Has the plugin scene for folia evolved to the point of containing 'niche' plugins like disabling waterlogging for factions?
Would a fabric or paper instance for factions be enough to sustain the load from tnt cannons/withers/mob farms across the world?
How much of the whole "gamemode infrastructure" can be covered by a singular folia instance? Is it possible to reap the benefits of folia to host multiple gamemodes on one folia server instance(non-minigame gamemodes like skyblock, survival, factions, prison etc.)?
-> possible? yes, you can take advantage of it since folia runs each world on its own thread pool iirc.
Has the plugin scene for folia evolved to the point of containing 'niche' plugins like disabling waterlogging for factions?
-> research, there's almost 0 full list suport for plugins that added folia as supported.
Would a fabric or paper instance for factions be enough to sustain the load from tnt cannons/withers/mob farms across the world?
-> your own tests will determine this.
- folia is just a MC server like any other, infrastructure is seperate to it, like it has been for years
- That's 100% on your OS to deal with, userspace apps generally do not screw with that.
- I mean, some large plugins have started supporting it in some manner, mostly experimental, YMMV, this is not production grade yet
- paper will perform better if you can't regionise, if you can take advantage of regions, it will ofc perform better
So you are saying that if I had enough cores, I could run the whole damn thing off of one server using multiverse for inventory/economy/plugin separation between worlds?
well, folia doesn't support dynamic world un/loading
and most of the plugins for world seperation suck
but, theoretically, yes
thats probably worse than seperate servers
yeah, why bother with folia if you could achieve a more stable experience that is compatible with allmost all plugins with multiple different paper servers
Ye.
But hey, having multiple servers on one machine is still doable.
I dunno brutha, sounded kinda cool that people could build lag machines and lag the snot of the region, and the other region would be fine
Lol im chatting to a bot
that has nothing to do with multiple worlds though?
I am just brainstorming ideas, I am aware that it's not feasable to seperate concerns just using worlds, I was just questioning the theoretical possibility
I read the post about running folia with a amd epyc cpu and it got me wondering
theoretically anything within the realm of our physical understanding is possible...
(I guess some stuff requires client-side modifications though :P)
but with the right RCEs that could be easily achieved anyways ;D
anyone have a heuristic on some avg number of blocks before folia decides to create a new region?
it's like 900 blocks between players
oh ok that's safe cheers
so i assume currently there's no editable range? its all determined by some invariants?
there is some configurability, but, it's all down to "you cannot have two neighours touching"
is that configurability accessible right now or will we have to edit a patch to tune it
it's accessible now
it's the grid exponent
I don't think you can reduce it, however, but 
alright, cheers for the responses
iirc you can lower it one or two before things just explode
But at the cost of more locking overhead so your regions run slower
Hello, could you explain to me how Folia updates blocks using multiple threads
Folia is a fork of Paper that adds multi-threaded region support. Many plugins will require updating to support Folia. There is no ETA for publicly available builds.
For more information:
Folia will:
- NOT be backported to older versions <1.19.4
- NOT be merged into Paper
- NOT be ported to Fabric nor Forge
Stay tuned to #announcements for any further info about releases.
Hey guys,
Is there any news or breakthroughs regarding optimal core count/allocation?
At least 16 is recommended
my folia server keeps crashing when 3 players go far out from spawn, is there any reason or an idea on whats causing it and maybe how to fix it?
some logs would be helpfull
it dosnt spit out any errors, just drops to 1 tps and completely freezes
screenshot /tps
and thread dumps might be interesting too
137
your host killed it
like, it says, the container (or the host machine) apparently ran out of memory
no way its using 480gb of ram tho
Talk to your host 
i am the host

Then you would need to diagnose why your kernel killed the process
What are your flags and container limit?
these are all the flags
java -Xms4096M -Xmx8192M -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:ConcGCThreads=16 -XX:ParallelGCThreads=16 -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=10M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar server.jar```
-Xmx controls the amount of heap memory assigned to the JVM, this does not include other memory used by java, or native memory used by other libraries such as netty (for networking) or SQLite. Please do not allocate all of your memory!
You've overallocated
and back to low tps
sounds like there's a farm to worldedit out at the 13tps region
also only 3 cores (or threads?)
the startup flags are set to 16
gc threads
-XX:ConcGCThreads=16 -XX:ParallelGCThreads=16
yes those are gc threads
im not understanding your question
it's not a question
it's a statement of fact
you only have cpu 3 threads assigned to the server
3 threads assigned to ticking regions
yes
well then how do i assign it more threads?
in the config
but, that's not gonna fix that
at least, your issue isn't a lack of region threads
ok then my issue is caused by a mob farm?
All I can tell you is that you have a region with 1 player inside of it that is struggling
either they're doing something in that chunk that is heavy, or your hardware is weak
what model CPU we are talking about here?
2 Intel Xeon E5645
damn thats some nice e-waste
xD
you’re probably better off running paper
best bet is to get some other hardware
whats a good server thats not crazy expensive?
Don’t exist. Good shit cost money.
ok well what would you recommend
how high of a budget
5,000 at most
5000 what?
dollars or is that still to low?
Uh .. So you're self hosting?
yeah
That's going to be kind of awkward since self hosting limits your capability to scale
I mean, depending on your needs you either go for a high end desktop CPU or something like a epyc, though, epyc is a bit shaky
single thread performance is important still for how large you want your regions to be
Yeah, a desktop cpu like a 7950x would work hardware wise and fit the budget, just ... Not sure I'd recommend self hosting, because I can't really think of a use case where you'd be better off than renting
i've been using my current setup for the past 4 years without having to spend hundreds of dollars to run whatever random project i want. if i rent then even if the project flops then i would be down more money than paying 150 dollars for the internet and power bill
if you're thinking long term sure self hosting/collo might be a good option for you
7950x is a good cpu and would work well for you
but that also depends on the scale you're at
if you need 10s of boxes no dont self host but if its "always going to be" a small project with not that many players etc then sure its your call
a dedicated box wouldnt cost you more than around 2000 though
depends mostly on cpu
like kylle said 7950x is a great desktop cpu that runs mc servers really well and it does not cost a lot
on the other hand you have other cpus that will 2x your budget of 5000 rn only for the cpu which isnt optimal for you to use for obvious reasons
I mean, we're going to recommend hardware on the assumption that you actually need folia because you're going to be pumping that many players
if you don't need that then you don't need to go that hard, you can probably pick up a decent chip with a few years on it and be just fine, it will at least beat a web server CPU from 14 years ago
but, once again, this is generally based on assumptions, we can't tell what a player is doing
maybe somebody is just going crazy with something and it would be an ez fix, see spark, etc
Whatever deal you find for a recent i7 13th gen, i9 12th gen or ryzen 5950x/7950x will give you 16 cores of pure bliss
I would make the argument that a threadripper 1950x would also be suitable depending on the load
Note that modern i7s and i9s are full of e cores which are less useful for Folia
https://pastebin.com/jybpdmzD
What is this error? It pops out of nowhere. Can someone help me identify it?
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
running via/geyser?
yup
there you go
Thanks, I'll try ask on Geyser Discord
Xeon E5 2699
Don't ping people with totally out of context messages, especially people with "no ping" in their name.
Is that a question about something?
Ah I didn’t see
@wooden echo please keep gifs and memes in #gifs-and-memes and out of the help channels.
latest pull fails to build, gives the following error ``` Configure project :paper:paper-server
e: file:///home/mcftp/Folia/.gradle/caches/paperweight/upstreams/paper/Paper-Server/build.gradle.kts:213:21: Unresolved reference: filterProjectDir
e: file:///home/mcftp/Folia/.gradle/caches/paperweight/upstreams/paper/Paper-Server/build.gradle.kts:213:48: Unresolved reference: it
Task :getPaperUpstreamData FAILED
FAILURE: Build failed with an exception.
-
Where:
Build file '/home/mcftp/Folia/.gradle/caches/paperweight/upstreams/paper/Paper-Server/build.gradle.kts' line: 213 -
What went wrong:
Script compilation errors:Line 213: classpath(tasks.filterProjectDir.flatMap { it.outputJar })
^ Unresolved reference: filterProjectDirLine 213: classpath(tasks.filterProjectDir.flatMap { it.outputJar })
^ Unresolved reference: it
2 errors
- Try:
Run with --stacktrace option to get the stack trace.
Run with --info or --debug option to get more log output.
Run with --scan to get full insights.
Get more help at https://help.gradle.org.
BUILD FAILED in 2s
2 actionable tasks: 2 executed
mcftp@mc2:~/Folia$
this is when i run applypatches
im going to try deleting the repo and cloning again
well that fixed applypatches
How do I compile the old version?
exact same as you compile the supported version
you'd just need to use git to check out the older version
ive been having this issue as well
its telling me gradle is deprecated yet its on the latest version
delete the server and api directories
iirc there was also some other way since this will delete local branches (though, if you're just compilg you shoulnd't care about that)
did this, still doesnt work
even redid a git install clean too
why is it telling me gradle is deprecated if im literally using the latest version available
The error is generally further up the logs
it's not
generally means that you don't have the JDK
do i have to set java 17 as my main
No
or does it work with versions after it too
but you need to make sure whatever java install you're pointing it to is a JDK
i have most of the latest jdk versions installed
dunno why its not reading the one it needs
update: nevermind it turns out my system enviornment flags werent reading the right version
now its actually working as intended
Somehow i cant use command blocks on Folia. For exaple the tp command. I enabled command blocks in the server.rpoperties and have op
known
so theres no way to use command blocks?
correct
Is there a Offtopic channel? I have some questions about Parallellism and Threads in Generell and what folia uses. I dont understand the use of Threads that run concurrently. If I have two Threads that run concurently wouldnt it be the same as one thread running?
I mean
CPUs for the past like, 20 something years have had the ability to have more than 1 CPU core
some even have some magic that turns 1 core into 2 cpu threads!
Okay so if a cpu has 12 Cores with 2 Threads per Core so it could max have 12 parallel Threads and any more Threads would run concurently or?
if you don't have enough CPU threads to sustain ticking more than 1 region thread at a time, then, yea, using folia would make 0 sense (*)
I heard Folia only runs concurently and not parallel or how is that exactly?
I mean, I'd imagine that that is generally how they're summing up the concept of regions
The server doesn't tick entities and yada yada parallel in one shot
it splits the world up into chunks and runs them
So the regions tick parallel and everything inside the region is concurently?
That's not how the terminology works
Sorry dont know what termonology is. Not a nativ english speaker but i still dint quit understand what runs parallel and what runs concurently on Folia if all Resources are there
parallel and concurrent are basically the same thing
concurrency is basically the ability to run things in parallel, doesn't mean they actually do run in parallel though
regions are concurrent but they won't all tick in parallel
ohh okay so if there would be more cores then threads needed everything would run in parralel?



patchSpigotApi FAILED
