rm_control
Loading...
Searching...
No Matches
protocol.h
Go to the documentation of this file.
1/*******************************************************************************
2 * BSD 3-Clause License
3 *
4 * Copyright (c) 2021, Qiayuan Liao
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions are met:
9 *
10 * * Redistributions of source code must retain the above copyright notice, this
11 * list of conditions and the following disclaimer.
12 *
13 * * Redistributions in binary form must reproduce the above copyright notice,
14 * this list of conditions and the following disclaimer in the documentation
15 * and/or other materials provided with the distribution.
16 *
17 * * Neither the name of the copyright holder nor the names of its
18 * contributors may be used to endorse or promote products derived from
19 * this software without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 * ARE
25 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
28 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
29 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
30 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 *******************************************************************************/
33
34//
35// Created by peter on 2021/5/17.
36//
37
38#pragma once
39#define __packed __attribute__((packed))
40
41#include <cstdint>
42
43namespace rm_referee
44{
45typedef enum
46{
53 DART_INFO_CMD = 0x0105,
56 ROBOT_POS_CMD = 0x0203,
57 BUFF_CMD = 0x0204,
74 CUSTOM_CONTROLLER_CMD = 0x0302, // controller
77 KEYBOARD_MOUSE_CMD = 0x0306, // 2026 table 1-42
79 MAP_SENTRY_CMD = 0x0307, // send sentry->aerial
80 CUSTOM_INFO_CMD = 0x0308, // robot -> custom controller text/info
84 CUSTOM_TO_ROBOT_CMD = CUSTOM_INFO_CMD, // legacy misnomer alias kept for compatibility
93
94typedef enum
95{
104 SENTRY_CMD = 0x0120,
105 RADAR_CMD = 0x0121,
106 BULLET_NUM_SHARE_CMD = 0x0200, // send robot->aerial
107 SENTRY_TO_RADAR_CMD = 0x0201, // send sentry->radar
108 RADAR_TO_SENTRY_CMD = 0x0202 // send radar->sentry
110
134
151
152typedef enum
153{
154 ADD = 1,
156 DELETE = 3
158
159typedef enum
160{
163 GREEN = 2,
166 PINK = 5,
167 CYAN = 6,
168 BLACK = 7,
169 WHITE = 8
171
183
184typedef enum
185{
188 MOVE_TO = 3
190
191typedef enum
192{
194 BOOST = 1,
196 ALL_OFF = 3
198
206
217
224
225/*****************************/
226
227typedef struct
228{
229 uint8_t sof;
230 uint16_t data_length;
231 uint8_t seq;
232 uint8_t crc_8;
233} __packed FrameHeader;
234
235typedef struct
236{
237 uint8_t game_type : 4;
238 uint8_t game_progress : 4;
241} __packed GameStatus;
242
243typedef struct
244{
245 uint8_t winner;
246} __packed GameResult;
247
248typedef struct
249{
257 uint16_t ally_base_hp;
260} __packed GameRobotHp;
261
262typedef struct
263{
264 uint8_t dart_belong;
266} __packed DartStatus;
267
268typedef struct
269{
270 uint8_t f_1_zone_status : 1;
272 uint8_t f_2_zone_status : 1;
274 uint8_t f_3_zone_status : 1;
276 uint8_t f_4_zone_status : 1;
278 uint8_t f_5_zone_status : 1;
280 uint8_t f_6_zone_status : 1;
286} __packed IcraBuffDebuffZoneStatus;
287
288typedef union
289{
290 uint32_t event_data;
291 struct
292 {
293 uint32_t supply_zone_state : 1;
294 uint32_t reserved_1 : 1;
300 uint32_t be_hit_time : 9;
301 uint32_t be_hit_target : 3;
305 uint32_t base_point_state : 1;
306 uint32_t reserved_2 : 2;
307 };
308} __packed EventData;
309
310typedef struct
311{
312 uint8_t reserved;
316} __packed SupplyProjectileAction;
317
318typedef struct
319{
320 uint8_t level;
322 uint8_t count;
323} __packed RefereeWarning;
324
325typedef struct
326{
331 uint16_t reserved : 7;
332} __packed DartInfo;
333
334typedef struct
335{
336 uint8_t robot_id;
337 uint8_t robot_level;
338 uint16_t remain_hp;
339 uint16_t max_hp;
347} __packed GameRobotStatus;
348
349typedef struct
350{
351 uint16_t reserved_1;
352 uint16_t reserved_2;
357} __packed PowerHeatData;
358
359typedef struct
360{
361 float x;
362 float y;
363 float yaw;
364} __packed GameRobotPos;
365
366typedef struct
367{
369 uint16_t cooling_buff;
372 uint16_t attack_buff;
374} __packed Buff;
375
376typedef struct
377{
378 uint8_t attack_time;
379} __packed AerialRobotEnergy;
380
381typedef struct
382{
383 uint8_t armor_id : 4;
384 uint8_t hurt_type : 4;
385} __packed RobotHurt;
386
387typedef struct
388{
389 uint8_t bullet_type;
390 uint8_t shooter_id;
391 uint8_t bullet_freq;
393} __packed ShootData;
394
395typedef struct
396{
401} __packed BulletAllowance;
402
403typedef struct
404{
405 uint32_t rfid_status;
407} __packed RfidStatus;
408
409typedef struct
410{
412 uint8_t reserved;
415} __packed DartClientCmd;
416
417/*********************** Interactive data between robots----0x0301 ********************/
418typedef struct
419{
420 uint16_t data_cmd_id;
421 uint16_t sender_id;
422 uint16_t receiver_id;
423} __packed InteractiveDataHeader;
424
426{
427 uint8_t graphic_id[3];
428 uint32_t operate_type : 3;
429 uint32_t graphic_type : 3;
430 uint32_t layer : 4;
431 uint32_t color : 4;
432 uint32_t start_angle : 9;
433 uint32_t end_angle : 9;
434 uint32_t width : 10;
435 uint32_t start_x : 11;
436 uint32_t start_y : 11;
437 uint32_t radius : 10;
438 uint32_t end_x : 11;
439 uint32_t end_y : 11;
440 bool operator==(const GraphConfig& config)
441 {
442 return (graphic_id[0] == (uint32_t)config.graphic_id[0] && graphic_id[1] == (uint32_t)config.graphic_id[1] &&
443 graphic_id[2] == (uint32_t)config.graphic_id[2] && operate_type == (uint32_t)config.operate_type &&
444 graphic_type == (uint32_t)config.graphic_type && layer == (uint32_t)config.layer &&
445 color == (uint32_t)config.color && start_angle == (uint32_t)config.start_angle &&
446 end_angle == (uint32_t)config.end_angle && width == (uint32_t)config.width &&
447 start_x == (uint32_t)config.start_x && start_y == (uint32_t)config.start_y &&
448 radius == (uint32_t)config.radius && end_x == (uint32_t)config.end_x && end_y == (uint32_t)config.end_y);
449 }
451 {
452 graphic_id[0] = (uint32_t)config.graphic_id[0];
453 graphic_id[1] = (uint32_t)config.graphic_id[1];
454 graphic_id[2] = (uint32_t)config.graphic_id[2];
455 operate_type = (uint32_t)config.operate_type;
456 graphic_type = (uint32_t)config.graphic_type;
457 layer = (uint32_t)config.layer;
458 color = (uint32_t)config.color;
459 start_angle = (uint32_t)config.start_angle;
460 end_angle = (uint32_t)config.end_angle;
461 width = (uint32_t)config.width;
462 start_x = (uint32_t)config.start_x;
463 start_y = (uint32_t)config.start_y;
464 radius = (uint32_t)config.radius;
465 end_x = (uint32_t)config.end_x;
466 end_y = (uint32_t)config.end_y;
467 return *this;
468 }
470
471typedef struct
472{
473 float hero_x;
474 float hero_y;
483} __packed RobotsPositionData;
484
485typedef union
486{
488 struct
489 {
506 };
507} __packed RadarMarkData;
508
509typedef struct
510{
511 InteractiveDataHeader header;
513 uint8_t content[30];
514} __packed CharacterData;
515
516typedef struct
517{
518 InteractiveDataHeader header;
519 GraphConfig config;
520} __packed SingleGraphData;
521
522typedef struct
523{
524 InteractiveDataHeader header;
525 GraphConfig config[2];
526} __packed DoubleGraphData;
527
528typedef struct
529{
530 InteractiveDataHeader header;
531 GraphConfig config[5];
532} __packed FiveGraphData;
533
534typedef struct
535{
536 InteractiveDataHeader header;
537 GraphConfig config[7];
538} __packed SevenGraphData;
539
540typedef struct
541{
542 InteractiveDataHeader header_data;
543 uint8_t data;
544} __packed InteractiveData;
545
546typedef union
547{
548 uint32_t sentry_cmd;
549 struct
550 {
551 uint32_t confirm_respawn : 1;
556 uint32_t posture_cmd : 3;
558 uint32_t reserved : 7;
559 };
560} __packed SentryCmd;
561
562typedef struct
563{
564 InteractiveDataHeader header;
565 SentryCmd sentry_cmd;
566} __packed SentryCmdInteractiveData;
567
568typedef union
569{
570 uint8_t radar_info;
571 struct
572 {
576 uint8_t can_modify_key : 1;
577 uint8_t reserved : 2;
578 };
579} __packed RadarInfo;
580
581typedef struct
582{
583 InteractiveDataHeader header;
584 RadarInfo radar_info;
585} __packed RadarInfoInteractiveData;
586
587typedef struct
588{
589 uint8_t radar_cmd;
591 uint8_t password_1;
592 uint8_t password_2;
593 uint8_t password_3;
594 uint8_t password_4;
595 uint8_t password_5;
596 uint8_t password_6;
597} __packed RadarCmd;
598
599typedef struct
600{
601 InteractiveDataHeader header;
602 RadarCmd radar_cmd;
603} __packed RadarCmdInteractiveData;
604
605typedef struct
606{
607 uint8_t data[30];
608} __packed CustomControllerData;
609
610typedef struct
611{
612 union
613 {
614 uint32_t sentry_info;
615 struct
616 {
622 uint32_t instant_respawn_cost : 10;
623 uint32_t reserved : 1;
624 };
625 };
626 union
627 {
629 struct
630 {
631 uint16_t is_out_of_war : 1;
633 uint16_t sentry_mode : 2;
636 };
637 };
638 union
639 {
641 struct
642 {
646 uint64_t reserved_1 : 8;
650 uint64_t reserved_2 : 8;
651 };
652 };
653} __packed SentryInfo;
654
655typedef struct
656{
661 uint16_t cmd_source;
662} __packed ClientMapSendData;
663
664typedef struct
665{
690} __packed ClientMapReceiveData;
691
692typedef struct
693{
706} __packed RadarWirelessEnemyRobotPos;
707
708typedef struct
709{
710 uint16_t hero_hp;
711 uint16_t engineer_hp;
714 uint16_t reserved;
715 uint16_t sentry_hp;
716} __packed RadarWirelessEnemyRobotHp;
717
718typedef struct
719{
725} __packed RadarWirelessEnemyProjectileAllowance;
726
727typedef struct
728{
730 uint16_t total_coin;
731 uint32_t field_status;
732} __packed RadarWirelessEnemyCoinAndFieldStatus;
733
734typedef struct
735{
767} __packed RadarWirelessEnemyRobotBuff;
768
769typedef struct
770{
771 uint8_t ascii_data[6];
772} __packed RadarWirelessEnemyCallSign;
773
774typedef struct
775{
776 InteractiveDataHeader header_data;
777 uint8_t target_robot_ID;
778 float target_position_x;
779 float target_position_y;
780} __packed SentryAttackingTargetData;
781
782typedef struct
783{
784 InteractiveDataHeader header_data;
785 uint8_t robot_ID;
789} __packed RadarToSentryData;
790
791typedef struct
792{
793 int16_t mouse_x;
794 int16_t mouse_y;
795 int16_t mouse_z;
799 uint16_t reserved;
800} __packed RobotCommandData;
801
802typedef struct
803{
804 uint8_t intention;
807 int8_t delta_x[49];
808 int8_t delta_y[49];
809 uint16_t sender_id;
810} __packed MapSentryData;
811
812typedef struct
813{
814 InteractiveDataHeader header_data;
817} __packed BulletNumData;
818
819typedef struct
820{
821 uint16_t sender_id;
822 uint16_t receiver_id;
823 uint8_t user_data[30];
824} __packed CustomInfo;
825
826typedef struct
827{
840} __packed PowerManagementSampleAndStatusData;
841
842typedef struct
843{
845 char string[31];
846} __packed PowerManagementInitializationExceptionData;
847
848typedef struct
849{
850 uint32_t r_0;
851 uint32_t r_1;
852 uint32_t r_2;
853 uint32_t r_3;
854 uint32_t r_12;
855 uint32_t LR;
856 uint32_t PC;
857 uint32_t PSR;
858} __packed PowerManagementSystemExceptionData;
859
860typedef struct
861{
862 char process_name[32];
863} __packed PowerManagementProcessStackOverflowData;
864
865typedef struct
866{
870} __packed PowerManagementUnknownExceptionData;
871
872/***********************Frame tail(CRC8_CRC16)********************************************/
873const uint8_t kCrc8Init = 0xff;
874const uint8_t kCrc8Table[256] = {
875 0x00, 0x5e, 0xbc, 0xe2, 0x61, 0x3f, 0xdd, 0x83, 0xc2, 0x9c, 0x7e, 0x20, 0xa3, 0xfd, 0x1f, 0x41, 0x9d, 0xc3, 0x21,
876 0x7f, 0xfc, 0xa2, 0x40, 0x1e, 0x5f, 0x01, 0xe3, 0xbd, 0x3e, 0x60, 0x82, 0xdc, 0x23, 0x7d, 0x9f, 0xc1, 0x42, 0x1c,
877 0xfe, 0xa0, 0xe1, 0xbf, 0x5d, 0x03, 0x80, 0xde, 0x3c, 0x62, 0xbe, 0xe0, 0x02, 0x5c, 0xdf, 0x81, 0x63, 0x3d, 0x7c,
878 0x22, 0xc0, 0x9e, 0x1d, 0x43, 0xa1, 0xff, 0x46, 0x18, 0xfa, 0xa4, 0x27, 0x79, 0x9b, 0xc5, 0x84, 0xda, 0x38, 0x66,
879 0xe5, 0xbb, 0x59, 0x07, 0xdb, 0x85, 0x67, 0x39, 0xba, 0xe4, 0x06, 0x58, 0x19, 0x47, 0xa5, 0xfb, 0x78, 0x26, 0xc4,
880 0x9a, 0x65, 0x3b, 0xd9, 0x87, 0x04, 0x5a, 0xb8, 0xe6, 0xa7, 0xf9, 0x1b, 0x45, 0xc6, 0x98, 0x7a, 0x24, 0xf8, 0xa6,
881 0x44, 0x1a, 0x99, 0xc7, 0x25, 0x7b, 0x3a, 0x64, 0x86, 0xd8, 0x5b, 0x05, 0xe7, 0xb9, 0x8c, 0xd2, 0x30, 0x6e, 0xed,
882 0xb3, 0x51, 0x0f, 0x4e, 0x10, 0xf2, 0xac, 0x2f, 0x71, 0x93, 0xcd, 0x11, 0x4f, 0xad, 0xf3, 0x70, 0x2e, 0xcc, 0x92,
883 0xd3, 0x8d, 0x6f, 0x31, 0xb2, 0xec, 0x0e, 0x50, 0xaf, 0xf1, 0x13, 0x4d, 0xce, 0x90, 0x72, 0x2c, 0x6d, 0x33, 0xd1,
884 0x8f, 0x0c, 0x52, 0xb0, 0xee, 0x32, 0x6c, 0x8e, 0xd0, 0x53, 0x0d, 0xef, 0xb1, 0xf0, 0xae, 0x4c, 0x12, 0x91, 0xcf,
885 0x2d, 0x73, 0xca, 0x94, 0x76, 0x28, 0xab, 0xf5, 0x17, 0x49, 0x08, 0x56, 0xb4, 0xea, 0x69, 0x37, 0xd5, 0x8b, 0x57,
886 0x09, 0xeb, 0xb5, 0x36, 0x68, 0x8a, 0xd4, 0x95, 0xcb, 0x29, 0x77, 0xf4, 0xaa, 0x48, 0x16, 0xe9, 0xb7, 0x55, 0x0b,
887 0x88, 0xd6, 0x34, 0x6a, 0x2b, 0x75, 0x97, 0xc9, 0x4a, 0x14, 0xf6, 0xa8, 0x74, 0x2a, 0xc8, 0x96, 0x15, 0x4b, 0xa9,
888 0xf7, 0xb6, 0xe8, 0x0a, 0x54, 0xd7, 0x89, 0x6b, 0x35,
889};
890const uint16_t kCrc16Init = 0xffff;
891const uint16_t wCRC_table[256] = {
892 0x0000, 0x1189, 0x2312, 0x329b, 0x4624, 0x57ad, 0x6536, 0x74bf, 0x8c48, 0x9dc1, 0xaf5a, 0xbed3, 0xca6c, 0xdbe5,
893 0xe97e, 0xf8f7, 0x1081, 0x0108, 0x3393, 0x221a, 0x56a5, 0x472c, 0x75b7, 0x643e, 0x9cc9, 0x8d40, 0xbfdb, 0xae52,
894 0xdaed, 0xcb64, 0xf9ff, 0xe876, 0x2102, 0x308b, 0x0210, 0x1399, 0x6726, 0x76af, 0x4434, 0x55bd, 0xad4a, 0xbcc3,
895 0x8e58, 0x9fd1, 0xeb6e, 0xfae7, 0xc87c, 0xd9f5, 0x3183, 0x200a, 0x1291, 0x0318, 0x77a7, 0x662e, 0x54b5, 0x453c,
896 0xbdcb, 0xac42, 0x9ed9, 0x8f50, 0xfbef, 0xea66, 0xd8fd, 0xc974, 0x4204, 0x538d, 0x6116, 0x709f, 0x0420, 0x15a9,
897 0x2732, 0x36bb, 0xce4c, 0xdfc5, 0xed5e, 0xfcd7, 0x8868, 0x99e1, 0xab7a, 0xbaf3, 0x5285, 0x430c, 0x7197, 0x601e,
898 0x14a1, 0x0528, 0x37b3, 0x263a, 0xdecd, 0xcf44, 0xfddf, 0xec56, 0x98e9, 0x8960, 0xbbfb, 0xaa72, 0x6306, 0x728f,
899 0x4014, 0x519d, 0x2522, 0x34ab, 0x0630, 0x17b9, 0xef4e, 0xfec7, 0xcc5c, 0xddd5, 0xa96a, 0xb8e3, 0x8a78, 0x9bf1,
900 0x7387, 0x620e, 0x5095, 0x411c, 0x35a3, 0x242a, 0x16b1, 0x0738, 0xffcf, 0xee46, 0xdcdd, 0xcd54, 0xb9eb, 0xa862,
901 0x9af9, 0x8b70, 0x8408, 0x9581, 0xa71a, 0xb693, 0xc22c, 0xd3a5, 0xe13e, 0xf0b7, 0x0840, 0x19c9, 0x2b52, 0x3adb,
902 0x4e64, 0x5fed, 0x6d76, 0x7cff, 0x9489, 0x8500, 0xb79b, 0xa612, 0xd2ad, 0xc324, 0xf1bf, 0xe036, 0x18c1, 0x0948,
903 0x3bd3, 0x2a5a, 0x5ee5, 0x4f6c, 0x7df7, 0x6c7e, 0xa50a, 0xb483, 0x8618, 0x9791, 0xe32e, 0xf2a7, 0xc03c, 0xd1b5,
904 0x2942, 0x38cb, 0x0a50, 0x1bd9, 0x6f66, 0x7eef, 0x4c74, 0x5dfd, 0xb58b, 0xa402, 0x9699, 0x8710, 0xf3af, 0xe226,
905 0xd0bd, 0xc134, 0x39c3, 0x284a, 0x1ad1, 0x0b58, 0x7fe7, 0x6e6e, 0x5cf5, 0x4d7c, 0xc60c, 0xd785, 0xe51e, 0xf497,
906 0x8028, 0x91a1, 0xa33a, 0xb2b3, 0x4a44, 0x5bcd, 0x6956, 0x78df, 0x0c60, 0x1de9, 0x2f72, 0x3efb, 0xd68d, 0xc704,
907 0xf59f, 0xe416, 0x90a9, 0x8120, 0xb3bb, 0xa232, 0x5ac5, 0x4b4c, 0x79d7, 0x685e, 0x1ce1, 0x0d68, 0x3ff3, 0x2e7a,
908 0xe70e, 0xf687, 0xc41c, 0xd595, 0xa12a, 0xb0a3, 0x8238, 0x93b1, 0x6b46, 0x7acf, 0x4854, 0x59dd, 0x2d62, 0x3ceb,
909 0x0e70, 0x1ff9, 0xf78f, 0xe606, 0xd49d, 0xc514, 0xb1ab, 0xa022, 0x92b9, 0x8330, 0x7bc7, 0x6a4e, 0x58d5, 0x495c,
910 0x3de3, 0x2c6a, 0x1ef1, 0x0f78
911};
912} // namespace rm_referee
Definition data.h:109
PowerManagementStateMachine
Definition protocol.h:192
@ CHARGE
Definition protocol.h:193
@ BOOST
Definition protocol.h:194
@ ALL_OFF
Definition protocol.h:196
@ NORMAL
Definition protocol.h:195
const uint8_t kCrc8Init
Definition protocol.h:873
GraphType
Definition protocol.h:173
@ STRING
Definition protocol.h:181
@ RECTANGLE
Definition protocol.h:175
@ CIRCLE
Definition protocol.h:176
@ ARC
Definition protocol.h:178
@ LINE
Definition protocol.h:174
@ ELLIPSE
Definition protocol.h:177
@ INT_NUM
Definition protocol.h:180
@ FLOAT_NUM
Definition protocol.h:179
RefereeCmdId
Definition protocol.h:46
@ BULLET_REMAINING_CMD
Definition protocol.h:60
@ INTERACTIVE_DATA_CMD
Definition protocol.h:73
@ ROBOT_HURT_CMD
Definition protocol.h:58
@ SHOOT_DATA_CMD
Definition protocol.h:59
@ SENTRY_INFO_CMD
Definition protocol.h:65
@ ROBOT_POS_CMD
Definition protocol.h:56
@ MAP_SENTRY_CMD
Definition protocol.h:79
@ CUSTOM_CLIENT_CMD
Definition protocol.h:78
@ CLIENT_MAP_CMD
Definition protocol.h:76
@ CUSTOM_CLIENT_TO_ROBOT_CMD
Definition protocol.h:83
@ POWER_MANAGEMENT_UNKNOWN_EXCEPTION_CMD
Definition protocol.h:91
@ RADAR_WIRELESS_ENEMY_ROBOT_BUFF_CMD
Definition protocol.h:71
@ BUFF_CMD
Definition protocol.h:57
@ ROBOTS_POS_CMD
Definition protocol.h:63
@ POWER_MANAGEMENT_INITIALIZATION_EXCEPTION_CMD
Definition protocol.h:88
@ ROBOT_TO_CUSTOM_CONTROLLER_CMD
Definition protocol.h:81
@ DART_INFO_CMD
Definition protocol.h:53
@ ROBOT_RFID_STATUS_CMD
Definition protocol.h:61
@ ROBOT_TO_CUSTOM_CMD
Definition protocol.h:85
@ KEYBOARD_MOUSE_CMD
Definition protocol.h:77
@ RADAR_MARK_CMD
Definition protocol.h:64
@ FIELD_EVENTS_CMD
Definition protocol.h:50
@ SUPPLY_PROJECTILE_ACTION_CMD
Definition protocol.h:51
@ RADAR_WIRELESS_ENEMY_COIN_AND_FIELD_STATUS_CMD
Definition protocol.h:70
@ CUSTOM_INFO_CMD
Definition protocol.h:80
@ REFEREE_WARNING_CMD
Definition protocol.h:52
@ GAME_RESULT_CMD
Definition protocol.h:48
@ POWER_MANAGEMENT_SYSTEM_EXCEPTION_CMD
Definition protocol.h:89
@ TARGET_POS_CMD
Definition protocol.h:75
@ POWER_MANAGEMENT_PROCESS_STACK_OVERFLOW_CMD
Definition protocol.h:90
@ RADAR_WIRELESS_ENEMY_ROBOT_POS_CMD
Definition protocol.h:67
@ CUSTOM_CONTROLLER_CMD
Definition protocol.h:74
@ CUSTOM_TO_ROBOT_CMD
Definition protocol.h:84
@ GAME_ROBOT_HP_CMD
Definition protocol.h:49
@ ROBOT_TO_CUSTOM_CLIENT_CMD
Definition protocol.h:82
@ RADAR_WIRELESS_ENEMY_ROBOT_HP_CMD
Definition protocol.h:68
@ RADAR_INFO_CMD
Definition protocol.h:66
@ RADAR_WIRELESS_ENEMY_PROJECTILE_ALLOWANCE_CMD
Definition protocol.h:69
@ ROBOT_TO_CUSTOM_CMD_2
Definition protocol.h:86
@ POWER_HEAT_DATA_CMD
Definition protocol.h:55
@ GAME_STATUS_CMD
Definition protocol.h:47
@ RADAR_WIRELESS_ENEMY_CALL_SIGN_CMD
Definition protocol.h:72
@ DART_CLIENT_CMD
Definition protocol.h:62
@ POWER_MANAGEMENT_SAMPLE_AND_STATUS_DATA_CMD
Definition protocol.h:87
@ ROBOT_STATUS_CMD
Definition protocol.h:54
DataCmdId
Definition protocol.h:95
@ SENTRY_TO_RADAR_CMD
Definition protocol.h:107
@ CLIENT_GRAPH_DELETE_CMD
Definition protocol.h:98
@ CLIENT_GRAPH_SEVEN_CMD
Definition protocol.h:102
@ CLIENT_GRAPH_SINGLE_CMD
Definition protocol.h:99
@ SENTRY_CMD
Definition protocol.h:104
@ RADAR_CMD
Definition protocol.h:105
@ RADAR_TO_SENTRY_CMD
Definition protocol.h:108
@ ROBOT_INTERACTIVE_CMD_MAX
Definition protocol.h:97
@ BULLET_NUM_SHARE_CMD
Definition protocol.h:106
@ ROBOT_INTERACTIVE_CMD_MIN
Definition protocol.h:96
@ CLIENT_CHARACTER_CMD
Definition protocol.h:103
@ CLIENT_GRAPH_FIVE_CMD
Definition protocol.h:101
@ CLIENT_GRAPH_DOUBLE_CMD
Definition protocol.h:100
const uint8_t kCrc8Table[256]
Definition protocol.h:874
struct rm_referee::GraphConfig __packed
SentryIntention
Definition protocol.h:185
@ MOVE_TO
Definition protocol.h:188
@ ATTACK_IN
Definition protocol.h:186
@ DEFEND_IN
Definition protocol.h:187
GraphColor
Definition protocol.h:160
@ PINK
Definition protocol.h:166
@ WHITE
Definition protocol.h:169
@ YELLOW
Definition protocol.h:162
@ BLACK
Definition protocol.h:168
@ ORANGE
Definition protocol.h:164
@ PURPLE
Definition protocol.h:165
@ MAIN_COLOR
Definition protocol.h:161
@ CYAN
Definition protocol.h:167
@ GREEN
Definition protocol.h:163
const uint16_t kCrc16Init
Definition protocol.h:890
PowerManagementProtectionInfo
Definition protocol.h:200
@ NO_PROBLEM
Definition protocol.h:201
@ REFEREE_DISCONNECT
Definition protocol.h:204
@ REFEREE_POWER_DOWN
Definition protocol.h:203
@ HIGH_CURRENT
Definition protocol.h:202
RobotId
Definition protocol.h:112
@ BLUE_RADAR
Definition protocol.h:130
@ BLUE_STANDARD_4
Definition protocol.h:126
@ BLUE_ENGINEER
Definition protocol.h:124
@ RED_BASE
Definition protocol.h:122
@ RED_STANDARD_4
Definition protocol.h:116
@ BLUE_SENTRY
Definition protocol.h:129
@ RED_SENTRY
Definition protocol.h:119
@ RED_STANDARD_5
Definition protocol.h:117
@ BLUE_STANDARD_3
Definition protocol.h:125
@ BLUE_BASE
Definition protocol.h:132
@ BLUE_OUTPOST
Definition protocol.h:131
@ RED_STANDARD_3
Definition protocol.h:115
@ RED_AERIAL
Definition protocol.h:118
@ RED_ENGINEER
Definition protocol.h:114
@ RED_OUTPOST
Definition protocol.h:121
@ BLUE_HERO
Definition protocol.h:123
@ BLUE_AERIAL
Definition protocol.h:128
@ BLUE_STANDARD_5
Definition protocol.h:127
@ RED_RADAR
Definition protocol.h:120
@ RED_HERO
Definition protocol.h:113
const uint16_t wCRC_table[256]
Definition protocol.h:891
PowerManagementTopology
Definition protocol.h:219
@ CHARGE_AND_BOOST
Definition protocol.h:221
@ PASS_THROUGH
Definition protocol.h:220
@ SWITCHES_ALL_OFF
Definition protocol.h:222
ClientId
Definition protocol.h:136
@ RED_ENGINEER_CLIENT
Definition protocol.h:138
@ REFEREE_SERVER
Definition protocol.h:149
@ BLUE_STANDARD_5_CLIENT
Definition protocol.h:147
@ RED_HERO_CLIENT
Definition protocol.h:137
@ BLUE_STANDARD_4_CLIENT
Definition protocol.h:146
@ RED_AERIAL_CLIENT
Definition protocol.h:142
@ RED_STANDARD_4_CLIENT
Definition protocol.h:140
@ BLUE_AERIAL_CLIENT
Definition protocol.h:148
@ BLUE_STANDARD_3_CLIENT
Definition protocol.h:145
@ RED_STANDARD_3_CLIENT
Definition protocol.h:139
@ BLUE_HERO_CLIENT
Definition protocol.h:143
@ RED_STANDARD_5_CLIENT
Definition protocol.h:141
@ BLUE_ENGINEER_CLIENT
Definition protocol.h:144
PowerManagementResetReason
Definition protocol.h:208
@ UNKNOWN
Definition protocol.h:215
@ LOW_VOLTAGE
Definition protocol.h:214
@ INDEPENDENT_WATCHDOG
Definition protocol.h:212
@ EXTERNAL_BUTTON
Definition protocol.h:210
@ POWER_ON
Definition protocol.h:209
@ WINDOW_WATCHDOG
Definition protocol.h:213
@ SOFT
Definition protocol.h:211
GraphOperation
Definition protocol.h:153
@ DELETE
Definition protocol.h:156
@ UPDATE
Definition protocol.h:155
@ ADD
Definition protocol.h:154
Definition protocol.h:866
int8_t error_code
Definition protocol.h:844
uint16_t chassis_power_buffer
Definition protocol.h:354
uint32_t r_0
Definition protocol.h:850
float engineer_x
Definition protocol.h:475
uint32_t can_exchange_instant_respawn
Definition protocol.h:621
uint8_t infantry_4_negative_defense_buff
Definition protocol.h:754
uint8_t remaining_energy
Definition protocol.h:373
uint8_t enemy_in_double_vulnerability
Definition protocol.h:574
float x
Definition protocol.h:361
uint16_t infantry_3_hp
Definition protocol.h:712
uint8_t engineer_negative_defense_buff
Definition protocol.h:744
uint8_t sentry_defense_buff
Definition protocol.h:758
uint16_t bullet_allowance_num_17_mm
Definition protocol.h:397
uint8_t capacity_recent_charge_power_low_8_bit
Definition protocol.h:833
uint16_t coin_remaining_num
Definition protocol.h:399
uint16_t ally_1_robot_hp
Definition protocol.h:250
uint16_t ally_2_robot_hp
Definition protocol.h:251
uint8_t intention
Definition protocol.h:804
uint64_t sentry_info_3
Definition protocol.h:640
uint16_t data_cmd_id
Definition protocol.h:420
uint16_t sentry_position_y
Definition protocol.h:705
uint16_t own_sentry_special_mark
Definition protocol.h:501
uint8_t infantry_3_main_status
Definition protocol.h:764
uint16_t enemy_aerial_special_mark
Definition protocol.h:494
uint16_t max_hp
Definition protocol.h:339
uint16_t opponent_infantry_3_position_y
Definition protocol.h:671
uint8_t capacity_recent_charge_power_high_8_bit
Definition protocol.h:832
GraphConfig config
Definition protocol.h:512
uint16_t enemy_aerial_in_countermeasure
Definition protocol.h:503
uint16_t sentry_projectile_allowance
Definition protocol.h:724
uint32_t LR
Definition protocol.h:855
uint32_t r_2
Definition protocol.h:852
uint8_t state_machine_running_state
Definition protocol.h:839
float yaw
Definition protocol.h:363
uint8_t robot_id
Definition protocol.h:336
uint8_t capacity_remain_charge_low_8_bit
Definition protocol.h:835
uint8_t data
Definition protocol.h:543
uint8_t state_machine_before_reset_mode
Definition protocol.h:869
uint64_t defensive_posture_remaining_time_before_weakening
Definition protocol.h:644
uint8_t supply_projectile_num
Definition protocol.h:315
uint16_t cmd_source
Definition protocol.h:661
uint8_t winner
Definition protocol.h:245
uint8_t f_3_zone_status
Definition protocol.h:274
uint16_t blue_2_bullet_left
Definition protocol.h:285
uint16_t enemy_engineer_vulnerable
Definition protocol.h:491
uint16_t ally_sentry_position_y
Definition protocol.h:689
uint16_t hero_projectile_allowance
Definition protocol.h:720
uint16_t hero_cooling_buff
Definition protocol.h:737
uint16_t ally_sentry_position_x
Definition protocol.h:688
uint16_t is_out_of_war
Definition protocol.h:631
uint8_t count
Definition protocol.h:322
uint16_t can_activate_energy_mechanism
Definition protocol.h:634
uint8_t robot_ID
Definition protocol.h:785
uint8_t password_3
Definition protocol.h:593
uint16_t own_aerial_targeted_by_enemy_radar
Definition protocol.h:504
uint32_t reserved_2
Definition protocol.h:306
uint16_t sentry_hp
Definition protocol.h:715
uint32_t rfid_status
Definition protocol.h:405
uint16_t infantry_4_position_x
Definition protocol.h:700
uint8_t bullet_42_mm_num
Definition protocol.h:815
uint16_t mark_progress
Definition protocol.h:487
uint8_t password_4
Definition protocol.h:594
bool engineer_marked
Definition protocol.h:788
uint8_t game_type
Definition protocol.h:237
uint16_t infantry_3_attack_buff
Definition protocol.h:750
uint16_t dart_current_target
Definition protocol.h:330
uint8_t mains_power_gimbal_output
Definition protocol.h:344
uint8_t f_1_zone_status
Definition protocol.h:270
int16_t damage_difference
Definition protocol.h:254
uint8_t f_6_zone_buff_debuff_status
Definition protocol.h:281
uint8_t rfid_status_2
Definition protocol.h:406
uint16_t red_1_bullet_left
Definition protocol.h:282
uint32_t sentry_info
Definition protocol.h:614
uint8_t game_progress
Definition protocol.h:238
uint16_t infantry_3_cooling_buff
Definition protocol.h:747
uint32_t sentry_cmd
Definition protocol.h:548
uint16_t shooter_id_1_17_mm_cooling_heat
Definition protocol.h:355
uint8_t chassis_power_low_8_bit
Definition protocol.h:829
uint16_t enemy_sentry_vulnerable
Definition protocol.h:495
float target_position_x
Definition protocol.h:657
uint16_t enemy_aerial_targeted_by_own_radar
Definition protocol.h:502
uint32_t PSR
Definition protocol.h:857
uint16_t latest_launch_cmd_time
Definition protocol.h:414
uint64_t reserved_2
Definition protocol.h:650
uint8_t capacity_expect_charge_power
Definition protocol.h:836
uint16_t ally_infantry_4_position_y
Definition protocol.h:685
uint32_t confirm_respawn
Definition protocol.h:551
uint16_t own_hero_special_mark
Definition protocol.h:496
uint8_t hero_recovery_buff
Definition protocol.h:736
uint8_t infantry_3_negative_defense_buff
Definition protocol.h:749
uint16_t dart_last_aim_state
Definition protocol.h:328
uint16_t remain_hp
Definition protocol.h:338
uint8_t password_1
Definition protocol.h:591
uint32_t event_data
Definition protocol.h:290
uint32_t r_3
Definition protocol.h:853
uint8_t infantry_3_recovery_buff
Definition protocol.h:746
uint8_t power_management_topology
Definition protocol.h:837
uint8_t f_4_zone_buff_debuff_status
Definition protocol.h:277
uint8_t hurt_type
Definition protocol.h:384
uint8_t infantry_3_defense_buff
Definition protocol.h:748
uint8_t chassis_power_high_8_bit
Definition protocol.h:828
uint16_t ally_infantry_4_position_x
Definition protocol.h:684
uint8_t recovery_buff
Definition protocol.h:368
float hero_x
Definition protocol.h:473
int16_t mouse_x
Definition protocol.h:793
uint16_t red_2_bullet_left
Definition protocol.h:283
float reserved_1
Definition protocol.h:481
uint8_t abnormal_reset_reason
Definition protocol.h:867
uint8_t supply_projectile_step
Definition protocol.h:314
uint16_t opponent_aerial_position_y
Definition protocol.h:675
uint16_t ally_4_robot_hp
Definition protocol.h:253
uint16_t infantry_4_position_y
Definition protocol.h:701
uint8_t dart_launch_opening_status
Definition protocol.h:411
uint32_t large_power_rune_state
Definition protocol.h:297
uint32_t confirm_instant_respawn
Definition protocol.h:552
uint16_t opponent_infantry_4_position_x
Definition protocol.h:672
uint16_t enemy_outpost_hp
Definition protocol.h:258
uint8_t f_3_zone_buff_debuff_status
Definition protocol.h:275
uint16_t hero_position_x
Definition protocol.h:694
float reserved_2
Definition protocol.h:482
uint32_t can_confirm_free_respawn
Definition protocol.h:620
uint8_t command_keyboard
Definition protocol.h:659
float engineer_y
Definition protocol.h:476
uint16_t chassis_power_limit
Definition protocol.h:342
int16_t mouse_z
Definition protocol.h:795
uint8_t crc_8
Definition protocol.h:232
uint8_t f_6_zone_status
Definition protocol.h:280
uint8_t defence_buff
Definition protocol.h:370
uint8_t bullet_17_mm_num
Definition protocol.h:816
uint64_t sync_time_stamp
Definition protocol.h:240
uint16_t own_standard_3_special_mark
Definition protocol.h:498
uint16_t bullet_allowance_num_42_mm
Definition protocol.h:398
uint16_t shooter_cooling_limit
Definition protocol.h:341
RadarCmd radar_cmd
Definition protocol.h:602
uint8_t shooter_id
Definition protocol.h:390
uint32_t reserved
Definition protocol.h:558
uint8_t mains_power_shooter_output
Definition protocol.h:346
uint8_t f_2_zone_status
Definition protocol.h:272
uint16_t ally_base_hp
Definition protocol.h:257
uint16_t engineer_attack_buff
Definition protocol.h:745
uint8_t power_management_protection_info
Definition protocol.h:838
uint8_t f_4_zone_status
Definition protocol.h:276
uint16_t keyboard_value
Definition protocol.h:798
uint64_t enhanced_mobile_posture_remaining_time
Definition protocol.h:649
uint16_t hero_position_y
Definition protocol.h:695
uint8_t f_2_zone_buff_debuff_status
Definition protocol.h:273
uint16_t enemy_standard_3_vulnerable
Definition protocol.h:492
uint8_t bullet_freq
Definition protocol.h:391
uint32_t trapezoidal_elevated_ground_state
Definition protocol.h:299
uint8_t infantry_4_defense_buff
Definition protocol.h:753
uint16_t opponent_sentry_position_x
Definition protocol.h:676
uint32_t small_power_rune_state
Definition protocol.h:296
uint8_t sof
Definition protocol.h:229
uint32_t instant_respawn_cost
Definition protocol.h:622
uint16_t enemy_hero_vulnerable
Definition protocol.h:490
uint16_t ally_aerial_position_y
Definition protocol.h:687
uint16_t ally_outpost_hp
Definition protocol.h:256
uint16_t ally_infantry_3_position_y
Definition protocol.h:683
float standard_4_x
Definition protocol.h:479
uint32_t be_hit_target
Definition protocol.h:301
uint8_t own_encryption_level
Definition protocol.h:575
uint8_t sentry_recovery_buff
Definition protocol.h:756
uint32_t remote_hp_exchange_success_cnt
Definition protocol.h:619
uint8_t infantry_4_recovery_buff
Definition protocol.h:751
uint16_t attack_buff
Definition protocol.h:372
uint64_t reserved_1
Definition protocol.h:646
uint8_t hero_negative_defense_buff
Definition protocol.h:739
uint32_t reserved_1
Definition protocol.h:294
uint16_t aerial_position_y
Definition protocol.h:703
uint32_t exchanged_bullet_allowance
Definition protocol.h:617
uint8_t password_2
Definition protocol.h:592
uint64_t offensive_posture_remaining_time_before_weakening
Definition protocol.h:643
uint8_t engineer_recovery_buff
Definition protocol.h:741
uint16_t sentry_cooling_buff
Definition protocol.h:757
uint8_t seq
Definition protocol.h:231
uint32_t PC
Definition protocol.h:856
uint32_t confirm_rune_activating
Definition protocol.h:557
uint16_t infantry_4_attack_buff
Definition protocol.h:755
uint8_t chassis_expect_power_high_8_bit
Definition protocol.h:830
float hero_y
Definition protocol.h:474
uint8_t can_modify_key
Definition protocol.h:576
uint8_t sentry_main_status
Definition protocol.h:766
SentryCmd sentry_cmd
Definition protocol.h:565
uint16_t stage_remaining_time
Definition protocol.h:265
uint8_t level
Definition protocol.h:320
uint8_t sentry_negative_defense_buff
Definition protocol.h:759
uint16_t opponent_infantry_3_position_x
Definition protocol.h:670
uint16_t infantry_4_cooling_buff
Definition protocol.h:752
uint8_t engineer_main_status
Definition protocol.h:763
uint16_t infantry_3_projectile_allowance
Definition protocol.h:721
uint16_t enemy_base_hp
Definition protocol.h:259
uint16_t ally_7_robot_hp
Definition protocol.h:255
uint8_t capacity_remain_charge_high_8_bit
Definition protocol.h:834
float standard_3_x
Definition protocol.h:477
uint16_t remaining_bullets_can_supply
Definition protocol.h:632
uint16_t own_aerial_special_mark
Definition protocol.h:500
uint16_t enemy_total_hit_received
Definition protocol.h:329
uint16_t data_length
Definition protocol.h:230
uint16_t sentry_info_2
Definition protocol.h:628
uint16_t infantry_4_projectile_allowance
Definition protocol.h:722
float standard_3_y
Definition protocol.h:478
uint16_t aerial_position_x
Definition protocol.h:702
uint16_t ally_engineer_position_x
Definition protocol.h:680
uint16_t ally_engineer_position_y
Definition protocol.h:681
uint16_t projectile_allowance_fortress
Definition protocol.h:400
uint16_t shooter_id_1_42_mm_cooling_heat
Definition protocol.h:356
uint16_t remaining_coin
Definition protocol.h:729
uint16_t ally_aerial_position_x
Definition protocol.h:686
uint16_t start_position_x
Definition protocol.h:805
uint16_t sentry_attack_buff
Definition protocol.h:760
uint64_t mobile_posture_remaining_time_before_weakening
Definition protocol.h:645
uint16_t ally_3_robot_hp
Definition protocol.h:252
uint32_t supply_zone_state_rmul
Definition protocol.h:295
uint16_t opponent_hero_position_y
Definition protocol.h:667
uint32_t posture_cmd
Definition protocol.h:556
uint8_t reserved
Definition protocol.h:312
uint16_t infantry_3_position_y
Definition protocol.h:699
uint32_t field_status
Definition protocol.h:731
uint32_t fortress_point_state
Definition protocol.h:303
uint16_t hero_hp
Definition protocol.h:710
uint16_t cooling_buff
Definition protocol.h:369
uint16_t receiver_id
Definition protocol.h:422
int8_t right_button_down
Definition protocol.h:797
uint32_t remote_hp_exchange_req_cnt
Definition protocol.h:555
uint16_t opponent_sentry_position_y
Definition protocol.h:677
uint8_t f_5_zone_buff_debuff_status
Definition protocol.h:279
uint64_t enhanced_defensive_posture_remaining_time
Definition protocol.h:648
uint8_t robot_level
Definition protocol.h:337
uint16_t sentry_position_x
Definition protocol.h:704
uint8_t chassis_expect_power_low_8_bit
Definition protocol.h:831
uint8_t password_5
Definition protocol.h:595
uint16_t opponent_engineer_position_y
Definition protocol.h:669
int16_t mouse_y
Definition protocol.h:794
uint16_t own_standard_4_special_mark
Definition protocol.h:499
uint8_t armor_id
Definition protocol.h:383
uint16_t enemy_standard_4_vulnerable
Definition protocol.h:493
int8_t left_button_down
Definition protocol.h:796
uint16_t shooter_cooling_rate
Definition protocol.h:340
uint16_t aerial_projectile_allowance
Definition protocol.h:723
float reserved_3
Definition protocol.h:353
uint32_t bullet_exchange_target
Definition protocol.h:553
InteractiveDataHeader header
Definition protocol.h:511
uint8_t password_cmd
Definition protocol.h:590
uint8_t radar_info
Definition protocol.h:570
uint8_t hero_defense_buff
Definition protocol.h:738
uint16_t engineer_hp
Definition protocol.h:711
uint8_t supply_robot_id
Definition protocol.h:313
uint16_t opponent_aerial_position_x
Definition protocol.h:674
uint16_t opponent_engineer_position_x
Definition protocol.h:668
uint16_t ally_hero_position_y
Definition protocol.h:679
uint16_t infantry_3_position_x
Definition protocol.h:698
uint16_t engineer_position_y
Definition protocol.h:697
uint16_t hero_attack_buff
Definition protocol.h:740
uint8_t f_1_zone_buff_debuff_status
Definition protocol.h:271
uint8_t power_management_before_reset_topology
Definition protocol.h:868
uint16_t engineer_position_x
Definition protocol.h:696
uint32_t r_1
Definition protocol.h:851
uint8_t engineer_defense_buff
Definition protocol.h:743
uint32_t base_point_state
Definition protocol.h:305
uint32_t outpost_point_state
Definition protocol.h:304
uint8_t hero_main_status
Definition protocol.h:762
uint16_t sentry_mode
Definition protocol.h:633
uint32_t supply_zone_state
Definition protocol.h:293
uint16_t ally_hero_position_x
Definition protocol.h:678
float y
Definition protocol.h:362
float target_position_y
Definition protocol.h:658
uint16_t opponent_infantry_4_position_y
Definition protocol.h:673
uint32_t remote_bullet_exchange_success_cnt
Definition protocol.h:618
uint16_t total_coin
Definition protocol.h:730
uint8_t attack_time
Definition protocol.h:378
uint16_t start_position_y
Definition protocol.h:806
uint32_t be_hit_time
Definition protocol.h:300
float position_x
Definition protocol.h:786
uint16_t blue_1_bullet_left
Definition protocol.h:284
uint16_t own_aerial_in_countermeasure
Definition protocol.h:505
uint16_t own_engineer_special_mark
Definition protocol.h:497
uint32_t r_12
Definition protocol.h:854
float bullet_speed
Definition protocol.h:392
uint8_t infantry_4_main_status
Definition protocol.h:765
uint8_t dart_remaining_time
Definition protocol.h:327
uint32_t central_elevated_ground_state
Definition protocol.h:298
RadarInfo radar_info
Definition protocol.h:584
uint16_t opponent_hero_position_x
Definition protocol.h:666
uint8_t target_robot_ID
Definition protocol.h:660
uint8_t bullet_type
Definition protocol.h:389
uint64_t enhanced_offensive_posture_remaining_time
Definition protocol.h:647
uint8_t dart_belong
Definition protocol.h:264
uint16_t infantry_4_hp
Definition protocol.h:713
uint8_t password_6
Definition protocol.h:596
uint8_t double_vulnerability_chances
Definition protocol.h:573
uint32_t central_point_state
Definition protocol.h:302
uint8_t sentry_posture
Definition protocol.h:761
uint8_t mains_power_chassis_output
Definition protocol.h:345
uint8_t vulnerability_buff
Definition protocol.h:371
uint16_t sender_id
Definition protocol.h:421
uint8_t radar_cmd
Definition protocol.h:589
uint16_t target_change_time
Definition protocol.h:413
uint8_t foul_robot_id
Definition protocol.h:321
float position_y
Definition protocol.h:787
uint16_t reserved_2
Definition protocol.h:352
uint8_t f_5_zone_status
Definition protocol.h:278
InteractiveDataHeader header_data
Definition protocol.h:542
uint16_t ally_infantry_3_position_x
Definition protocol.h:682
uint16_t reserved_1
Definition protocol.h:351
uint16_t stage_remain_time
Definition protocol.h:239
float standard_4_y
Definition protocol.h:480
float bullet_speed_limit
Definition protocol.h:343
uint16_t engineer_cooling_buff
Definition protocol.h:742
uint32_t remote_bullet_exchange_req_cnt
Definition protocol.h:554
uint16_t is_enhanced_posture
Definition protocol.h:635
Definition protocol.h:426
uint32_t start_x
Definition protocol.h:435
uint32_t start_angle
Definition protocol.h:432
uint32_t radius
Definition protocol.h:437
uint32_t color
Definition protocol.h:431
uint8_t graphic_id[3]
Definition protocol.h:427
bool operator==(const GraphConfig &config)
Definition protocol.h:440
uint32_t end_x
Definition protocol.h:438
uint32_t width
Definition protocol.h:434
uint32_t end_y
Definition protocol.h:439
uint32_t graphic_type
Definition protocol.h:429
uint32_t start_y
Definition protocol.h:436
uint32_t end_angle
Definition protocol.h:433
uint32_t operate_type
Definition protocol.h:428
GraphConfig & operator=(const GraphConfig &config)
Definition protocol.h:450
uint32_t layer
Definition protocol.h:430