Skip to content

A lightweight BungeeCord / Velocity protocol framework supporting items

License

Notifications You must be signed in to change notification settings

md5nake/protocolize

 
 

Repository files navigation



Next generation protocol manipulation framework for proxy servers.

Protocolize v2

This is the official repository for the next generation proxy server protocol manipulation framework. If you wish to see the repository for Protocolize v1, click here.

Why a complete recode?

Protocolize v1 was already a successful approach on how to interact with the Minecraft protocol. The downsides were severe: An outdated code base that was hard to maintain and only supported BungeeCord. All those reasons resulted in the making of an whole new fresh code base that supports Velocity and that also takes a new approach on how to provide mappings for all supported protocol mappings.

Migration

We provide some documentation on how to migrate your existing plugin to use the new Protocolize v2 API. Click here.

Getting started

Maven dependency and repository

<repository>
    <id>exceptionflug</id>
    <url>https://mvn.exceptionflug.de/repository/exceptionflug-public/</url>
</repository>
<dependency>
    <groupId>dev.simplix</groupId>
    <artifactId>protocolize-api</artifactId>
    <version>2.3.3</version>
    <scope>provided</scope>
</dependency>

Or alternatively, with Gradle:

repsitories {
    maven {
        url = uri('https://mvn.exceptionflug.de/repository/exceptionflug-public/')
    }
}

dependencies {
    compileOnly("dev.simplix:protocolize-api:2.2.5")
}

Install the plugin

In order to use Protocolize, you have to install it onto your proxy server. Protocolize is supporting BungeeCord and Velocity proxy servers.

Compatibility

Protocolize is shipped with it's default data module which adds support for the following versions:

Minecraft Version Supported
1.8.x - 1.12.2 ❌ (Only with additional legacy module)
1.13 - 1.13.2 ✔️ (Sounds only with additional legacy module)
1.14 - 1.20.4 ✔️

Implemented packets by default:

Packet Class
Player block placement dev.simplix.protocolize.data.packets.BlockPlacement
Inventory click dev.simplix.protocolize.data.packets.ClickWindow
Close inventory dev.simplix.protocolize.data.packets.CloseWindow
Confirm transaction dev.simplix.protocolize.data.packets.ConfirmTransaction
Held item change dev.simplix.protocolize.data.packets.HeldItemChange
Named sound effect dev.simplix.protocolize.data.packets.NamedSoundEffect
Sound effect dev.simplix.protocolize.data.packets.SoundEffect
Open inventory dev.simplix.protocolize.data.packets.OpenWindow
Player look update dev.simplix.protocolize.data.packets.PlayerLook
Player position update dev.simplix.protocolize.data.packets.PlayerPosition
Player position and look update dev.simplix.protocolize.data.packets.PlayerPositionLook
Player slot update dev.simplix.protocolize.data.packets.SetSlot
Player item interaction dev.simplix.protocolize.data.packets.UseItem
Inventory items dev.simplix.protocolize.data.packets.WindowItems
Inventory properties dev.simplix.protocolize.data.packets.WindowProperty

You can easily add support for new packets and versions by installing modules.

FAQ

You're experiencing uncommon packet errors and have ViaVersion/ViaBackwards installed on your proxy? This is likely caused by some bugs in those plugins. We recomment you to only install them on your sub-server when usign Protocolize.

Get some help

For documentation take a look at the wiki pages. If you have questions feel free to join our discord server.

About

A lightweight BungeeCord / Velocity protocol framework supporting items

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 100.0%