That's actually a false as
public void encode(DataTransferInterfaceMessage msg, PacketBuffer buffer) {
buffer.writeVarIntArray(new int[]{territory, xCoord, yCoord, zCoord});
}
public DataTransferInterfaceMessage decode(PacketBuffer buffer) {
int[] array = buffer.readVarIntArray();
if(array.length!=4)
return new DataTransferInterfaceMessage(0,0,80,0);
return new DataTransferInterfaceMessage(array[0], array[1], array[2], array[3]);
}
they does not reference any data outside the method, hence they can be static
These data should be gained from the msg