Pregenerate a Paper server without Chunky?

I've seen a lot of messages here saying to not use Chunky, but then how else am I supposed to pre-generate the world on my Paper server? The DHSupport.jar plugin doesn't seem to have any commands
15 Replies
Puhpine
Puhpine2mo ago
Using chunky is fine, if you know what you're doing. Most people do not know what they're doing, therefore we discourage it to everyone. You can pregenerate without chunky but with the dh plugin by having someone afk with a high cpu load in DH's settings and the desired dh render distance also in dh's settings, then do the same for the server
advait
advaitOP2mo ago
what do you mean by "do the same for the server"? do you mean i have to change the CPU load both clientside and server-side?
Puhpine
Puhpine2mo ago
Yes
advait
advaitOP2mo ago
once i pregenerate the world im assuming other players with DH who log on will just automatically be able to see everything? or does it have to load in for them too?
Puhpine
Puhpine2mo ago
It will have to load, but that'll be way faster than the generating
advait
advaitOP2mo ago
alright tysm but one more thing, in the DHSupport config on my server i dont see any option to change the CPU load? i only have that option in the clientside mod
Puhpine
Puhpine2mo ago
The things to keep with running chunky, is that chunky saves the real chunks while dh discards them, bloating up your world size if you use it just for dh. And that you shouldn't use chunky and have dh installed at the same time because that causes holes Look for the threading values
advait
advaitOP2mo ago
scheduler_threads: 4 i assume? and change 4 to a higher number
Puhpine
Puhpine2mo ago
Dh plugin is missing some features for now so maybe it doesn't have them. You'd have to ask jcfk. Dont think that's the one
advait
advaitOP2mo ago
# Don't touch :)
config_version: 1

# Maximum supported render distance. Clients will be capped to this value.
# Required.
# Default: 1024
render_distance: 1024

# Is LOD generation enabled at all?
# Disable if you only want to use the plugin for level key info in a proxied setup.
# Required.
# Default: true
distant_generation_enabled: true

# Number of parallel LOD requests per client.
# Required.
# Default: 20
full_data_request_concurrency_limit: 20

# Currently unsupported.
# Required.
# Default: false
real_time_updates_enabled: false

# Let clients ask for updates to LODs they've previously downloaded.
# Required.
# Default: true
login_data_sync_enabled: true

# Currently unsupported.
# Required.
# Default: 50
login_data_sync_rc_limit: 50

# If a client requests LODs with chunks that don't exist, should those chunks be generated?
# Required.
# Default: true
generate_new_chunks: true

# Select which LOD builder to use.
# Required.
# Default: FullBuilder
builder_type: FullBuilder

# Number of blocks to advance between each sample on the Y axis when generating LODs.
# A setting of 1 will sample every block, while 2 will sample every other block, and so on.
# Required.
# Default: 2
builder_resolution: 2

# When running DHS on a proxied server, set this to a value that is unique to this specific server.
# Optional.
#level_key_prefix:

# World specific settings.
# You can override any of the above settings on a per-world basis.
worlds:
world:
# Use builder that is optimized for overworld.
builder_type: FastOverworldBuilder

# Limit LOD generation to within this area.
# Optional.
#border_center: 0,0
#border_radius: 5000

# It might make sense to have a lower view distance in the nether, since visibility will be low simply because of
# the level design anyway.
world_nether:
render_distance: 64

# Number of worker threads used to generate LODs.
# Does not affect Folia servers.
# Required.
# Default: 4
scheduler_threads: 4
# Don't touch :)
config_version: 1

# Maximum supported render distance. Clients will be capped to this value.
# Required.
# Default: 1024
render_distance: 1024

# Is LOD generation enabled at all?
# Disable if you only want to use the plugin for level key info in a proxied setup.
# Required.
# Default: true
distant_generation_enabled: true

# Number of parallel LOD requests per client.
# Required.
# Default: 20
full_data_request_concurrency_limit: 20

# Currently unsupported.
# Required.
# Default: false
real_time_updates_enabled: false

# Let clients ask for updates to LODs they've previously downloaded.
# Required.
# Default: true
login_data_sync_enabled: true

# Currently unsupported.
# Required.
# Default: 50
login_data_sync_rc_limit: 50

# If a client requests LODs with chunks that don't exist, should those chunks be generated?
# Required.
# Default: true
generate_new_chunks: true

# Select which LOD builder to use.
# Required.
# Default: FullBuilder
builder_type: FullBuilder

# Number of blocks to advance between each sample on the Y axis when generating LODs.
# A setting of 1 will sample every block, while 2 will sample every other block, and so on.
# Required.
# Default: 2
builder_resolution: 2

# When running DHS on a proxied server, set this to a value that is unique to this specific server.
# Optional.
#level_key_prefix:

# World specific settings.
# You can override any of the above settings on a per-world basis.
worlds:
world:
# Use builder that is optimized for overworld.
builder_type: FastOverworldBuilder

# Limit LOD generation to within this area.
# Optional.
#border_center: 0,0
#border_radius: 5000

# It might make sense to have a lower view distance in the nether, since visibility will be low simply because of
# the level design anyway.
world_nether:
render_distance: 64

# Number of worker threads used to generate LODs.
# Does not affect Folia servers.
# Required.
# Default: 4
scheduler_threads: 4
thats my entire config
Puhpine
Puhpine2mo ago
It's called differently on the mid version at leas Oh yeah it's probably that one then
advait
advaitOP2mo ago
wat value should i change it to though? i have no idea what the max number of threads i can allocate are
Puhpine
Puhpine2mo ago
Put it at ten and see how it runs I guess
advait
advaitOP2mo ago
i put it at 16 and its faster for sure also may sound like a stupid question but once i pregenerate the chunks i can store the world somewhere and use it later, and the chunks will already just be there yeah? like DH wont need to load it all in again because the LODs are already there?
Puhpine
Puhpine2mo ago
Correct DH saves all chunks to a database
Want results from more Discord servers?
Add your server