Commit Graph

166 Commits

Author SHA1 Message Date
25196237b1 Added ability to control player's insomnia and phantoms spawning (#6500) 2022-11-26 17:59:04 +01:00
b121c04895 Moving ATs from the at file to individual patches (#8573) 2022-11-19 15:53:20 -08:00
14d69488ad Strip coordinates from lodestone compasses (#8561) 2022-11-19 22:41:09 +01:00
uku
9e743bccff Add config setting for grindstone overstacking (#8156) 2022-10-23 01:25:17 +02:00
201ba4d328 Add fire-tick-delay option (#8037) 2022-10-23 01:57:09 +03:00
e827d176c4 Update settings directory path in exceptions (#7968) 2022-10-13 13:38:06 +02:00
5eb4ada324 Fix configs that relied on outdated min/max y levels (#6986) 2022-10-08 23:52:09 -07:00
1fc4118bd8 Only create paper.yml-README.txt on config conversion (#8334) 2022-10-02 16:29:09 +09:00
0f1a8717e8 Rewrite chunk system (#8177)
Patch documentation to come

Issues with the old system that are fixed now:
- World generation does not scale with cpu cores effectively.
- Relies on the main thread for scheduling and maintaining chunk state, dropping chunk load/generate rates at lower tps.
- Unreliable prioritisation of chunk gen/load calls that block the main thread.
- Shutdown logic is utterly unreliable, as it has to wait for all chunks to unload - is it guaranteed that the chunk system is in a state on shutdown that it can reliably do this? Watchdog shutdown also typically failed due to thread checks, which is now resolved.
- Saving of data is not unified (i.e can save chunk data without saving entity data, poses problems for desync if shutdown is really abnormal.
- Entities are not loaded with chunks. This caused quite a bit of headache for Chunk#getEntities API, but now the new chunk system loads entities with chunks so that they are ready whenever the chunk loads in. Effectively brings the behavior back to 1.16 era, but still storing entities in their own separate regionfiles.

The above list is not complete. The patch documentation will complete it.

New chunk system hard relies on starlight and dataconverter, and most importantly the new concurrent utilities in ConcurrentUtil.

Some of the old async chunk i/o interface (i.e the old file io thread reroutes _some_ calls to the new file io thread) is kept for plugin compat reasons. It will be removed in the next major version of minecraft.

The old legacy chunk system patches have been moved to the removed folder in case we need them again.
2022-09-26 01:02:51 -07:00
e14a2a0cce Configurable chat thread limit (#7878) 2022-09-20 01:16:23 +01:00
24d3f7bb49 Restore no-crash behaviour when read-only config file(s) (#8318) 2022-09-17 05:22:17 +02:00
15ce56cb40 Leave a paper.yml.txt stub pointing to new location (#8090) 2022-08-02 13:24:57 -07:00
b4e9e20e79 1.19 Anti-Xray cleanup (#8104) 2022-07-18 12:30:31 +02:00
ed2321032d Use safe method for handling Files#createDirectories (#7997) 2022-06-25 16:40:28 -04:00
c517b28adc Fix number parsing (#8013) 2022-06-17 11:28:18 -07:00
e08802e9ef Add option for strict advancement dimension checks (#7954) 2022-06-14 16:31:20 -07:00
c3f403dd76 Couple config fixes (#7975) 2022-06-13 15:29:44 -07:00
98b65200d8 Use deserialised row keys in config tables (#7962) 2022-06-14 06:20:43 +09:30
8d1748a6f9 Add paper-settings-directory cl argument (#7949) 2022-06-12 10:07:43 +02:00
df842f3d43 Adjust config headers 2022-06-11 13:43:59 -07:00
33d48ed240 Keep default keys in some maps
Fixes https://github.com/PaperMC/Paper/issues/7913#issuecomment-1152780671
2022-06-10 17:11:12 -07:00
43f46a5f0b Improve migration file errors (#7929) 2022-06-10 10:01:09 -07:00
a488132e74 Remove bad warning 2022-06-10 14:58:25 +02:00
29e793489c improve packet config serializer (#7920) 2022-06-10 01:45:41 -07:00
89e9e14344 couple more migration issues 2022-06-09 22:03:37 -07:00
b347f25afc fix 2 more migration issues 2022-06-09 18:40:07 -07:00
9f383d8097 Fix migration of packet limiter 2022-06-10 01:55:53 +02:00
b3386c382b Make slime spawn checks use tag again and rename config option (#7910) 2022-06-10 00:48:46 +02:00
35d5998b02 remove more unused config options 2022-06-09 15:15:01 -07:00
288cf1e073 fix more config migration issues 2022-06-09 15:03:02 -07:00
1aa8052d41 fix compile issue 2022-06-09 14:50:05 -07:00
4d7c2c787c move commands out of configuration 2022-06-09 14:43:27 -07:00
b89848009c minimessage conversion 2022-06-09 14:11:43 -07:00
d433a16bb7 Remove old config options (#7908) 2022-06-09 16:48:35 -04:00
82fbae146b catch IAE from empty transformation builder 2022-06-09 13:06:03 -07:00
6eaa203f77 Remove locname (#7909) 2022-06-09 15:56:21 -04:00
3e0a6e62bb more configuration fixes/changes 2022-06-09 12:51:26 -07:00
c6f937f660 Fix config migration error preventing server startup
There's at least two more, but those are less pressing
2022-06-09 14:27:48 +02:00
929bb263c3 Update configurable feature seed patch 2022-06-09 13:16:00 +02:00
2514a4d5ca Readd dummy PaperConfig and PaperWorldConfig classes 2022-06-09 11:46:41 +02:00
2168417373 Move to configurate for paper.yml (#7609) 2022-06-09 01:51:45 -07:00
b31be0569d First server patches 2022-06-07 20:12:34 +02:00
1148687a8d Prepare for 1.19 dev 2022-06-07 18:52:56 +02:00
9b2964fe63 Fix treasure maps discovered settings (#7627) 2022-06-05 17:17:27 -07:00
f65eead418 Remove ChatColor usages (#7543) 2022-06-02 21:26:56 -07:00
14d355612e Add Alternate Current's redstone implementation as an alternative to Vanilla and Eigencraft's. (#7701) 2022-05-07 18:47:28 +02:00
8cdb1bf0ab Use mojang item ids for alternative item despawn rate (#6997) 2022-05-05 00:29:15 +02:00
5c7b445c76 Remove KeyedObject interface (#7680) 2022-03-30 13:28:38 -07:00
20780a5deb Update docs link in paper.yml (#7562) 2022-03-09 10:10:53 +01:00
da03d4a1bc Initial 1.18 update 2022-02-28 22:43:03 -07:00