syntax = "proto2"; message GameCommand { enum GameCommandType { KICK_FROM_GAME = 1000; LEAVE_GAME = 1001; GAME_SAY = 1002; SHUFFLE = 1003; MULLIGAN = 1004; ROLL_DIE = 1005; DRAW_CARDS = 1006; UNDO_DRAW = 1007; FLIP_CARD = 1008; ATTACH_CARD = 1009; CREATE_TOKEN = 1010; CREATE_ARROW = 1011; DELETE_ARROW = 1012; SET_CARD_ATTR = 1013; SET_CARD_COUNTER = 1014; INC_CARD_COUNTER = 1015; READY_START = 1016; CONCEDE = 1017; INC_COUNTER = 1018; CREATE_COUNTER = 1019; SET_COUNTER = 1020; DEL_COUNTER = 1021; NEXT_TURN = 1022; SET_ACTIVE_PHASE = 1023; DUMP_ZONE = 1024; STOP_DUMP_ZONE = 1025; // deprecated REVEAL_CARDS = 1026; MOVE_CARD = 1027; SET_SIDEBOARD_PLAN = 1028; DECK_SELECT = 1029; SET_SIDEBOARD_LOCK = 1030; CHANGE_ZONE_PROPERTIES = 1031; UNCONCEDE = 1032; JUDGE = 1033; REVERSE_TURN = 1034; } extensions 100 to max; } message Command_Judge { extend GameCommand { optional Command_Judge ext = 1033; } optional sint32 target_id = 1 [default = -1]; repeated GameCommand game_command = 2; }