private static void WriteLuaString(PacketBuilder builder, LuaValue value)
 {
     if (value.StringValue != null)
     {
         if (value.StringValue.Length < ushort.MaxValue)
         {
             builder.WriteCapped((byte)LuaType.String, 4);
             builder.WriteCompressed((ushort)value.StringValue.Length);
             builder.WriteStringWithoutLength(value.StringValue);
         }
         else
         {
             builder.WriteCapped((byte)LuaType.LongString, 4);
             builder.WriteCompressed((uint)value.StringValue.Length);
             builder.AlignToByteBoundary();
             builder.WriteStringWithoutLength(value.StringValue);
         }
     }
 }