#folia-help

1 messages · Page 8 of 1

golden mica
#

Hey, leaf. any ETA when folia stable?

tawdry gullBOT
#
__There Is No ETA__

Updates to Paper do not have any sort of estimate for when they release, ever. Any and all updates will arrive when they are ready, and the only thing to do is wait for them patiently along with everyone else.

verbal remnant
#

Valve Standard Time

#

Soon^tm

scenic sky
#

not soon™️

verbal remnant
#

Not the literal soon. Valve's Soon.

scenic sky
#

that also might be a bit too soon

#

valve's soon is becoming too fast nowadays again

karmic yew
#

How compile the proyect? i want to test it on my server

daring nimbus
#

same steps as compiling Paper

#

should be in the Paper readme somewhere

karmic yew
daring nimbus
#

Because plugins need to specifically support Folia

sudden tusk
#

Most would require significant rewrites in order to work with it

karmic yew
#

uff

verbal coyote
#

Hey guys, if the cmd "/save-all" is disabled, then how to I save my server??

viral stone
#

you let the server deal with it through auto saving

verbal coyote
#

ok thx

late heart
#

Hey! What save configurations should I ideally use with folia?

#

I mean this is in a unite of "tick"

#

what happens with folia?

livid crag
late heart
#

world saving falls behind like an hour

livid crag
#

Provide your server logs and steps to reproduce then. Instead of finding alternatives

late heart
#

there is no any additional information in logs about chunk saving o.o

inner swift
late heart
sudden tusk
#

Nothing in that message was rude or condescending.

bleak python
#

If anything, folia being experimental is even more of a reason to provide extra info, if there are issues it is very likely it's a bug rather than your specific configuration

#

Better fix it for everyone in the server jar

late heart
late heart
#

So let's begin with the hardware, I have a raid 5 hdd array, with a 2gb raid cache module. Until you fill the raid cache write speeds are around 2gb/s, after it fills in it goes down to 800mb/s

#

I don't think that could be the problem

viral coral
#

what about disk latency

#

iops or reading / writing a ton of small files to disk

#

region files are small

late heart
viral coral
#

they're not wrong though

#

the defaults are there for a reason

jagged ether
#

lol

bleak python
#

what's with the bio OMEGALUL

viral coral
bleak python
#

welcome to a free community driven project

marsh mapleBOT
#

(64680410bdf5bc20f3ccc49e) // @prime juniper (817320973723369482) has been warned by @sudden tusk (71627708521512960)

viral coral
#

but there aren't many for saving

bleak python
#

paper has too

viral coral
#

folia is built on top of paper

#

paper is built on top of spigot

#

spigot is built on top of bukkit

sly elm
#

would you like to help document it

sudden tusk
#

Pull requests to our documentation are welcome.

foggy blaze
#

great idea! I'm so happy you're offering to contribute to the project!

bleak python
#

but this shit takes time and not everyone can spend every waking moment and document every single conceivable thing, which is why contributions are always welcomed

late heart
late heart
#

is there a separated thread just to measure time?

viral coral
#

it doesn't change in folia

sudden tusk
#

There's a happy global thread that chugs along and keeps time up to date. It's love.

inner swift
#

There is a wiki on all settings

viral coral
#

for any paper settings you can look at the docs, for any spigot settings you can look at spigot's docs

#

not much to it

late heart
#

since the world save was behind kinda the same amount

#

The values that I have changed from default to try to counteract

#

just curious if Im taking steps in the right direction

#

max-auto-save-chunks-per-tick: 64

#

auto-save-interval: 1200

sudden tusk
#

Does folia log establish how many threads exist for different things like chunk loading/saving?

late heart
#

player-auto-save:
max-per-tick: 20
rate: 1200

tranquil epoch
late heart
tranquil epoch
#

yeah the ticks are maintained per region

late heart
#

did anyone also notice the save falling behind?

tranquil epoch
#

that's hard to quantify

late heart
#

I had I would say "extreme" tps differences per regions, but I don't see how that could interfere with saving

tranquil epoch
#

well the save system operates on ticks, not time

#

so if your tickrate falls behind so does the save rates and the interval of saving

late heart
#

I'll gather more information, and let you know If I found any additional information about why it could be happening / how to reproduce.

livid crag
#

that will be much appreciated AYAYARie

willow dock
#

Hello)
Sorry for the stupid question, but how do I run PlaceholderAPI on folia? Is there any way? I use velocity + folia

hexed ice
#

PlaceholderAPI has a dev branch for folia support, you need to wait for them to finish that

willow dock
#

Ok, thx for the answer)

sudden tusk
#

I imagine a lot of placeholderapi extensions would need updating. Hope they're doing a folia support flag on extensions too...

#

(the number of weird extensions Ive seen people use that access world data...)

unkempt aurora
#

really?

#

How can I help with Folia development?

inner swift
ivory dust
#

Does FAWE support folia yet?

naive fable
#

What is the minimum distance between regions?

inner swift
#

If I understand this correctly, upper range of 768 blocks for VD=10

naive fable
#

Thanks

finite hinge
#

That's not between regions, that's the "radius" of a region

#

So double that

inner swift
#

Are you sure? Leaf did say 50x50 box which implies radius 25

finite hinge
#

He didn't say I got it wrong when he was explaining it to me and this is what I ended up with:

Leaf described it as view-distance 10 means chunks in a radius of 11 around a player will be brought to full loaded which is ticket level 33. The system will create chunk holders up to ticket level 45 (apparently in a flood fill manner) so it touches an extra 13 radius out from there for a total of a 24 chunk radius. Current region section size is 16x16 chunks so that fits in 2 sections. Then the regionizer creates an empty section around non-empty for buffer so you get 3 sections, 48 chunks, or 768 blocks

#

That's all "radius"

inner swift
#

Err

#

@ EterNity, can you get leaf here to clarify pls

bleak python
#

ping him trollface

wide ginkgo
viral coral
#

see pins in that channel

knotty egret
#

hello

fierce knotBOT
arctic tapir
#

did you git clone?

knotty egret
#

yes

#

I try ./gradlew applypatches but doesn't work

arctic tapir
#

can you show the whole log

knotty egret
fierce knotBOT
arctic tapir
#

do it directly on C:

knotty egret
#

wdym

arctic tapir
#

go to C:

#

clone there

knotty egret
#

why

arctic tapir
#

because windows is dumb

#

and you're doing it in OneDrive which also isn't good

knotty egret
#

same

#

@arctic tapir ```PS C:\Oyunzor\Folia> ./gradlew applypatches

Task :paper:applyApiPatches FAILED
Task :getPaperUpstreamData FAILED

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':paper:applyApiPatches'.

io.papermc.paperweight.PaperweightException: Command finished with 128 exit code: git -c commit.gpgsign=false -c core.safecrlf=false reset --hard upstream/upstream

  • 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.

BU¦LD FAILED in 19s

willow dock
#

Try gradlew clean and then run the build again

knotty egret
willow dock
knotty egret
#

That's not the point of discussion, but I don't see a problem use Windows.

#

I like it

daring nimbus
#

You could use WSL

#

that does work fine with Paperweight

marsh mapleBOT
#

(646a7765bdf5bc20f3ccc4a9) // @radiant sorrel (647505078340550656) has been banned by @livid crag (177150983258767360)

lone grove
#

could someone send me a foila jar

#

i cant seem to get it build

#

built*

tawdry gullBOT
#

⚠️ 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.

jovial helm
#

Paper's CONTRIBUTING doc should tell you how to build

formal remnant
#

So I’ve been out to the mc game for while. How does folia compare to Purpur or other forks now?

left dirge
#

Folia aims to solve a different issue.
Not really comparable to Purpur.

unkempt aurora
#

I think, Purpur pretty much adds just more configuration

obtuse raptor
#

Yeah basically

#

There won't be anything near purpur folia tho

tawdry gullBOT
#
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.

wide hedge
#

I don't have the index.lock file

viral stone
#

I mean, if the api repo is locked, it won't be in the main repo

#

depends on what actually caused it and what the actual error was

viral stone
#

no

#

Show the actual error

wide hedge
viral stone
#

137

#

you ran out of ram

wide hedge
#

oh i'm sorry

#

thx for you help

slender anvil
#

help

wicked mantle
#

Don't run it in the git bash shell on windows. Either do it in windows through powershell or in WSL

slender anvil
wicked mantle
#

Imma assume the non-latin characters might be fucking it up but not 100% sure.

daring nimbus
#

did you run applyPatches?

wicked mantle
#

oh duh didn't even notice that OMEGALUL

slender anvil
daring nimbus
#

and that worked without errors? hmm

#

Maybe try moving it to a different location that only has latin characters in the path, that might mess with things (as mja said kek )

slender anvil
wicked mantle
#

woo!

slender anvil
wicked mantle
#

Kinda assumed it was. Lots of programs shit themselves when they come across non-latin characters lol

slender anvil
#

fr

wicked mantle
#

Glad you got it fixed tho

sudden tusk
wicked mantle
#

Hush smajj

sudden tusk
#

I acknowledge it's slower but it's fine enough since I'm not doing it constantly

trim cobalt
#

Does EssentialsX work in Folia? Dont load for me but wanna be 100% sure.

wicked mantle
#

I think there’s a branch for it

trim cobalt
#

Oh

wicked mantle
#

Idk if it’s done yet

trim cobalt
#

I'll have a look.

#

Is there alternatives?

livid crag
#

Some Part of the functions are working. Look at gh

wintry bough
#

any tablist plugins for Folia?

golden mica
#

TAB

paper mauve
#

Hi all
who has applied Folia to a fabric or forge?

#

very sadly

paper mauve
#

what chunkload can be set for player on the server with the Folia core,
Here are the example specifications of the server:
32GB DDR4
16 CORES I9
512GB SSD

#

What view range can be set on the server?

#

🧐

livid crag
#

See readme for example

paper mauve
#

I don't see anything about the distance

cerulean citrus
#

Fobia minecraft version?

#

Does anyone know when Fobia will be officially released? to use on my server

bleak python
#

there is no eta

hexed ice
cerulean citrus
#

And there is no estimate? for example if it will be this year

ivory dust
#

I liked some of the ideas from Kaiiju

bleak python
#

builds are available via the downloads api or you can build it yourself; but it's still experimental software that is not ready to be used in production environments

cerulean citrus
#

And when it is released, will it only be for new versions? because I have a server but I use 1.16.5 because it's better for me in performance, that is, with that version I can support more players simultaneously than with 1.19.4

daring nimbus
#

1.19.4 Paper is also faster than 1.16.5 Paper

#

and no, Folia won't be backported to old versions

dusty aurora
#

is folia on 8 threads slower than paper on an smp server with 80 players?

cerulean citrus
daring nimbus
#

8 threads is way below the min requirements, very likely yes

cerulean citrus
finite hinge
#

Ignore the efficiency cores, they don't really count for this

#

Like, they might help, but they might also make your whole system slower until you disable them completely

#

They definitely don't count as a full core

left dirge
#

8c16t i9

bleak python
left dirge
#

Yeah, ikt. Just clarifying that threads are likely shown.

tranquil epoch
#

e-cores would be better if the scheduling could be controlled

weary wren
#

So, is folia more like waterfall? Or is it more like paper?

daring nimbus
#

Waterfall is a proxy. Thats something completely different

weary wren
#

Ok. So, folia is not a proxy. Right?

viral coral
#

folia is server software

weary wren
#

Folia is a server.

daring nimbus
#

yes

weary wren
#

Ok. Then how does one server split itself for better performance like folia does? My head can't wrap around that.

viral coral
#

it doesn't

weary wren
#

My reaction is your pfp.

viral coral
weary wren
#

Thanks

viral coral
weary wren
#

So, it just separates threads?

viral coral
#

it's multithreaded region ticking

weary wren
#

Ah ok. Thank you. I think I understand better.

viral coral
#

Folia splits the chunks within all loaded worlds into independently ticking regions so that the regions are ticked independently and in parallel.

golden mica
inner swift
#

They will be used

#

They're just not nearly as good as P cores

wicked mantle
#

Iirc Intel mentioned they're equivalent to ~3.5GHz mobile skylake cores

orchid spear
#

"Ideally, at least 16 cores (not threads)." requirements are insane.

#

basically the whole dedicated server just for 1 MC server.

paper siren
#

well the idea is that this one server can hold hundreds of players

orchid spear
#

Scalability was usually solved horizontally. (By deploying multiple servers and connecting them with proxy)

paper siren
#

and the requirements are just an orientation, basically the assumption is that you're better off using Paper on smaller scale

fair merlin
errant wyvern
#

I remember the time when 1.8 could hold hundreds of players. Now we need something like Folia

daring nimbus
#

1.8 also had half the content, so thats natural. And you still needed to disable some stuff

errant wyvern
#

But the player count dropped more than half. On the same hardware from 300 to max 80

vague kite
#

no code runs faster than no code, that's basically 1.8

paper mauve
#

old xeon cpu good for folia?

#

16 cores but ddr3 and 2.5ghz

#

or i9 13900 better than?

daring nimbus
#

You still want at least decent single core performance, and the xeon probably doesn't have that. And slow RAM always hurts

#

But the i9 only has 8 P cores. Both aren't great imo

sudden tusk
#

You want latest and greatest cores, and a lot of them. Need both power and quantity.

ivory dust
ivory dust
#

I run a 64 gb + 8c/16t i7 6900k server for folia

#

I’m gonna get an epyc 7551

inner swift
ivory dust
#

I use 8 threads for regions + 6 for chunks

solar ledge
#

That's cool

#

Chunk generation or loading?

idle furnace
ivory dust
#

had like 6-7 regions

finite hinge
#

Bots are basically just chunk loaders

#

They aren't running farms, making machines, wandering, etc

golden mica
#

hey, I want to ask any plugins could display 80+ players in tab

proud mountain
blissful forge
#

Anyone know how to access the build jars of FAWE's folia support files? It's not on their jenkins and I'd really like to use it

jagged ether
#

Ask FAWE

#

And if the source code is anywhere then it's definitely in their repo

pseudo ibex
blissful forge
#

ouu thank nyou

inner swift
#

<@&748618676189528155>

marsh mapleBOT
#

(6470ea44051c4a11e9c359e6) // @modern fulcrum (poyfi#7267 / 717106063417278554) has been banned by @sharp raven (271510274475819008)
Reason: spam links

viral coral
#

ok.

sharp raven
#

lfg aberdeeners first ban

verbal remnant
sudden tusk
#

I legitimately want to see performance of folia on Epsilon GC (performance boost, and how long it lasts before falling over)

pseudo ibex
#

what does lfg stand for?

wicked mantle
#

lets fucking go

pseudo ibex
#

oh hahahah

tawdry gullBOT
#

⚠️ 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.

fair merlin
#

You have to build it yourself

willow dock
#

Hello)
Which configuration would be more preferable for Folia? Where there are more cores or where the frequency is higher?

viral coral
#

both suck and are below folia's requirements

#

if you're renting a virtual server, you do not need or want folia

willow dock
urban stag
#

Is multipaper better than Folia?

bitter jasper
livid crag
#

You can but you aint going to have the best performance.

#

Can you run your car with vegetable oil? you can but it aint going to run well. (do not try this at home)

willow dock
willow dock
finite hinge
golden mica
#

@tranquil epoch hey, leaf any plan that add back vanilla command? like worldborder

orchid wigeon
#

Would a region crashing take down the entire server? How would stuff like that be handled

daring nimbus
#

This happened during tests a few times. It doesn't crash the entire server usually. Players that were at locations in that region when logged out can no longer log in, and players connected can no longer interact with the world or leave the region. But for everyone else it's not noticeable

pseudo ibex
#

But it’s nice

tranquil epoch
#

a region crashing initiates a shutdown these days

daring nimbus
#

nawww, it was a nice "feature" paperUwU
but yeah, guess thats safer

orchid wigeon
#

It'd be nice if it didn't shut the server down but instead just disconnected everyone in said region until it "rebooted"

finite hinge
#

I think the reasoning is a crashed region could have broken just about everything else along the way to getting there

#

If it was clear how to clean up after it safely and just remove it then it wouldn't have crashed to begin with

tawdry gullBOT
#

⚠️ 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.

pseudo ibex
viral stone
#

No real info exists there

fair merlin
#

Yeah not a lot to go on.

#

I wouldn't run Spartan on Paper, though, let alone Folia

pseudo ibex
#

😗

fair merlin
#

If it hasn't been updated for Folia you definitely shouldn't run it.

#

But it's not known for having the best performance in general, so I'd be hesitant to run it on something that's doing a bunch of new multi-threaded region stuff.

viral stone
#

21:19]electronicboy: "Hey, I heard that you dislike when people say that your plugin is trash, and so I'd just like to mention that spartan is a highly reliable and functional piece of software"
[21:19]electronicboy: <image>
[21:19]electronicboy: Now, could you please stop lagging my server

pseudo ibex
viral stone
#

server I was contracting for

pseudo ibex
#

hahah big g

#

I mean f

#

So like what do you use instead?

#

NCP?

fair merlin
#

But yeah if a plugin hasn't explicitly updated for Folia I wouldn't use it on Folia.

viral stone
#

idk what AC software people are caring about these days, tbqh

fair merlin
#

You're also running NCP at the same time which seems odd

viral stone
#

I think grim was supposed to be the next big thing

fair merlin
#

And your CPU only has 8 cores

viral stone
#

NCP is like the grandma which is still fine for what it is

fair merlin
#

So not sure if Folia is the best choice for you in general

#

Guess it depends on what you're trying to do.

#

I dunno if they're gonna update Grim for Folia.

#

Good question

viral coral
#

hear me out

#

just don't run an anticheat

daring nimbus
#

😮

pseudo ibex
pseudo ibex
tranquil epoch
#

classic minigame server

fair merlin
viral stone
#

back when I used to run a server, my players did a far better job of detecting cheaters than any anti cheat software we used

pseudo ibex
pseudo ibex
pseudo ibex
viral stone
#

Well

#

big thing is going to be to look at the other threads too

#

all we can see is that the region threads are mostly sleeping

#

which, I mean

#

could be good in that they're not going balls to the wall

#

but, could also mean that stuff is delaying the work from being actually ran

pseudo ibex
#

Hmmmmm okay this is definitely something to go off of, but any suggestions or recommendations on what I should do though lol?

viral stone
#

watch all threads

#

or hook up something like yourkit or watever which can drill in a bit better

pseudo ibex
#

Okay!

#

Oh yea and most of these plugins I had PR done, I am hoping ProtocolLib as well

pseudo ibex
#

Hahah oh yea and my nitro expired which means I can’t make giant list like this unless I want to send it as a file, so pasted it here on Google Drive Sheets - https://docs.google.com/spreadsheets/u/3/d/e/2PACX-1vQPwT-7togb-Y-fOcHQtNuPj38MaeXRkCgnqi46LcU99MOOHgOBdln79vya8yMrg8slpLRZHx5ZXKOW/pubhtml?gid=0&single=true pretty much only Citizens, Dynmap, Multiverse-Core, Multiverse-NetherPortals, Parkour, TNTRUN_Reloaded, Playerkits, Themis PremiumVanish and mcMMO have not been updated, but all other 55 plugins have.

#

Hahaha and yes I did get someone to port CommandBlockAsPlayer to Folia, but command blocks don’t work so it was a waste of time lol.

ivory dust
ivory dust
pseudo ibex
golden mica
#

my friend solve this i know that

#

thanks : )

livid crag
#

I think chunkyborder is better since Vanilla one can be exploited and people can still get out. You should tell your friend PepeLa @golden mica

golden mica
#

i got it

#

but chunkyborder could not let the border move

hexed ice
#

I was planning on switching to chunkyborder soon so that's some pretty nice timing

livid crag
#

yeah @sly elm is epic AYAYARie

hexed ice
#

no more unmaintained WorldBorder fork for me pepela

livid crag
golden mica
#

maylike worldborder set xxxx
worldboreder set xxxx xxxx s

#

you could let it move automatic

sly elm
# golden mica

yeah I saw the PR btw, there were a few bugs with it, I just went and fixed them because I realized there wasn't actually much needed to support folia

livid crag
#

I like it when I can see the vanilla border animation a bit further and disallow players to get close so it doesnt look ugly when people build close to the edge.

golden mica
livid crag
golden mica
#

Chunkyborder just teleport

sly elm
#

that addon is pretty much just a copy of the old WorldBorder plugin by Brettflan with a few extra bells and whistles

golden mica
#

So any function that could make it move

#

I mean automatically

golden mica
#

Have you ever encountered this problem?

bitter jasper
#

Hey
I want to test Folia, how do i compile it into a jar?

hexed ice
#

see the paper readme

round tide
#

Hi dear developers, i wanna ask will Folia work with other server cores like Airplane/Patina/Purpur etc. or just with PaperMc?

arctic tapir
#

what

round tide
#

I mean as i read folia is an offshoot of papermc, but i wanna know can Folia as a system that allows you to have multithreading on servers in minecraft work with other cores?

#

Fore xmpl can u install airplane core + folia together on minecraft server ?

paper siren
#

Folia is a minecraft server

naive fable
#

He meant other upstreams than paper

paper siren
#

well people can do whatever the license of the project allows, but Folia won't change its upstream

round tide
#

"What is Folia?

Folia is a new fork of Paper that adds regionized multithreading to the server. Access to Folia builds isn't currently available. To build Folia, you need to compile from source following Paper's standard compilation guide." ok now i see

livid crag
#

That's out of scope of the channel here. As SirYwell said, you can do anything you want with it (Folia) accordingly to the license.

round tide
#

Can i read a Lisence please ?

livid crag
#

I mean its on the github...

round tide
#

found it

lunar moth
#

So I know I need to build the folia jar myself, Once I've downloaded the zip and extracted it, do I run install.bat to get the jar? Also will command prompt work, or will I need something like git bash? I plan to run local for dev testing.

paper siren
#

You should clone the repo, not download the zip

pseudo ibex
#

I wonder, will there be another Folia stress test like there was on the announcement of Folia?

mystic marsh
pseudo ibex
mystic marsh
#

yeah

pseudo ibex
#

From what I know NCP supports folia, but CNCP does not.

mystic marsh
#

wait how can it support folia if it isn’t released though

pseudo ibex
mystic marsh
#

I don’t know much about folia

pseudo ibex
mystic marsh
#

why would cncp not support folia

pseudo ibex
#

Anyways if I did use CNCP it just ignores certain checks for bedrock players, so they would still be able to cheat.

pseudo ibex
mystic marsh
pseudo ibex
mystic marsh
#

wait so are you using folia right now for your server even in beta?

pseudo ibex
mystic marsh
#

Oh damn dynmap

#

Rip

pseudo ibex
#

What about it lol?

mystic marsh
#

It’s unfortunate it’s not compatible

pseudo ibex
#

I could switch to BlueMap I heard it supports it.

mystic marsh
#

a plugin I used doesn’t support bluemap so rip for me

#

I heard bluemap is good tho

mystic marsh
#

I’m sure most would update for compatibility, no?

pseudo ibex
#

Here’s a list

pseudo ibex
pseudo ibex
steep elbow
#

ye

pseudo ibex
#

No problem!

#

It took at least 2 months to get there

steep elbow
pseudo ibex
#

Hahahha

pseudo ibex
steep elbow
#

oh is that only plugins u need:D?

pseudo ibex
#

I could also use ZNPC instead of Citizens

#

For Folia

steep elbow
#

has branch for folia (not tested verywell)

steep elbow
pseudo ibex
pseudo ibex
steep elbow
pseudo ibex
viral stone
pseudo ibex
round tide
#

how many servers use folia now ?

round tide
#

oh crap

#

nice

pseudo ibex
daring nimbus
#

most of them probably not production servers though

pseudo ibex
livid crag
#

pretty normal for something that's not even offiically released/stable yet

round tide
daring nimbus
#

development and testing, yeah

round tide
#

ok good job btw

#

Can i know how many time Folia will be supported?

livid crag
#

The continue support is planned. There aint really no EOL in terms of any project under PaperMC

#

the only thing that's unsupported is older versions when new one comes out.

round tide
#

Noted

sudden tusk
round tide
#

Does it mean that we will be able to use multithreading on minecraft servers in the near future?

sudden tusk
#

You can use multithreading on minecraft servers right now. And could a few years ago. Plenty of stuff in the server has run off the main thread for years.

livid crag
round tide
pseudo ibex
#

?

sudden tusk
#

Folia is meant for servers with ridiculous player counts and large budgets to run highly powerful machines.

livid crag
#

The implementation supports it yes but nothing stops you from running it for small server if you happen to have a 32 core modern cpu laying around Chatting

round tide
#

Do i need Folia if i want to start my own server fo 60-100 players?

livid crag
#

Paper is likely the recommendation here.

round tide
livid crag
#

with ooptimization/compermise to certain aspect of gameplay yes.

round tide
#

Vanilla for example

#

With some plugins like anticheat and stuff

pseudo ibex
#

I know Folia you will need a lot of cores, but what if you just use 3 threads?

round tide
#

and same q but if i have 12 cores 4 exmpl

fair merlin
#

Not designed for low core or low thread count. Doesn’t make sense to use it on low cores or low threads.

subtle oriole
livid crag
#

We gonna deprecate spigot too GuraDinoGau

fair merlin
orchid wigeon
round tide
lunar moth
#

OK, so I have my local repo of Folia that I cloned, now how do I make a jar to run to test my plugins with?

livid crag
#

same way you output a paper jar. so just replace paper instruction with folia.

lunar moth
#

I download paper from the site. Do I run the jar.bat?

steep elbow
#

also u gotta build the folia 2x for some reason it fails on first time

arctic tapir
#

sounds like an issue on your end

steep elbow
#

weird issue, rebuilding fixed

steep elbow
arctic tapir
#

works for me 1st try

scenic sky
#

also fine for me

steep elbow
#

I mean when u built it the first time ever

#

if i now build it its fine

arctic tapir
#

yes i just tried it on a clean install

steep elbow
arctic tapir
#

it was a clean install

#

never used gradle on it

pseudo ibex
#

I see a lot of people asking how to make this. Would you guys think it would be dubius of me if I made a YouTube video on how to compile Folia and Paper? I know this project is still in its infancy, so I wouldn’t think you would approve of such a thing, but I thought I would ask.

pseudo ibex
arctic tapir
#

there’s a wrapper

blazing bough
timid grotto
#

i dont think so

blazing bough
#

... but .... cores!

timid grotto
#

its likely just multiple computers that talk to each other

blazing bough
#

On a serious note: Thank you to all the developers of Folia. It's an ambitions project and I appreciate that you have so far continued to address the continuous stream of "where do I get the .jar" and "Can I run this on my 486?" in a professional and polite manner.

timid grotto
#

also afaik folia cant even use 2 cpus in the same computer

sudden tusk
#

I don't think it's "can't" so much as "might actually struggle with the additional latency" but I'm not the professional here

timid grotto
blazing bough
#

I have a dual CPU Xeon X5650. 24 total threads! Surely it's good enough!

#

(I do .. and no I won't be trying it!)

sudden tusk
blazing bough
#

Is there a challenge to support NUMA? Would it help anything? Make more systems appropriate for Folia? Or just add support for a niche hardware configuration?

golden mica
#

13700k close E-core

wicked mantle
#

e-cores pepeP

tranquil epoch
#

impressive

pseudo ibex
wicked mantle
#

no

#

me making a pr OMEGALUL

pseudo ibex
simple frigate
#

Is the single 64 core CPU system better than dual 32 core CPU system for 1 folia server?

blazing bough
#

Yes.

golden mica
#

I found a BUG, when the entity passes through a nether portal in the world, a nether protal will be generated in the nether

#

Most entities can teleport through Nether Portals, including various creatures (except Withers and Ender Dragons), ships, minecarts, projectiles, and item entities, but if one creature rides the other, neither creature can pass through the portal. Since only the player can make a portal spawn in another dimension, none of the entities mentioned above can pass through a portal that does not have an activated door in the corresponding dimension.

steep elbow
ivory dust
#

Selling folia builds to noobs for 10$

#

jk lmao

viral coral
#

i mean it is available on the api

#

if you're competent enough to figure the api out then good luck have fun

iron star
#

Anyone know where I can grab the experimental Folia-compatiable spark build? Not seeing it anywhere on git but I see people saying it's compatible found the branch im dumb ignore me

iron star
#

Its always when I ask that I find what I'm looking for, an unforgiving curse.

livid crag
pseudo ibex
#

I know almost nothing about processors. I know these aren’t enough, but Out of these 2 which one would be better for Folia?- https://spark.lucko.me/gbdbb801Yt or https://spark.lucko.me/DlNiRNQTOm hahaha before you say none of them because this isn’t enough for Folia, these are both just test servers. So it’s not a trick question.

spark is a performance profiler for Minecraft clients, servers, and proxies.

spark is a performance profiler for Minecraft clients, servers, and proxies.

golden mica
#

[18:14:13 ERROR]: POI data mismatch: never registered at BlockPosition{x=33, y=68, z=1142}
[18:14:13 ERROR]: POI data mismatch: never registered at BlockPosition{x=35, y=68, z=1142}

golden mica
fierce knotBOT
inner swift
#

That's not Folia

kaiiju-1.19.4.jar:git-Kaiiju-"d9ad730"

golden mica
#

I think Folia is in the stage where it needs to find and fix the problem, and if the problem is found in Folia's fork, I think it is necessary to remind it in order to better update Folia, unless it is fatal to the code

sudden tusk
#

😆

#

Reproduce the issue on Folia itself, and then come to us 🙂

viral stone
#

We can't accept bug reports from random software on the internet, we have no idea what changes or state that software is in

wicked mantle
#

Especially since that fork does a lot of fuckery OMEGALUL

wide ginkgo
#

Is there intentions on supporting NUMA in the future?

viral stone
#

I mean

#

afaik, if there was a NUMA support issue, it would be 100% on the JVM to fix that

wicked mantle
#

I believe NUMA works but performance takes a bit of a hit

viral stone
#

outside of that, there is no real magical fix for NUMA issues which isn't "rewrite the software from the top so that you can isolate data properly so that the NUMA hit isn't anywhere near as bad"

fair merlin
#

I think it was mostly “I don’t wanna mess with NUMA right now”

viral stone
#

problm is that NUMA has to basically be talked across the two chips

#

it should "just work", so to speak

#

just, ofc, fixing the performance costs of numa isn't really trivial as most of it afaik boils down to tryna limit data access

fair merlin
#

I forget what the primary concerns were last time I asked

wicked mantle
#

Pretty sure leaf mentioned it's really only a performance issue, at least from a quick glance at him mentioning it

#

Basically haven't tested the penalties so YMMV

fair merlin
#

Went and found the convo.
“This shit ain’t NUMA aware”

sudden tusk
#

Ideally would be getting different worlds across chips, right?

fair merlin
#

Could be fine or need some testing or tweaking but it wasn’t a priority.

viral stone
#

The issue is data locality in a sense

fair merlin
#

Yeah

#

Especially with the regions

#

Could certainly end up in a situation where wires are getting crossed. Then adding plugins into the mix . . .

viral stone
#

NUMA generally expects that each core has a slice of the ram, in order to take advantage of that, you'd need to effectively ensure that the same regions end up in threadpools for each of the different chips and stay there across executions

#

and then ofc, wider variable state gets into hell too

split bay
#

is it even possible to write numa-aware java code

#

I guess it kinda should be because you can call native code to figure out which core a thread is currently executing on but it sounds like an absolute pain

blazing bough
foggy blaze
#

Okay

viral stone
#

That’s just the gc

#

Like, the cleaning/allocation being Nima aware means that the thing should priorities writing to memory on the local CPU rather than having to basically interact with the other cpu is how I remember it working

#

Buts the lack of real support for it inside of the Java sdk means that you have to dip into the natives to do stuff, not to mention all of the shared state inside of mc is not exactly how you design software to be able to take full advantage in those environments

finite hinge
#

NUMA is mostly a kernel scheduler and allocator thing, afaik

#

There isn't much you'd do at the application level regardless of language

#

Well, other than try to ensure your operations don't need to reach memory from other threads but that's a good idea in general

viral stone
#

Well, yea; but they basically means that you need to be smart about where you schedule regions

#

Not that the fact that the chunk system is this separate thing is totally going to help here

finite hinge
#

Per-region thread pools I suppose

#

Err, region in this case means memory region

#

I guess libnuma at least calls them nodes, not regions

#

Nodes have memory and CPUs in them, you can query this from the OS and then pin threads to nodes

#

I suppose threads complicate the kernel's job since all the memory is available to them so it doesn't have any clear info on which node it should run on

#

Although I believe it does try to keep it on the same node so long as there is room for it

pseudo ibex
pseudo ibex
# foggy blaze Why?

Because I want help figuring out a method for this, plus this is also the help channel. It could mean a public world loading plugin, almost like multi verse except with a lot less features.

#

A short term interim one until MV releases their own compatible version,

#

Unless it is really popular it may be kept

prime juniper
#

Ah multi-threading cool very cool I support

#

Where can I find the guide to compile it

#

Github I assume?

livid crag
#

Look at Paper repo's guide

#

but do Folia instead AYAYARie

bitter jasper
#

faced this two times ;-;

shell violet
#

Do you have intellij/an ide open to the same folder?

#

If you do, make sure you are running the commands in the intellij provided terminal

#

Or just close the ide

bitter jasper
#

yeah intelliJ is running and i am using its terminal

#

so should i just do it in terminal and not in the IDE's terminal?

#

thonk well its now doing something

bitter jasper
#

it works nowfolia

unreal egret
#

is folia good enough for a survival server with friends? we have a survival server with lag issues even tho the server isnt fully utilized so i want to test if it fixes it

tawdry gullBOT
#
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.

fair merlin
livid crag
#

Pleases read the goal of the project and minimum hardware requirement foliapray

fair merlin
#

Read the FAQ in the line in here

hexed ice
#

if you're having lag I'd check the optimization guide first, though if you want your server to be as vanilla as possible it might be a bit hard

unreal egret
fair merlin
#

But yeah I’d check the optimization guide first.

#

Figure out why there is “lag” and then determine what can be done about it.

finite hinge
#

Paper already uses a bunch of cores, it just only ticks worlds on one of them

#

Networking, chunk generation, chunk load/save, Java GC, etc all use more cores

sudden tusk
#

I suggest hopping over to #paper-help with a spark report of lag spikes only

golden mica
#

lag sad

#

should i use linux ?

left dirge
#

You're running on an eight core CPU.
Linux is my personal preference but doesn't change the fact that you're running folia on to few cores.

golden mica
#

cause i dont know the e core performance

fair merlin
golden mica
#

Clearly I don’t know what the difference between Linux and windows

fair merlin
#

For Minecraft Windows is low because the windows OS doesn’t handle small files as well.

golden mica
#

Could you please tell me the benefits when I run a Minecraft server in linux instead of windows

fair merlin
#

And Minecraft is many many small files.

golden mica
#

So you mean the IO performance?

fair merlin
#

Yes.

#

Generally Windows is going to run with more CPU and RAM overhead also.

#

But the FS is the big one.

golden mica
#

But what about winserver

fair merlin
#

Same.

golden mica
#

Got it

#

When I search linux I found Xanmod

fair merlin
#

Also you need more cores if you want to run Folia well. And not e-cores.

We (and I) have said many times that it’s targeted for higher core/higher end CPUs

fair merlin
golden mica
fair merlin
#

I wouldn’t really mess with that

#

Generally if you aren’t sure why you’d need something you shouldn’t bother with it. Ubuntu it Debian out of the box is going to be fine.

golden mica
#

Got it

#

Maybe I should use 7950x

#

I don’t know maybe 64GB is enough for a 160 players server?

fair merlin
#

There’s no real math for that. It depends on the server, the players, they plugins, etc

#

But if you configure it properly you can run 160 people on Paper, depending on the server setup and game type.

tacit tartan
#

(assuming you've got sufficient hardware at least)

fair merlin
#

Right.

golden mica
#

DDR5 is so expensive

#

Same the 7950x and X670e

#

🥹

#

I will try it

#

Thanks

bitter jasper
#

Will Skyblock gamemode have any advantages when running on Folia?

glossy locust
#

kind of. it's easy to infinitely scale skyblock to many machines by custom sharding and custom plugins - but folia is another way to scale skyblock to the limits of one machine

bitter jasper
#

:D

next scroll
#

Hello everybody! Why is there no world border on Folia? How to fix it?

bitter jasper
knotty hemlock
arctic warren
#

what are the things that would work on paper, but not on folia?

scenic sky
#

everything that is broken in folia works in paper

#

😁

arctic warren
#

But what are the things i should change to make a paper plugin compatible with folia

steep cloud
#

Wanted to ask a question aubout folia bevore I plan to switch to it with the time. It does support multicore computing but does is support multisocket cpus. I'm running an universal quad socket server with 4 12 core xeons.

scenic sky
#

multi cpu systems dont do well with folia

viral coral
#

nor does old hardware because what you're running is probably ancient

dusky basin
#

Is folia more unstable as multi paper or not?

#

Do y'all think we would ever get multi folia?

#

:D

inner swift
#

Folia has known random crashes right now

dusky basin
#

Interesting

#

Interesting

bold osprey
#

folia is new, multipaper is old, there are bugs in folia that will be resolved, there are bugs in multipaper that can't be resolved

fair merlin
#

They also aren’t really doing the same thing.

#

So it’s not quite a 1:1 comparison.

livid crag
bold osprey
livid crag
#

No a new one is up a few days ago and should still be up

#

Same old world as their 1.12 one so they are likely going to update in 1.20

#

We also figure out they use velocity and grimAC PepeLa

arctic tapir
#

how?

arctic warren
viral stone
#

Have you read the docs?

arctic warren
#

yes but i feel like i don't really understand it

sudden tusk
#

Please clarify which part of it you didn't understand and we can help better 🙂

arctic warren
#

Can I just get data from any chunk? because I don't really get if I can get data from unloaded chunks or not

viral stone
#

no

#

that's part of the entire new rules

#

you cannot access chunks which don't belong to the region you're not ticking in

quartz garden
#

i have a question, i wana test foila my self but i dont even know how tf i can get foila when i try to build it with gradle form their github it dosnt work and on yt or else where there is no download or smth for it, can you only get foila with like special connections or how does it work ?

scenic sky
#

you get folia by compiling it

quartz garden
#

but when i try it it fails

#

with what do i have to compile it

scenic sky
#

how does it fail?

quartz garden
quartz garden
scenic sky
#

you compile it like you compile paper

quartz garden
#

but i dont compile paper i just download it form the website 🗿

#

still ...

#

never mind i think i got it

livid crag
#

Millions of people learn how to compile from source from trying to get folia foliapray

pine tusk
#

Learning by osmosis NODDERS

marsh mapleBOT
#

(647d1df54d8e4e0733cf143d) // @mossy kiln (Admin Sonic#6375 / 853641254058590268) has been banned by @livid crag (177150983258767360)
Reason: spam bot

blazing bough
#

Is it true there is an alternate version of 2b2t actively running folia? If so can the address be shared?

livid crag
#

I mean it's literally on their subreddit...

blazing bough
#

allright fair. That was lazy of me.

livid crag
#

pinned too

subtle oriole
#

<@&748618676189528155>

marsh mapleBOT
#

(647d41184d8e4e0733cf143e) // @empty wolf (𝓐𝓬𝓬𝓸𝓻𝓷𝓷𝓷#6081 / 895675292859895869) has been banned by @livid crag (177150983258767360)
Reason: spam bot. No free nudes

livid crag
#

man I just YEET one 2 hours ago ded

bleak python
#

too much horni

plain shuttle
#

i got a BUILD SUCCESSFUL by building it with Git Bash but i get an error in the console by tring to Start Folia

java -Xms128M -Xmx24576M -jar folia-server-1.19.4-R0.1-SNAPSHOT-mojang-mapped.jar
Error: Unable to initialize main class org.bukkit.craftbukkit.Main
Caused by: java.lang.NoClassDefFoundError: joptsimple/OptionException

arctic tapir
#

wrong jar

plain shuttle
arctic tapir
#

what command did you use to build

plain shuttle
#

./gradlew applyPatches and ./gradlew createReobfBundlerJar from paper

arctic tapir
#

wrong jar then yes

#

use the one in /build/libs

#

root

#

dit

plain shuttle
arctic tapir
#

root directory

plain shuttle
golden mica
#

my server always crash per day by this reason

plain shuttle
#

@arctic tapir

steep elbow
strange nymph
#

Are there any major crashes or exploits with Folia?

jagged ether
#

It's experimental software not to be used in production yet

scenic sky
#

it can crash on its own just out of nowhere

charred galleon
#

Hi! When I try to apply the patches, I have an error message. Any help please?

viral stone
#

Make sure that your ide isn't open in that folder

#

Otherwise, check antivirus software or whatever

charred galleon
#

Thx!

plain shuttle
#

i want to use the /timings command then there is the message that i should use Spark with the link https://spark.lucko.me/ bus whitch version to download? bukkit?

finite hinge
#

Spark has an open PR you have to pull and build for Folia, iirc

plain shuttle
#

Will Folia update to 1.20 soon? (when 1.20 is out)

finite hinge
#

¯_(ツ)_/¯

#

It might update immediately (not likely), it might take a day, it might take a month, it might stay on 1.19.4 forever

tawdry gullBOT
#
__There Is No ETA__

Updates to Paper do not have any sort of estimate for when they release, ever. Any and all updates will arrive when they are ready, and the only thing to do is wait for them patiently along with everyone else.

finite hinge
#

Step 1: Spigot has to release
Step 2: Paper has to release
Step 3: Leaf has to be available and not burned out from doing the Paper release

plain shuttle
#

Yes, I know, but the plan is that Folia will also support 1.20?

finite hinge
#

¯_(ツ)_/¯

#

I don't see why it wouldn't but when I couldn't say

bold osprey
#

to be different, to be special

fair merlin
deep pond
#

I can't find any information on how well folia works already. Is it already save to be used on a private smp with a couple of friends? It would be the-most-vanilla™️ server ever

inner swift
#

It has occasional random crashes

sudden tusk
deep pond
#

lol I own a dedicated server already and we've got like 40 players at the same time

daring nimbus
#

Thats a number at which Paper probably makes more sense

fair merlin
#

But yeah if you're playing with 40 people you're better off with just using Paper.

tawdry gullBOT
#

⚠️ 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.

fair merlin
#

It is.

#

Very first pin, in fact.

#

Which shows up last, of course.

sudden tusk
#

The first listed pin also says no ETA for public builds

#

So either order of reading covers you on the first read.

#

Okay well I'm sorry we can't accomodate your specific reading needs

#

But I hope you have a great day

north pewter
#

anyone who really needs it will definitely be able to build it themselves

#

I do have a question though: I have a spare Ryzen 7700X (8c/16t) running, and I know folia benefits best from >16c and can sustain less without 16 cores minimum.

With a very approximate guess, how many players should that be able to hold?

finite hinge
#

There is no easy answer to that question even if you have 64 cores

#

If all of your players are grouped up you'll get 1 region per world and may as well just use Paper

#

If they're spread out enough to get multiple regions it might be worth running Folia even if each region runs slower than a Paper server would because you can isolate lag machines farms from other players

#

By spread out I mean like thousands of blocks from each other, btw

grim wraith
#

hey guys, I'm pretty new to this kind of stuff, but how should I build Folia?

#

I've got gradle and all that, but not sure about the directory and the proper command

#

building on windows

#

could someone explain it a bit to me 😦 ?

grim wraith
#

awesome, thank you very much

finite hinge
#

Instead of "clone this repo" clone the Folia repo

north pewter
#

Would it be worth running folia or just paper instead? Trying to push as many players as possible

finite hinge
#

If it's that large and people spread out enough you might get a few regions out of it

#

You'll be somewhat CPU starved so each region will run slower than it would on Paper but you'll be running more of them so it'll handle more players

#

The only way to know for sure is to try it out though

#

Which is a big undertaking at this point since you'll also have to write most of your own plugins and deal with any bugs in both Folia and those plugins

#

I don't have a good feel for how many players you can get on a server these days, the last time I ran a server with high player counts was 1.3

north pewter
#

I've nevr pushed past 100 players, did get 70~ once though

finite hinge
#

We were doing 200 back then, it would struggle for a while as 200 people were all exploring but once they settled in to bases it would at least stay above 10 tps

#

Some of the patches in CraftBukkit to use wall time instead of ticks were to hide the slowdowns you could see from running at 10 tps for standard survival tasks (cooking, breeding, etc)

finite hinge
#

Only if people were on opposite borders and there was no one in between them would there even be a chance to get more than one region

#

Well, it's not really that bad, players have to be ~1500 blocks from each other to potentially be in different regions

#

But the smaller the area the more likely you are to have players fill in the gaps and cause all the regions to merge

plain shuttle
#

are there any recommendations for startup flags?

jagged ether
manic saffron
fair merlin
#

So probably don't order a motherboard just for an experimental piece of software especially if you aren't 100000% sure it's the exact correct thing to use.

Folia wants lots of high performance cores. It was not designed with RISC in mind.

manic saffron
#

I know, I already have Paper running on the VisionFive 2 with 4 cores

pseudo ibex
#

I call that a win

#

💪

fair merlin
#

We don't generally like it when people advertise/post their server stuff here.

pseudo ibex
verbal remnant
#

RISCV is very much in its Development stages there is very little software and the expectation is to make your own solutions with it as a result.

#

So long as that is known

finite hinge
#

Hey, just because they asked in here doesn't mean they aren't a world class Java, GCC, OpenJDK, and kernel developer

#

Which you'd have to be if you're trying to run an experimental server written in Java on an experimental CPU platform

#

Well, I suppose you could replace GCC with LLVM/clang

#

And you probably don't need to be a GCC/LLVM developer at this point, might still need to be a kernel developer though unless that board is really popular

#

And OpenJDK is going to be slow, buggy, or both I'm sure so you'll need to know how to work on the most advanced JIT ever made

#

And then after all of that is settled you get to debug multithreading issues with Folia and write all your own plugins

blazing bough
#

Yes. But when he gets it working there will be so much amazing useful progress. Also - that video is the story of my life.

steady juniper
#

how to get folia?

viral stone
#

You need to compile it yourself

#

as per the instructions on the paper repo (Just, clone the folia repo instead)

ocean geyser
#

It's normal that compile take like 5~10min in i7 13700?

inner swift
#

Which OS?

pallid plume
#

as an aspiring plugin dev how do i compile for folia?

fair merlin
#

And read the pins in there.

pallid plume
#

thank you!

fair merlin
#

\m/

ocean geyser
#

windows

teal sleet
tawdry gullBOT
#

⚠️ 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.

upper garden
#

Are there any specific recommended flags for Folia, or just Aikars?

finite hinge
# ocean geyser windows

Yes, Windows sucks with small files and the patching process and decompile/recompile is working with thousands of small files

#

I'm surprised it was only 10 minutes for you

bleak python
#

excluding ~/.gradle and the project folder from Windows Security helps a ton btw, lol

visual trail
#

what causes a crash on Foila? Like if one of the threads get blocked, but the other ones are okay, what happens here?

finite hinge
#

iirc there is logic in there to detect that now and shut the server down

visual trail
#

so if one thread falls, they all fall?

finite hinge
#

Yep, because a thread doing that means something went wrong and the server is in an unknown state

#

It could be fine, it could start writing all your chunks at a 2048 byte offset so they read as garbage next time

visual trail
#

Is this only from a thread being blocked, or does it do this with TPS as well? I would imagine not with tps

finite hinge
#

It's only if a region "dies"

visual trail
#

Got it

finite hinge
#

I don't know if that includes a watchdog component or just errors

knotty egret
#
    mavenCentral()
    maven {
        url = uri("https://repo.papermc.io/repository/maven-public/")
        url = uri("https://jitpack.io")
    }
}

dependencies {

    implementation("com.github.IPVP-MC:canvas:master-SNAPSHOT")
    compileOnly("dev.folia:folia-api:1.19.4-R0.1-SNAPSHOT")



    // Use JUnit test framework.
    testImplementation("junit:junit:4.13.2")

    // This dependency is exported to consumers, that is to say found on their compile classpath.
    api("org.apache.commons:commons-math3:3.6.1")

    // This dependency is used internally, and not exposed to consumers on their own compile classpath.
    implementation("com.google.guava:guava:31.1-jre")
}```
#

what is wrong

shell violet
#

you are only actually adding jitpack, not the paper repo

wise epoch
#

You need to create a separate maven repo entry for jitpack, you're currently overriding paper's url with it ^

knotty egret
#

oh thanks ❤️

tawdry gullBOT
#
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.

manic saffron
#

Does Folia work with NUMA?

fair merlin
#

Maybe

#

Maybe not. You'd have to test.

#

We haven't personally tested much.

#

Good chance stuff will be funky.

ocean geyser
#

🤔

#

Gonna test it

#

I got dual E5

ocean geyser
#

It's work, but need more time for stability.

#
java -server -Xms64G -Xmx64G -Dfile.encoding=UTF-8 -XX:+UseZGC -XX:+UseNUMA -Xlog:gc*:./logs/gc/gc.log -jar folia-bundler-1.19.4-R0.1-SNAPSHOT-reobf.jar nogui
livid crag
#

What do you mean by stability? Do you run into issues...? can you describe it?

ocean geyser
#

Everything work fine now

#

But I'm not sure what will happen over time

livid crag
plain shuttle
#

hey how does the utilization value come about after the / ?

plain atlas
#

Im interested, why region-based parallellism, and not full and proper concurrency?

tranquil epoch
#

"proper" concurrency?

plain atlas
frank prism
#

because the game wasnt written for concurrency and trying to shift stuff around to make it fully concurrent will break more than it helps
writing a completely new platform may not be worth the effort
this approach basically unlocks a good amount of capability while keeping enough stuff the same (the API apart from scheduling and a few other things)

tranquil epoch
#

because making everything thread-safe isn't feasable to do

#

why don't you tell me in detail how to solve a very basic threading issue: two entities collide, one is a boat, on a chunk border

#

the hint to the question is that if you're threading that you don't know that they collide

hardy ingot
#

the current way is probably the best without breaking too much

plain atlas
tranquil epoch
#

the question is the answer to why "just make it thread-safe"

plain atlas
tranquil epoch
#

doesn't sound like there are many details there

golden mica
#

hey, leaf this crash happened almost every day

tranquil epoch
#

fixed on 1.20

golden mica
#

if possible, maybe you could write mob-spawn per region in detail in Readme.md

tawdry gullBOT
#
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.

mystic wyvern
#

why will folia not be backported to older versions? i prefer 1.18.2 and 1.16.5

hexed ice
#

because backporting to old versions that barely anyone plays on is a waste of time

#

you're welcome to backport it yourself

mystic wyvern
#

how do i backport it myself?

golden mica
#

1.20 crash

arctic tapir
exotic stirrup
#

<@&748618676189528155>

marsh mapleBOT
wise epoch
#

why is it not doing anything

#

who sniped it

hexed ice
#

no ban for you noah

plain shuttle
hexed ice
#

the utilization scales up with the amount of players online

#

in your screenshot you have no players online

bold osprey
plain shuttle
bold osprey
#

don't forget that things like chunk loading, chat processing, chunk generation, chunk saving etc are processed in other threads, which also will use your cpu, and won't depend on that 600% cap

finite hinge
# plain atlas Make everything thread-safe

Even games that are designed from scratch for this don't just "make everything thread-safe", they have a complex pipeline of tick stages where some are massively parallel, some are at least somewhat parallel, and some aren't at all. Making everything thread-safe would make it run like 100-100,000x slower. Making it work like those other games I just described would require a rewrite of the server from scratch and a willingness to break vanilla behavior in somewhat large ways

#

If you're looking for something like that perhaps look in to one of the C++ or Rust minecraft servers

plain shuttle
#

how many chunks are in one region?

finite hinge
#

Hundreds Thousands

plain shuttle
# finite hinge ~~Hundreds~~ Thousands

ok let's say it's in a few chunks then all chunks are affected, so to speak, there are thousands in the region, right? are the chunks then reduced so that there is a separate region for the chunks that lag? or how can I understand it better 🙂

livid crag
#

You can understand it better by reading the code itself. That’s probably the most direct way

finite hinge
#

No, if a region slows down it doesn't shrink

#

Regions are the size they are for a reason, if that region has something go wrong those reasons don't go away

plain atlas
#

It makes sense

#

What about ability to make plugins compatible both with folia and spigot?

bold osprey
plain atlas
#

I dont think its a good idea to rewrite the full world/entity api to do only one my plugin

viral stone
#

I mean, there’s certain concepts that you need to take into mind

#

Outside of the scheduler, so long as you don’t cross region boundaries or deal with things like teleporting, little changes

finite hinge
prime juniper
#

Does folia run on top of paper?

#

So I put it in my plugins folder?

finite hinge
#

No, it's a fork of paper

#

You replace your paper jar with the folia jar

deep pond
#

^ and it'll break pretty much all plugins in the plugins folder

prime juniper
#

When running the folia jar, i got no main manifest attribute, in folia-1.19.4-R0.1-SNAPSHOT.jar

#

I just executed java -jar folia-1.19.4-R0.1-SNAPSHOT.jar

daring nimbus
#

that seems like you didn't build it correctly

finite hinge
#

Or you're running the wrong one

prime juniper
#

Is there a guide?

viral stone
#

Yes, follow the instructions on the paper read me, just with the folia repo

prime juniper
#

Yep

#

It worked

#

thanks

#

Where can I configure folia?

#

Are command blocks disabled in folia? I'm trying to spawn a chicken and it isn't doing anything

bleak python
prime juniper
bleak python
#

no clue lol

prime juniper
blazing bough
#

Command blocks are disabled.

bleak python
#

ah yeah ^

prime juniper
bleak python
#

yes

prime juniper
#

bruh

#

I wanted to spawn 4000 chickens and go somewhere else to see if the server would be ok

blazing bough
#

Just curious ... If you've never run Paper, what brings you to Folia? What are you trying to achieve?

prime juniper
#

I also have 16 cores, but it says utilization: 3.8% /400%

daring nimbus
#

I mean if you go away, the chickens won't be ticked

prime juniper
#

I don't have anything to lose moving from fabric to folia

prime juniper
#

That'll stay there

#

to load them

blazing bough
#

Ok. best of luck. Report any problems ...

daring nimbus
#

Not really a useful test in any way though. If those chickens are all in the same ticking region, it will perform the same as on Paper, or slightly worse

prime juniper
#

Yeah but only that region will slow down to a halt

#

Is folia ever going to move to 1.20?

#

I just moved to 1.20

#

And I want to try it on my main server

#

I guess that will be a better test

daring nimbus
#

Its already being updated, dev/1.20 branch

prime juniper
#

Is it less stable than 1.19.4?

#

Also what logs could be provided? Just the general log of the server?

prime juniper
fair merlin
#

Configure it for what?

#

It has the same configs as Paper

#

For the most part

bleak python
prime juniper