13
0
geforkt von Mirrors/Velocity

Update Velocity (might fix Command problems) and fix PluginMessages... #4

Zusammengeführt
Lixfel hat 32 Commits von fix-pluginmessages nach master 2024-08-20 08:14:12 +02:00 zusammengeführt
Besitzer
Keine Beschreibung angegeben.
Lixfel hat 31 Commits 2024-08-18 15:33:34 +02:00 hinzugefügt
* 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>
* 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`
* copy issue contact links from Paper

* bug report template

* bug report template fixes

* why no code block

* feature request issue template and fixes to bug report template

* make fields required
SessionCommandHandler is only constructed for >= 1.19.3.
This would fail down the line anyway due to inconsistent chat state (if holding a 'last seen' update)
This is hardly useful in the case of signed player chat messages, as these fundamentally cannot be spoofed or modified - however, for any unsigned input (particularly commands without any signed arguments), 'last seen' updates are still required and should be passed through in a consistent state.
The Vanilla client will send 'last seen' even if the message is not signed, so this is much stricter than it needs to be. This should allow commands without any signed arguments to be modified/consumed by the proxy.
Fixes #1372. Honestly, this was an oversight that I'm somewhat surprised that nobody caught until recently.
Realized that the precondition that gets violated happens way too early, in `Maps.uniqueIndex()`.
* Configuring the player (i.e. sending resource packs) should now be done in the new PlayerConfigurationEvent.

* The new PlayerEnteredConfigurationEvent is called when a player acknowledged the switch to configuration state.

* The PlayerEnterConfigurationEvent is no longer called twice. It is now called when the backed wants to reconfigure the player.

* The PlayerFinishConfigurationEvent should no longer be used to configure the player (i.e. sending resource packs). This is because since 1.20.5 the backend server can't send keep alive packets between switching state anymore and the connection will thus time out.
* Add ServerResourcePackRemoveEvent

* Add nonnull check

* Fix indentation

* Fix import code style
In this case, we don't even need a concurrency-friendly MPSC queue, since this code only ever gets run in the event loop associated to the channel, so a simple `ArrayDeque` is enough for our needs.
* feat: Add server registered/unregistered events

* Annotate new API with `@Beta`

* Migrate from classes to records

* Add null checks

* Fix code style indent

* Add links in documentation

* Fix docs indent

---------

Co-authored-by: powercas_gamer <cas@mizule.dev>
Remove filter checks to receive PluginMessages unfiltered.
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
a6c79db07b
Lixfel hat 1 Commit 2024-08-20 08:03:24 +02:00 hinzugefügt
Fix command signature issues.
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
5e3bbcd427
YoyoNow hat die Änderungen 2024-08-20 08:10:10 +02:00 genehmigt
Lixfel hat Commit 15ecbf4345 in master 2024-08-20 08:14:12 +02:00 gemerged
Lixfel löschte die Branch fix-pluginmessages 2024-08-20 08:14:12 +02:00
Anmelden, um an der Diskussion teilzunehmen.
Keine Beschreibung angegeben.