606 Commits
Author SHA1 Message Date
Nassim Jahnke 8f8f5e72c0 Default rewriter registrations across protocols
In total it doesn't (yet) reduce the lines of code (though there is also some other changes adding code here), but makes adding single rewriter calls to a range of protocols much easier than having to individually check an ever increasing number of classes. This also moved Protocol#registerPackets until after mappings have been loaded (which makes onMappingDataLoaded redundant for now, but will become relevant later again)
2026-03-30 20:40:25 +02:00
Nassim Jahnke f003b6b84a Only do compression handler reorder on old servers after compression is enabled 2026-02-20 21:58:25 +01:00
Nassim Jahnke ad4c8e42f2 Add system property to disable legacy compression reorder 2026-02-09 17:56:19 +01:00
FlorianMichael aa9a615c6b [ci skip] Small code cleanups (#4819) 2026-01-30 21:25:40 +01:00
FlorianMichael 5743d1da0b Add server details protocol & make player details protocol consistent (#4781) 2026-01-18 11:56:42 +01:00
FlorianMichael 4e83c361bd Only register update checker on platforms that have it (#4787)
Signed-off-by: FlorianMichael <git@florianmichael.de>
2026-01-17 17:21:38 +01:00
FlorianMichaelandNassim Jahnke bae320a338 Make more parts of base platform impl optional
Co-authored-by: Nassim Jahnke <nassim@njahnke.dev>
2026-01-17 14:15:09 +01:00
Nassim Jahnke 16a2a3a671 Add interface to get UserConnection from netty pipeline
+ a little bit of code deduplication
Closes #3162
2026-01-16 17:08:46 +01:00
Nassim Jahnke cff9a87156 [ci skip] Update copyright header 2026-01-04 15:36:39 +01:00
Nassim Jahnke 212cca1d65 Add null check to uuid in Velocity kick method 2025-12-27 21:45:35 +01:00
Nassim Jahnke 54bd8fb5f7 25w46a 2025-12-12 15:59:08 +01:00
FlorianMichael 695534e8a8 Don't run movement transmitter provider in netty thread 2025-09-05 19:02:51 +02:00
EnZaXD 91b11878fb Fix ViaAPI#getConnection javadoc and remove not needed code (#4635) 2025-08-20 17:38:19 +02:00
Nassim Jahnke 4070ea9f02 Revamp max-pps config
Add a config section for setting max packet size, add a toggle for disabling each tracker fully
2025-07-29 12:27:51 +02:00
Nassim Jahnke fd5dadbe01 [ci skip] Clean up imports 2025-07-14 12:36:56 +02:00
EnZaXD eb51306d82 Fix ItemFactory#getSpawnEgg NoSuchMethodError on older Paper builds (#4582) 2025-07-13 08:40:09 +02:00
PacksoliteandNassim Jahnke e1837dc578 Fix legacy block picking on some Paper forks (#4496)
Co-authored-by: Nassim Jahnke <nassim@njahnke.dev>
2025-06-21 11:22:22 +02:00
RaphiMC e2045295a0 Hash item data components in 1.21.4->1.21.5 2025-05-11 23:10:17 +02:00
Nassim Jahnke dd6a1a7f6e Update old version warning to <1.16 servers
The original <1.13 warning was added almost 5 years ago, since then more small issues have come up from newer clients having fundamental changes and server stats on those old versions have dropped even more. That said, ViaVersion will keep working on these servers presumably forever
2025-03-30 16:02:27 +02:00
Pablo Herrera 41138aabd1 Implement pick-block for legacy servers (#4412) 2025-03-29 13:07:44 +01:00
Nassim Jahnke 175c320389 Simplify server container desync check with Paper API if present
Fixes desyncs on item drags due to missing item data for 1.21.5+ clients
2025-03-28 14:12:40 +01:00
FlorianMichael 494da63b66 Rewrite ConnectionManager to track client/server connections (#4410) 2025-03-12 16:51:34 +01:00
Nassim Jahnke 9f6e7fa4e5 [ci skip] Update copyright header 2025-01-01 12:31:22 +01:00
Nassim Jahnke 30df64b4d4 Enable configuration cache 2024-12-29 12:52:05 +01:00
Nassim Jahnke 4773ba41cf Replace wiki.vg links 2024-12-10 15:50:38 +01:00
Nassim Jahnke 366675f7f8 Make pick item provider Folia-compatible 2024-12-09 15:47:42 +01:00
riku6460 813cf813cf Fix method checks in BukkitPickItemProvider (#4301) 2024-12-07 14:02:15 +01:00
booky10 037410d405 Fix item meta not being saved when including block state data (#4298) 2024-12-06 18:53:53 +01:00
riku6460 c9d5632143 Fix slot index check (#4296) 2024-12-06 17:04:30 +01:00
Nassim Jahnke 3cd01978df Implement block and entity picking 2024-12-06 13:02:22 +01:00
nwayo 96c12ef483 Use global region scheduler in runSync methods on Folia (#4292) 2024-11-30 13:42:59 +01:00
Pablo Herrera f93c64d6aa Improve 1.21 client enchantments on legacy servers (#4255)
Signed-off-by: Pablo Herrera <pabloherrerapalacio@gmail.com>
2024-11-24 11:19:05 +01:00
Nassim Jahnke f0eab71644 Pre-size most allocated byte buffers
Also avoids the default allocation size of 256 bytes for bufs that are much smaller than that
2024-11-04 21:27:09 +01:00
Nassim Jahnke 369b076cad Null check channel in player join listener
Fixes #3390
2024-09-03 16:43:55 +02:00
EnZaXD b556e6528a Rename remaining packages in bukkit modules to new format (#4074) 2024-08-05 09:48:01 +02:00
Nassim Jahnke 462a10363c Only print reload info when needed, add additional log message after shutdown
Thanks to its name and dependency order, ViaVersion will generally be the last plugin to be disabled and has occasionally been blamed for other plugins stalling server shutdown
2024-08-03 20:35:22 +02:00
EnZaXD 040f85659d Fix enchantment emulation in 1.20.5->1.21 on non Paper servers (#4060) 2024-08-02 11:05:17 +02:00
EnZaXD 20f7738f08 Add cancel-block-sounds option for 1.8->1.9 place/break fix (#4011) 2024-07-12 00:11:11 +02:00
EnZaXD 463381b84e Rename missing metadata references to entity data (#4007) 2024-07-06 21:05:40 +02:00
EnZaXD 248da118a9 Move bukkit-only settings into BukkitViaConfig (#3985) 2024-06-27 09:56:50 +02:00
EnZaXD a987882132 Rework unsupported config options in AbstractViaConfig (#3986) 2024-06-27 09:54:44 +02:00
Nassim Jahnke 00fedc7656 Also handle aqua affinity 2024-06-20 16:08:46 +02:00
Nassim Jahnke 05aa05c5b4 Disable soul speed check for now 2024-06-20 15:31:18 +02:00
Nassim Jahnke 77d702bc9b Also handle movement related enchantments
Fixes #3960
2024-06-20 12:12:29 +02:00
Nassim Jahnke d1d279cfea Don't send the attribute packet if the login packet hasn't been sent yet 2024-06-16 15:44:02 +02:00
Nassim Jahnke 794683ef75 Don't use ItemStack.empty()
This is a fairly new method
2024-06-13 23:22:18 +02:00
Nassim Jahnke 877053c471 Send mining efficiency attribute on item switch
For some reason, mining efficiency is not calculated by the client anymore, but by the server, then sending the current value to the client every time the item changes. This roughly emulates that behavior (without tracking any inventory state beyond events).
2024-06-13 18:21:55 +02:00
EnZaXD 3f72e9ea47 Don't publish extra modules (#3901) 2024-06-03 15:22:59 +02:00
EnZaXD 82452dbdfe Remove bungee options from config.yml (#3898) 2024-06-01 20:37:38 +02:00
EnZaXD 2dad770d67 Include website url in plugin.yml (#3897) 2024-05-31 09:40:12 +02:00