3
0
Mirror von https://github.com/PaperMC/Velocity.git synchronisiert 2024-09-29 06:30:16 +02:00
Commit graph

499 Commits

Autor SHA1 Nachricht Datum
Pantera (Mad_Daniel)
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 Steinborn
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
Gero
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
Nassim Jahnke
31e557c80b
Start working on 1.19.4 2023-03-09 19:25:51 +01:00
Adrian
9149ed3384
Update adventure javadoc link (#956) 2023-02-25 15:20:41 +00:00
Corey Shupe
d733e88677 Add getEntry to TabList.java 2023-02-20 10:11:33 -05:00
Adrian
8761d02def
feat: Implement RegisteredServer#ping(PingOptions) (#938) 2023-01-26 00:33:07 -05:00
JNNGL
697d08baa4
Fix annotation processor (#919) 2023-01-02 08:23:56 -05:00
Andrew Steinborn
3768e66e86 Also use Spotless to remove unused imports 2023-01-01 18:52:11 -05:00
Andrew Steinborn
b0862d2d16 Use Spotless for license formatting 2023-01-01 18:46:33 -05:00
Andrew Steinborn
d72d707b1c
Convert Velocity buildscripts to Kotlin DSL (#918)
Spiritually indebted to #518 and @alexstaeding.

There's a minor break - we're going up to 3.2.0-SNAPSHOT as the API now compiles against Java 11. But this is more academic in practice.
2023-01-01 17:53:37 -05:00
Shane Freeder
8deb0ff70d
[ci skip] fix URL derp 2022-12-10 00:45:04 +00:00
Shane Freeder
c932ee5e25
[ci skip] Update guava javadoc link 2022-12-10 00:43:32 +00:00
JOO200
97770cd1a6
Reduce Spam from the TabList by not sending every package multiple times (#902)
* Reduce Spam from the TabList by not sending every package multiple times

VelocityTabList#processUpsert called entry.setX which will create a package and send it to the client.
BackendPlaySessionHandler doesn't return true for those packages, therefore the package for tab list updates will be send two times.

* Cleanup TabList#buildEntry, added listed status to Entry builder
2022-12-09 13:40:30 -05:00
Nassim Jahnke
b1fa9dc953
Remove snapshot version 2022-12-07 14:18:29 +01:00
Corey Shupe
b504e0857c
Update to 1.19.3-rc3 (#893) 2022-12-07 14:12:48 +01:00
Andrew Steinborn
7d77bfb53c Update select dependencies 2022-09-21 00:48:21 -04:00
IkeVoodoo
048fd90359
Improving incorrect namespace/name error (#839)
* Improving incorrect namespace/name error

* Update MinecraftChannelIdentifier.java
2022-08-17 00:54:16 -04:00
Adrian
fbde1ff82a
Implement Documented javadoc annotation on AwaitingEvent (#837) 2022-08-14 17:16:42 -04:00
A248
fee292bcc9
Clarify that plugin IDs must be lowercase (#820) 2022-08-06 11:34:39 -04:00
Pantera (Mad_Daniel)
8a63df2ace
Add version information for 1.19.2 (#823)
https://minecraft.fandom.com/wiki/Protocol_version#Java_Edition_2
2022-08-05 12:01:50 -04:00
FivePB (Xer)
1a3fba4250
Update to 1.19.1 (#772)
* 1.19.1-rc1

* More signature changes

* Further 1.19.1 changes

I also started on the checkstyle update, see the developers notes
for the rest I haven't gotten around to fixing yet.

* Fix checkstyle

* Checkstyle imports

* Fix logic error

* Changes 1.19.1-pre2

* 1.19-pre3

* Progress, some parts still WIP

* Overlooked changes

* Fix ServerData

* Fix ServerLogin send check

* Workaround the broken behavior of "No Chat Reports"

Note that if we ever choose to enforce chat signatures, then the mod will just break again... not our fault if we do that, you get what you pay for.

* more

Co-authored-by: Shane Freeder <theboyetronic@gmail.com>
Co-authored-by: Andrew Steinborn <git@steinborn.me>
2022-07-30 19:30:03 -04:00
Andrew Steinborn
662fbc4e3c
Implement the ServerData packet by firing ProxyPingEvent (#771)
* Implement the ServerData packet by firing ProxyPingEvent

Mojang introduced the enable-status server property with Minecraft 1.19, which if enabled causes servers to close the connection when a client tries to ping them. Mojang wants to show the MOTD and favicon on the server select screen for those who manage to log in, so we need to implement this packet as well.

The good news is that we can send this packet as many times as needed on the same connection

This matches the behavior of pinging the server. This is a minor, but completely backwards-compatible, API breakage: Player inherits from InboundConnection so we do not have to change ProxyPingEvent, however plugins not expecting a Player might get confused.

* typo
2022-06-23 23:59:13 -04:00
foxley
86c65f3910
adding equals and hashcode in ClientSettings, ClientSettingsWrapper and SkinParts (#765)
* adding equals and hashcode in ClientSettings, ClientSettingsWrapper and SkinParts

* fixing format
2022-06-22 23:37:38 -04:00
Andrew Steinborn
93df65fdfb Update Gson
Resolves #763
2022-06-22 22:25:30 -04:00
FivePB (Xer)
1a1391a519
Tablist-changes for 1.19 (#761)
This change helps ensure player signatures are propagated correctly.
Signatures should never be removed, so to compensate for legacy plugins and for the
proxy api function we have to enforce this.
2022-06-19 18:19:32 +02:00
4drian3d
e45ca5f357
Improved Scheduler API (#696)
* Improved Scheduler API

- Added `Scheduler#builder(plugin)`
This method allows a more simplified builder while maintaining the main requirement of the executor plugin
- Added `Scheduler#taskByPlugin(plugin)`
Allows to obtain the tasks that a plugin has sent to execute and that are currently active
- Added `TaskBuilder#task(Consumer<SchuledTask>)`
Allows to specify a task with access to the task itself with the ability to cancel itself

* Applied requested changes

- Removed tasks builder method
- Added `Scheduler#buildTask(plugin, Consumer<ScheduledTask>)`

* Removed some unused imports

* Applied suggested change

* Fix possible test bug

* Applied more suggested changes

* Fixed tests inside tasks
2022-06-09 03:27:06 -04:00
Corey Shupe
d97ed956a7
Update/1.19 (#726)
Co-authored-by: FivePB <admin@fivepb.me>
2022-06-07 21:00:24 -04:00
Pasqual Koschmieder
3ae93875b8
fix missing server info in some events when kicked from current server (#703) 2022-05-08 23:08:50 -04:00
4drian3d
acc407a6d5
Added ability to customize translations (#692)
* Added ability to customize translations

* Removed remaining usage of `Paths#get`

As of java 11 its replacement `Path#of` was created, which is called when using `Paths#get`, besides, according to documentation, it mentions that it can be deprecated at any time

And fix a minor typo in LegacyChannelIdentifier
2022-04-16 00:38:44 -04:00
microwin7
44dc2e7ca0
Fix implements in class ResponseResult (#675)
Fixed inheritance of interface on ResultedEvent.Result in ResponseResult class
2022-04-03 17:43:32 -04:00
JOO200
8214fe30fe
Specify the unit for getPing to milliseconds. (#676) 2022-04-03 15:29:34 -04:00
4drian3d
9fc4341f40
Replacement of some deprecated method (#672)
- PlainComponentSerializer -> PlainTextComponentSerializer
- BinaryTagHolder#of -> BinaryTagHolder#binaryTagHolder
2022-03-31 22:09:44 -04:00
Jason Penilla
897f278986
Update Adventure and include MiniMessage in API 2022-03-01 12:50:50 -07:00
Shane Freeder
2fe50bedc5
1.18.2 support 2022-02-28 14:27:57 +00:00
Corey Shupe
596d4758ba
Implement resource pack send event. (#625) 2022-02-01 23:30:45 -05:00
Andrew Steinborn
058014aa75 Better document how to use the login plugin message API 2021-12-23 15:44:19 -05:00
Andrew Steinborn
8c39d9a1e4 Document every event Velocity will await on. 2021-12-23 02:52:56 -05:00
Kosma Moczek
b54dd757bb
add version information for 1.18.1 (#609) 2021-12-10 15:03:53 -05:00
FivePB (Xer)
30dd2ed380
Merge 1.18 Update
Merge pull request #577 from Xernium/future/1.18: [Future] Support for Minecraft 1.18
2021-11-25 19:24:39 +01:00
FivePB
7ed4f4c03a
Add new ClientSettings API
Add the new API introducted with the ClientSettings packet changes in 1.18
2021-11-25 17:04:10 +01:00
FivePB (Xer)
7cc40f8fea
Ready for 1.18 release 2021-11-23 21:59:36 +01:00
FivePB (Xer)
b5cad80cfc
Snapshot 1.18-pre6 2021-11-22 19:41:07 +01:00
FivePB (Xer)
830fb6a561
Snapshot 1.18-pre5 2021-11-22 13:44:30 +01:00
Andrew Steinborn
2dfc7ffbf2
1.18-pre4 2021-11-17 14:37:08 -05:00
Andrew Steinborn
9bf82c52fd
Minecraft 1.18-pre2 2021-11-16 22:06:09 -05:00
Five (Xer)
5af53f2d77
Snapshot 1.18-pre1 2021-11-12 10:56:29 +01:00
Five (Xer)
315ff265c6
Snapshot 21w44a 2021-11-12 10:53:26 +01:00
Ivan Pekov
111d14c3fb
Introduce VelocityBrigadierMessage (#588) 2021-11-02 16:20:15 -04:00
Andrew Steinborn
0b0c36dcfc Correct command meta alias removal behavior and add appropriate unit tests.
Apparently @hugmanrique caught the issue but suggested the wrong fix. This is the correct fix, and respects the Javadoc.
2021-10-31 19:05:21 -04:00
Andrew Steinborn
cb8781b3c9
Add support for sending and receiving login plugin messages from players and servers (#587) 2021-10-31 16:27:03 -04:00
Frank van der Heijden
922c001b59
Expose CommandMeta in CommandManager and add a ref to the plugin instance (#544) 2021-10-31 16:23:35 -04:00
Andrew Steinborn
9f82af7d31
Minecraft 21w43a 2021-10-28 08:47:40 -04:00
Andrew Steinborn
f4dc9ca70e
Minecraft 21w42a 2021-10-26 17:39:14 -04:00
James Puleo
996ada1f39
Introduce PlayerClientBrandEvent, fired when the player sends the minecraft:brand message (#567) 2021-10-15 10:26:25 -04:00
Andrew Steinborn
20914ca134 Bump Adventure 2021-10-15 08:18:11 -04:00
Five (Xer)
311133a4d3
Snapshot 21w41a 2021-10-13 20:50:34 +02:00
Andrew Steinborn
1aaecfff08 Add tests for EventTask#resumeWhenComplete and clarify Javadoc. 2021-10-10 16:37:22 -04:00
Foorcee
08f1b87267
Redirect player without message (#581) 2021-10-09 20:32:04 -04:00
Five (Xer)
4ba4054f23
Snapshot 21w40a 2021-10-09 00:08:51 +02:00
Five (Xer)
922a13d9ed
Snapshot 21w39a 2021-10-08 15:25:48 +02:00
Five (Xer)
0896d66ac2
Snapshot 21w38a 2021-09-25 13:45:46 +02:00
Five (Xer)
ac92de8a0e
Snapshot 21w37a 2021-09-25 13:43:47 +02:00
Andrew Steinborn
955f6b87e2 Assorted dependency updates 2021-09-01 06:36:00 -04:00
David Mayr
3d8e9091c0
Custom localization for each player (#537) 2021-07-25 21:50:44 -04:00
Hugo Manrique
76c6827926
Expose registered aliases in API (#549) 2021-07-24 14:34:50 -04:00
A248
0bad9199dc
Add Automatic-Module-Name to published api jar (#551) 2021-07-24 14:34:23 -04:00
Andrew Steinborn
540d970a4d
Minecraft 1.17.1 support (#530) 2021-07-06 03:32:13 -04:00
Andrew Steinborn
d7abf4457c Readd FastUUID license 2021-06-18 07:05:38 -04:00
Andrew Steinborn
c33f9e0466 Merge remote-tracking branch 'origin/dev/3.0.0' into dev/3.0.0
# Conflicts:
#	api/src/main/java/com/velocitypowered/api/proxy/Player.java
#	proxy/src/main/java/com/velocitypowered/proxy/connection/client/ConnectedPlayer.java
2021-06-12 20:13:52 -04:00
Andrew Steinborn
c2b82f878b Merge branch 'dev/1.1.0' into dev/3.0.0
# Conflicts:
#	api/src/main/java/com/velocitypowered/api/proxy/Player.java
#	proxy/src/main/java/com/velocitypowered/proxy/connection/client/ConnectedPlayer.java
2021-06-12 20:12:31 -04:00
lexikiq
fe5809fdc1
Javadocs 2021-06-12 20:04:20 -04:00
lexikiq
5c424c1da7
Move TriState converter 2021-06-12 20:01:42 -04:00
Andrew Steinborn
1b32f56168
Merge pull request #523 from Artuto/dev/1.1.0
Add support for retrieving the Player's client brand
2021-06-12 23:11:41 +00:00
Artuto
f2b20e6398
Remove usage of Optional 2021-06-12 13:48:42 -05:00
lexikiq
e798f0d906
Move #getPermissionChecker 2021-06-12 12:52:35 -04:00
lexikiq
72408d5bd8
Remove display name 2021-06-12 12:12:04 -04:00
Artuto
c8d50f3fdd
Add support for retrieving the Player's client brand 2021-06-11 23:44:51 -05:00
lexikiq
8356b812c3
Cache permission pointers 2021-06-11 23:44:59 -04:00
lexikiq
4003666c27
Cache pointers 2021-06-11 23:32:49 -04:00
lexikiq
56a46d051b
Rename method + add JD 2021-06-11 22:15:12 -04:00
lexikiq
39d39e58bd
Remove ComponentLike interface from Player 2021-06-11 22:06:37 -04:00
lexikiq
19f80bd618
Don't directly implement PermissionChecker 2021-06-11 21:49:40 -04:00
lexikiq
29b409b9f1
Move #pointers to Player
It uses fully API methods so it makes sense to me to use it in Player, open to criticism though
2021-06-11 21:33:15 -04:00
lexikiq
db7e3262a6
Optimize imports 2021-06-11 21:25:51 -04:00
lexikiq
3c4312056b
Switch to #pointers
Ensures that Pointered#getOrDefault[From] works
2021-06-11 21:12:44 -04:00
lexikiq
069796a2f2
Fix import order 2021-06-11 21:09:41 -04:00
lexikiq
f59516165f
Rebase onto feature/adventure-pointers 2021-06-11 21:06:59 -04:00
lexikiq
9491046935
Improve Player#asComponent 2021-06-11 21:01:53 -04:00
lexikiq
ba4ba2022e
Obey Checkstyle rules 2021-06-11 21:01:53 -04:00
lexikiq
3a1517f3a4
Expand Adventure Support
Adds support for assorted Adventure interfaces
2021-06-11 21:01:53 -04:00
Andrew Steinborn
d7bf03b956 Minecraft 1.17 2021-06-07 14:16:16 -04:00
Andrew Steinborn
c2c119140f Anticipatory bump to Minecraft 1.17 2021-06-07 12:46:21 -04:00
Andrew Steinborn
65608bb360 Bump Gson version 2021-06-06 04:22:08 -04:00
Andrew Steinborn
ef7aeae4ed Merge remote-tracking branch 'origin/dev/3.0.0' into dev/3.0.0 2021-06-06 03:52:03 -04:00
Andrew Steinborn
b1b3882fab Merge branch 'Xernium-future/1.17' into dev/3.0.0
# Conflicts:
#	api/src/main/java/com/velocitypowered/api/proxy/ProxyServer.java
#	proxy/src/main/java/com/velocitypowered/proxy/connection/client/ConnectedPlayer.java
2021-06-06 03:48:49 -04:00
Andrew Steinborn
43b72ff826
Apply some spelling fixes from code review
Co-authored-by: Hugo Manrique <hugmanrique@users.noreply.github.com>
2021-06-06 00:20:47 +00:00