#folia-help

1 messages · Page 24 of 1

viral stone
#

basically, yes

finite hinge
#

Everything inside a region runs just like it does in Paper, no parallelism happening there

#

So if you have 50,000 entities in a region it'll be slow

ionic wadi
#

Okay i was confused because a moderator of a mod called c2me that adds MultiThreading for Fabric said his runs ins parallel and folia is concurent

finite hinge
#

I thought c2me was paper's chunk system outside of paper

#

Apparently not, huh

#

Anyway, c2me is just for chunk IO?

#

So that's just for loading, saving, and generating chunks

#

Paper has that

ionic wadi
#

idk the mod adds some more things. So are the regions sizeable? How small can a region be?

viral stone
#

resizable but you can't have 2 regions too close to each other

#

(at least, there is a grid exponent, idk the bounds, etc)

#

900 blocks between players is like the default to pray for seperation

ionic wadi
#

what happens if two players in seperate regions stand next to each other. Could they see each other and stuff?

finite hinge
#

I think they're already pretty close to as small as they can go, pretty sure leaf said you could get away with lowering the exponent 1 or 2 but that would make regions run slower due to locking overhead and past that it would just fall over

tacit tartan
#

regions will merge if players get close to one another

ionic wadi
#

The Region Border how is that handlt

viral stone
#

They literally cannot stand next to each other

#

once players get close enough that their regions "overlap" as per the exponent, the regions will join

ionic wadi
#

okay so theres no way to can see each other and be in different regions. what happens if the regions join are there any side effects?

finite hinge
#

If two regions come within two regions radius of each other they merge into one large region

#

Or something like that, I don't want to type up the whole thing again

#

Only side effect is you have less regions

livid crag
#

What side effect? Just a bigger region!?

viral stone
#

well, there are some caveats around stuff like redstone timers, etc

finite hinge
#

That means some server designs make no sense for Folia since you'll end up with one giant region which just runs slower and is less compatible than Paper

ionic wadi
#

When Redstone is between two regions how does that even work?

viral stone
#

redstone cannot be across two regions

livid crag
#

If they are connected and has to tick together, they will be in same region

viral stone
#

the entire point of regions is that they serve as isolationary units

finite hinge
#

If the redstone takes more than 1 tick to propagate it'll just merge the regions as it goes, iirc

#

If instantwire still works I think it just doesn't work in Folia

inner swift
#

Basically, in other words if there are two things happening less than ~900 blocks from each other, they will necessarily be in the same region (default settings)

finite hinge
#

The concept of "crossing regions" doesn't exist

#

Except for entity teleports

ionic wadi
#

Wouldnt it be more reasonable to make a Server Software that runs multithreaded without these regions like the c2me mod or some other fabric mods that try that.

finite hinge
#

c2me is just paper

ionic wadi
viral stone
#

Wouldnt it be more reasonable to make a Server Software

ionic wadi
#

That?

viral stone
#

no

#

lol

finite hinge
#

And no, this is realistically the only way you can do it without rewriting the server

#

Especially if you want there to be any chance for people to be able to write mods/plugins on top of it

viral stone
#

c2me oly generally touches the chunk system

#

it does not touch stuff like ticking

ionic wadi
#

hmm ok

finite hinge
#

afaik everything in c2me is in paper but better

viral stone
#

concurrency is hard

#

There are server softwares for minecraft which tick everything in parallel

#

they do that by basically supporting 0 vanilla features to do so

ionic wadi
#

My Friend tested paper vs fabric + this c2me mod and chunks generate extremly slower then on the fabric server without any other mods then c2me. I enabled in the paper global config. The CPU has 4 Cores and 2 Threads configured as the Worker Threads.

finite hinge
#

¯_(ツ)_/¯

#

The point was c2me is a completely different thing from Folia

ionic wadi
#

Yes but i thought c2me is build in in paper but shouldnt chunk generation be as same fast?

finite hinge
#

¯_(ツ)_/¯

inner swift
#

C2ME is not built into Paper

#

There may be concepts that are similar and all but all in all it's a different impl

finite hinge
#

I already said c2me is a different thing, leaf's chunk system has some four letter word in the fabric world though so I mixed them up

ionic wadi
#

ohh ok

finite hinge
#

They do the same thing though, at a high level

inner swift
#

Oh, TACS

viral stone
#

paper has parallel chunk gen but the algo used to work out how many threads to throw at it is pretty, eeer, harsh

finite hinge
#

Yeah I just found out that's a name for the Mojang system they're all trying to replace

#

Not what they call leaf's replacement

viral stone
#

io-threads is nothing to do with chunk gen

ionic wadi
#

ok

strong kelp
#

if you were to launch a minecraft instance and a folia server at the same time on the same machine, is it possible for there to be a bug where the client just cant connect to the internet?

viral stone
#

they're two entirely seperate processes with 0 attachment to one another

strong kelp
#

because when i tried testing a folia server, my client hasnt been able to connect to the internet since, it just halts it entirely

fair merlin
#

Could be you’re overloading the machine.

strong kelp
#

i havent ran folia since and it still has this issue

fair merlin
#

But normally, no. It shouldn’t matter. Anything going on is likely specific to your setup.

strong kelp
#

well i only allocated 2 gigs for folia and 4 gigs for the client

#

and my PC has 16 gigs ram total

#

i doubt the machine is being overloaded

viral stone
#

I mean, you'd need to see the client logs and what it's saying

strong kelp
#

the client itself works fine its just that it chokes my internet when running

#

i never had this problem before i ran folia

viral stone
#

Like, the only way I could imagine it blowing up is if you've got a really bad router or you somehow screwed up mojangs API service and so the client just doens't have a key

#

folia is just an app that listens on a network socket like literally any other server app

strong kelp
#

it could probably be the latter

#

i looked around on Prism's end and i couldnt find anything about there being a network error thing

viral stone
#

ik that my little brother also used to have crap on his PC like hamachi that would also break networking in some amazningly stupid ways

fair merlin
#

If you’re having issues it’s best to revert to vanilla stuff rather than third party launchers.

#

The usual troubleshooting applies. Limit variables, check logs, etc.

strong kelp
#

ill just ask about it in the prism discord since folia itself seems to work fine

#

probably something on their end

fair merlin
#

Seems like it’d be faster to spin up the vanilla launcher

strong kelp
#

its actually even worse there lol

#

right when i boot it up my wifi just chokes

strong kelp
#

nvm turns out it was issues with my university's wifi

#

god i feel like a fucking idiot

noble brook
#

i found folia on github and i would like someone to guide me on how to set it up

fluid cradle
#

Good evening! I ran into a problem, allocated 16 gigabytes of RAM to Folia using the -xmx flag, but it began to consume much more and used a swap file until it completely overloaded the entire machine

#

Is it possible to somehow forcefully limit RAM consumption?

timid grotto
inner swift
#

The only ways to hard limit RAM usage, really, would involve killing the process if it takes more than the limit

noble brook
tacit tartan
#

For some versions you could step back in git (but note that'd be completely unsupported), but folia is newer than 1.18.2 and thus no code exists for that version.

noble brook
tacit tartan
#

but note that'd be completely unsupported.

neat dove
noble brook
#

so 1.20.4 is the only version that does support

neat dove
#

That goes for paper too

#

Folia is as unstable as it is. Trying to use older versions is a really bad idea

noble brook
#

its on the snapshot but all i want is for it to be on 1.20.4

timid grotto
#

its not a snapshot version of minecraft

neat dove
#

Paper/folia cannot update to snapshots

tacit tartan
#

(We're a fork of Spigot which doesn't release snapshot builds thus we cannot either)

noble brook
#

its the snapshot version or

noble brook
neat dove
#

That's normal

noble brook
#

oh ok ty, that it was i was wondering

#

just one more thing, i probably need to do something but why is it 261 bytes, that cant be right

neat dove
#

Should explain on guide

#

You are correct, that's not the right one

noble brook
#

there is unfortunatly no other files

neat dove
#

Follow the paper build guide

#

It's the same for folia

swift mason
noble brook
#

ikr

noble brook
#

so like what are manifest files

arctic tapir
#

has info about the jar like main class and what not

#

wrong directory also

junior tide
#

What would happen if I ran Folia on a 4-core CPU?

jaunty atlas
#

You'd be better off with a paper server

primal oyster
jagged ether
#

sure it will run

#

but you'll be running a server that doesn't run half the plugins and game features without 0 advantage

primal oyster
#

technically he has 3 extra advantages for ticking

jagged ether
#

that's not how it works

primal oyster
#

but yeah not worth it

primal oyster
tacit tartan
#

No, Folia splits the world up into regions and ticks each region in parallel. Only if players are spread out (and thus in seperate regions) is Folia advantageous. A single region's ticking is slower than paper as Folia needs to do extra checks to see if regions need to merge/split, etc.

#

basically unless you've got a large playerbase, spread out, and some substantial hardware, Folia is not for you

primal oyster
#

ticks each region in parallel
kind of a good keyword here on why is still worth it

tacit tartan
#

I'm paraphrasing a bit and flustered studying for a final, see the folia readme for more info

primal oyster
#

There's 0 damage in running Folia on a 4-core, you're "ALREADY" expected not to handle a lot of players on a 4 core

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.

primal oyster
#

and if Folia was "so much more slow" in relation to checking region merging,
that'd be a performance issue on folia with a lot of players, which would not even get close to having them on a 4 core already

#

yes, plugin support is only 99.999999% greater on paper

#

but Folia will run fine on a 4 core depending on the user needs

rare hare
#

Four cores is very few. Keep in mind that a Paper server uses more than a single core already and your OS would like some resources as well. There's essentially no way for Folia to perform better than Paper on a four core machine.

viral stone
#

4 cores is fine, it's just the question is generally "is it worth it losing support for 99% of public plugins for this hardware", and most of the time the situation is meh, unless you're for some reason cheaping out on hardware to pay a dev team

tacit tartan
#

(which seems like a poor tradeoff)

junior tide
#

what about chunk generation speed?

#

I don't use the plugin

livid crag
#

it will be same as Paper as Paper already generate chunks async

calm fable
#

i dont care if my server only supported 2 people id use folia cuz its where everything is going, may aswell get the bandwagon moving so more plugin devs get on

livid crag
#

I mean if your server has no plugins and only 2 players, I guess. Folia is definitely production ready if you do not need plugins.

haughty gale
#

why sometimes on folia tps is more than 20

arctic tapir
#

ketchup

#

(tps catch up)

obtuse basin
#

🥁

inner swift
haughty gale
#

couldve just been a viewer thing

#

the graph had a spike to 22 tps

#

cant see it anymore tho

inner swift
#

Yeah, Spark's numbers are off in Folia

proud mountain
calm fable
#

oh shit sorry i just saw that we arent supposed to reply to, my bad

primal oyster
#

i love this sentence 🙂

calm fable
#

whys that?

viral stone
#

I mean, I'd imagine it's people enjoying the "at scale" concept

calm fable
#

i mean thats why i use, it. i feel folia address's a glaring flaw in the way minecraft was designed, even though i understand its not* a "fix" but rather a workaround. it still functions and is better than normal 3rd party servers can do. I wish there were more plugin devs and I wish i had java programming under my belt so i could help, either with PR's or building/porting plugins

#

i feel theres a lot more folia can do if expanded further to include DMA networking so 1 folia instance could span multiple systems

#

i know thats not in the scope, but a man can dream!

still night
#

How to install folia ?

obtuse basin
#

Compile it yourself

#

or use the api

still night
#

But how?

viral stone
#

you need to compile it yourself, using the exact same instructions as for building paper (just, clone the folia repo)

#

if you can't follow the instructions to compile it, you should probably wait for it to be released

viral stone
#

I mean, I semi doubt somebody having issues with compiling is going to be able to setup actions

#

it's not like we literally don't already publish builds

thorny ivy
#

Is that normal that I have way more region than player ?
/tps display

[14:05:28 INFO]: Server Health Report
 - Online Players: 30
 - Total regions: 127
 - Utilisation: 176.5% / 1,000.0%
 - Load rate: 26.80, Gen rate: 0.00
 - Lowest Region TPS: 17.02
 - Median Region TPS: 20.00
 - Highest Region TPS: 20.00
Highest 3 utilisation regions
 - Region around block [w:'world',22791,80,13399]:
    55.5% util at 52.72 MSPT at 17.02 TPS
    Chunks: 499 Players: 28 Entities: 7,051
 - Region around block [w:'world',39751,80,22567]:
    4.9% util at 4.06 MSPT at 19.89 TPS
    Chunks: 0 Players: 0 Entities: 6
 - Region around block [w:'world',32583,80,26951]:
    3.3% util at 1.68 MSPT at 19.69 TPS
    Chunks: 0 Players: 0 Entities: 1

Can it be caused by some entities that doesn't unload and keep a region active ?

finite hinge
#

Each world will have a region even if you don't keep spawn loaded, iirc

#

Past that it would be some kind of chunk loader or chunks otherwise getting stuck loaded

#

Or the region system had an oops

queen olive
#

Out of curiosity, why is it so hard for plugins to support folia?

primal oyster
#

it's not hard

#

some plugins can't add support because folia "lacks" calling some events

#

some just don't really want to

queen olive
#

Nvm just read the readme

#

Sorry lol

primal oyster
#

the majority of the big ones are not supporting folia because they think its too much work for no one to benefit from

queen olive
#

Ah

viral stone
#

folia requires that plugins support concurrency

queen olive
#

Yeah race conditions are rough

viral stone
#

most devs are not really well versed in designing stuff designed for multiple regions ticking at once

#

some devs don't consider folia to be worth the effort required to properly support it

queen olive
#

Yeah my server has like 5 people lol

#

Fascinating stuff, but I don't think it's anything I'll find myself using anytime soon

haughty gale
#

does the distance= not work when doing /kill @e on folia

finite hinge
#

I suspect it won't go past the current region you're in

haughty gale
#

im right next to sheep and doing /kill @e[type=minecraft:sheep,distance=10] and it says no entity was found

finite hinge
#

Oh, I guess maybe it just doesn't work at all then, no idea

inner swift
#

distance=..10 instead

#

For up to 10

haughty gale
#

that worked, thanks

humble mesa
# primal oyster i love this sentence 🙂

Yeah, me too. We havent switched our server to Folia yet, but I really want to. Even though we only average 20 players, we have 50,000-60,000 tile entities loaded at any given time which destroys tps, and don't get me started on mob spawning rate. Cant wait for this to be solved.

primal oyster
#

60k is a LOTTTTTTTT

humble mesa
#

yeah, we have done all we can to deal with it, but the struggle is real

#

we were able to come up with some pretty creative solutions to entity lag, but i cant seem to figure out how to deal with loads of tile entities without breaking our gameplay. Folia will solve this for us though. 64 core threadripper, here we come

primal oyster
#

well, it's pretty difficult

#

if you don't set limits, there'll be a point where you'll need to multi thread A region

inner swift
#

Uhh

#

Are these pretty far from each other?

#

Just double checking as getting a threadripper is throwing a lot of money at it

#

For a 20 player average, I'd go with less cores, even

humble mesa
#

yeah, i wouldn't actually get a threadripper till we maxed out our ryzen9 5900x

inner swift
#

Right

frosty wind
primal oyster
#

hol ycows 30 million world border lmao

fair merlin
#

@frosty wind please keep gifs in memes in #gifs-and-memes and out of help channels.

thorny ivy
thin pond
#

Sounds interesting! I'd love to check it out. Are these patches available somewhere?

fair merlin
#

There’s a reason that stuff is there.

onyx valley
tacit tartan
#

if you removed Folia's safety checks, there's still a very real risk of data loss/corruption.

onyx valley
inner swift
#

Saying that makes it even less credible

fair merlin
onyx valley
#

I'm not developper so I don't know details, but it works since a month withtout crashs

fair merlin
#

Rewrite the plugins to use Folia properly.

inner swift
#

As crashing is not really the concern, at all

#

It's easy to suppress crashes

fair merlin
#

Removing safety checks from Folia is not supported and highly not recommended.

#

Please don’t suggest it for others here.

onyx valley
fair merlin
fair merlin
wide solar
#

hey is it gonna take folia to update aswell after 1.20.5 paper is released or is it being developed rn?

#

like would we all need to wait until paper is updated?

#

or is it being updated rn?

jaunty atlas
#

There probably won’t be any eta or anything

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
#

It will definitely be after paper 1.20.5

#

How long after? No idea

fair merlin
#

Paper first, then Folia.

wide solar
# tawdry gull

I did everything in my power for someone not to send that 💀

#

like I specifically never asked for a date, just if it's being developed rn 😭

wide solar
livid crag
#

I mean I dont understand how that message isnt clear for you to have to ask about it

finite hinge
#

Whether leaf is working on it right now or waiting for paper to finish so he doesn't have to keep redoing things is just a roundabout way of trying to get an ETA 😛

wide solar
#

tell leaf we all love him

fair merlin
#

Do we though?

tranquil epoch
#

i am skipping 1.20.5

fair merlin
#

Had a hunch

livid crag
wide solar
tranquil epoch
#

1.20.6-rc1 is out

wide solar
#

yeah right

#

why did they start developing 1.20.6 like a day after 1.20.5 💀

fair merlin
#

So leaf is going to wait for 1.20.6 to release before releasing Folia.

#

Rather than do .5 and then .6

wide solar
#

oh so

#

if 1.20.6 releases

#

he's gonna wait till 1.20.7 💀

fair merlin
#

I mean it will release.

#

There’s already a release candidate of 1.20.6 just three days after 1.20.5. So it makes sense to wait.

wide solar
#

btw how do I even install folia? is it a jar or a thing to add in my start.bat?

fair merlin
#

You have to build it yourself.

wide solar
#

uhh

#

is there a guide anywhere?

fair merlin
#

Yes. In the pins in this channel.

wide solar
#

oki

#

found this guy

fair merlin
#

Don’t use that.

wide solar
#

💀

#

okay

#

🙄

livid crag
#

text based instruction is more concise. You should get used to that.

fair merlin
#

It has a bunch of incorrect stuff in it

#

And you shouldn’t need a whole video to compile a paper fork.

#

Compiling it is going to be the least of your issue anyway.

wide solar
#

wait wait, if my server is running on paper right now and not folia can I still transfer it?

fair merlin
#

Read the documentation and make sure you understand that most plugins don’t work on Folia. And it’s not for every use case.

wide solar
#

like the world

fair merlin
#

@prime juniper please keep gifs and memes in #gifs-and-memes and color commentary out of help channels.

prime juniper
#

D:

fair merlin
#

Then ask questions

wide solar
#

oki

#

thank ykh

fair merlin
prime juniper
#

saying that with all due respect ofc

wide solar
#

okay so I can just compile it with inteliji idea?

#

so like making ppl compile things them selfs removes all the low IQ ppl that don't know what they are doing?

timid grotto
#

it is intentionally gatekeeped like this currently as it is not a drop-in replacement for paper on most server, and to make sure you know what your getting into. if you cannot build a folia jar (or figure out how to grab it from the api), you probably should not be running folia

livid crag
#

It's not very good to call them lowIQ, the compiling part is to ensure enduser who otherwise should just be using Paper do not create more support burden by asking why all their plugin stops working.

wide solar
#

luckily! I can compile stuff

timid grotto
#

well i can tell you havent read the documentation on how to compile paper

wide solar
#

wdym

wide solar
wide solar
timid grotto
#

thats for setting up a new plugin project

fair merlin
#

And Folia is not a plugin.

wide solar
#

💀

#

so I don't know what I'm doing

#

I'm either blind or can't find that in the documentation

timid grotto
#

its in the readme

fair merlin
#

Read through all the pins and docs carefully to understand the scope of the project.

#

Folia is not a “slap something together” kinda thing.

#

If you build it and then come back and say “wait command blocks don’t work?” then you clearly will not have read everything.

wide solar
fair merlin
#

Sounds like the latter.

#

Look I’m not trying to be a jerk. We just aren’t here to hold someone’s hand through this. Folia’s still a work in progress. If you can’t get it compiled you’re going to have a ton of other issues with it.

#

All I can suggest is to actually read through everything carefully. Not skim it.

wide solar
finite hinge
#

The folia readme doesn't actually tell you how to build it

wide solar
#

finally someone out there 😭

finite hinge
wide solar
#

yeah so that was what I was going to do originally

#

thank you

untold drum
#

hello, is anyone online?

tawdry gullBOT
#
Don't ask to ask.

If you have a question, please just ask it. Don't look for staff or topic experts. Don't ask to ask or ask if people are awake or available. Just ask the question to the channel straight out, and wait patiently for a reply.

untold drum
#

When I compile Folia, it prompts every time

#

Task paperdownloadMcManifest FAILED
Task :getPaperUpstreamData FAILED

#
  • What went wrong:
    Execution failed for task 'paperdownloadMcManifest'.

java.net.SocketException: Connection reset

#

then it failed

#

every times

fair merlin
#

Post the entire log

untold drum
#

D:\Users\HUAWEI\Desktop\Folia>gradlew.bat applyPatches
Starting a Gradle Daemon (subsequent builds will be faster)

Configure project :
paperweight-patcher v1.5.12 (running on 'Windows 11')

Configure project :paper
paperweight-core v1.5.13 (running on 'Windows 11')

Task paperdownloadMcManifest FAILED
Task :getPaperUpstreamData FAILED

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task 'paperdownloadMcManifest'.

java.net.SocketException: Connection reset

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

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

For more on this, please refer to https://docs.gradle.org/8.7/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.

BUILD FAILED in 18s
2 actionable tasks: 2 executed

#

why??

obtuse basin
#

Are you using a VPN? Maybe it’s because of that? Run it with —debug and check the debug log I guess.

untold drum
#

nonono, yesterday i use vpn, it also failed. the wrong is same as this.

#

today, i didn't use vpn

obtuse basin
#

Run it with —debug and check the output

untold drum
#

ok

fierce knotBOT
untold drum
#

did you read it?

viral stone
#

java.net.SocketException: Connection reset

#

you need to work out why the connection failed

twin spindle
#

what I can do?
Draga_SW was kicked due to keepalive timeout!

twin spindle
#

how I can increase keepalive timeout?

viral stone
#

that is all covered in that comment

twin spindle
plain shuttle
#

dows folia break the permissions.yml file so that i cannot use it on folia?
(because on paper with the same config it os working do i have to change something for folia?)

manic quarry
#

use a permission plugin.

plain shuttle
#

I could

#

But i still want to know If i can use the file

fair merlin
plain shuttle
#

thanks!

prime juniper
#

any anticheat for folia?

inner swift
#

I only know of Grim

solar shard
#

Hi,
Is there any way to add mod to folia server? Or i cant add because its a paper fork.

arctic tapir
#

you cannot

#

You can however add plugins

solar shard
#

i see

solar shard
#

thank you

spare moon
#

Would Folia work on a dual cpu setup?

viral stone
#

yes, but not recommended because NUMA

finite hinge
#

It would work and the linux kernel and JVM are supposed to be somewhat smart about NUMA but NUMA is going to be an overhead

#

How much of an overhead I'm not sure anyone has actually tried out

spare moon
#

What about the BSD kernel?

finite hinge
#

Dunno if it's as good about NUMA or if the JVM's NUMA handling is Linux-specific

viral stone
#

We do not recommend BSD in general

finite hinge
#

The GC at least is NUMA aware but I don't think the thread pools are? And there is no API to hint the thread pools on what NUMA node they should prefer either

spare moon
#

I mean... it technically ran for me, but I'm just making sure if there's any possibility it could be running slower.

finite hinge
#

Even aside from that there are some global locks for the regionizer which on NUMA are more expensive

viral stone
#

it will run slower

finite hinge
#

It'll be slower but that might not matter

viral stone
#

unless you're actually going to be taking advantage of having 2 CPUs, you'll on the nano scale be better without

#

but, once again, nobody has actually benchmarked it

spare moon
finite hinge
#

Dual CPU gets you more regions and in general I think it would be more efficient to get more regions on a single server than have two servers

viral stone
#

I mean, regions are still effectively full regions servers ticking

#

so, vintage hardware intended for web servers is generally going to suck all around

spare moon
#

Thankfully I also have a Ryzen 7 3800X machine sooo I could just offload the proxy and the lobby to the "old" server

#

and run folia on the ryzen machine

finite hinge
#

Right, each region is basically a Paper server

#

So if you couldn't get 20 players on a paper server on that hardware you couldn't get 20 players on a region in folia

#

And since folia has overhead the player count would actually be lower

spare moon
#

Also I was just wondering, has anyone experienced any, maybe just a little bit of increase in performance when using slightly aggressive flags when compiling java on gentoo specifically?

finite hinge
#

But if you have a CPU that can get 20 players running nicely on Paper but has 24 cores you could get enough regions to make it acceptable for Folia

#

But you need to get your players to spread out enough to actually get those regions

#

GCC flags won't matter for the JVM afaik

#

All your MC code is run via JIT

spare moon
finite hinge
#

All GCC flags can do is impact the performance of the native methods and the JIT itself, not the code the JIT emits

#

Like, you'd notice a difference between -O0 and -O2 but I don't think you'd notice beyond that

spare moon
#

I've also heard about graalvm, is it any better than openjdk?

spare moon
#

(wouldn't be stable but funny)

spare moon
viral stone
#

graal has optimisations in some areas and deoptimisations in others

#

afaik in many situations it marginally edges out hotspot at the cost of support

spare moon
#

Any jvm flags you could specifically recommend for folia?

#

im using akair's flags for now

viral stone
#

I mean, it's still minecraft

finite hinge
#

Since Folia servers are generally going to be larger and use more RAM you might want to look at ZGC instead of G1GC

viral stone
#

outside of generational ZGC potentally looking interesting, but, I wouldn't recommend that for vintage hardware

finite hinge
#

But G1GC got a lot better at large heaps so aikar's flags are still fine

spare moon
#

The last time i've used zgc was when it started leaking memory uncontrollably on a purpur server sooo not a great experience

viral stone
#

I mean, zgc is generally fine

#

it's just not designed for applications where 90% of the memory allocations come from like 1-3 threads

spare moon
#

and i plan on upgrading to a ryzen 9 5950x for folia

viral stone
#

for faster chips it's interesting

#

The big thing is that if ZGC can't keep up with the parallel work, it will just start stalling user threads

spare moon
#

(purpur server btw)

viral stone
#

early ZGC was generally just fairly bad

#

I recall predicting that pretty much everybody using it and writing blog posts about it would likely abandon it

spare moon
viral stone
#

shen and ZGC are pretty much the same concept

spare moon
#

i've heard somewhere that shen isnt really good for mc servers

viral stone
#

I don't remember the exacts, and not really inclined for a reading session right now; but, iirc, the primary difference between the two was basically in how they handled threads still being able to do stuff when they're doing work parallel to the app

spare moon
#

Oh and do you prefer not to be pinged on reply?

#

I should've asked that already

viral stone
#

i generally prefer no pings because half blind

spare moon
#

Understandable

stoic silo
#

Ayo, is there an alternative or compatible version of LuckPerms for Folia ?

viral stone
#

They have a pr or something

stoic silo
#

found it already thanks :D

spare moon
#

Is there any way to get this colorful eye candy console like the one provided by sponge in folia or even papermc? (sponge in screenshots)

#

and folia doesn't even display/autocomplete commands upon pressing tab

viral stone
#

Pretty sure we both use the exact same console setup

#

You’d just need to grab and adopt their log4j2 config, I guess

spare moon
#

okay

#

thanks

spare moon
spare moon
#

(going to sleep bye)

fervent tulip
#

Good evening, I have a small problem to see if someone can help me or give me some advice. I started Folia on an x5950, everything is going well, but with the issue of the cores, I only see that when I do performance tests all the threads stay the same and I only see 1 thread that goes to 100% and the TPS in the world world, go down to 2tps, but clearly in the other worlds, end and nether everything is fine, I would like to know if they can help me with some flags or which .sh they can recommend for me to use and start Folia correctly.

inner swift
#

Folia needs regions to have benefits over Paper

#

Which means multiple parts of the world far from each other having load, if you have everything in 1 region you'll just get one laggy region

fervent tulip
inner swift
#

Players/player groups have to be spread across the world

#

If two players are far enough from each other, they'll be in different regions

#

But if they are close they will be in the same region

fervent tulip
fervent tulip
inner swift
#

For multiple players in just one 2000x2000 world, Folia won't work

#

If two players are ~900 or less blocks away from each other, they will be in the same region

#

Well, it will work, just will be slightly worse than Paper*

fervent tulip
inner swift
#

Ehh, there are configs for that but at such in a small space I doubt you'd get gains from it, honestly, I'd stick with Paper

fervent tulip
#

Thank you very much, Kyle. Have a nice day.

fair merlin
fervent tulip
fair merlin
#

There’s a lot of info in the documentation and this channel. If you’re serious about using Folia I suggest reading through both.

solar shard
#

Do you know any timber plugin for folia?

thorny ivy
#

@solar shard

solar shard
#

And folia supports all bukkit plugins or only just the folia supported ones?

misty matrix
solar shard
viral stone
#

hangar has an option to search for plugins which authors mark as folia compatible

primal oyster
viral stone
#

other platforms may or may not offer the mark to get them, but, they're not hangar exclusive

primal oyster
solar shard
#

I see

#

Thank you

#

And can you name a mod with easy permission managing?

#

I mean a plugin

viral stone
#

luckperms is pretty much the gold standard in the community these days

thorny ivy
solar shard
#

I know i can use command blocks for it

viral stone
#

no idea what exists for folia

solar shard
tawny ether
#

How i compile Folia

#

Every time says another thing

arctic tapir
#

look at papers readme

tawny ether
#

I check everywhere

arctic tapir
#

on the paper repository

tawny ether
arctic tapir
#

yes

tawny ether
#

Ty

#

I'm suffering 2 hours for and was that simple

tawny ether
#

I have a question

#

For 1.19.4

arctic tapir
#

not supported

tawny ether
#

Is there a branch

#

Rn

#

In git

arctic tapir
#

yes

tawny ether
#

So

#

It's the same

#

Or don't work

#

And i need to use ViaBackwards

#

To make the users join

livid crag
#

You want to use 1.20 branch

#

It has more optimization

tawny ether
arctic tapir
#

correct

tawny ether
#

So

livid crag
#

Unless they stated that works for folia

tawny ether
#

I need to get rid of 90% of my plugins

#

If aren't supported

livid crag
#

Yes

tawny ether
#

And someone telled me also of MultiPaper

#

It's the same

#

No?

livid crag
#

This is why currently this is really only for server with their own developer team

inner swift
#

MultiPaper is very different

tawny ether
#

But a little made of Folia

#

If the person told me

#

Correctly

livid crag
#

No it’s very different

tawny ether
#

How it works?

livid crag
#

Ask them

#

It’s not even our software

tawny ether
#

k

#

But a little question between "users"

#

What is better rn

#

I believe Folia but i'm confused

daring nimbus
#

MultiPaper has never been stable and is conceptually flawed too

#

is it even still maintained for 1.20.4?

livid crag
#

And it’s pretty stable coz you know them anarchy players would try everything to crash it

tawny ether
#

The generated file in build\libs is like the paper.jar right?

#

(I'm new using gradle, sorry)

finite hinge
#

iirc MultiPaper needed like 1 whole high end CPU core per every 3 players on your server

livid crag
#

lol I remember that discussion you have with someone that hosted an event on it.

solar shard
tawny ether
#

But i think i will try Multipaper

#

And if not

#

I'm using again Purpur

#

Because

#

My 62 plugins

#

That 10 are buyed in Spigot

#

Including ItemsAdder

#

Aren't for Folia

#

Only eight

#

And "support"

solar shard
#

ooof

viral stone
#

Unless you’re a dev or have a dev team, using anything like folia or multi paper is just a bad idea

tawny ether
#

And i'm the only one rn

#

I'm learning

#

And the problem is that

#

I can try put all on Multipaper

#

But idk

finite hinge
#

iirc multipaper plugins are harder to write than folia

tawny ether
#

But Bukkit plugins works

#

Not 100%

#

But much

tawny ether
#

Like Folia but i can use spigot

#

(I think i will fail)

#

But i have nothing to do so

hybrid shore
#

Lol

tawny ether
#

But i have literally nothing better to do

#

It's better to try and fail

#

But @finite hinge Sorry for the ping

#

You know a jar based spigot that can do MultiThreading?

finite hinge
#

folia

#

You can't both have multithreading and keep plugin compatibility, plugins are not designed to be run from multiple threads like that

tawny ether
#

And a Folia support like ItemsAdder

#

Exists?

finite hinge
#

People have tried doing forks of folia that throw a lock around all event calls which makes purely API plugins sort of work but they won't see the exact same behavior and the locking means any time multiple regions want to call an event they turn effectively single threaded

#

And there are a lot of events happening all over the tick so you lost most of the benefit

#

ItemsAdder is the kind of thing that would probably fail even if you tried that event lock thing since it digs in to internals

tawny ether
#

I'm keeping in Purpur

solar shard
#

I used /sm toggle command to turn it on and it said timber enabled

#

If i break a tree's log it doesnt break all of them

#

1.20.4 folia

thorny ivy
#

Try with an axe

solar shard
#

i tried but nothing

thorny ivy
#

Maybe your tree is to big

solar shard
#

its a 4 block tall oak tree

#

i also restarted the server

#

im the op

thorny ivy
#

try a smaller tree

solar shard
#

there is no smaller tree than that

thorny ivy
#

You do have the last build from legacy branch ?

thorny ivy
solar shard
#

my version

thorny ivy
#

Version of SmoothTimber ?

solar shard
#

1.26.0

alpine sorrel
#

Why don't you go cross-serve with paper (or any fork)?

#

Instead of using multipaper/folia

#

Much more reliable

haughty gale
#

one time i had it not do that, i changed nothing other than i put an older version of it that i forked to add folia support to then put it back to the actual jar and it started working

#

also latest jar from their will throw exception if you're using core protect

#

not their fault tho its a coreprotect thing

solar relic
#

how can ı use multiworld in folia

inner swift
#

The only supported way right now is to make a datapack with multiple worlds

#

The are/were plugins that did this, like MoreFoWorlds (or something like that), but I don't know if they work

solar relic
#

okay then ı will use multiple servers and sync player data

solar shard
#

I didn't use core protect mod

haughty gale
#

try this branch

solar shard
wet arch
#

you should clone projects using git, not downloading as a zip

solar shard
#

ohh okay

#

i did it but still same error

#

full log:

Executing pre-compile tasks…
Cleaning output directories…
Running 'before' tasks
Checking sources
Copying resources... [smoothtimber-legacy]
Parsing java… [smoothtimber-legacy]
java: java.lang.ClassNotFoundException: com.syntaxphoenix.spigot.smoothtimber.annotation.MCVersionEnumGenerator
java: java.lang.ClassNotFoundException: com.syntaxphoenix.spigot.smoothtimber.annotation.MCVersionEnumGenerator
Errors occurred while compiling module 'smoothtimber-legacy'
javac 22.0.1 was used to compile java sources
Finished, saving caches…
Executing post-compile tasks…
Synchronizing output directories…
2024. 05. 01. 14:47 - Build completed with 2 errors and 0 warnings in 5 sec, 577 ms
viral stone
#

Compile with maven

#

not with your IDEs tool

solar shard
#

ooooh nice, it worked

#

now it goes the test

#

the server cant start the smooth timber plugin

viral stone
#

it used a bad delay period or something

solar shard
#

smooth timber's config:

version: 9
global:
  debug: false
  sync-time: 50
cutter:
  radius: 2
  depth: 3
  materials:
  - WOODEN_AXE
  - STONE_AXE
  - IRON_AXE
  - GOLDEN_AXE
  - DIAMOND_AXE
  - NETHERITE_AXE
options:
  sneak: 'off'
  toggleable: 'off'
  sync-detection: false
  animation: true
  collect-instantly: false
  permission:
    wood-type: false
    cutter-type: false
limit:
  enabled: true
  default: 1000
cooldown:
  enabled: false
  time: 20000
enchantments:
  unbreaking:
    enabled: true
  fortune:
    enabled: false
    multiplier: 1.0
exclusion:
  enabled: false
  list: []
inclusion:
  enabled: false
  list: []
worlds:
  enabled: false
  blacklist: false
  list:
  - world
  - world_nether
  - world_the_end
#

there is no any 0 value or lower than it

solar shard
#

@haughty gale i ended up with code issue

haughty gale
#

oh guess i missed it, it never happened to me

#

that branch is for a pr i made to fix exceptions i got but it was closed because the maintainer fixed them in a better way

haughty gale
#

that one worked for me too a year ago, looks like they were changed to 0L sometime since then

#

if u make it 1L it should work fine

solar shard
stable delta
#

hi, I got crash on folia

#

@tranquil epoch my friend said you do folia

arctic tapir
#

Don't tag people

stable delta
#

ah ok

#

can u help?

arctic tapir
#

No you'll have ot wait

viral stone
#

File an issue on the tracker, ideally with reproduction info

stable delta
#

but I dont crash my server on purpose with players online

#

so I cant really repoduce

viral stone
#

all I can guess is that some plugin did something stupid in the disconnect event

stable delta
#

my friend sent me this and said it should be impossible

#

can u explain how it got a different world

#

like how a plugin would do that

stable delta
viral stone
#

teleporting.

stable delta
#

so teleporting a player can make it tick worlds that it's not ticking

viral stone
#

teleporting a player during precarious events can cause issues because the server logic generally does not well with the concept of a player being somewhere else mid tick

#

best I can guess is that they where sitting in the oneblock world with a container open

#

they dc'd for some reason, and the plugin teleport them, and tried to tick them in a different part of the world with a container open from a different world

stable delta
#

oh ok

fair merlin
#

Don’t post links to jars please

#

If you want you use Folia you’ll have to build it.

solar relic
#

is it offical or not

fair merlin
#

If you can’t build Folia then you definitely shouldn’t be using it right now.

solar relic
#

i couldn't build it because the gradle is a piece of .

fair merlin
#

Your error was not a gradle error

#

It literally says in the error how to resolve it

solar relic
#

btw I an not going to give my GitHub creds to Gradlew any time soon.

fair merlin
#

Well that’s your choice I guess.

#

Good luck

solar relic
#

i have all the files why i need to let it to connect internet

wet arch
#

git != github
git (not gradle) is just asking you to set an email and name
its not asking you to sign in to anything

solar relic
#

can i use spark or something similar on folia

inner swift
#

Spark has Folia builds, yeah

solar relic
#

where

#

oh i found it

glad latch
#

Help!!! How do I narrow down the region, my map is a 4K * 4K map. I wanted 500 players to fight on it, but I found only 200 players spread out on this map with tps of 16. Total regions value is 1. After calculating the range of a region is about 2650 * 2650. I want a region range of 530 * 530. What should I do

livid crag
#

your map is way too small for that to work

#

You should just use Paper as Folia will not benefit you for the tiny map you have

#

this is all in the Folia readme

glad latch
#

Thank you. So how do I take advantage of folia's performance on a small map

livid crag
#

The second part of your question also shows that you've misunderstand how region is created and how it works in Folia, this is also documented on the Folia readme.

#

You do not.

glad latch
#

So I can change this value by writing a plugin or modifying the kernel to make region=2 or 3 chunk.

fair merlin
#

Folia just isn’t designed for this use case. Paper will be faster.

glad latch
#

FINE

fair merlin
#

Right tool for the job. People seem to think “folia is “multithreaded” so it’s faster” and that’s just not quite how it works

glad latch
#

If I get someone to write a branch of folia to do what I want, will it work?

fair merlin
#

No idea. We can’t comment on someone forking our software.

#

But considering how complicated Folia is I can’t really say I’d recommend that.

glad latch
#

okay thanks

solar relic
#

what happens in this situation. x means player. map is 7.5k*7.5k.

left swan
#

I think you've been told "try it and see" atleast 4 times lol

#

We can't really give you much more information than people already have, we can't know for certain what's going to happen in your proposed situation

solar relic
#

Okay

haughty gale
prime juniper
#

Greetings, when can we expect the update to version 1.20.6?

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.

thorny ivy
#

As for paper, there is no ETA

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.

solar relic
haughty gale
#

they probably will not be spread out enough on 7.5k by 7.5k

#

i dont remember how big our old map was but it would have like 90 players in one region

#

we literally just put it into world painter and doubled the size

#

now we have like 20 in a region max and it works fine

#

but the map is like 50k by 30k

thorny ivy
#

It was 25k by 15k before.

haughty gale
#

i didnt even think about just dividing the current ones by 2 lol

nova talon
#

is it possible to have a rectangle worldborder on folia for an earth map?

#

this is the map

fair merlin
#

The vanilla worldborder command is a little broken in Folia. Not sure what plugins are out there that support Folia. You’d have to look around.

#

It’s possible, sure, just not sure what’s out there that does it.

nova talon
#

if i modify the plugin via adding folia supported true in plugin yml is it possible that it COULD work?

fair merlin
#

I wouldn’t do that because if you don’t understand the code enough then it could cause all kinds of issues.

#

I’d look for something that already supports Folia or write one yourself/find someone to do it.

#

Modifying regular Paper plugins for Folia isn’t just “change the plugin.yml”

You induce a lot of crashes, bugs, and data loss.

#

Which is why the Folia support thing exists to begin with.

nova talon
#

i think i found one

#

it says folia support added

fair merlin
#

There you go

nova talon
#

my only issue is compiling folia

#

i need to figure out how

#

is there a tutorial for it

nova talon
#

is it gradle

#

or what is it

viral stone
#

Basically, follow the build steps for 1.20.4 paper

#

(just, clone the folia repo instead)

nova talon
#

i have a rly big map, will folia run on 7 cores?

#

since recommended is 16

viral stone
#

it will run on whatever cores you configure it

#

yes, you could run it on 1 core, it would just suck

nova talon
#

i mean i have players widely spread

#

so does it have much advantage over paper

#

map is like 30k blocks long

viral stone
#

if you have the player spread, yes

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.

nova talon
#

they might use some resources too

#

so is it wise to give folia a bit less cores?

viral stone
#

I cannot comment on the specific resource requirements for your specific setup

#

you will want to ensure that your server has the resources for everything else its doing

#

i.e. don't dedicate 7 cores to the region threader if that's all your cores

nova talon
#

lets say i keep 2 cores for other plugins

viral stone
#

I have no idea what you're asking

#

unless you're asking for the thing I already said I won't comment on

#

Read the readme, it's 100% on you to understand how this works and figure out what you need

nova talon
# viral stone unless you're asking for the thing I already said I won't comment on

isnt this like specification?
netty IO: ~4 per 200-300 players
chunk system io threads: ~3 per 200-300 players
chunk system workers if pre-generated, ~2 per 200-300 players
There is no best guess for chunk system workers if not pre-generated, as on the test server we ran we gave 16 threads but chunk generation was still slow at ~300 players.
GC Settings: ???? But, GC settings do allocate concurrent threads, and you need to know exactly how many. This is typically through the -XX:ConcGCThreads=n flag. Do not confuse this flag with -XX:ParallelGCThreads=n, as parallel GC threads only run when the application is paused by GC and as such should not be taken into account.

#

or does it mean its adding up so i just make a summed up one

viral stone
#

Those are recommendations based on earlier testing

#

hence why they got the 16 core count

nova talon
#

yeah but do i like exactly say netty IO gets 2

viral stone
#

you can run on less

#

You can over allocate threads

#

your OS can handle that perfectly well

#

I cannot comment on your specific setup and its needs

nova talon
#

so when configuring do i specify for netty IO for chunk system etc or do i just configure folia into using 5 cores but not specify for what

viral stone
#

I have no idea what you're even asking there

nova talon
#

its prob stupid question

#

i will prob get answer when i set it up

#

anyways thx for the help

thorny ivy
rain obsidian
#

using folia makes it so that if someones mass loading chunks only they get a low tps right

#

i host an anarchy server so im assuming i should switch to folia

inner swift
#

If someone generating chunks makes the TPS go lower, that'd imply that the hardware is way overloaded

rain obsidian
#

and loading an abnormal number of chunks

livid crag
#

Nothing can handle that

#

Your anti cheat should catch people doing that

rain obsidian
#

since im using grim and its community maintained

livid crag
#

You can still nerf them by slow down their chunk loading etc

#

The point is no anarchy server allows people flying at high speed

#

Not even 2b

rain obsidian
#

yea ik

manic quarry
#

if player moved more than x distance over the last few seconds, send them back

livid crag
#

So your original goal of switching to folia to combat people flying at high speed is trying to solve an issue with the wrong intention

rain obsidian
rain obsidian
inner swift
#

Chunk gen is already async and multithreaded

manic quarry
#

it's a basic ass check even my math illiterate ass can come up with for your specific scenario

rain obsidian
#

wheres teh check supposed to be coming from

#

are u saying i should make an anticheat

manic quarry
#

your own plugin?

#

you're running folia

#

you should be competent enough to make what you do not have

#

you have a really niche problem

#

you need a really niche solution

#

simple

rain obsidian
inner swift
#

Note that only Folia plugins are compatible with it, so you'd likely end up in a situation of having to remake stuff anyway

fair merlin
#

We’re talking about two different things here basically.

First is: Folia loading a lot of chunks for someone flying fast is going to be subject to mostly the same issues as Paper. Worse if they fly and merge regions.

#

The second is: should a good anti-cheat stop super fast flying? And that was answered above already

#

No idea if any anticheat supports folia, as Kyle said.

rain obsidian
#

yea im not switching to folia ig

fair merlin
#

With Folia you have to assume you’re going to write some custom stuff.

rain obsidian
#

yh

#

alr well thanks i understand more about folia now

idle furnace
#

but was never teste with many players to see how it would work

primal oyster
#

I think Grim might support it too

thorny ivy
#

Yes GrimAnticheat work with Folia too

fair merlin
thorny snow
#

Any simple folia plugin just to teleport players randomly on join

#

just to benchmark performance

timid grotto
#

make one ¯_(ツ)_/¯

thorny snow
#

I am tired

solar relic
#

can I change region size in folia

timid grotto
#

regions arent a fixed size

solar relic
#

I mean changing region size from 512x512 to 256x256.

timid grotto
#

thats not how regions work

solar relic
#

okay, thanks.

glad latch
#

Is there a way to keep areas from merging when players are adjacent

livid crag
glad latch
#

So far, the most expensive blocks on the server are player-loaded chunks. Is there any way to reduce player-loaded chunks?

#

Or is there a way for players to load chunks to set chunk、 heights

livid crag
#

You can reduce simulation distance

#

Also not sure how you come to this conclusion

#

If you are doing benchmark on empty server with no base or real player activities Ofcoz the chunk itself will be taken up the most

#

Such benchmark is pretty much inaccurate and pointless as it does not apply to real world situations (which entity is almost always the most heavy aspect)

glad latch
#

This is what I did when I split the world and I had players distribute it to every corner of the world.

glad latch
fair merlin
# solar relic I mean changing region size from 512x512 to 256x256.

There’s two different “regions” in Folia. One is the normal Minecraft chunk regions. Those are the same as vanilla/Paper and can’t really be changed.

The other are Folia “regions” which are big areas around a player. (Yes it’s confusing that this is named region also)

You can configure that down to about 1000x1000 blocks. But if players get close together those regions will combine. So you want to keep them as far apart as you can.

If you’re trying to make Folia regions smaller then you’re probably using too small of a map and Folia isn’t really suited for your use case.

hollow hound
#

do datapacks work on folia?

solar relic
bold osprey
#

because functions can't work on folia

hollow hound
#

thx for info

nova talon
#

are cores or vcores required for folia

inner swift
#

Dedicated cores (unless you're doing some very light gamemode that also requires at most a handful of people on separated regions that will never merge)

#

Single threaded performance is still responsible for how many people you can cram in a region

#

Or well, rather how much load inside it

nova talon
#

Without folia

inner swift
#

Not sure how that gamemode works lol

nova talon
#

Its a survival smp with large map and claims

#

Also dynmap (squaremap)

inner swift
#

How many blocks are groups of people expected to be far from each other, more or less? Is that gamemode heavy on mob farms and such?

nova talon
#

Its basically a large map of europe

inner swift
#

Seems pretty reasonable to go with Folia then, but I'd use a dedi

nova talon
#

Is there a cheap dedi?

#

I dont have that high of a budget

inner swift
#

That might be an issue

#

Would at least look at Hetzner's 7950x3D, but Folia requires a higher budget due to the higher hardware requirements + additional dev time

nova talon
#

How much does it cost per month

inner swift
#

About 130 eur

nova talon
#

Rn im paying 25 euro, im hosting on a polish host

#

So its way out of my range of budget

finite hinge
#

Folia is less efficient than Paper it just uses more threads to tick the worlds (potentially) so you need lots of cores

nova talon
finite hinge
#

Assuming you have the cores available, sure

#

For high player counts Paper itself is going to use multiple cores somewhat well because it uses them for networking stuff and world IO

#

And then you have threads for the JIT and GC

#

So for example if you have 4 cores I don't think I'd even bother trying Folia

#

If you have 8 maybe

#

12+ would be ideal

nova talon
#

Its 7 vcores

finite hinge
#

There are situations where even a couple cores could be better with Folia over Paper but they're kind of niche

#

The real answer is going to be try it and see

#

You'll probably have to override the defaults to force it to actually create multiple region threads

nova talon
finite hinge
#

vcores are usually half a core which is not ideal

inner swift
#

Very, if you don't have dedicated cores you're getting essentially random performance depending on your host and neighbor's moods

nova talon
paper siren
#

hard to tell, there generally isn't much insight how things perform under what conditions in such environments

fair merlin
#

For that many players on that large of a map you’re going to want a dedicated server with a lot of cores. But if that’s outside your budget then there’s not a lot you can do really.

Running a lot of players at 20tps is just expensive, basically.

livid crag
#

We have experienced people working on big networks and servers and the advice is genuine. Not sure what type of the server you are running but we try to give the best advice and hope people not waste time on stuff they do not need.

#

overalocating even on regular Paper server is bad bad idea as well. Your server is likely never be on the stress enough to notice the difference.

#

so I suggest you to not give out bad advice to people espeically if the person you are giving advice is new.

#

I've never claim that but as a moderator, we try to make sure people aint just giving others shitty advices

#

and do you know the person you are giving advice on...?

#

do you think he has such infra?

#

if you actually back-read what the original discussion is, you know he has no such capability

#

Advice should be given as it seem fits

#

again, do not put word in my mouth as I never claimed that

#

we should stop this discussion as you are clearly here to pick a fight.

prime juniper
fair merlin
#

Please don’t be rude to people.

livid crag
fair merlin
#

Folia isn’t a catch all replacement for Paper. Sometimes it’s a better solution and sometimes it isn’t. They are different projects with different ideas in mind.

So definitely not for everyone.

fair merlin
#

Well a bunch of messages got deleted but it’s worth noting that roadmaps change.

Leaf is the primary developer for Folia so if he says “I’m gonna do this” or “I’m not gonna do that” then that’s what we roll with. Sometimes he changes his mind. He’s a strange man.

fair merlin
prime juniper
#

But he didn't specify what budget they're willing to spend. For example, for 60 euros, you can buy an AMD Epyc 7351p - 16 c / 32 t - 2.4 GHz / 2.9 GHz. It's not 120 euros, it's certainly not a 7950x3D, but still not bad.

fair merlin
#

Sure, but for some people 60 euro is more than 2x what they’re currently spending or can afford.

#

This is why it’s important to ask questions to understand a person’s situation and use case before making blind recommendations.

prime juniper
#

With a high degree of probability, if all the plugins they use have support for Folia, doubling the budget will bring significant improvements to the gaming experience of their server users. From what they're saying, it technically fits him perfectly.

I believe that many servers on versions 1.19+ have encountered limitations due to the "single-threaded" implementation. Simply put, it has become practically impossible to maintain 100+ players without significant constraints. Folia could solve this problem, it just needs to be used correctly, for its intended purpose.

I sincerely would like this development to continue evolving, and as an ordinary user, I would like to contribute something to it, be it information or something else. My motivation is simple - the more people use this development, the more information we will gather, and with information, we can help your team improve Folia.

livid crag
#

Before Folia went public, plugin adoption was actually one of the big topics that the private testers were concerned about. Folia was not the first attempt at multi-threading, but unlike the countless projects that failed to take off,, we took slow and small steps in introducing it to the public, and I believe it played a big part in making it what it is today.

Knowing that, based on the BStat website, 28.5% of the servers running Paper are using 3 or fewer threads, while another 21% are running on 4 threads. With an average player count of 4.8 players per server, Paper is definitely almost always the software of choice. That being said, Folia is still under development, but it will get there with time! paperOhhh

fair merlin
prime juniper
#

By the way, I managed to find an Intel Xeon D1540 - 8 c / 16 t - 2 GHz / 2.6 GHz with 64GB RAM. Only 32.99 EUR. And Intel Xeon D1540 - 8 c / 16 t - 2 GHz / 2.6 GHz 32GB RAM 24.99 EUR.

fair merlin
#

For some people 60 Euros is a LOT of money. And they don’t necessarily understand whether Folia will help them or not. They just heard “it’s multithreaded” so they think it’s faster.

For anyone where their budget and use case are a good fit: awesome. Run it for sure.

fair merlin
#

The whole point we’re trying to make here is that “increase your budget” or “just get a dedicated server” is blanket advice without taking into account the person’s scenario.

prime juniper
#

If he managed to build a server setup and an audience around it, I believe he can deploy this on Debian or Ubuntu. I understand that this is a subject of discussion, but he just needs to keep in mind that he has this kind of capability. Eventually he can use Windows Server kekw or something like that.

#

In any case, if he is interested, he can find these dedicated servers on OVH.

frigid mulch
#

When should I check back in on this? I’m looking for a stable multi-threaded minecraft server to put MobArena, McMMO, EssentialsX, and a few other miscellaneous plugins onto…

Please @frigid mulch me 🙂

prime juniper
# frigid mulch When should I check back in on this? I’m looking for a stable multi-threaded mi...

MobArena and EssentialsX currently do not support Folia. I would recommend reaching out to the authors of these plugins and also checking all other plugins (latest versions) to see if they have "folia-support: true" in their plugin.yml.

By the way, here's a little tip:
https://github.com/BlockhostOfficial/folia-plugins

GitHub

List of popular plugins that support Folia - multithreaded PaperMC fork - BlockhostOfficial/folia-plugins

frigid mulch
fair merlin
prime juniper
# frigid mulch I was moreso asking when Folia would announce a stable version for authors to be...

At the moment, it's stable enough (that's what I see with my own eyes). But anyway, it all depends on Leaf's will. As far as I understand, he's the leading developer of this project, and there's no ETA from him. But my opinion is this - the more eagerly plugin developers add support for Folia, the faster it will become more stable. Because Folia developers will be able to receive more information from users and consequently make fixes/improvements.

Regarding your question, could you please clarify what you mean? Is there a chance they'll stop supporting it with updates?

nova talon
#

Is there like any good server for like 30 euro per month able to sustain 150 players with folia

finite hinge
prime juniper
# finite hinge I think this would only have a chance of running well if you could ensure you on...

"and didn't have more than like 6 regions ticking at once" what do you mean? Total number of regions?

I agree with you that one region is unlikely to support more than ~35 players without MSPT drawdowns. And this is probably one of the bottlenecks of this proposal. Because even on the 7950X3D with 80 players in one region we are already noticing small drawdowns in MSPT, as if another 30-40 players and it will become like freezing.

If he could set up multiple spawns so that people wouldn't gather in one region, it could work well on his Towny server. With large cities, of course, it's less clear, but it could stop causing harm to everyone else.

faint crown
#

Hey, little question… How does folia handle multiple worlds? has every world his own region? or… to ask it different… can I also gain advantage out of folia, if i dont spread my players over one big world, but over 6 small worlds?

faint crown
#

thank you

fair merlin
#

Same with Paper, though.

#

However world loading is a little broken at the moment in Folia.

#

So you’d need to write some custom stuff to use 6 worlds.

finite hinge
#

Wait no I calculated that wrong

#

30 players

#

Although even that isn't fair, I couldn't find a benchmark for that particular CPU so I went with another Broadwell one which is probably faster

prime juniper
primal oyster
primal oyster
#

Because a 7950x with some "small" optimization can get to like 250 on a single region with a "low" mspt

#

Got it

light forge
#

hey guys, Folia is considered Unstable right?

inner swift
#

Wouldn't say unstable

#

It won't really crash or corrupt stuff on its own

light forge
#

Thanks

hollow hound
#

can i use folia even when i have like 4 threads cpu?

#

or i need 16

inner swift
#

It will run on 4 cores, but also may (very likely) have worse performance than Paper

hollow hound
#

thats fine, if i reach high player counts, i update hardware to that 16core cpu

#

any recommendations for good 16core cpu, i meam thats not ordinary stuff to buy

inner swift
#

Ryzen 7950x

hollow hound
#

Looks really good👍👌

hidden prism
#

and why is it based on vd and not simulation distance

livid crag
#

Because view distance will always be equal or larger than simulation distance

hidden prism
#

thats just how it is defined, it isn't exactly an explanation as to why it is though

livid crag
#

No you physically cannot have simulation higher than view distance

hidden prism
#

yes this is obvious, we're asking why not to base it on the thing that matters (i.e ticking view distance) rather than the view distance which is superficial for efficiency purposes

#

also where do you go to report abuse of moderation power? one of our developers was banned for answering & asking questions earlier in this chat. he's been a contributor to this discord since 2019 with pull requests on github.

hidden prism
viral coral
#

can /modmail it aswell

hidden prism
#

slicklibro

#

we manage geodns/anycast proxy layers for networks, and he was just in here answering & asking some questions regarding folia

viral coral
#

"what a clown fest you guys can take the W i'll remove all my messages including the helpful ones"

#

seems pretty fair

#

eitherway, there's a ban appeal link they can go to, i'm not personally up to date with his situation

hidden prism
#

thanks for looking though

viral coral
hidden prism
viral coral
hidden prism
# viral coral seems pretty fair

we'll take a look at the appeal discord, but from his point of view he was discussing why some of the helpers treated the newer individuals the way they did (i.e not answering directly), something about overallocated threads being not a bad thing, resulting in a rather heated discussion

#

anyways cheers for the responses

hidden prism
hidden prism
hidden prism
# viral coral if only they didn't delete all of their messages

regarding message deletion, our developer mentioned that he felt he exposed some potentially sensitive components/know-how regarding our infrastructure when he was talking about why overallocating threads was not an entirely terrible thing (with respect to some kubernetes deployments), hence the deletion

viral coral
#

it's being discussed

#

i don't have an answer to the ticking question, leaf's probably the only person who can answer that

viral stone
#

Because the view distance affects more things than sim distance

#

View distance affects the entity tracker, for example

hidden prism
#

ahhh ok that makes much more sense, thanks

untold tulip
#

Hi i've put alot of work to try to fix my env etc...to be able to advance with my folia pull, but i'm stuck at the moment. The problem appeared to be that gradlew 9 was too updated, and I tried my best to revert to 8.7

when i type the ./gradlew --version i receive:

c:\Users\Utilisateur\Desktop\WhitelistNothers\Folia>./gradlew --version


Gradle 8.7

Build time: 2024-03-22 15:52:46 UTC
Revision: 650af14d7653aa949fce5e886e685efc9cf97c10

Kotlin: 1.9.22
Groovy: 3.0.17
Ant: Apache Ant(TM) version 1.10.13 compiled on January 4 2023
JVM: 18.0.2.1 (Oracle Corporation 18.0.2.1+1-1)
OS: Windows 11 10.0 amd64

#

And this is the crash i have from the patch.bat

c:\Users\Utilisateur\Desktop\WhitelistNothers\Folia>./gradlew applypatches

Configure project :
paperweight-patcher v1.5.12 (running on 'Windows 11')

Configure project :paper
paperweight-core v1.5.13 (running on 'Windows 11')

Task :getPaperUpstreamData FAILED

FAILURE: Build failed with an exception.

  • What went wrong:
    Could not determine the dependencies of task 'paperprepareForDownstream'.

Could not resolve all dependencies for configuration 'paperparamMappings'.
Failed to calculate the value of task 'papercompileJava' property 'javaCompiler'.
WindowsRegistry is not supported on this operating system.

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

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

For more on this, please refer to https://docs.gradle.org/8.7/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.

BUILD FAILED in 13s
2 actionable tasks: 2 executed

c:\Users\Utilisateur\Desktop\WhitelistNothers\Folia>

Could any help me compiling this lovely Folia please 🙂 ?

#

I can send a full stack whenever you are ready, please tell me with which tools / website to send it .. Thanks

viral stone
#

Try a shorter folder path