Live data from Hacker News

Folia – Multithreading Coming to your Minecraft server

paper-chan.moe

51–60 of 72 posts

Re: Folia – Multithreading Coming to your Minecraft server

#51
post #39
post #3

The modding/custom server situation with Minecraft is so exhausting. I can't believe after all these years there is still no official modding or plugin API. So now we have Folia, which is a fork of Paper, which is a fork of Spigot, which I believe was originally a fork of Bukkit. Nice. I guess people don't want to upstream patches for some reason.

> I guess people don't want to upstream patches for some reason. My insanely biased impression based on my experience is that this is just the norm for Windows-centric development. Generally you have no expectation of being given access to source code at all; if software is free then it's "freeware", but for whatever reason the developers don't generally want you modifying it. So many power user tools just died out w…

I've gotten the same impression. So many Windows tools are given away for free, no hint of ever monetizing or anything, just a hobby / service by the developer, and yet no code is provided.

I remember hearing an explanation from one such solo developer with a relatively recognizable brand that he doesn't want people to be able to easily replicate his tools with added malware / adware. But I feel like download sites have been doing that for years anyway.

He has released at least one tiny but useful piece of code as public domain.

Also he does have one product that charges for. I suppose one potential reason to keep code private is to maintain more control of the free tools for purposes of branding and bringing attention to the pay tool? That's just a thought.

Re: Folia – Multithreading Coming to your Minecraft server

#52
post #50

Earlier quoted context omitted.

If I read the documentation, it appears to be that it will expand the region to accommodate both players or merge the regions, so that you will never have a situation where two players from different regions are visible to each other.

So worst case is you're essentially back to single threaded. With a slight overhead of tracking connected regions. I guess that makes sense. I wonder what this looks like on practice, what kinds of play styles will see the biggest boost from this. I also wonder how this plays with things like hyper long range TNT/Ender pearl cannons. Entities are their own pile of worms, but distant regions can suddenly influence eac…

My hope is this allows expanding the player count on servers like 2b2t. The normal play style here is small groups of players spread out massively over the map. It would be incredible if you could effectively have each user on their own thread and mini server with it all just seamlessly working.

Would be outstanding to see a server with something like 4000 players online all on the same map.

Re: Folia – Multithreading Coming to your Minecraft server

#53
post #41

> It is recommended to have a minimum 16 physical cores in order to fully benefit from Folia. I didn't expect this. I wonder how many Minecraft servers are using more than 16 cores in production today.

I'd assume minimal numbers since the existing software is mostly single threaded. The comment seems to suggest that to make use of the new multi threading, you have to first have some large number of threads to actually use.

Re: Folia – Multithreading Coming to your Minecraft server

#54
So does time advance differently in different regions? If two regions start redstone clocks and one of them has a lag machine, will they desync? Will it get to a point where one is day and the other is night at the same time? What happens when the regions are merged or a player crosses between them?

Re: Folia – Multithreading Coming to your Minecraft server

#55
post #50

Earlier quoted context omitted.

So worst case is you're essentially back to single threaded. With a slight overhead of tracking connected regions. I guess that makes sense. I wonder what this looks like on practice, what kinds of play styles will see the biggest boost from this. I also wonder how this plays with things like hyper long range TNT/Ender pearl cannons. Entities are their own pile of worms, but distant regions can suddenly influence eac…

My hope is this allows expanding the player count on servers like 2b2t. The normal play style here is small groups of players spread out massively over the map. It would be incredible if you could effectively have each user on their own thread and mini server with it all just seamlessly working. Would be outstanding to see a server with something like 4000 players online all on the same map.

My mind went to 2b2t as well. Unfortunately players still tend to congregate somewhat around spawn. Perhaps Folia lets them raise the server cap to a degree, but it appears here that you still can’t have more than a couple hundred players in the same area. Allowing more than that limit on the server invites a mess in the event enough of those players end up in the same place for whatever reason.

Re: Folia – Multithreading Coming to your Minecraft server

#56
post #3

The modding/custom server situation with Minecraft is so exhausting. I can't believe after all these years there is still no official modding or plugin API. So now we have Folia, which is a fork of Paper, which is a fork of Spigot, which I believe was originally a fork of Bukkit. Nice. I guess people don't want to upstream patches for some reason.

Bukkit was in fact preceded by hey0's mod, the project of a 15 year old kid who was largely responsible for bootstrapping the entire line of Minecraft server mod APIs.

After all these years though it is extremely exciting to see this advancement, I'd expect this to allow extremely large servers. Makes me want to start playing again ^_^

Re: Folia – Multithreading Coming to your Minecraft server

#57

So does time advance differently in different regions? If two regions start redstone clocks and one of them has a lag machine, will they desync? Will it get to a point where one is day and the other is night at the same time? What happens when the regions are merged or a player crosses between them?

If I understand correctly, there’s still a global thread for things like day/night cycle, and then region threads handle their own redstone ticks and can indeed fall out of sync.

Re: Folia – Multithreading Coming to your Minecraft server

#58
post #50

Earlier quoted context omitted.

So worst case is you're essentially back to single threaded. With a slight overhead of tracking connected regions. I guess that makes sense. I wonder what this looks like on practice, what kinds of play styles will see the biggest boost from this. I also wonder how this plays with things like hyper long range TNT/Ender pearl cannons. Entities are their own pile of worms, but distant regions can suddenly influence eac…

My hope is this allows expanding the player count on servers like 2b2t. The normal play style here is small groups of players spread out massively over the map. It would be incredible if you could effectively have each user on their own thread and mini server with it all just seamlessly working. Would be outstanding to see a server with something like 4000 players online all on the same map.

Check out 6b6t if you haven't already. It's an anarchy server that runs on multipaper, which is a distributed Minecraft server. The owner claims it can support 1000 simultaneous players.

Re: Folia – Multithreading Coming to your Minecraft server

#59

So does time advance differently in different regions? If two regions start redstone clocks and one of them has a lag machine, will they desync? Will it get to a point where one is day and the other is night at the same time? What happens when the regions are merged or a player crosses between them?

If I understand correctly, there’s still a global thread for things like day/night cycle, and then region threads handle their own redstone ticks and can indeed fall out of sync.

I see. I wonder how they sync up again and how dynamic the splitting and joining is. I guess long distance instant wire would be the worst case scenario for this system.

Re: Folia – Multithreading Coming to your Minecraft server

#60
post #50

Earlier quoted context omitted.

So worst case is you're essentially back to single threaded. With a slight overhead of tracking connected regions. I guess that makes sense. I wonder what this looks like on practice, what kinds of play styles will see the biggest boost from this. I also wonder how this plays with things like hyper long range TNT/Ender pearl cannons. Entities are their own pile of worms, but distant regions can suddenly influence eac…

My hope is this allows expanding the player count on servers like 2b2t. The normal play style here is small groups of players spread out massively over the map. It would be incredible if you could effectively have each user on their own thread and mini server with it all just seamlessly working. Would be outstanding to see a server with something like 4000 players online all on the same map.

2b2t is a great use case.

Imagine being able to moderate lag machines on a per region basis, it would make it so much easier to track problem players.

Post reply on HN