Перейти к содержимому
Mineforgian

VPacketEvents

Manage packets through Velocity's native events

Загрузки
22K
Подписчики
33
Обновлён
20 апреля 2023 г.
Лицензия
GPL-3.0-or-later

Опубликован 24 февраля 2023 г.

VPacketEvents

Discord GitHub Downloads

Manage and register packets through Velocity's native events

class PacketListener {
    @Subscribe
    public void onPacketReceive(PacketReceiveEvent event) {
        final MinecraftPacket packet = event.getPacket();
        if (packet instanceof KeyedPlayerCommand commandPacket) {
           event.setResult(GenericResult.denied());
        }
    } 
    
    @Subscribe
    public void onPacketSend(PacketSendEvent event) {
        // some stuff
    }

    public void registerPacket() {
        // UpdateTeamsPacket registration
        PacketRegistration.of(UpdateTeamsPacket.class)
                .direction(Direction.CLIENTBOUND)
                .packetSupplier(UpdateTeamsPacket::new)
                .stateRegistry(StateRegistry.PLAY)
                .mapping(0x47, MINECRAFT_1_13, false)
                .mapping(0x4B, MINECRAFT_1_14, false)
                .mapping(0x4C, MINECRAFT_1_15, false)
                .mapping(0x55, MINECRAFT_1_17, false)
                .mapping(0x58, MINECRAFT_1_19_1, false)
                .mapping(0x56, MINECRAFT_1_19_3, false)
                .mapping(0x5A, MINECRAFT_1_19_4, false)
                .register();
    }
}

Installation

  • Download VPacketEvents from Modrinth
  • Drag and drop on your plugins folder
  • Start the server

Dev Setup

Gradle

repositories {
    mavenCentral()
}
dependencies {
    compileOnly("io.github.4drian3d:vpacketevents-api:1.1.0")
}

Javadocs

https://javadoc.io/doc/io.github.4drian3d/vpacketevents-api

Ченджлог

1.1.0Релиз1.21.10, 1.21.11, 26.1 · 20 апреля 2023 г.

New API added for easy packet registration in Velocity

// Example of UpdateTeam registration
PacketRegistration.of(UpdateTeamsPacket.class)
            .direction(Direction.CLIENTBOUND)
            .packetSupplier(UpdateTeamsPacket::new)
            .stateRegistry(StateRegistry.PLAY)
            .mapping(0x47, MINECRAFT_1_13, false)
            .mapping(0x4B, MINECRAFT_1_14, false)
            .mapping(0x4C, MINECRAFT_1_15, false)
            .mapping(0x55, MINECRAFT_1_17, false)
            .mapping(0x58, MINECRAFT_1_19_1, false)
            .mapping(0x56, MINECRAFT_1_19_3, false)
            .mapping(0x5A, MINECRAFT_1_19_4, false)
            .register();

What's Changed

Full Changelog: https://github.com/4drian3d/VPacketEvents/compare/1.0.2...1.1.0

1.0.2Релиз1.19.2, 1.19.3, 1.19.4 · 10 апреля 2023 г.

This update is mostly about fixing an incompatibility with LimboAPI, which for some reason completely replaces a fundamental function of Velocity, with the possibility of breaking certain plugins in some setups

What's Changed

Full Changelog: https://github.com/4drian3d/VPacketEvents/compare/1.0.1...1.0.2

1.0.1Релиз1.19.2, 1.19.3, 1.19.4 · 28 февраля 2023 г.
  • Fixed version string in initialization
  • Some javadoc fixes

Full Changelog: https://github.com/4drian3d/VPacketEvents/compare/1.0.0...1.0.1

Комментарии

Загружаем…