Skip to content

Message Channels

Aeltumn edited this page Apr 16, 2024 · 3 revisions

Message Channels

Noxesium communicates with the server over the plugin messaging channel, but through the use of Fabric Packets. This implementation means packets are defined in Noxesium's code as they would be in Minecrafts source code. Clientbound and serverbound packets are implemented separately since both only need to be handled on the client-side. Noxesium currently sends and receives all packets on the noxesium-v2 namespace. This version identifier should not change often, but it changes whenever any changes in Mojang's packet structure require it to.

If you are interested in understanding what packets Noxesium can receive and which it can send, feel free to look through the network.clientbound and network.serverbound packages. Packets are documented in their respective classes and should offer insights into their capabilities through the variable names and constructor arguments.

Server Rules

Server Rules are a special system similar to Game Rules but able to be modified whenever desired. Server Rule settings are cleared whenever a player disconnects from a server. These values allow a server to affect the client's state easily. Below is a list of every server rule currently available and their data format. While server rules have packets for setting each individual server rule can decide how the packet is decoded. As such, a detailed breakdown is provided for each individual rule and how it interprets the incoming packet.

Disable Auto Spin Attack. Disables colliding with other entities while riptiding. This also prevents the spin attack from dealing any damage to entities moved through.

Field Name Field Type Notes
Index VarInt 0
Value Boolean false by default.

Held Item Name Offset. Moves the item tooltip text in the action bar vertically. Positive values move it up.

Field Name Field Type Notes
Index VarInt 3
Offset VarInt 0 by default.

Camera Lock. Makes the client unable to move their camera.

Field Name Field Type Notes
Index VarInt 4
Locked Boolean false by default.

Custom Music. Disables vanilla music and adds two new sound categories: Core Music and Game Music.

Field Name Field Type Notes
Index VarInt 5
Enabled Boolean false by default.

Disable Boat Collisions. Disables boats colliding with other entities. Similar modification is recommended on the server side to ensure behaviour congruity.

Field Name Field Type Notes
Index VarInt 6
Value Boolean false by default.

There exist more server rules, you can find more information about each of them in the code.

Clone this wiki locally