Commit Graph
493 Commits
Author SHA1 Message Date
WilliamandGitHub 9d25d309d3 feat: Add basic API for server links (#1353)
* feat: add basic server links API

* refactor: more precondition checking on links

* refactor: remove whitespace

* refactor: adjust method order, JDs in ServerLink

* refactor: remove "throws" from constructors

* refactor: add @NotNull annotations

* refactor: requested changes

* refactor: just use `List#copyOf`
2024-06-18 09:29:58 -05:00
e60e2063a8 Add Configuration State API (#1261)
* Implement Configuration State events

* Implement PlayerFinishedConfigurationEvent

* Fixed PlayerFinishConfigurationEvent execution

* Apply suggestions

* Fix keep alive when blocking PlayerFinishConfigurationEvent

* Add ServerConnection to configuration events

* Separate PlayPacketQueueHandler to fix AutoReadHolderHandler

---------

Co-authored-by: Gero <gecam59@gmail.com>
2024-06-16 10:56:09 -05:00
GeroandGitHub 350ea7f31e 1.21 support (#1338) 2024-06-12 20:33:01 +02:00
AdrianandGitHub 2d015cdf5c Add support for canceling ProxyPingEvent (#1264)
* Added support for canceling ProxyPingEvent
2024-06-08 14:28:33 -05:00
LuccboyandGitHub 46cf9be297 [ci skip] Fix Javadocs of CookieRequestEvent (#1339) 2024-05-30 17:21:26 +01:00
LuccboyandGitHub 07f1f9e7bd Add Cookie API (#1313) 2024-05-30 16:52:30 +01:00
GeroandGitHub 42d4288334 Fix tab completions not being forwarded to backend if proxy command exists but is inaccessible (#1329) 2024-05-26 13:19:37 +01:00
Pantera (Mad_Daniel)andGitHub 399bc2325f Add version information for 1.20.6 (#1310)
https://www.minecraft.net/en-us/article/minecraft-java-edition-1-20-6
2024-04-29 23:13:08 -07:00
AdrianandGitHub bf507dc0b8 Update snapshot protocol to 1.20.5 release (#1298) 2024-04-23 10:07:39 -05:00
8f4adb1cec 1.20.5 Support (#1198)
Added support to Minecraft 1.20.5 (Release Candidate 3)

* Initial 1.20.5 update

* Snapshot 24w03a

* Handle Transfer Handshake intent

* Snapshot 24w03b

* Implement PreTransferEvent

* 24w04a

* Updated EncryptionRequestPacket, JoinGamePacket and ServerDataPacket to 24w04a

* Snapshot 24w05a

* Snapshot 24w05b

* Snapshot 24w06a

* Added migration to add new configuration option

* Snapshot 24w07a

* Snapshot 24w09a

* Snapshot 24w10a

* Snapshot 24w12a

* Snapshot 24w14a

* 1.20.5-rc1

* fix unsigned commands

* fix NPE

* fix respawn packet id

* 1.20.5 Release Candidate 2

* Restored old ConnectionHandshakeEvent constructor

* Added `-Dvelocity.strictErrorHandling` system property

* 1.20.5 Release Candidate 3

---------

Co-authored-by: Gero <gecam59@gmail.com>
2024-04-22 21:12:25 -05:00
AdrianandGitHub 9e42049a67 Improved PluginMessaging API (#1254)
* Improved PluginMessaging API by adding a method to easily encode the data to be sent

* Added javadocs

* Implement PluginMessageEncoder
2024-04-08 12:24:20 -05:00
LightningReflexandGitHub 3b7b902bf5 [ci skip] Fixed typo in KickedFromServerEvent.java (#1266) 2024-03-11 13:21:39 +00:00
Joo200andGitHub 8891faa52c Added event when a command is executed from Velocity (#984)
* feat: added event for command invocation

This event is called when a command invocation attempt on the proxy occurs

* Fix javadoc issue
2024-03-05 10:11:17 -05:00
AdrianandGitHub c34dafe2a2 Implement ProtocolState API (#1224)
* Implement ProtocolState API

* Renamed method to #getProtocolState

* Added sinceMinecraft javadoc tag

* Fixed PreLoginEvent#getUniqueId documentation
2024-03-03 16:21:22 -05:00
Maxim BreitmanandGitHub 82189a6a21 Tiny rework of Protocol Version API (#1260) 2024-03-01 22:42:02 -05:00
AdrianandGitHub d330236b09 Add CommandSource#sendRichMessage and #sendPlainMessage (#1256) 2024-02-27 12:08:53 -05:00
AdrianandGitHub 409ab7b118 [ci skip] Add javadocs warnings about unsupported operations (#1250)
* Document possible blank spaces in the command of the CommandExecuteEvent

* Added Javadocs warning about unimplemented methods in Velocity

* Improved KickedFromServerEvent documentation

* Fixed `apiNote` javadoc generation
2024-02-23 14:11:42 -05:00
AdrianandGitHub ef861819e3 Do not apply a resource pack that has already been applied (#1236)
* Do not apply a resource pack that has already been applied

* Throw IllegalStateException in case of applying a resource pack already applied from the API

* Updated some dependencies

* Added support for ServerResourcePackSendEvent resource pack modification
2024-02-11 12:00:07 -05:00
itsTyrionandGitHub d8bb4e97e4 Add API for custom chat completions like on Paper (#1232)
* Add API for custom chat completions like on Paper, renamed enum constant to match its function, NMS and wiki-vg

* add null and version checks
2024-02-09 16:23:16 -05:00
AdrianandGitHub 7bff6b19eb Use sealed types in command interfaces (#1239)
* Use sealed types in command interfaces

* Some minor code fixes
2024-02-09 14:15:53 -05:00
e1f3b6b66f Expose connecting player's UUID in the PreLoginEvent (#1009)
* feature: Expose connecting player's UUID in the PreLoginEvent

* Applied suggestions

* Updated the javadocs compatible version to Java 17

---------

Co-authored-by: Adrian <adriangonzalesval@gmail.com>
2024-02-09 10:23:47 -05:00
cbd07b1434 Refactor ResourcePacks handling (#1225)
* Initial ResourcePack refactor

* Implement sendResourcePacks method

* Initializes the ResourcePackHandler at player initialization

* Move adventure to velocity resource pack conversion to the same class

* Added some internal resource pack documentation

* Refactored Modern ResourcePack handling

* Handle RemoveResourcePackPacket from backend server

* Fixed license

* Use removeIf instead of manual iteration

* Improve ModernResourcePackHandler

* fix hash conversion

* bundle resource packs

* keep old constructors of PlayerResourcePackStatusEvent

* add @Nullable to PlayerResourcePackStatusEvent#getPackId

* Use a single instance of BundleDelimiterPacket

* Throw UnSupportedOperationException on operations not supported by LegacyResourcePackHandler

* Use a single instance on empty packets

* Handle active packet bundle sending from backend server in case of sending a packet bundle of resource packs

* Improve packet bundling

* Fixed login for players with version 1.20.2

---------

Co-authored-by: Gero <gecam59@gmail.com>
2024-02-08 08:51:45 -05:00
itsTyrionandGitHub 10430a2115 Validate plugin dependency IDs in accordance to plugin ID requirements (#1231) 2024-02-07 21:30:55 -05:00
Andrew SteinbornandGitHub 953ab6d8e7 Implement click callback provider (#1029) 2024-01-20 16:58:00 -05:00
pop4959andGitHub 523d750f2b Implement some missing resource pack API (#1206) 2024-01-20 10:11:05 +00:00
Shane Freeder 35137df76c Bump to adventure release
The API changes required for adopting resource packs are still needed, however
the maven snapshots repo is dead, and nothing technically stops us from doing
this
2024-01-19 15:26:31 +00:00
Riley ParkandGitHub 0993ce2f86 Improve protocol version checking (#1203)
* Improve protocol version checking

* chore: since 3.3.0
2024-01-18 17:32:42 -08:00
AdrianandGitHub 6fd03d6f5c Added static methods to create ArgumentBuilders directly in the BrigadierCommand class (#1161) 2023-12-27 13:33:44 -05:00
Shane Freeder 21ae82e7c0 Update adventure to snapshot version 2023-12-14 16:36:18 +00:00
GeroandShane Freeder 98632925e1 javadoc for PlayerResourcePackStatusEvent.Status#isIntermediate 2023-12-14 14:20:16 +00:00
GeroandShane Freeder 8bfe0670c4 1.20.4 2023-12-14 14:20:16 +00:00
GeroandShane Freeder 058aee259a fix resource pack status 2023-12-14 14:20:16 +00:00
pkt77andShane Freeder efcfeb3e53 1.20.3 working & checkstyle fixes 2023-12-14 14:20:16 +00:00
GeroandShane Freeder 814b53f12c WIP 1.20.3 2023-12-14 14:20:16 +00:00
AdrianandGitHub a6d90105ec Update Configurate to 4.1.2 and include Configurate 3 (#1157) 2023-12-11 15:16:44 +00:00
Andrew Steinborn 277be8f9a7 Bump SnakeYAML to the last 1.x version
Fixes #1047. We can't go any higher since that's an API-breaking change. In any event, this will likely disappear in 5.0.0 anyway, because Configurate 4.x now shades SnakeYAML internally.
2023-10-27 16:58:43 -04:00
Alexander StädingandAndrew Steinborn 3d20c3dd2d Migrate buildSrc plugins to build-logic 2023-10-27 16:03:15 -04:00
OwenandGitHub b33d18af2b Allow closing active proxy listeners (#1109) 2023-10-27 01:39:03 -04:00
Badbird5907andGitHub b30802c1b3 API: Add Tristate#fromOptionalBoolean (#1125) 2023-10-26 03:01:24 -04:00
AdrianandGitHub eb594fc799 Implement ComponentLogger (#1022) 2023-10-12 18:44:10 +01:00
GeroandGitHub 1cc3f120ee Several improvements and fixes for 1.20.2 (#1097)
* Send LoginAcknowledged immediately

* Resend player list header/footer after backend server switched to config state

* Fix clearHeaderAndFooter not clearing fields in ConnectedPlayer

* Clear boss bars, header/footer, tab list when switching client to config state

* Send client settings in config state
2023-10-12 11:11:47 +02:00
768ecdb0c3 1.20.2 Support (#1088)
Co-authored-by: RednedEpic <redned235@gmail.com>
Co-authored-by: Gero <gecam59@gmail.com>
2023-10-10 12:44:16 +00:00
GroldiandGitHub 2aaf702a2e [ci skip] Replaced weired i with i in javadocs (#1057)
In this little patch I replaced an i which caused my build process to crash with an i
2023-08-13 20:36:53 +01:00
powercas_gamerandGitHub 81b45d710b feat: add TabList#addEntries (#987) 2023-08-12 10:49:08 -07:00
Pantera (Mad_Daniel)andGitHub bda1430d5c Add version information for 1.20.1 (#1021) 2023-06-12 16:11:20 +01:00
Gero 5ef90c46e3 1.20 2023-06-06 17:13:48 +02:00
Andrew SteinbornandGitHub a29c753e39 Give each plugin its own executor service (#1010)
This is part of preparatory work for Velocity 5.0.0's revamped event system, but this change is safe to bring into the 3.x.x series. This affects the scheduler for now, but command execution will also be moved into the per-plugin thread pool, along with invocations of `EventTask.async()`.
2023-05-14 02:51:25 -04:00
Alexander Städing e9526e0e23 Move dependencies to gradle version catalog and clean up buildscripts 2023-03-26 14:53:11 +02:00
GeroandGitHub c7ba5255e3 Add Player#hasSentPlayerSettings (#980) 2023-03-21 09:22:40 +01:00
Adrian 65a84833d7 Expose Caffeine in the API module 2023-03-11 08:36:38 -05:00