#folia-help
1 messages · Page 9 of 1
or once cloned regularly, git checkout dev/1.20
I think i'm dumb
well I have no say in that :p
git clone -b dev/1.20 https://github.com/PaperMC/Folia/tree/dev/1.20
git clone -b https://github.com/PaperMC/Folia/tree/dev/1.20
None of these work
I am so bad at this lmao 💀
git clone -b dev/1.20 https..../PaperMC/Folia
thanks 👌
I think the dev branch currently doesn't work
it just fails
`[giorkos@server Folia-Server-1.20]$ ./gradlew applyPatches > Task
patchSpigotApi FAILED Committer identity unknown
*** Please tell me who you are.
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
to set your account's default identity.
Omit --global to set the identity only in this repository.
fatal: unable to auto-detect email address (got 'giorkos@server.(none)')
*** Please review above details and finish the apply then
*** save the changes with ./gradlew rebuildPatches
Task :getPaperUpstreamData FAILED
FAILURE: Build failed with an exception.
- What went wrong:
Execution failed for task ':paper:patchSpigotApi'.
io.papermc.paperweight.PaperweightException: Failed to apply patches
- 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 5s`
The solution to the error is right there in your message.
oh
I thought that was just a cookie-cutter response to builds
I didn't think it would actually do anything
sorry
Does anyone know how good Folia could handle many many players? What's the largest test that has been done for instance? We are going to use it on a vanilla world with an Amd Epyc 9554p and 384gb ram. Could something like this handle say 10.000 players (not minding internet)? 🙂
10,000 seems high but you could try
It’s going to depend on if you have any plugins and what people are doing, as always.
And how far spread out they are
Yeah a little far fetched. The server isn't up yet, but we are going to turn off many features like fire, waterspread etc, as well as reduce the render distance by a bit.
If you check the pins you’ll see we had the test server which had like 325 people on it without any issue
Building in creative. Each on their property (not flat world - normal generation). Spread out evenly in the center 100k x 100k something. Whatever is optimal for Folia😅 They are not going to move far from their base / property. We are developing a plugin for this. Pretty easy and light, and no game-altering. Only for managing plots, chat etc
Where should I post crashes?
https://mclo.gs/hdl0hJc
Someone tried teleporting far away and the server just died
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.
Reading this made me question why it said it would be ported to Fabric/Forge
Is there a port for that?!
What?
Read again I am pretty sure it says it will not…
No I am asking why it was mentioned
By this I mean does Paper already have a fork for Fabric and Forge
Because people tend to see stuff like that and ask if it can be ported
may we get some similar problem i will creat a new issue in github, may you could paste in it
is there any anti xray running on folia ?
Maddy how the heck did you ban them?
native ban
Ahh
What happened?
Don’t worry about it
Have you done it?
Also is spark available for folia?
Yes, but not for 1.20
At least as of yet
Ah ok
It's sad that it's unstable, because even with only one region it's really good
Mspt was 2.3 for me with 24 chunk view distance and 8 simulation distance
That means it should probably be able to handle the villages in my server
I think it is decently stable, but it is true you may encounter crashes
Unfortunately chunk loading was MUCH MUCH slower than fabric
You could see the issue in GitHub
But it was good enough
I paste your problem
Link? I'm on mobile
Yea I agree, but it depends on your hardware
Thanks
I have top spec hardware
Expected behavior no crash like folia-1.19.4 Observed/Actual behavior https://pastes.dev/GdgFr21jMO Steps/models to reproduce just tp around Plugin and Datapack List plugins [09:50:18 INFO]: Server...
At least without going epyc
16 core 7950x, 64 GB Ddr5 5600mt/s ram and 1TB nvme ssd
That looks like pretty good hardware
I'm done building folia jar where can I find the jar?
is this it? which one do I use?
That’s for 1.19.4
I would think the bigger one. Are you using a virtual machine?
Like abunutu?
Yeah so I was kind of expecting chunk loading to be a lot faster considering there is apparently a reworked chunk loading system
I'll provide a comparison video
What is folia overhead (other words what will be difference between paper on 1 core and folia on 1 core)?
It needs to manage all the regions. That takes some computation compared to just ticking everything normally
im so sad because i have a lot of errors...
⚠️ 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.
⚠️ 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.
How to download folia?
compile it yourself
:v
look at paper's readme
i got this error how can i fix thiS????
Execution failed for task '
patchSpigotApi'.
show the whole log
reegun@DESKTOP-ALCOR6M:~/Folia$ ./gradlew applyPatches
Task
patchSpigotApi FAILED
*** Please tell me who you are.
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
to set your account's default identity.
Omit --global to set the identity only in this repository.
fatal: empty ident name (for reegun@DESKTOP-ALCOR6M.localdomain) not allowed
*** Please review above details and finish the apply then
*** save the changes with ./gradlew rebuildPatches
Task :getPaperUpstreamData FAILED
Invalid Java installation found at '/usr/lib/jvm/openjdk-17' (Common Linux Locations). It will be re-checked in the next build. This might have performance impact if it keeps failing. Run the 'javaToolchains' task for more details.
FAILURE: Build failed with an exception.
- What went wrong:
Execution failed for task '
patchSpigotApi'.
io.papermc.paperweight.PaperweightException: Failed to apply patches
- 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 4s
2 actionable tasks: 2 executed
im sorry im not good at english so i can't understand
it tells dyou what to do
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
this?
yes
thanks
thanks so much it working!!!!!!!!!!!
Error: Unable to access jarfile folia
D:\folia test>pause```
how can i fix this????
i used folia-bundler-1.20-R0.1-SNAPSHOT-reobf.jar file
folder name?
ok
thanks
do you ran any issues while running folia? i wanna try it
:v i don't believe 3gb ram is not enough
How many gb of ram do you think is enough?
Didn’t the paper test have like 2TB?
iirc they just wanted to make sure that RAM wasn’t the bottleneck, so they went all out
But like, if you’re worrying about cost, you shouldn’t be even considering Folia imo just cause of the nature of what it requires
Will be using in a dedicated hosting.
How do I download the 1.20 folia? When I clone the git I seem to get the 1.19.4
Use --branch dev/1.20
Found it ty.
i have the problem that the regions always merge together how can i fix that
you dont. It just means that the system deem it necessary to be together, let it be the two players are too close etc.
The region merge and sepreate when the regionizer deem necessary, that aspect is not configable if that's what you mean.
The problem is that we previously had 10 regions and then all 10 regions were merged together and now the server is lagging
First, figure out why they merged... 
that's a very small area and I can see the player being too close for the region to merge.
You can refer back to this old message which kinda explain the seperation needed by leaf here #folia-help message
Your world is way too small for the Folia use tbh. @hoary pasture
7k × 7k is not enough for that many
Hahaha I was referring to a virtual machine when compiling Folia
I'm guessing that Aikar's flags are generally unfit for Folia
The best configuration is going to be hardware specific as well...
a guide for tuning would be cool at some point (not a rush since it doesn't even have a release channel so a big server kind of has no business using it)
Aikar’s flags are fine
Are there statistics on how many servers are using Folia?
There’s a bstats page
That’s actually quite a bit of servers
you can actually tell exactly when "that" server is live by playercount 
Mostly test stuff yeah
Hey just a quick question, what is the current status on Folia? is it production ready?
If you have or are a full time developer for your server then maybe
Seeing how it’s all beta, it’s surprising to see how many servers have updated to 1.20
Presumably I’d think it is a even less stable version of Folia 1.19.4
It’s also interesting the giant spike in player count
From 76 to over 1k
yeah that was a server launch 
Oh hahahhahaha 
What server?
If I had to guess ... The 2b2t test server
Is 2B2T still on Folia?
the test 3b3t server is still on folia
Oh they named it 3b3t??
it's the same domain name
just add test. before the name
and you'll be on the server with folia
server specs?
(his issue isnt server spece evne if below average)
his world setup is the issue that is not going to take benefit from using Folia. (his players are way too close)
Does velocity support folia?
Yes
24 CPU threads, will Folia work or is 32 absolute minimum
Ok 12 cores they said 16, I don't need over 100 people but they will be spread out pretty good
question?
may low core could work well
i dont think you must have 16 core
13700k with no ecore could load 160+ player i test
How much ram you allocated
2023-06-12 16:27:46,744 ServerMain ERROR Rewrite contains an invalid element or attribute "StacktraceDeobfuscatingRewritePolicy"
2023-06-12 16:27:46,745 ServerMain ERROR Rewrite contains an invalid element or attribute "ExtraClassInfoRewritePolicy"
java.lang.NoClassDefFoundError: io/papermc/paper/plugin/provider/source/ProviderSource
at net.minecraft.server.Main.main(Main.java:126)
at org.bukkit.craftbukkit.Main.main(Main.java:309)
at io.papermc.paperclip.Paperclip.lambda$main$0(Paperclip.java:42)
at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.lang.ClassNotFoundException: io.papermc.paper.plugin.provider.source.ProviderSource
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:587)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
... 4 more
An expected class org.bukkit.craftbukkit.v1_19_R3.scheduler.CraftScheduler was not found for preloading: org.bukkit.craftbukkit.v1_19_R3.scheduler.CraftScheduler
An expected class org.bukkit.craftbukkit.v1_19_R3.scheduler.CraftScheduler$1 was not found for preloading: org.bukkit.craftbukkit.v1_19_R3.scheduler.CraftScheduler$1
An expected class org.bukkit.craftbukkit.v1_19_R3.scheduler.CraftScheduler$2 was not found for preloading: org.bukkit.craftbukkit.v1_19_R3.scheduler.CraftScheduler$2
An expected class org.bukkit.craftbukkit.v1_19_R3.scheduler.CraftScheduler$3 was not found for preloading: org.bukkit.craftbukkit.v1_19_R3.scheduler.CraftScheduler$3
An expected class org.bukkit.craftbukkit.v1_19_R3.scheduler.CraftScheduler$4 was not found for preloading: org.bukkit.craftbukkit.v1_19_R3.scheduler.CraftScheduler$4
Been trying to compile Folia and I finally am able to do so but now I get this NoClassDefFoundError.
Followed the instructions for how to compile paper.
I mean, your first error is cos of the log4j config
or, well, actually, those classes should be there
sounds like an issue with how you're reunning the thing
Same thing as running my spigot builds. Are there any extra steps?
I am assuming the paperclip jar correct?
yes
You tested with players or bots?
what java version?
17
openjdk version "17.0.7" 2023-04-18
OpenJDK Runtime Environment Temurin-17.0.7+7 (build 17.0.7+7)
OpenJDK 64-Bit Server VM Temurin-17.0.7+7 (build 17.0.7+7, mixed mode, sharing)
hm, no idea
So many red stone and a lot of entities
best guess is gonna be to do a clean build, make sure that you're not compiling in a onedrive folder or something weird
Alright
1.20 fix the Chunk problem but when you teleport
Poi and entity will crash again
🥺
Issue #91 hope it could fixed soon
So that I could update 1.20 and enjoy Sakura
Where is rat king leaf 🥺🥺🥺
let him cook
@golden mica rat is awake but jmp did it 
Folia is stable to use in production?
No
may yes hahah
yesn't
It’s getting there but there are already quiet a few brave servers running it
may rat king still need fix
when they add check, another problem with neither was out
i love that issue https://github.com/PaperMC/Folia/issues/94
server check for soulsand effect then crash whole server
i'll take a look
my pr only fixed one specific issue that didn't exist before 1.20
if they are fixed on latest they were probably fixed by other changes leaf did
Got it
I will backup a ver to see #94
I don’t know may your pr fix #91 and cause #94
nah just before my pr #91 would trigger before #94 could in most cases
good thing there are brave servers, makes 100x faster to find critical bugs.
Weird how people are to against it.
Hi! I am kind of newbie with Folia, can anyone help with to download it and install it? 😉
⚠️ 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.
⚠️ 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.
You have to build it. The instructions on the Paper repo will work for Folia
it is just me or sometimes the respawn button does not work on Folia ? and when respawning the player keeps playing the dying animation for himself ?
idk how to reproduce tho
Hahah been there
got it one time with the vanilla client 😇
I used Optifine
Feel free to open a report with as much details as you have (even if unreproducable reliably)
🥺
Issues will get fixed when people get time for them. Please be patient and don’t ask in here about it if it hasn’t been too long. Folia hasn’t been out long enough for issues to be considered “stale”, and it’s explicitly marked in development for a reason.
Thank you for your reply, I see the issue has passed for two weeks and has not been answered, so come and ask, sorry to bother
Yeah two weeks is nothing in terms of open source/dev time.
I wouldn’t get your hopes up for issues to get resolved quickly. Especially complicated one.
Leaf’s doing the best he can but he does have a life (probably)
unlikely to be resolved
the complexity required to abort a teleportation and the weird behavior of it is not acceptable
Oh is that the mob portal one?
How do i allocate threads to Folia?
It’ll allocate threads itself.
Hello, do you know what it could be about?
I am unable to build the project.
try doing it in the terminal
also click on the top "Folia: failed"
should show the proper logs
try a clean applyPatches from terminal
will install gradle on my pc
I have 10 windows system, no linux
ok, thanks. I will install and let you know
It take me only 6 min, think its okay.
templeos
⚠️ 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.
just wanted to see this text, sorry for spam
Folia will open is basically anything
Now whether it will run well, or better than Paper, it depends
Your setup is below the recommended minimum, that's really all I can say
I think you can get away with 12 cores if you pregen your world, the way Leaf got to 16 for the recommendation included cores dedicated to worldgen
Technically you could run it with 2 cores, it'll just run worse than Paper in almost every situation
The more cores you have the more likely it'll outperform Paper but that still depends on your server setup
How spread out players are and such
Is there any fork of vault for follia?
does anyone know of a plugin that can make fire go out after a certain period of time. I have fire tick off because of fire spread but i still wanna have fire not stay forever because it gets very cluttered and annoying
For Folia? Probably not.
meant to send this in paper 💀
Excuse me if it's already handled.
We have our mobcaps set on a vanilla smp to this with Folia.
monsters: 20
animals: 5
water-animals: 2
water-ambient: 2
water-underground-creature: 3
axolotls: 3
ambient: 1`
This gives us next to no mobs. Any other people that have changed their mobcaps when they started using Folia and have better values?
After further checking...hostile mobs are not spawning at all.
It's mob per region not mob per player. Raise this up and use /paper mobcaps
Not that good on calculating what a nice mobcap can be, region is 32x32 chunks would I just do my old caps times the amount of chunks?
Folia regions are not the same as minecraft regions, they are dynamic and depend on the size of the view distance. Try to increase those values
Thx alot for the info. will do.
A region is at least 48x48 chunks but could be the entire world
Atleast I don't feel crazy with those huge caps.
Unless your players are really spread out and tend to be loners or form small groups (that are also really spread out) you aren't going to have many regions
I'm not sure if the mob cap is per-region though
I wouldn't be surprised if Folia just forces on the per-player-mob-spawning flag so it doesn't have to deal with global state
But I suppose making them per-region would solve that too
the way the mob cap stuff is calculated is arse
generally, check the values that the commands show and tweak as needed, generally
For me it seems like it was purely done to revert the playercaps.
Huh, well I guess if you're already doing it per-region the per-player stuff is just a complication
just, it kinda sucks, and so we kept our patch which makes it go harder
Put mobcap to an absolute high..like 10k. still getting 1 or 2 zombies during night. No they're not in caves.
Not that I know of, but you really do not want to reload plugins. Not on Folia or Paper.
I suspect Folia would be even more likely to have issues with unloading plugins while the server is running
Yeah
Mate thats not possible
Does it say unknown commend?
broken? disabled
I think I know what it is now
look at the message i answered
Yeah 

So likely nothing you can do about it unless the region you resign in has no other players
Vanilla gameplay go brrrrrrr
Sigh. Not to hurt anyone, but with a release for vanilla servers this is like a big thing it needs.. especially for servers that have mob farms going
Will it stay this way?
I mean
probably
Like, mob spawning in vanilla is broken as all shit
The ideal solution is that somebody rewrites mob spawning to not be shit
but, ofc, at least until we got new build tooling, that was 100% impossible
It’s also still development software, which we explicitly state. There’s a bunch of stuff that is broken, missing, and still being worked on. It’s also not intended to be a direct replacement for Paper.
Yeah that’s indeed the real vanilla gameplay 
yeah no ofcourse, i get you on that
now, there is a chance of it, but, idk if somebody will care to figure out a proper design and invest the time into replacing mob spawning
Perhaps if you want, open a feature request and let it sit on folia. Leaf will close it if he doesn’t think it’s doable. 
Someone did that
I'm not trying to put it in bad eyesight, but on the site too..specifically for Skyblocks and SMPs, those servers are quit depended on those playermobcaps to work for everyone.
That's fine guys. Thanks for the answers. It is what it is
the issue is that per player mobcap is a hack over the existing spawn logic
I would have thought Folia's logic would at least be per-region though
Since global state is a PITA
best approach for folia as a quick fix will probably be to modify it so that it's bound to the region a bit better is my understanding
So maybe you aren't spreading people out enough
does the mobcap command show per region info?
it will be for the region of the executor
like spawnable chunks only
Sure so within that region you still have the broken vanilla spawning
This is all the output we receive, dont watch the over the top mob cap, only for temporary purposes
But if you're spreading your skyblock players out so they each get a region that should be the same as per-player caps
there is a vanilla limit on the chunk density i think
big thing is generally going to be to ensure that you have viable spaces for mobs
check the lighting level, etc
is this skyblock?
no smp
@livid crag can you be the you know what for once and test this out for me?
Can you provide your mobcap value. One you either put in bukkit.yml or overwrite in paper-world.yml
I already stated that earlier mate. But here a screenshot for reference
time to download some folia 
I literally kept putting it up until it showed results. This is just temporarily set to get results
The logic is working as how I'd expected it to work. First mobcap is when 2 account is close, 2nd one is when I move a few blocks away as more spawnable chunk grows so does mob allowed.
so really, to improve it, really meant to break how Vanilla usually operates.
what about setting very high limits
oh that's just mod density for sure but let me test.
logic is still correct to me. I do believe that's due to mob density.
I’m development you want reproducible behavior so you aren’t introducing false bugs or stuff. Which is exactly what reloading is going to do.
it seems like it is strict on 70 for some reason
I will double check this behavior locally
that's on you 
atleast the spawnable chunk logic there looks correct
on a sidenote, this looks pretty funny 
Yeah haha
btw.. dont know if it cares too much but our server is on 1.20
I dont think the rat touches it I just use whatever I had
can try later
The website says having a minimum of 16 physical cores is recommended to fully benefit from Folia, but I'm guessing this is for large servers? What if I have a server with only 10 ish people at peak. Will I see any viable benefits from 6/8/12/16 cores?
with 10 people on a server you should just use paper
Cheers
⚠️ 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.
⚠️ 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.
who can help with this?
what command did you do
i tried to use gradlew build but when i use ./gradlew applyPatches or ./gradlew createReobfBundlerJar it gives me build error
first do apply patches
then createReobfBundlerJar
then look in the root build/libs directory
there is/was a bug where the first build gave error and second didnt
try giving it a couple of tries
⚠️ 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.
did you configure your email and name into git?
yeah
> Task :paper:patchCraftBukkit FAILED
> Task :getPaperUpstreamData FAILED
FAILURE: Build failed with an exception.
* 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 12s
2 actionable tasks: 2 executed
show the whole log
is there a way to reduce the number of chunks that are in a region?
⚠️ 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.
and how many chunks are in one region?
afaik there is no set number of chunks per region
regions grow and shrink with what areas of the world they have loaded, and regions will merge if they get too close to each other
there has to be enough unloaded space between loaded areas for them to actually become two separate regions anyways
okey
you can try to achieve that by reducing view and simulation distance
No, you really won't make a difference
iirc maybe a view distance of 2 would reduce it a little
at least 96x96
okey
and i think i found a bug
when you sleep in a bed and die you will not spawn at your bed
anyone can help?
nah, im using rtp
thanks for the advice, anything else?
i9 9900k, 128GB RAM and 2TB nvme sdd how many players can play in one server? with folia 
Might as well just use Paper with that hardware
The recommended minimum for folia is 16 physical cores, that CPU has 8
I might, it might still be an improvement
But only if you move your players further apart
Like 1500 blocks+ from each other
Or in groups that are all 1500+ from each other
kk thanks i'll try
How do I make a Folia Build?
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.
Follow the instructions on the Paper repo to build.
i don't understand how to install folia (i'm new to minecraft server installation)
Then Folia is definitely not made for you at this time
what would you recommend for a scalable vanilla/plugin server and what is optimized?
Paper
and is there a map pre-generation plugin?
chunky
I have a couple of questions
do you recommend using viaversion and viabackwards to allow more versions on your folia server?
And my other question, has anyone installed geyser and floodgate and did it go well? because I tried to install it and when you enter folia from bedrock there is too much lag, you can't even move.
Not sure if anyone got geyser working
Geyser works fine for me
keep getting this error when running the server jar
Error: Unable to initialize main class org.bukkit.craftbukkit.Main
Caused by: java.lang.NoClassDefFoundError: joptsimple/OptionException
Kinda need the actual log
ngl if it's folia, sounds like a compilation error
What are you doing when you get the error?
Like walk me through the steps you're taking
i had just finished building the server jar (probably the issue) then set up my run.bat and ran the server
Then yeah you probably didn't build it correctly.
ok i will do more digging
I think you get that if you run the base jar instead of the bundler one
You need the bundler or paperclip jars
ah i see
iirc it's in build/libs
thank you i was using the base jar
Mojang switched to a jar(s)-in-jar thing instead of just shading all their dependencies
thank you
Anyone have an idea if there's a compatible plugin with folia that restores skin functionality? For a server that allows cracked clients to join
I kinda do. Not all my friends have minecraft purchased\
Should be a good friend and buy it for them :D
I would, but I don't have money for 5 copies 🙂
There are situations I'm sympathetic to but it's easier to have a blanket rule and not having a blanket rule would be a violation of Discord's ToS
fair enough, I get you
hey how can i build Folia?
Follow the instructions on the Paper repo.
Folia's a fork of Paper so the instructions are the same.
thanks
\m/
I've been trying to compile a folia build for dev testing plugin compatibility for my plugin. Unfortunately I'm having a few errors that I am unsure how to fix. Is there a dev build somewhere I can use for like 30 min of testing my plugin?
Nope, need to build it yourself.
Crud
Ok thx
I will try and get it working
Um
Actually
I got one to work like 2 seconds ago
Except it's 1KB...........
I don't think that's right XD
Clone git repo, ./gradlew applyPatches, ./gradlew createReobfBundlerJar
So long as you have git configured and aren't on Windows it's that simple
MANIFEST.MF by @real tendon: https://pastes.dev/5HBluqbClD
If you're on Windows make sure you put it in a location with a short path (C:\Folia for example), make sure OneDrive, DropBox, etc aren't trying to sync that directory, and you may also have to make sure your anti-virus isn't scanning that directory
Usually just the short path is enough to get it going
Alternatively setup WSL2 and built it in there, you can probably install WSL2, install a Linux distro in it, and build Folia faster than you can build it on Windows 😄
Can folia be compiled ?
Yes. Follow the instructions on the Paper repo.
Folia's a fork of Paper so the instructions are the same.
/bossbar disabled in folia? whatfor
Global state is hard
unlucky
how do I compile coreprotect
I cant find the docs
I see pom.xml so do I clone and mvn clean install
wrong channel
dev channel?
Core protect support discord, probably
message.txt by @ocean geyser: https://pastes.dev/g87BR2J3cy
set project.branch to development and run maven install
Any ideas why bedrock players are lagging on my server? I'm using folia 1.20.1 and geyser. Java players work fine, but bedrock players cant see the chat and can barely place blocks. It says that geyser is supported on folia, so what could be the issue?
you should go to the geyser discord since that sounds like a geyser issue, especially if players on java don't experience any problems
Sounds like a connection issue.
hey we have 150 players in the server but the tps only has about 3-5 so laggy, does anyone know how to fix it?
or increase the amount of regions if that is too low
153 players in one region 😅
oh yeah they are all in 1 region
how to increase the region manually
spread the players out more
uhh i forgor give me a second
in paper-global.yml you can change the max amount of threaded regions... which isn't gonna do everyone if all the players are next to each other.
Another question: how the frick did you get 10000 entities??
10k entities isn't really that unrealistic
for one region?
How did that even happen? That should spread across multiple regions right?
the players might even be spread out pretty far overall, but they could still end up being close enough to build one large region 👀
they can only spread accross multiple regions if they are far enough apart
so... uhh 30675 chunks in one region seems a bit unrealistic then
that's only 200 chunks per player
you get more chunks loaded per player with a view distance of 7
huh i guess i really got my expectations too low
the default view distance of 10 causes 441 chunks to get loaded around a player
and that's only like 70 players if spread out (to reach the 30k)
but I'm not sure how the view distance factors into the region building/merging
lowering might change stuff but it still depends on the positioning
the correct solution is to spread the players more
well if you evenly distribute them and the radius isn't big enough then there is a very high chance for the regions to merge into one large one lol
150 players in a 6k radius way too small of a spread
We are organizing an social experience and the map size is 6k
Is it possible to solve the problem of only having one region in server
It might shouldn't be working this way
I'm not sure what you are asking for
folia is a tool which helps spread load with tons of players in different regions on a large map
it's not the right tool for "lots of players in a very small area"
I understand now, thank you for your answer
Could you send me whole screenshot please?
Lowering the view distance will not lower the region size
Players have to be more than 48 chunks from each other to have a chance to be in different regions
You need everyone really spaced out to get regions
Yeah you need a map of like 100k to make it work well 
Does that mean if I make the view-distance larger will allow players to be better distributed to different regions?
wat
No, view-distance doesn't matter if you keep it to sane ranges
You'd need a view-distance of 1 or 2 to have a chance to make regions smaller (but I think things just explode instead) and a view-distance of like 25 to make regions larger
You don't want regions to be larger
Actually you'd need a view-distance of 20 to make larger regions iirc
So as long as you're below 20 you're getting the smallest regions you can get but regions that are close merge so you can end up with one massive region
To fix that you need to spread people out more
I just misunderstood, now I understand clearly, thank you👍
Hey, I'm running a folia server and for some reason it takes ~30GB of ram, what server arguments should I use ?
I have a dedicated server from Hetzner with
Ryzen 7 3700X
64GB DDR4 RAM
2x1TB NVMe RAID 0
btw I'm using linear with compression instead of anvil for the worlds
I mean java will be using as much memory as you give it
thanks
it's your job to decide what is the correct amount
hmm I run it without GC 
it spiked from 10GB to 30GB in just seconds btw
what do you mean by "run it without GC"?
why
cause I don't remember how to use GC to be honest
wat
it runs with a gc by default..?
the jvm includes the G1GC by default, turning it off requires a considerable amount of intent
I mean to set the start-up arguments to be more "efficient" sorry I can't describe it better I haven't slept for 2 days and I'm starting to imagine dragons
ok, so what exactly is your issue here?
You should get some sleep or get professional help if you are unable, we will continue to help you when you are more well.
would the optimization guide made by paperchan work the same in folia?
Sure, assuming you can't get enough regions or have some that could use more help
The first answer for Folia is to get more regions (aka throw more hardware at it)
Lets say i had survival server open with 200 players.
folia wants players to be spread out, so basicly if they all joined to spawn would the server crash or?
It would run a little worse than Paper with 200 players
okay thanks
maybe it would not crash but there would be lag in the spawn region, is what I understand
Trying to think of different circumstances for a server incase i ever run it, like doing events would be big no no on folia if all players would be in same area
how often does folia unload chunks ? i have loaded some chunks and my ram is now at 30gb for some time now
So would gotta change basic server designs a bit
that are ur startup flags?
yeah, i see
java -Xms128M -XX:MaxRAMPercentage=95.0 -Dterminal.jline=false -Dterminal.ansi=true -jar server.jar
pterodactyl
you realise that java will use as much memory as you give it right?
hmm no idea then, i was expecting -Xms to be maxed out
that depends on the startup flags & setup
but its recommended to have ram maxed out to gain more peformance
well, flags might tune the behaviour but the general goal (especialls of G1GC) is to not garbage collect if it's not necessary
Is it worth having Folia on server that will have ~200+ players and will be focused on having lots of pvp minigames that will have their own worlds ? Right now we have survival server that can only hold 30 players at 20 TPS and with more players TPS is getting worse and we expect lot of players in future
I mean, it will separate stuff up into regions and stuff
But, only 30 players suggests you have deeper issues
what if i want to use it for 1000^3 tnt explosions?
I mean, that would just all be in a single region
A single region will perform slower than paper on its own
hmm tnt spreads to other chunks but it doesnt count i guess
Folia does not support loading and unloading worlds while the server is running
But otherwise you get at least one region per world
wait whats region isnt that mean chunk?
No
Region in this case means thread, sort of
i thought folia works each chunk parallelism
Technically regions are mapped to threads so you can have 6 region threads but 200 regions and they just share
It works by splittinf the world into dynamically defined regions
Nope, it's at least 48x48 chunk regions
oo i see
I read that somewhere today but with fact that I plan to make that one minigame = one world so it wouldn't even matter
1536 distance
If two players are within 48 chunks of each other their regions will overlap and get merged into one bigger region
will folia implement lesser chunks like 256distance(16chunk) or sth are there any plan for it?
Regions are kinda large because of how the chunk system in Minecraft works
This is a bit off since a player isn't the size of the chunk and there are various reasons a region might be larger
You can't really make the regions too much smaller than that
You could in theory make them like 64x64 chunks but that would increase locking overhead so might be a loss overall
Making them smaller than 48x48 isn't likely due to how MC's chunk tickets work
i just want to try biggest tnt explosion world record
as content also it can be tnt explosive server
but no hope i guess
Spigot already limits how much tnt will explode each tick
100 as default i know
Most of the lag from tnt these days is all the entities moving around
It's thousands of entities ticking
well do u have any recommendation for this purpose? Cpu usage is %25 while explosions happens i think its single threaded
geekbench6 score about 8000
Folia won't get you multithreaded explosions, it'll just let me play at full speed while you kill your part of the world 10,000 blocks away 😄
just have 100 players far from each other each blow up 1000 tnt. instant 100k tnt on one minecraft server record!
https://github.com/PaperMC/Folia/pull/98
if we don't remove the player, death will be broadcasted every tick that's why the respawn button is not working / the death animation keeps playing
Help me
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
to set your account's default identity.
Omit --global to set the identity only in this repository.
fatal: unable to auto-detect email address (got 'u0_a559@localhost.(none)')
*** Please review above details and finish the apply then
*** save the changes with `./gradlew rebuildPatches`
> Task :paper:patchSpigotApi FAILED
> Task :getPaperUpstreamData FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':paper:patchSpigotApi'.
> io.papermc.paperweight.PaperweightException: Failed to apply patches
* 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 3m 53s
2 actionable tasks: 2 executed```
The first few lines of the error message tell you what to do
Ok
Can anyone tell me what happen? build on windows only take 6 min
It did run, but very slow
use wsl, it would be faster in a simulation of linux than in Windows itself
You know that is wsl?
oh, that is already wsl?
Bruh see line 2 -> PS C:\Users\paul> wsl
yeah, missed that
so wsl is slower than windows? that's pretty strange
maybe your cpu is old?
no 13700k
do you have high Ethernet speed?
over 1G
hmmmm
its WSL but he is still on the windows file system
seems like wsl 2 is a lot worse than wsl 1 when comparing working with files
https://stackoverflow.com/a/76085041
can you try this?
It's take 42s now. thx
i did point this out
how to download folia?
You have to build it yourself
well i downloaded using git clone
ran install.bat - build successful
ran jar.bat BUILD FAILED - In plugin 'io.papermc.paperweight.patcher' type 'io.papermc.paperweight.tasks.CreateBundlerJar' property 'vanillaBundlerJar' doesn't have a configured value.
ran patch.bat BUILD FAILED > Task patchSpigotApi FAILED Task :getPaperUpstreamData FAILED
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.
⚠️ 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.
i thought there is already a link to that
https://github.com/PaperMC/Paper#how-to-compiling-jar-from-source
you need to do the same from the paper guide, but for folia
thanks sensei
./gradlew applyPatches
FAILURE: Build failed with an exception.
- What went wrong:
Execution failed for task '
patchSpigotApi'.
io.papermc.paperweight.PaperweightException: Failed to apply patches
./gradlew createReobfBundlerJar
FAILURE: Build failed with an exception.
- What went wrong:
Some problems were found with the configuration of task ':createReobfBundlerJar' (type 'CreateBundlerJar').- In plugin 'io.papermc.paperweight.patcher' type 'io.papermc.paperweight.tasks.CreateBundlerJar' property 'serverLibrariesList' doesn't have a configured value.
repo is cloned using git clone
on ubuntu 22 WSL
Don't cross the FS boundary
Does Folia support 1.20.1? Yes/no?
Yes
Oh ge, I would think a plugin could do this
Good idea
is there something like spark for folia 1.20 ?
Can someone help me a bit with folia's API calls? I can't seem to get them working..
wdym?
I'm trying to develop a plugin for folia that simply shuts down the server at a specified time. The plugin works on paper, but not on folia. Of course, this was to be expected, as folia changes a lot. I need to reconfigure the plugin in order for it to work with folia.
They've got a folia branch https://github.com/lucko/spark/tree/feat/folia - you might take a look at it
It doesn't work for 1.20 & i'm too lazy to fix it
Huh, does spark not work for 1.20 paper either or if there something specific to folia that changed?
Because they don't appear to have done anything for 1.20 yet other than for fabric
Spark works on 1.20 for Paper.
I checked out that branch, rebased on top of master, updated the userdev dependency to 1.20.1, and am doing a build
I wonder if that'll be enough to fix it
Unfortunately building it this way builds like 8 versions of it for fabric, forge, multiple sponge vesions, etc so it might be a while before I even know if it compiles 😄
Ah, apparently you can't build with java 20...
Spark uses v1_19_R3.Craftworld, you should change the import & build again
Why you pinging me 

I already know spark works for paper 1.20 because I just saw a spark report in #paper-help for 1.20.1
In 20 years when IDEA finishes processing it I'll try again 😛
But yeah it's probably just a matter of fixing imports
This was all I needed to make it compile, no idea if it works: ```diff
diff --git a/spark-bukkit/build.gradle b/spark-bukkit/build.gradle
index 28208fd..58c50c4 100644
--- a/spark-bukkit/build.gradle
+++ b/spark-bukkit/build.gradle
@@ -10,7 +10,7 @@ tasks.withType(JavaCompile) {
dependencies {
implementation project(':spark-common')
implementation 'net.kyori:adventure-platform-bukkit:4.2.0'
- paperweight.devBundle("dev.folia", "1.19.4-R0.1-SNAPSHOT")
-
paperweight.devBundle("dev.folia", "1.20.1-R0.1-SNAPSHOT")
// placeholders
compileOnly 'me.clip:placeholderapi:2.10.3'
diff --git a/spark-bukkit/src/main/java/me/lucko/spark/bukkit/folia/FoliaTickStatistics.java b/spark-bukkit/src/main/java/me/lucko/spark/bukkit/folia/FoliaTickStatistics.java
index 483e467..1963d7f 100644
--- a/spark-bukkit/src/main/java/me/lucko/spark/bukkit/folia/FoliaTickStatistics.java
+++ b/spark-bukkit/src/main/java/me/lucko/spark/bukkit/folia/FoliaTickStatistics.java
@@ -28,7 +28,7 @@ import me.lucko.spark.common.monitor.tick.TickStatistics;
import org.bukkit.Server;
import org.bukkit.World;
-import org.bukkit.craftbukkit.v1_19_R3.CraftWorld;
+import org.bukkit.craftbukkit.v1_20_R1.CraftWorld;
import io.papermc.paper.threadedregions.ThreadedRegionizer;
import io.papermc.paper.threadedregions.ThreadedRegionizer.ThreadedRegion;
yea i finally compiled it with this
https://github.com/kugge/spark/commit/8a90389c1f58e46311ba9a2f35e7be1eceec378b
and the profiler works like the 1.19.4 version 🫡
is folia stable and bug-free enough yet for a public server?
50 players range but basically vanilla settings
no it's not
paper is more than enough for 50 players
not for what we want
normal mob cap and high simulation distance
Paper is still enough
@vocal shuttle that is not the use-case for folia though?
why not though? every player has his own base away from each other with 14 threads to spare from the 16
well I guess that works if you have a very large map
it is an smp and the map isn't too big but big enough for regions to not merge by a big margin
exactly 10k right now
Yeah Folia is not gonna work for you
ifoli, new fork? Pogchamp
just store the last time it was executed? or use a cache which auto-invalidates values after 5 minutes
Quick question if anyone knows: is the world file transferable to a paper server?
I'm assuming yes
No format is changed so yes
Ty
If players are within 48 chunks of each other their regions merge (it can merge from further out sometimes too). If player A is 40 chunks from player B is 40 chunks from player C they're all in a single region even though A and C are 2000 blocks from each other. You need people to be really spread out
Or at least grouped together in small really spread out groups
Help me
latest.log by @tight halo: https://pastes.dev/uyiXO406Am
That’s a Viaversion error
Looks like a config is broken or something
If you aren’t able to read the logs to diagnose and troubleshoot plugin issues then you might not want to be running Folia yet.
:v
The ViaVersion issue isn't why the server dies though, that's because your world is corrupted
Oh, no, that also isn't what appears to be killing it, there is even more in the log
I think you have a bad config file for ViaVerison, world corruption, and you may have built a mojmap jar instead of an obfuscated one. Either that or the geyser and floodgate you have don't actually support folia and someone just edited the plugin.yml to make them pretend to do so
Hmm, I will check it again. But I think the possibility of geyser and floodgate not supporting is very low. Since I checked in plugin.yml there is folia-supported: true
Somehing went wrong with the plugin, it's tryna use versioned classes when they no longer exist
As Amaranth said, the plugin.yml saying "folia-supported:true" doesn't really mean a thing, if the plugins functionality in reality isn't adapted to work on Folia.
how do i compile folia into server jar
see the paper readme for build instructions
You have to build it yourself.
is that hard?
See the Paper repo for instructions on how to build it.
Suppose it can be for some. It's still in active development so it's not really ready for everyone to be using it.
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.
thanks for telling me
In theory if your kernel is smart enough to use the E cores for netty and chunk stuff that works but otherwise it'll probably lead to inconsistent performance
Any time the kernel decides a region should go on an E core anyone in it will cry
7950x is plenty
show full log
resolved
What was the issue?
Is https://github.com/PaperMC/Folia/pull/97 any closer to being accepted?
Hard to say. As with anything, no ETAs :)
😭
But it looks like it got added to another PR instead
???
Oh I misread the comment
How is Folia compiled?
I would like to try it 😄
See the paper read me, just clone the folia repo instead of the paper one
Can I compile folia in VSCode?
You need Git and a command line
The editor really is irrelevant

How can I set up Folia, is there a jar file for it or how does it work exactly?
Read up a few lines. You have to compile it.
I built folia using the instructions from the paper repo and when I try to run it (java -jar folia-1.20.1-R0.1-SNAPSHOT.jar) i get "No main manifest attribute, in folia-1.20.1-R0.1-SNAPSHOT.jar"
Thats prob it. Thanks
The ones in Folia-Server?
Folia-Server/build/libs/ has 2 jars and it seems neither of them run with different errors
Using Java 17
folia-server-1.20.1-R0.1-SNAPSHOT-reobf.jar```
These are the two jars
Caused by: java.lang.NoClassDefFoundError: joptsimple/OptionException```
No
In the root folder of the project
I.e. I’m the build folder alongside the -server folder, not in it
Oh. I thought thats what I had originally
Ill try it again im rebuilding rn just to be sure cause i messed it up a few times
thank you i got it
can I use the exact same commands in paper MC read me
You "Need to"
how do i clone
If you don't know how to clone the repo, you probably shouldn't be building this right now. Look up how to work with git, gradle, and Java a bit.
You need to have a bit of git knowledge to be able to clone and build the project.
Why are you sending a link to your fork when Spark has their own Folia branch
That just like Folia if you know how you can compile in seconds
Folia branch is for 1.19.4
ah not my bad, he has update ^^
How do i compile Folia on Fedora btw?
copy folia repo, look at the compilation instructions of paper
1.20.1
Okay that's cool
Uh what am i supposed to do here
Why does it want my email
I entered my account mail and name i hope that is correct
its the excecutable from the repo
screenshot ./gradlew -v
try a clean clone ¯_(ツ)_/¯
Okay... i did the folia repo like 30min ago so would that really be it
i had that same issue compiling folia on fedora
compiled it through intellij idea and it was fine

ive always had the same issue with paper
If i compile it on my nuc running debian would that work
does it have a gui
yeah intellij is an ide, needs a gui
So i can't just use gradlew in an ssh session
you can
you’re confusing the moon
what?
nothing
k
You can use gradle in an SSH session. IntelliJ is an IDE and needs a GUI.
But if you're trying to use this on a NUC it's going to be like several orders of magnitude slower than just regular Paper.
Okay, im aware but i want to just check it out
Im not going to use it on my survival server
I just succesfully compiled it on debian
It starts faster which is funny to me
Just 2 seconds
Chunks generate way faster
it starts faster because it doesnt load worlds in the boot process
Ah okay
Is this decent for what hardware this runs on
This is with 0 configuration btw (just velocity setup)
well it’s only 1 player
Also player-max-chunk-generate-rate: -1.0 is -1.0 no rate limit?
Uh this is very interesting
When no players are on its pretty low usage
i mean you can say it like that but regular paper didn't go below 15
barely a difference
Coincidence with what runs on the server or active chunks
You only get one region thread so this is going to be Paper but slower
You can tell because the utilization says its out of 100%
If you had two threads it'd be 200%, etc
Okay is that changable in a config?
It's automatcially done based on how many cores you have available, not sure if you can override it
So your CPU is too smol
I've got 4 threads and all are allocated to the mc server
Yeah you need 16+
dam
Ideally 16 cores so no hyperthreading or 32 threads
You can get away with less but 4 is definitely not enough, you should stick to Paper
Paper is already going to make good use of 4 threads
I will, im just expecimenting
Just curious btw
What does purpur different compared to paper
More of a #general question but afaik purpur is basically just paper plus a bunch more configuration knobs and some features that plugins could do (but would be annoying to make) built in to the server
Okay so ill stick to paper then
It's basically a server's custom fork but released to the public
no
⚠️ 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.
Ok, then I'll try to check the documentation and build it myself. Thank you!
It's basically git clone then two commands, the paper readme tells you what they are
You just clone folia instead of paper
So long as git is setup already and you clone to C:, D:, or some other drive directly rather than in some long path
Or do it on something other than Windows
I'm always like this, I don't know why
also you want to do it C:\ directly if possible
Thanks, I'm going to read the paper readme now
Not the paper readme, the message you screenshotted half of
The bit you cut off on the top is telling you what to do
oof, 28 minutes to apply patches, that must be Windows on an actual hard drive
Oh, right, it has to download a bunch of stuff so if your network was on the fritz that could be why it took so long too
can you use less than 16 cores
is there any claim plugins that work?
why does it say this?
youre not in the right folder
You can run it on whatever hardware you want
Just, how it will perform, we can't say
it didn't tell me what folder it clone to
Folia
you clone te repo, it creates a folder, generally the name of the repo itself
you also generally wanna clone on the root of the drive due to windows limitations
There is a setting in paper "allow-perm-block-break-exploits" i would like to toggle. It seems like this is taking affect on folia so I assume it has the same since its based on paper? Is there a way I can configure these settings? solved by realizing paper.yml has been moved to config/paper.yml
is there any claim plugins that work?
do command blocks work?
no. they are disabled.
is there a list for what is disabled
Nope
Yes
Someone fork residence
But I recommend not to use it(for security reasons)
what is the diffrence between the paperclip version and the bundler version?
the bundler jar is the whole server, paperclip only contains the patches to apply to the vanilla jar, which is downloaded on startup and applied
the bigger difference is that, the paperclip jar can be legally distributed, the bundler jar cannot :)
k thanks
Hey guys, who's the best contact person here regarding Folia? My company would love to help out in their efforts.
Help out in what way?
Provide more servers to test on, for one. 🙂
Haha well we don't have any plans for another test just yet. But FWIW we don't do sponsorship stuff like "Sponsored by so-and-so company", etc.
If you want to shoot your contact to /modmail we can make a note to reach out if you have some servers you'd like to offer up no-strings-attached and if we do another test we can reach out!
It's tricky to organize a large test with so many players, so we've mostly been focusing on bugfixes and the user tests.
Anyone is welcome to build Folia and run their own test, though! The 1,000 user test wasn't an "official" Paper test run by us, but we did stream it in the Discord and some staff were there to help out.
Alright, got it.
We do have an Open Collective, so if anyone is super stoked about Paper, Folia, or supporting the org, that's always an option!




