Cockatrice/common/pb
Basile Clément 3cdc44322d
client: Support arbitrary game zones
Currently, the client ignores cards in unknown zones, as there is an
implicit assumption that the set of zones known by the server and the
client are the same.

This patch makes it so that the client accept "custom zones" from the
server (zones outside the builtin deck, graveyard, exile, sideboard,
table, stack and hand zones) using the information from the
ServerInfo_CardZone. Moving cards from/into these zones happens
through a "View custom zone" action in the Game > Player menu and
properly appears in the chat.

Note that this patch intentionally does not introduce any support for
having the server actually create such zones. Instead, this patch aims
to improve backwards compatibility for when we do get to adding this
capability in the future, by making sure that current clients will be
able to interact with future new zones (even if suboptimally).
2025-04-23 21:00:22 +02:00
..
admin_commands.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
card_attributes.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
CMakeLists.txt Support Mod/Admin Notes Section (#5361) 2024-12-28 18:05:49 +00:00
color.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_attach_card.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_change_zone_properties.proto Always look at top card (#4238) 2021-03-13 14:54:13 -05:00
command_concede.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_create_arrow.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_create_counter.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_create_token.proto New printing selector (#5182) 2024-12-19 02:40:34 +00:00
command_deck_del.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_deck_del_dir.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_deck_download.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_deck_list.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_deck_new_dir.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_deck_select.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_deck_upload.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_del_counter.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_delete_arrow.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_draw_cards.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_dump_zone.proto Support viewing the bottom X cards of library (#5410) 2025-01-05 21:17:18 -05:00
command_flip_card.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_game_say.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_inc_card_counter.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_inc_counter.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_kick_from_game.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_leave_game.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_move_card.proto Support viewing the bottom X cards of library (#5410) 2025-01-05 21:17:18 -05:00
command_mulligan.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_next_turn.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_ready_start.proto Support starting games with fewer than max players (#5338) 2024-12-26 18:32:20 -05:00
command_replay_delete_match.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_replay_download.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_replay_list.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_replay_modify_match.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_reveal_cards.proto Allow revealing specific cards from hand and library (#4743) 2023-02-07 17:12:04 -05:00
command_reverse_turn.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_roll_die.proto Allow up to 100 dice to be rolled at a time (#5047) 2024-06-12 08:37:04 -04:00
command_set_active_phase.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_set_card_attr.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_set_card_counter.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_set_counter.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_set_sideboard_lock.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
command_set_sideboard_plan.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_shuffle.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
command_undo_draw.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
commands.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
context_concede.proto Unconcede (#3515) 2019-01-27 12:50:41 -05:00
context_connection_state_changed.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
context_deck_select.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
context_move_card.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
context_mulligan.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
context_ping_changed.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
context_ready_start.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
context_set_sideboard_lock.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
context_undo_draw.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_add_to_list.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_attach_card.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_change_zone_properties.proto Always look at top card (#4238) 2021-03-13 14:54:13 -05:00
event_connection_closed.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_create_arrow.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_create_counter.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_create_token.proto New printing selector (#5182) 2024-12-19 02:40:34 +00:00
event_del_counter.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_delete_arrow.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_destroy_card.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_draw_cards.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_dump_zone.proto Support viewing the bottom X cards of library (#5410) 2025-01-05 21:17:18 -05:00
event_flip_card.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_game_closed.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_game_host_changed.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
event_game_joined.proto Judge mode (#3531) 2019-02-21 14:00:00 -05:00
event_game_say.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_game_state_changed.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_join.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_join_room.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_kicked.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
event_leave.proto Specify reason when on game leave; fix #2624 (#2633) 2017-04-24 22:20:08 +02:00
event_leave_room.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
event_list_games.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_list_rooms.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_move_card.proto Multiple Printings per Deck (#5171) 2024-11-18 21:56:44 -05:00
event_notify_user.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
event_player_properties_changed.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_remove_from_list.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_remove_messages.proto add option to delete a user's messages (#4362) 2021-09-14 16:05:20 -04:00
event_replay_added.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_reveal_cards.proto Allow revealing specific cards from hand and library (#4743) 2023-02-07 17:12:04 -05:00
event_reverse_turn.proto Add a new command to reverse turn order (#3802) 2019-08-27 20:04:27 -04:00
event_roll_die.proto Allow up to 100 dice to be rolled at a time (#5047) 2024-06-12 08:37:04 -04:00
event_room_say.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
event_server_complete_list.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_server_identification.proto allow login using hashed passwords (#4464) 2021-11-09 20:00:41 -05:00
event_server_message.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_server_shutdown.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_set_active_phase.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_set_active_player.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_set_card_attr.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_set_card_counter.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_set_counter.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_shuffle.proto Move to bottom of library in random order. (#3549) 2019-02-07 14:08:44 -05:00
event_user_joined.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_user_left.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
event_user_message.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
game_commands.proto deprecate the gender property from the protocol entirely (#4496) 2021-12-14 01:51:57 -05:00
game_event.proto deprecate the gender property from the protocol entirely (#4496) 2021-12-14 01:51:57 -05:00
game_event_container.proto Judge mode (#3531) 2019-02-21 14:00:00 -05:00
game_event_context.proto Unconcede (#3515) 2019-01-27 12:50:41 -05:00
game_replay.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
isl_message.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
moderator_commands.proto Support Mod/Admin Notes Section (#5361) 2024-12-28 18:05:49 +00:00
move_card_to_zone.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
response.proto Support Mod/Admin Notes Section (#5361) 2024-12-28 18:05:49 +00:00
response_activate.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
response_adjust_mod.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
response_ban_history.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
response_deck_download.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
response_deck_list.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
response_deck_upload.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
response_dump_zone.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
response_forgotpasswordrequest.proto Simpler forgot password functionality (#2393) 2017-02-15 17:41:40 -05:00
response_get_admin_notes.proto Support Mod/Admin Notes Section (#5361) 2024-12-28 18:05:49 +00:00
response_get_games_of_user.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
response_get_user_info.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
response_join_room.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
response_list_users.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
response_login.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
response_password_salt.proto allow login using hashed passwords (#4464) 2021-11-09 20:00:41 -05:00
response_register.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
response_replay_download.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
response_replay_list.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
response_viewlog_history.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
response_warn_history.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
response_warn_list.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
room_commands.proto Add the ability to define starting life total during game creation. (#5174) 2024-12-19 23:52:47 +00:00
room_event.proto add option to delete a user's messages (#4362) 2021-09-14 16:05:20 -04:00
server_message.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
serverinfo_arrow.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
serverinfo_ban.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
serverinfo_card.proto Multiple Printings per Deck (#5171) 2024-11-18 21:56:44 -05:00
serverinfo_cardcounter.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
serverinfo_chat_message.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
serverinfo_counter.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
serverinfo_deckstorage.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
serverinfo_game.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
serverinfo_gametype.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
serverinfo_player.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
serverinfo_playerping.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
serverinfo_playerproperties.proto Judge mode (#3531) 2019-02-21 14:00:00 -05:00
serverinfo_replay.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00
serverinfo_replay_match.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
serverinfo_room.proto Smarter rooms (#2484) 2017-03-22 21:45:16 -04:00
serverinfo_user.proto Add custom server-side pawn colors (#5543) 2025-02-02 03:25:25 +00:00
serverinfo_warning.proto apply clang format to proto files (#4123) 2020-10-02 12:14:05 -04:00
serverinfo_zone.proto client: Support arbitrary game zones 2025-04-23 21:00:22 +02:00
session_commands.proto remove unused include in pb file (#4572) 2022-02-12 23:40:47 +01:00
session_event.proto protobuf warnings fixed (#2313) 2016-12-11 19:22:39 +01:00