From 5420c4fdb01cb030d54a05c103ce9cef23e3fe1a Mon Sep 17 00:00:00 2001 From: Zefanja Jobse Date: Sun, 25 Sep 2022 15:44:21 +0200 Subject: [PATCH] fix authentication for web --- Readme.md | 24 +- bfportal_grpc/__init__.py | 1 + .../access_token.py | 6 +- .../proto}/__init__.py | 0 .../proto/authentication_pb2.py | 64 +- .../proto/authentication_pb2_grpc.py | 44 +- .../proto/communitygames_pb2.py | 576 +++++++++--------- .../proto/communitygames_pb2_grpc.py | 122 ++-- .../proto/localization_pb2.py | 56 +- .../proto/localization_pb2_grpc.py | 14 +- .../proto/reporting_pb2.py | 30 +- .../proto/reporting_pb2_grpc.py | 14 +- package.json | 3 +- proto/authentication.proto | 2 +- pyproject.toml | 51 ++ setup.py | 3 + tests/test_communitygames.py | 2 +- 17 files changed, 544 insertions(+), 468 deletions(-) create mode 100644 bfportal_grpc/__init__.py rename {bfportal_grpc_python => bfportal_grpc}/access_token.py (82%) rename {bfportal_grpc_python => bfportal_grpc/proto}/__init__.py (100%) rename {bfportal_grpc_python => bfportal_grpc}/proto/authentication_pb2.py (51%) rename {bfportal_grpc_python => bfportal_grpc}/proto/authentication_pb2_grpc.py (62%) rename {bfportal_grpc_python => bfportal_grpc}/proto/communitygames_pb2.py (51%) rename {bfportal_grpc_python => bfportal_grpc}/proto/communitygames_pb2_grpc.py (66%) rename {bfportal_grpc_python => bfportal_grpc}/proto/localization_pb2.py (58%) rename {bfportal_grpc_python => bfportal_grpc}/proto/localization_pb2_grpc.py (76%) rename {bfportal_grpc_python => bfportal_grpc}/proto/reporting_pb2.py (54%) rename {bfportal_grpc_python => bfportal_grpc}/proto/reporting_pb2_grpc.py (76%) create mode 100644 pyproject.toml create mode 100644 setup.py diff --git a/Readme.md b/Readme.md index a8ee124..b781dd6 100644 --- a/Readme.md +++ b/Readme.md @@ -81,21 +81,37 @@ const call = communityGames.getPlayground(request, metadata, ## python for python you can use the 'sonora' package to do grpc-web ```py +import asyncio import sonora.aio -import sys -from proto import communitygames_pb2, communitygames_pb2_grpc +from bfportal_grpc import communitygames_pb2, communitygames_pb2_grpc, access_token, authentication_pb2, authentication_pb2_grpc async def main(): + cookie = access_token.Cookie(sid="", remid="") + token = await access_token.getBf2042GatewaySession(cookie) + async with sonora.aio.insecure_web_channel( f"https://kingston-prod-wgw-envoy.ops.dice.se" ) as channel: + stub = authentication_pb2_grpc.AuthenticationStub(channel) + auth_response: authentication_pb2.AuthResponse = await stub.viaAuthCode(authentication_pb2.AuthRequest(platform=1, authCode=token, redirectUri='https://portal.battlefield.com/'), metadata=( + ('x-dice-tenancy', 'prod_default-prod_default-kingston-common'), + ('x-gateway-session-id', 'web-c6b312c9-2520-4fde-958d-60ae71840a65'), + ('x-grpc-web', '1'), + ('x-user-agent', 'grpc-web-javascript/0.1') + )) + stub = communitygames_pb2_grpc.CommunityGamesStub(channel) response: communitygames_pb2.PlaygroundInfoResponse = await stub.getPlayground(communitygames_pb2.GetPlaygroundRequest(playgroundId="10992a10-461a-11ec-8de0-d9f491f92236"), metadata=( ('x-dice-tenancy', 'prod_default-prod_default-kingston-common'), - ('x-gateway-session-id', 'web-c6b312c9-2520-4fde-958d-60ae71840a65'), + ('x-gateway-session-id', auth_response.sessionId), ('x-grpc-web', '1'), ('x-user-agent', 'grpc-web-javascript/0.1') )) + + print(response.playground.originalPlayground.name) + +if __name__ == "__main__": + asyncio.run(main()) ``` ### current build method from proto to javascript via python @@ -115,6 +131,6 @@ python package used: https://github.com/romnn/proto-compile ### Pushing your changes package versions can be made with `npm run build` and `npm version patch` `git push --tags origin main` to release. - +for python patch with `npm run build:python`, `npm run python:setimports` and `poetry build`. example library used: https://github.com/tomchen/example-typescript-package diff --git a/bfportal_grpc/__init__.py b/bfportal_grpc/__init__.py new file mode 100644 index 0000000..2dc1a1d --- /dev/null +++ b/bfportal_grpc/__init__.py @@ -0,0 +1 @@ +from .proto import authentication_pb2_grpc, authentication_pb2, communitygames_pb2_grpc, communitygames_pb2, localization_pb2_grpc, localization_pb2, reporting_pb2_grpc, reporting_pb2 \ No newline at end of file diff --git a/bfportal_grpc_python/access_token.py b/bfportal_grpc/access_token.py similarity index 82% rename from bfportal_grpc_python/access_token.py rename to bfportal_grpc/access_token.py index 089db05..d12004e 100644 --- a/bfportal_grpc_python/access_token.py +++ b/bfportal_grpc/access_token.py @@ -5,8 +5,12 @@ class Cookie: sid: str remid: str + + def __init__(self, sid: str, remid: str): + self.sid = sid + self.remid = remid -async def getBf2042GatewaySession(cookie: Cookie): +async def getBf2042GatewaySession(cookie: Cookie) -> str: async with aiohttp.ClientSession() as session: url = "https://accounts.ea.com/connect/auth?client_id=KINGSTON_COMP_APP&locale=en_US&redirect_uri=https%3A%2F%2Fportal.battlefield.com%2F&response_type=code" headers = { diff --git a/bfportal_grpc_python/__init__.py b/bfportal_grpc/proto/__init__.py similarity index 100% rename from bfportal_grpc_python/__init__.py rename to bfportal_grpc/proto/__init__.py diff --git a/bfportal_grpc_python/proto/authentication_pb2.py b/bfportal_grpc/proto/authentication_pb2.py similarity index 51% rename from bfportal_grpc_python/proto/authentication_pb2.py rename to bfportal_grpc/proto/authentication_pb2.py index 0cbf787..e355fc9 100644 --- a/bfportal_grpc_python/proto/authentication_pb2.py +++ b/bfportal_grpc/proto/authentication_pb2.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! -# source: proto/authentication.proto +# source: authentication.proto """Generated protocol buffer code.""" from google.protobuf.internal import enum_type_wrapper from google.protobuf import descriptor as _descriptor @@ -15,7 +15,7 @@ -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1aproto/authentication.proto\x12\x12web.authentication\"F\n\nPlayerInfo\x12\x11\n\tnucleusId\x18\x01 \x01(\x03\x12\x11\n\tpersonaId\x18\x02 \x01(\x03\x12\x12\n\nplatformId\x18\x03 \x01(\x05\"\x8b\x01\n\x0b\x41uthRequest\x12\x10\n\x08\x61uthCode\x18\x01 \x01(\t\x12\x13\n\x0bredirectUri\x18\x02 \x01(\t\x12\x0f\n\x07product\x18\x03 \x01(\t\x12\x14\n\x0c\x66irstPartyId\x18\x04 \x01(\t\x12.\n\x08platform\x18\x05 \x01(\x0e\x32\x1c.web.authentication.Platform\"*\n\x08\x44uration\x12\x0f\n\x07seconds\x18\x01 \x01(\x03\x12\r\n\x05nanos\x18\x02 \x01(\x05\":\n\nTimeTravel\x12,\n\x06offset\x18\x01 \x01(\x0b\x32\x1c.web.authentication.Duration\"k\n\x17ProtocolVersionOverride\x12\x10\n\x08original\x18\x01 \x01(\t\x12\x12\n\noverridden\x18\x02 \x01(\t\x12*\n\x06reason\x18\x03 \x01(\x0e\x32\x1a.web.authentication.Reason\"\x07\n\x05\x45mpty\"\x83\x02\n\x0c\x41uthResponse\x12\x11\n\tsessionId\x18\x01 \x01(\t\x12.\n\x06player\x18\x03 \x01(\x0b\x32\x1e.web.authentication.PlayerInfo\x12.\n\x08userBits\x18\x04 \x03(\x0e\x32\x1c.web.authentication.UserBits\x12\x32\n\ntimeTravel\x18\x05 \x01(\x0b\x32\x1e.web.authentication.TimeTravel\x12L\n\x17protocolVersionOverride\x18\x06 \x01(\x0b\x32+.web.authentication.ProtocolVersionOverride*T\n\x08Platform\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x06\n\x02PC\x10\x01\x12\x07\n\x03PS4\x10\x02\x12\x0b\n\x07XBOXONE\x10\x03\x12\x07\n\x03PS5\x10\x04\x12\x08\n\x04XBSX\x10\x05\x12\n\n\x06\x43OMMON\x10\x06*(\n\x06Reason\x12\x08\n\x04NONE\x10\x00\x12\n\n\x06PLAYER\x10\x01\x12\x08\n\x04SYNC\x10\x02*\xcc\x01\n\x08UserBits\x12\x18\n\x14USER_BIT_UNSPECIFIED\x10\x00\x12\x19\n\x15USER_BIT_ACCEPTED_TOS\x10\x01\x12\x1f\n\x1bUSER_BIT_ENABLE_USERSHARING\x10\x02\x12 \n\x1cUSER_BIT_ENABLE_CRASHREPORTS\x10\x03\x12\x1f\n\x1bUSER_BIT_COMPLETED_TUTORIAL\x10\x04\x12\'\n#USER_BIT_CLIENT_ENABLE_USAGESHARING\x10\x05\x32\xac\x01\n\x14\x43lientAuthentication\x12R\n\x0bviaAuthCode\x12\x1f.web.authentication.AuthRequest\x1a .web.authentication.AuthResponse\"\x00\x12@\n\x06logout\x12\x19.web.authentication.Empty\x1a\x19.web.authentication.Empty\"\x00\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x14\x61uthentication.proto\x12\x12web.authentication\"F\n\nPlayerInfo\x12\x11\n\tnucleusId\x18\x01 \x01(\x03\x12\x11\n\tpersonaId\x18\x02 \x01(\x03\x12\x12\n\nplatformId\x18\x03 \x01(\x05\"\x8b\x01\n\x0b\x41uthRequest\x12\x10\n\x08\x61uthCode\x18\x01 \x01(\t\x12\x13\n\x0bredirectUri\x18\x02 \x01(\t\x12\x0f\n\x07product\x18\x03 \x01(\t\x12\x14\n\x0c\x66irstPartyId\x18\x04 \x01(\t\x12.\n\x08platform\x18\x05 \x01(\x0e\x32\x1c.web.authentication.Platform\"*\n\x08\x44uration\x12\x0f\n\x07seconds\x18\x01 \x01(\x03\x12\r\n\x05nanos\x18\x02 \x01(\x05\":\n\nTimeTravel\x12,\n\x06offset\x18\x01 \x01(\x0b\x32\x1c.web.authentication.Duration\"k\n\x17ProtocolVersionOverride\x12\x10\n\x08original\x18\x01 \x01(\t\x12\x12\n\noverridden\x18\x02 \x01(\t\x12*\n\x06reason\x18\x03 \x01(\x0e\x32\x1a.web.authentication.Reason\"\x07\n\x05\x45mpty\"\x83\x02\n\x0c\x41uthResponse\x12\x11\n\tsessionId\x18\x01 \x01(\t\x12.\n\x06player\x18\x03 \x01(\x0b\x32\x1e.web.authentication.PlayerInfo\x12.\n\x08userBits\x18\x04 \x03(\x0e\x32\x1c.web.authentication.UserBits\x12\x32\n\ntimeTravel\x18\x05 \x01(\x0b\x32\x1e.web.authentication.TimeTravel\x12L\n\x17protocolVersionOverride\x18\x06 \x01(\x0b\x32+.web.authentication.ProtocolVersionOverride*T\n\x08Platform\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x06\n\x02PC\x10\x01\x12\x07\n\x03PS4\x10\x02\x12\x0b\n\x07XBOXONE\x10\x03\x12\x07\n\x03PS5\x10\x04\x12\x08\n\x04XBSX\x10\x05\x12\n\n\x06\x43OMMON\x10\x06*(\n\x06Reason\x12\x08\n\x04NONE\x10\x00\x12\n\n\x06PLAYER\x10\x01\x12\x08\n\x04SYNC\x10\x02*\xcc\x01\n\x08UserBits\x12\x18\n\x14USER_BIT_UNSPECIFIED\x10\x00\x12\x19\n\x15USER_BIT_ACCEPTED_TOS\x10\x01\x12\x1f\n\x1bUSER_BIT_ENABLE_USERSHARING\x10\x02\x12 \n\x1cUSER_BIT_ENABLE_CRASHREPORTS\x10\x03\x12\x1f\n\x1bUSER_BIT_COMPLETED_TUTORIAL\x10\x04\x12\'\n#USER_BIT_CLIENT_ENABLE_USAGESHARING\x10\x05\x32\xa6\x01\n\x0e\x41uthentication\x12R\n\x0bviaAuthCode\x12\x1f.web.authentication.AuthRequest\x1a .web.authentication.AuthResponse\"\x00\x12@\n\x06logout\x12\x19.web.authentication.Empty\x1a\x19.web.authentication.Empty\"\x00\x62\x06proto3') _PLATFORM = DESCRIPTOR.enum_types_by_name['Platform'] Platform = enum_type_wrapper.EnumTypeWrapper(_PLATFORM) @@ -50,77 +50,77 @@ _AUTHRESPONSE = DESCRIPTOR.message_types_by_name['AuthResponse'] PlayerInfo = _reflection.GeneratedProtocolMessageType('PlayerInfo', (_message.Message,), { 'DESCRIPTOR' : _PLAYERINFO, - '__module__' : 'proto.authentication_pb2' + '__module__' : 'authentication_pb2' # @@protoc_insertion_point(class_scope:web.authentication.PlayerInfo) }) _sym_db.RegisterMessage(PlayerInfo) AuthRequest = _reflection.GeneratedProtocolMessageType('AuthRequest', (_message.Message,), { 'DESCRIPTOR' : _AUTHREQUEST, - '__module__' : 'proto.authentication_pb2' + '__module__' : 'authentication_pb2' # @@protoc_insertion_point(class_scope:web.authentication.AuthRequest) }) _sym_db.RegisterMessage(AuthRequest) Duration = _reflection.GeneratedProtocolMessageType('Duration', (_message.Message,), { 'DESCRIPTOR' : _DURATION, - '__module__' : 'proto.authentication_pb2' + '__module__' : 'authentication_pb2' # @@protoc_insertion_point(class_scope:web.authentication.Duration) }) _sym_db.RegisterMessage(Duration) TimeTravel = _reflection.GeneratedProtocolMessageType('TimeTravel', (_message.Message,), { 'DESCRIPTOR' : _TIMETRAVEL, - '__module__' : 'proto.authentication_pb2' + '__module__' : 'authentication_pb2' # @@protoc_insertion_point(class_scope:web.authentication.TimeTravel) }) _sym_db.RegisterMessage(TimeTravel) ProtocolVersionOverride = _reflection.GeneratedProtocolMessageType('ProtocolVersionOverride', (_message.Message,), { 'DESCRIPTOR' : _PROTOCOLVERSIONOVERRIDE, - '__module__' : 'proto.authentication_pb2' + '__module__' : 'authentication_pb2' # @@protoc_insertion_point(class_scope:web.authentication.ProtocolVersionOverride) }) _sym_db.RegisterMessage(ProtocolVersionOverride) Empty = _reflection.GeneratedProtocolMessageType('Empty', (_message.Message,), { 'DESCRIPTOR' : _EMPTY, - '__module__' : 'proto.authentication_pb2' + '__module__' : 'authentication_pb2' # @@protoc_insertion_point(class_scope:web.authentication.Empty) }) _sym_db.RegisterMessage(Empty) AuthResponse = _reflection.GeneratedProtocolMessageType('AuthResponse', (_message.Message,), { 'DESCRIPTOR' : _AUTHRESPONSE, - '__module__' : 'proto.authentication_pb2' + '__module__' : 'authentication_pb2' # @@protoc_insertion_point(class_scope:web.authentication.AuthResponse) }) _sym_db.RegisterMessage(AuthResponse) -_CLIENTAUTHENTICATION = DESCRIPTOR.services_by_name['ClientAuthentication'] +_AUTHENTICATION = DESCRIPTOR.services_by_name['Authentication'] if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None - _PLATFORM._serialized_start=748 - _PLATFORM._serialized_end=832 - _REASON._serialized_start=834 - _REASON._serialized_end=874 - _USERBITS._serialized_start=877 - _USERBITS._serialized_end=1081 - _PLAYERINFO._serialized_start=50 - _PLAYERINFO._serialized_end=120 - _AUTHREQUEST._serialized_start=123 - _AUTHREQUEST._serialized_end=262 - _DURATION._serialized_start=264 - _DURATION._serialized_end=306 - _TIMETRAVEL._serialized_start=308 - _TIMETRAVEL._serialized_end=366 - _PROTOCOLVERSIONOVERRIDE._serialized_start=368 - _PROTOCOLVERSIONOVERRIDE._serialized_end=475 - _EMPTY._serialized_start=477 - _EMPTY._serialized_end=484 - _AUTHRESPONSE._serialized_start=487 - _AUTHRESPONSE._serialized_end=746 - _CLIENTAUTHENTICATION._serialized_start=1084 - _CLIENTAUTHENTICATION._serialized_end=1256 + _PLATFORM._serialized_start=742 + _PLATFORM._serialized_end=826 + _REASON._serialized_start=828 + _REASON._serialized_end=868 + _USERBITS._serialized_start=871 + _USERBITS._serialized_end=1075 + _PLAYERINFO._serialized_start=44 + _PLAYERINFO._serialized_end=114 + _AUTHREQUEST._serialized_start=117 + _AUTHREQUEST._serialized_end=256 + _DURATION._serialized_start=258 + _DURATION._serialized_end=300 + _TIMETRAVEL._serialized_start=302 + _TIMETRAVEL._serialized_end=360 + _PROTOCOLVERSIONOVERRIDE._serialized_start=362 + _PROTOCOLVERSIONOVERRIDE._serialized_end=469 + _EMPTY._serialized_start=471 + _EMPTY._serialized_end=478 + _AUTHRESPONSE._serialized_start=481 + _AUTHRESPONSE._serialized_end=740 + _AUTHENTICATION._serialized_start=1078 + _AUTHENTICATION._serialized_end=1244 # @@protoc_insertion_point(module_scope) diff --git a/bfportal_grpc_python/proto/authentication_pb2_grpc.py b/bfportal_grpc/proto/authentication_pb2_grpc.py similarity index 62% rename from bfportal_grpc_python/proto/authentication_pb2_grpc.py rename to bfportal_grpc/proto/authentication_pb2_grpc.py index 5147e3e..cc38864 100644 --- a/bfportal_grpc_python/proto/authentication_pb2_grpc.py +++ b/bfportal_grpc/proto/authentication_pb2_grpc.py @@ -2,10 +2,10 @@ """Client and server classes corresponding to protobuf-defined services.""" import grpc -from proto import authentication_pb2 as proto_dot_authentication__pb2 +from . import authentication_pb2 as authentication__pb2 -class ClientAuthenticationStub(object): +class AuthenticationStub(object): """Missing associated documentation comment in .proto file.""" def __init__(self, channel): @@ -15,18 +15,18 @@ def __init__(self, channel): channel: A grpc.Channel. """ self.viaAuthCode = channel.unary_unary( - '/web.authentication.ClientAuthentication/viaAuthCode', - request_serializer=proto_dot_authentication__pb2.AuthRequest.SerializeToString, - response_deserializer=proto_dot_authentication__pb2.AuthResponse.FromString, + '/web.authentication.Authentication/viaAuthCode', + request_serializer=authentication__pb2.AuthRequest.SerializeToString, + response_deserializer=authentication__pb2.AuthResponse.FromString, ) self.logout = channel.unary_unary( - '/web.authentication.ClientAuthentication/logout', - request_serializer=proto_dot_authentication__pb2.Empty.SerializeToString, - response_deserializer=proto_dot_authentication__pb2.Empty.FromString, + '/web.authentication.Authentication/logout', + request_serializer=authentication__pb2.Empty.SerializeToString, + response_deserializer=authentication__pb2.Empty.FromString, ) -class ClientAuthenticationServicer(object): +class AuthenticationServicer(object): """Missing associated documentation comment in .proto file.""" def viaAuthCode(self, request, context): @@ -42,26 +42,26 @@ def logout(self, request, context): raise NotImplementedError('Method not implemented!') -def add_ClientAuthenticationServicer_to_server(servicer, server): +def add_AuthenticationServicer_to_server(servicer, server): rpc_method_handlers = { 'viaAuthCode': grpc.unary_unary_rpc_method_handler( servicer.viaAuthCode, - request_deserializer=proto_dot_authentication__pb2.AuthRequest.FromString, - response_serializer=proto_dot_authentication__pb2.AuthResponse.SerializeToString, + request_deserializer=authentication__pb2.AuthRequest.FromString, + response_serializer=authentication__pb2.AuthResponse.SerializeToString, ), 'logout': grpc.unary_unary_rpc_method_handler( servicer.logout, - request_deserializer=proto_dot_authentication__pb2.Empty.FromString, - response_serializer=proto_dot_authentication__pb2.Empty.SerializeToString, + request_deserializer=authentication__pb2.Empty.FromString, + response_serializer=authentication__pb2.Empty.SerializeToString, ), } generic_handler = grpc.method_handlers_generic_handler( - 'web.authentication.ClientAuthentication', rpc_method_handlers) + 'web.authentication.Authentication', rpc_method_handlers) server.add_generic_rpc_handlers((generic_handler,)) # This class is part of an EXPERIMENTAL API. -class ClientAuthentication(object): +class Authentication(object): """Missing associated documentation comment in .proto file.""" @staticmethod @@ -75,9 +75,9 @@ def viaAuthCode(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/web.authentication.ClientAuthentication/viaAuthCode', - proto_dot_authentication__pb2.AuthRequest.SerializeToString, - proto_dot_authentication__pb2.AuthResponse.FromString, + return grpc.experimental.unary_unary(request, target, '/web.authentication.Authentication/viaAuthCode', + authentication__pb2.AuthRequest.SerializeToString, + authentication__pb2.AuthResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @@ -92,8 +92,8 @@ def logout(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/web.authentication.ClientAuthentication/logout', - proto_dot_authentication__pb2.Empty.SerializeToString, - proto_dot_authentication__pb2.Empty.FromString, + return grpc.experimental.unary_unary(request, target, '/web.authentication.Authentication/logout', + authentication__pb2.Empty.SerializeToString, + authentication__pb2.Empty.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/bfportal_grpc_python/proto/communitygames_pb2.py b/bfportal_grpc/proto/communitygames_pb2.py similarity index 51% rename from bfportal_grpc_python/proto/communitygames_pb2.py rename to bfportal_grpc/proto/communitygames_pb2.py index d1d9f12..8d06da6 100644 --- a/bfportal_grpc_python/proto/communitygames_pb2.py +++ b/bfportal_grpc/proto/communitygames_pb2.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! -# source: proto/communitygames.proto +# source: communitygames.proto """Generated protocol buffer code.""" from google.protobuf.internal import enum_type_wrapper from google.protobuf import descriptor as _descriptor @@ -15,7 +15,7 @@ -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1aproto/communitygames.proto\x12\x12web.communitygames\"_\n\x10ProgressionEntry\x12\x17\n\x0fprogressionMode\x18\x01 \x01(\t\x12\x32\n\rprogressibles\x18\x02 \x03(\x0b\x32\x1b.web.communitygames.Mutator\":\n\x13TranslationMetadata\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x15\n\rtranslationId\x18\x02 \x01(\t\",\n\x10ResourceLocation\x12\x0b\n\x03ref\x18\x01 \x01(\t\x12\x0b\n\x03url\x18\x02 \x01(\t\"P\n\x08Resource\x12\x36\n\x08location\x18\x01 \x01(\x0b\x32$.web.communitygames.ResourceLocation\x12\x0c\n\x04kind\x18\x02 \x01(\t\"z\n\x08Metadata\x12=\n\x0ctranslations\x18\x01 \x03(\x0b\x32\'.web.communitygames.TranslationMetadata\x12/\n\tresources\x18\x02 \x03(\x0b\x32\x1c.web.communitygames.Resource\"T\n\x03Tag\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\tsortOrder\x18\x02 \x01(\x05\x12.\n\x08metadata\x18\x03 \x01(\x0b\x32\x1c.web.communitygames.Metadata\" \n\x0fProgressionMode\x12\r\n\x05value\x18\x01 \x01(\t\"\xf1\x01\n\x12PlaygroundResponse\x12:\n\x12originalPlayground\x18\x01 \x01(\x0b\x32\x1e.web.communitygames.Playground\x12;\n\x13validatedPlayground\x18\x02 \x01(\x0b\x32\x1e.web.communitygames.Playground\x12$\n\x03tag\x18\x03 \x03(\x0b\x32\x17.web.communitygames.Tag\x12<\n\x0fprogressionMode\x18\x04 \x01(\x0b\x32#.web.communitygames.ProgressionMode\"\xd0\x01\n\x07MapInfo\x12\x0f\n\x07mapname\x18\x01 \x01(\t\x12\x0c\n\x04mode\x18\x02 \x01(\t\x12\x10\n\x08gameSize\x18\x03 \x01(\r\x12\x0e\n\x06rounds\x18\x04 \x01(\r\x12-\n\x08mutators\x18\x05 \x01(\x0b\x32\x1b.web.communitygames.Mutator\x12\x10\n\x08location\x18\x06 \x01(\t\x12\x14\n\x0cpreRoundSize\x18\x07 \x01(\r\x12\x12\n\nwarmUpSize\x18\x08 \x01(\r\x12\x19\n\x11\x61llowedSpectators\x18\t \x01(\r\"\xb2\x01\n\x0bMapRotation\x12)\n\x04maps\x18\x01 \x03(\x0b\x32\x1b.web.communitygames.MapInfo\x12>\n\x10rotationBehavior\x18\x02 \x01(\x0e\x32$.web.communitygames.RotationBehavior\x12\x38\n\rroundBehavior\x18\x03 \x01(\x0e\x32!.web.communitygames.RoundBehavior\"1\n\rTeamStructure\x12\x0e\n\x06teamId\x18\x01 \x01(\x05\x12\x10\n\x08\x63\x61pacity\x18\x02 \x01(\x05\"q\n\x15InternalTeamStructure\x12\x0e\n\x06teamId\x18\x01 \x01(\x05\x12\x10\n\x08\x63\x61pacity\x18\x02 \x01(\x05\x12\x36\n\x0c\x63\x61pacityType\x18\x03 \x01(\x0e\x32 .web.communitygames.CapacityType\"7\n\x17MutatorSparseFloatEntry\x12\r\n\x05index\x18\x01 \x01(\r\x12\r\n\x05value\x18\x02 \x01(\x02\"{\n\x12MutatorSparseFloat\x12\x14\n\x0c\x64\x65\x66\x61ultValue\x18\x01 \x01(\x02\x12\x0c\n\x04size\x18\x02 \x01(\r\x12\x41\n\x0csparseValues\x18\x03 \x03(\x0b\x32+.web.communitygames.MutatorSparseFloatEntry\"\x1d\n\x0cMutatorFloat\x12\r\n\x05value\x18\x01 \x01(\x02\"#\n\x0eMutatorBoolean\x12\x11\n\tboolValue\x18\x01 \x01(\x08\"$\n\rMutatorString\x12\x13\n\x0bstringValue\x18\x01 \x01(\t\"\x1b\n\nMutatorInt\x12\r\n\x05value\x18\x01 \x01(\x05\"9\n\x19MutatorSparseBooleanEntry\x12\r\n\x05index\x18\x01 \x01(\r\x12\r\n\x05value\x18\x02 \x01(\x08\"\x7f\n\x14MutatorSparseBoolean\x12\x14\n\x0c\x64\x65\x66\x61ultValue\x18\x01 \x01(\x08\x12\x0c\n\x04size\x18\x02 \x01(\r\x12\x43\n\x0csparseValues\x18\x03 \x03(\x0b\x32-.web.communitygames.MutatorSparseBooleanEntry\"!\n\x0fSparseIntEntity\x12\x0e\n\x06values\x18\x01 \x03(\x05\"5\n\x15MutatorSparseIntEntry\x12\r\n\x05index\x18\x01 \x01(\r\x12\r\n\x05value\x18\x02 \x01(\x05\"w\n\x10MutatorSparseInt\x12\x14\n\x0c\x64\x65\x66\x61ultValue\x18\x01 \x01(\x05\x12\x0c\n\x04size\x18\x02 \x01(\r\x12?\n\x0csparseValues\x18\x03 \x01(\x0b\x32).web.communitygames.MutatorSparseIntEntry\"\xbb\x03\n\x0bMutatorKind\x12:\n\x0emutatorBoolean\x18\x01 \x01(\x0b\x32\".web.communitygames.MutatorBoolean\x12\x38\n\rmutatorString\x18\x04 \x01(\x0b\x32!.web.communitygames.MutatorString\x12\x36\n\x0cmutatorFloat\x18\x05 \x01(\x0b\x32 .web.communitygames.MutatorFloat\x12\x32\n\nmutatorInt\x18\x06 \x01(\x0b\x32\x1e.web.communitygames.MutatorInt\x12\x46\n\x14mutatorSparseBoolean\x18\x07 \x01(\x0b\x32(.web.communitygames.MutatorSparseBoolean\x12>\n\x10mutatorSparseInt\x18\x08 \x01(\x0b\x32$.web.communitygames.MutatorSparseInt\x12\x42\n\x12mutatorSparseFloat\x18\t \x01(\x0b\x32&.web.communitygames.MutatorSparseFloat\"\xc3\x01\n\x0fTeamComposition\x12\x30\n\x05teams\x18\x01 \x01(\x0b\x32!.web.communitygames.TeamStructure\x12@\n\rinternalTeams\x18\x02 \x03(\x0b\x32).web.communitygames.InternalTeamStructure\x12<\n\x0f\x62\x61lancingMethod\x18\x03 \x01(\x0e\x32#.web.communitygames.BalancingMethod\"d\n\x07Mutator\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x08\x63\x61tegory\x18\x02 \x01(\t\x12-\n\x04kind\x18\x03 \x01(\x0b\x32\x1f.web.communitygames.MutatorKind\x12\n\n\x02id\x18\x04 \x01(\t\"/\n\tTimestamp\x12\x13\n\x07seconds\x18\x01 \x01(\x03\x42\x02\x30\x01\x12\r\n\x05nanos\x18\x02 \x01(\x05\"\x1c\n\x0bStringValue\x12\r\n\x05value\x18\x01 \x01(\t\"/\n\x11GameServerMessage\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\"\xcb\x02\n\x12GameServerSettings\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x34\n\x0b\x64\x65scription\x18\x02 \x01(\x0b\x32\x1f.web.communitygames.StringValue\x12@\n\x11gameServerMessage\x18\x03 \x03(\x0b\x32%.web.communitygames.GameServerMessage\x12\x33\n\nconfigName\x18\x04 \x01(\x0b\x32\x1f.web.communitygames.StringValue\x12:\n\x11\x43onfigDescription\x18\x05 \x01(\x0b\x32\x1f.web.communitygames.StringValue\x12>\n\x10phantomGameState\x18\x06 \x01(\x0e\x32$.web.communitygames.PhantomGameState\"l\n\nPlayerInfo\x12\x15\n\tnucleusId\x18\x01 \x01(\x04\x42\x02\x30\x01\x12\x15\n\tpersonaId\x18\x02 \x01(\x04\x42\x02\x30\x01\x12\x30\n\nplatformId\x18\x03 \x01(\x0e\x32\x1c.web.communitygames.Platform\"G\n\x14PlatformRestrictions\x12/\n\tplatforms\x18\x01 \x03(\x0e\x32\x1c.web.communitygames.Platform\"P\n\x16InputMethodResrictions\x12\x36\n\x0cinputMethods\x18\x01 \x03(\x0e\x32 .web.communitygames.InputMethods\"\xa4\x01\n\x0cRestrictions\x12\x46\n\x14platformRestrictions\x18\x01 \x01(\x0b\x32(.web.communitygames.PlatformRestrictions\x12L\n\x18inputMethodResctrictions\x18\x02 \x01(\x0b\x32*.web.communitygames.InputMethodResrictions\"R\n\nCompressed\x12\x18\n\x10\x63ompiledModRules\x18\x01 \x01(\x0c\x12\x14\n\x0crulesVersion\x18\x02 \x01(\x05\x12\x14\n\x0cinflatedSize\x18\x03 \x01(\x05\">\n\x0cUncompressed\x12\x18\n\x10\x63ompiledModRules\x18\x01 \x01(\x0c\x12\x14\n\x0crulesVersion\x18\x02 \x01(\x05\"{\n\rCompiledRules\x12\x36\n\x0cuncompressed\x18\x01 \x01(\x0b\x32 .web.communitygames.Uncompressed\x12\x32\n\ncompressed\x18\x02 \x01(\x0b\x32\x1e.web.communitygames.Compressed\"n\n\x12\x43ompatibleModRules\x12\r\n\x05rules\x18\x01 \x01(\x0c\x12\x14\n\x0crulesVersion\x18\x03 \x01(\x05\x12\x33\n\x08\x63ompiled\x18\x04 \x01(\x0b\x32!.web.communitygames.CompiledRules\"Z\n\x14InCompatibleModRules\x12\r\n\x05rules\x18\x01 \x01(\x0c\x12\x14\n\x0crulesVersion\x18\x02 \x01(\x05\x12\x1d\n\x15\x62lueprintRulesVersion\x18\x03 \x01(\x05\"\x98\x01\n\x10OriginalModRules\x12?\n\x0f\x63ompatibleRules\x18\x01 \x01(\x0b\x32&.web.communitygames.CompatibleModRules\x12\x43\n\x11incompatibleRules\x18\x02 \x01(\x0b\x32(.web.communitygames.InCompatibleModRules\"K\n\x1f\x41ssetCategoryTagBooleanOverride\x12\x19\n\x11\x61ssetCategoryTags\x18\x01 \x03(\t\x12\r\n\x05value\x18\x02 \x01(\x08\"_\n#AssetCategoryTagBooleanTeamOverride\x12\x19\n\x11\x61ssetCategoryTags\x18\x01 \x03(\t\x12\r\n\x05value\x18\x02 \x01(\x08\x12\x0e\n\x06teamId\x18\x03 \x01(\r\"\xc4\x01\n\x14\x41ssetCategoryBoolean\x12\x14\n\x0c\x64\x65\x66\x61ultValue\x18\x01 \x01(\x08\x12\x46\n\toverrides\x18\x02 \x01(\x0b\x32\x33.web.communitygames.AssetCategoryTagBooleanOverride\x12N\n\rteamOverrides\x18\x03 \x03(\x0b\x32\x37.web.communitygames.AssetCategoryTagBooleanTeamOverride\"Y\n\rAssetCategory\x12\r\n\x05tagId\x18\x01 \x01(\t\x12\x39\n\x07\x62oolean\x18\x02 \x01(\x0b\x32(.web.communitygames.AssetCategoryBoolean\"\xca\x05\n\nPlayground\x12\x14\n\x0cplaygroundId\x18\x01 \x01(\t\x12\x15\n\rblueprintType\x18\x03 \x01(\t\x12\x0c\n\x04name\x18\x04 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x05 \x01(\t\x12-\n\x08mutators\x18\x06 \x03(\x0b\x32\x1b.web.communitygames.Mutator\x12\x34\n\x0bmapRotation\x18\x07 \x01(\x0b\x32\x1f.web.communitygames.MapRotation\x12(\n\x05state\x18\x08 \x01(\x0e\x32\x19.web.communitygames.State\x12\x10\n\x08\x63hecksum\x18\t \x01(\t\x12\x0e\n\x06secret\x18\n \x01(\t\x12\x30\n\tcreatedAt\x18\x0b \x01(\x0b\x32\x1d.web.communitygames.Timestamp\x12\x30\n\tupdatedAt\x18\x0c \x01(\x0b\x32\x1d.web.communitygames.Timestamp\x12>\n\x0eserverSettings\x18\r \x01(\x0b\x32&.web.communitygames.GameServerSettings\x12-\n\x05owner\x18\x0e \x01(\x0b\x32\x1e.web.communitygames.PlayerInfo\x12\x36\n\x0crestrictions\x18\x0f \x01(\x0b\x32 .web.communitygames.Restrictions\x12\x36\n\x08modRules\x18\x10 \x01(\x0b\x32$.web.communitygames.OriginalModRules\x12:\n\x0f\x61ssetCategories\x18\x11 \x03(\x0b\x32!.web.communitygames.AssetCategory\x12<\n\x0fteamComposition\x18\x12 \x01(\x0b\x32#.web.communitygames.TeamComposition\"O\n\x1dListPlaygroundsByOwnerRequest\x12\x15\n\rblueprintType\x18\x01 \x01(\t\x12\x17\n\x0fprotocolVersion\x18\x02 \x01(\t\"\x17\n\x15GetConstraintsRequest\"j\n\x18GetBlueprintsByIdRequest\x12\x14\n\x0c\x62lueprintIds\x18\x01 \x03(\t\x12\x38\n\rincludeFields\x18\x02 \x03(\x0e\x32!.web.communitygames.IncludeFields\"w\n\x11GlobalConstraints\x12\x1f\n\x17maxPlaygroundsPerPlayer\x18\x01 \x01(\x05\x12\x1f\n\x17maxGameServersPerPlayer\x18\x02 \x01(\x05\x12 \n\x18maxFollowedHostsListSize\x18\x03 \x01(\x05\".\n\x08IntRange\x12\x10\n\x08minValue\x18\x01 \x01(\x05\x12\x10\n\x08maxValue\x18\x02 \x01(\x05\"|\n\x12\x41vailableIntValues\x12+\n\x05range\x18\x01 \x01(\x0b\x32\x1c.web.communitygames.IntRange\x12\x39\n\x0csparseValues\x18\x02 \x01(\x0b\x32#.web.communitygames.SparseIntEntity\"j\n\x11\x41vailableIntValue\x12\x14\n\x0c\x64\x65\x66\x61ultValue\x18\x01 \x01(\x05\x12?\n\x0f\x61vailableValues\x18\x02 \x01(\x0b\x32&.web.communitygames.AvailableIntValues\"#\n\x11SparseFloatValues\x12\x0e\n\x06values\x18\x01 \x03(\x02\"0\n\nFloatRange\x12\x10\n\x08minValue\x18\x01 \x01(\x02\x12\x10\n\x08maxValue\x18\x02 \x01(\x02\"\x82\x01\n\x14\x41vailableFloatValues\x12-\n\x05range\x18\x01 \x01(\x0b\x32\x1e.web.communitygames.FloatRange\x12;\n\x0csparseValues\x18\x02 \x01(\x0b\x32%.web.communitygames.SparseFloatValues\"\x93\x01\n\x1b\x41vailableMutatorFloatValues\x12\x31\n\x07mutator\x18\x01 \x01(\x0b\x32 .web.communitygames.MutatorFloat\x12\x41\n\x0f\x61vailableValues\x18\x02 \x01(\x0b\x32(.web.communitygames.AvailableFloatValues\"\x8d\x01\n\x19\x41vailableMutatorIntValues\x12/\n\x07mutator\x18\x01 \x01(\x0b\x32\x1e.web.communitygames.MutatorInt\x12?\n\x0f\x61vailableValues\x18\x02 \x01(\x0b\x32&.web.communitygames.AvailableIntValues\"\x99\x01\n\x1f\x41vailableMutatorSparseIntValues\x12\x35\n\x07mutator\x18\x01 \x01(\x0b\x32$.web.communitygames.MutatorSparseInt\x12?\n\x0f\x61vailableValues\x18\x02 \x01(\x0b\x32&.web.communitygames.AvailableIntValues\"\x9f\x01\n!AvailableMutatorSparseFloatValues\x12\x37\n\x07mutator\x18\x01 \x01(\x0b\x32&.web.communitygames.MutatorSparseFloat\x12\x41\n\x0f\x61vailableValues\x18\x02 \x01(\x0b\x32(.web.communitygames.AvailableFloatValues\"\x98\x04\n\x14\x41vailableMutatorKind\x12:\n\x0emutatorBoolean\x18\x01 \x01(\x0b\x32\".web.communitygames.MutatorBoolean\x12\x38\n\rmutatorString\x18\x04 \x01(\x0b\x32!.web.communitygames.MutatorString\x12K\n\x12mutatorFloatValues\x18\x07 \x01(\x0b\x32/.web.communitygames.AvailableMutatorFloatValues\x12G\n\x10mutatorIntValues\x18\x08 \x01(\x0b\x32-.web.communitygames.AvailableMutatorIntValues\x12\x46\n\x14mutatorSparseBoolean\x18\t \x01(\x0b\x32(.web.communitygames.MutatorSparseBoolean\x12S\n\x16mutatorSparseIntValues\x18\n \x01(\x0b\x32\x33.web.communitygames.AvailableMutatorSparseIntValues\x12W\n\x18mutatorSparseFloatValues\x18\x0b \x01(\x0b\x32\x35.web.communitygames.AvailableMutatorSparseFloatValues\"\xa6\x01\n\x10\x41vailableMutator\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x08\x63\x61tegory\x18\x02 \x01(\t\x12\x36\n\x04kind\x18\x03 \x01(\x0b\x32(.web.communitygames.AvailableMutatorKind\x12.\n\x08metadata\x18\x04 \x01(\x0b\x32\x1c.web.communitygames.Metadata\x12\n\n\x02id\x18\x05 \x01(\t\"\xe1\x03\n\x11\x41vailableMapEntry\x12\x11\n\tlevelName\x18\x01 \x01(\t\x12\x10\n\x08gameMode\x18\x02 \x01(\t\x12\x15\n\rlevelLocation\x18\x03 \x01(\t\x12\x37\n\x08gameSize\x18\x04 \x01(\x0b\x32%.web.communitygames.AvailableIntValue\x12\x35\n\x06rounds\x18\x05 \x01(\x0b\x32%.web.communitygames.AvailableIntValue\x12;\n\x0cpreRoundSize\x18\x06 \x01(\x0b\x32%.web.communitygames.AvailableIntValue\x12\x39\n\nwarmUpSize\x18\x07 \x01(\x0b\x32%.web.communitygames.AvailableIntValue\x12@\n\x11\x61llowedSpectators\x18\x08 \x01(\x0b\x32%.web.communitygames.AvailableIntValue\x12\x36\n\x08mutators\x18\t \x03(\x0b\x32$.web.communitygames.AvailableMutator\x12.\n\x08metadata\x18\n \x03(\x0b\x32\x1c.web.communitygames.Metadata\"z\n\x0c\x41vailableTag\x12\n\n\x02id\x18\x01 \x01(\t\x12.\n\x08metadata\x18\x02 \x01(\x0b\x32\x1c.web.communitygames.Metadata\x12.\n\x08\x63\x61tegory\x18\x03 \x01(\x0e\x32\x1c.web.communitygames.Category\"~\n\x19\x41vailableAssetCategoryTag\x12\r\n\x05tagId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x14\n\x0c\x63hildrenTags\x18\x03 \x03(\t\x12.\n\x08metadata\x18\x04 \x01(\x0b\x32\x1c.web.communitygames.Metadata\"\x98\x01\n\x18\x41vailableAssetCategories\x12?\n\x08rootTags\x18\x01 \x03(\x0b\x32-.web.communitygames.AvailableAssetCategoryTag\x12;\n\x04tags\x18\x02 \x03(\x0b\x32-.web.communitygames.AvailableAssetCategoryTag\"\xcc\x01\n\x15PlaygroundConstraints\x12\x13\n\x0bmaxNameSize\x18\x01 \x01(\x05\x12\x1a\n\x12maxDescriptionSize\x18\x02 \x01(\x05\x12\x15\n\rmaxSecretSize\x18\x03 \x01(\x05\x12\x19\n\x11maxMapsInRotation\x18\x04 \x01(\x05\x12\x13\n\x0bmaxMutators\x18\x05 \x01(\x05\x12\x19\n\x11maxConfigNameSize\x18\x06 \x01(\x05\x12 \n\x18maxConfigDescriptionSize\x18\x07 \x01(\x05\">\n\x12ModRulesDefinition\x12\x14\n\x0crulesVersion\x18\x01 \x01(\x05\x12\x12\n\nmodBuilder\x18\x02 \x01(\x0c\"\x81\x02\n\x11\x41vailableGameData\x12\x36\n\x08mutators\x18\x01 \x03(\x0b\x32$.web.communitygames.AvailableMutator\x12\x33\n\x04maps\x18\x02 \x03(\x0b\x32%.web.communitygames.AvailableMapEntry\x12\x38\n\x08modRules\x18\x04 \x01(\x0b\x32&.web.communitygames.ModRulesDefinition\x12\x45\n\x0f\x61ssetCategories\x18\x05 \x01(\x0b\x32,.web.communitygames.AvailableAssetCategories\"\xb9\x02\n\tBlueprint\x12\x15\n\rblueprintType\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12@\n\x11\x61vailableGameData\x18\x03 \x01(\x0b\x32%.web.communitygames.AvailableGameData\x12.\n\x08metadata\x18\x04 \x01(\x0b\x32\x1c.web.communitygames.Metadata\x12\x12\n\ncustomData\x18\x05 \x01(\x0c\x12H\n\x15playgroundConstraints\x18\x06 \x01(\x0b\x32).web.communitygames.PlaygroundConstraints\x12\x37\n\ravailableTags\x18\x07 \x03(\x0b\x32 .web.communitygames.AvailableTag\"\x19\n\tShortCode\x12\x0c\n\x04\x63ode\x18\x01 \x01(\t\"\x1c\n\x1aGetProgressionTypesRequest\";\n\rBlueprintInfo\x12\x15\n\rblueprintType\x18\x01 \x01(\t\x12\x13\n\x0b\x62lueprintId\x18\x02 \x01(\t\"T\n\x1bGetProgressionTypesResponse\x12\x35\n\x07\x65ntries\x18\x01 \x03(\x0b\x32$.web.communitygames.ProgressionEntry\"8\n\x1dGetScheduledBlueprintsRequest\x12\x17\n\x0fprotocolVersion\x18\x01 \x01(\t\"W\n\x1eGetScheduledBlueprintsResponse\x12\x35\n\nblueprints\x18\x01 \x01(\x0b\x32!.web.communitygames.BlueprintInfo\"M\n\x19GetBlueprintsByIdResponse\x12\x30\n\tblueprint\x18\x01 \x03(\x0b\x32\x1d.web.communitygames.Blueprint\"Z\n\x16GetConstraintsResponse\x12@\n\x11globalConstraints\x18\x01 \x01(\x0b\x32%.web.communitygames.GlobalConstraints\"e\n\x1eListPlaygroundsByOwnerResponse\x12\x43\n\x13playgroundResponses\x18\x02 \x03(\x0b\x32&.web.communitygames.PlaygroundResponse\"\x96\x04\n\x17\x43reatePlaygroundRequest\x12\x15\n\rblueprintType\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x34\n\x0b\x64\x65scription\x18\x04 \x01(\x0b\x32\x1f.web.communitygames.StringValue\x12-\n\x08mutators\x18\x05 \x03(\x0b\x32\x1b.web.communitygames.Mutator\x12\x34\n\x0bmapRotation\x18\x06 \x01(\x0b\x32\x1f.web.communitygames.MapRotation\x12/\n\x06secret\x18\x07 \x01(\x0b\x32\x1f.web.communitygames.StringValue\x12>\n\x0eserverSettings\x18\x08 \x01(\x0b\x32&.web.communitygames.GameServerSettings\x12\x36\n\x0crestrictions\x18\t \x01(\x0b\x32 .web.communitygames.Restrictions\x12\x18\n\x10originalModRules\x18\n \x01(\x0c\x12:\n\x0f\x61ssetCategories\x18\x0b \x03(\x0b\x32!.web.communitygames.AssetCategory\x12<\n\x0fteamComposition\x18\x0c \x01(\x0b\x32#.web.communitygames.TeamComposition\"P\n\x17UpdatePlaygroundRequest\x12\x35\n\rnewPlayground\x18\x02 \x01(\x0b\x32\x1e.web.communitygames.Playground\"/\n\x17\x44\x65letePlaygroundRequest\x12\x14\n\x0cplaygroundId\x18\x01 \x01(\t\",\n\x14GetPlaygroundRequest\x12\x14\n\x0cplaygroundId\x18\x02 \x01(\t\".\n\x16SharePlaygroundRequest\x12\x14\n\x0cplaygroundId\x18\x01 \x01(\t\"K\n\x17SharePlaygroundResponse\x12\x30\n\tshortCode\x18\x01 \x01(\x0b\x32\x1d.web.communitygames.ShortCode\"^\n\x18\x43reatePlaygroundResponse\x12\x42\n\x12playgroundResponse\x18\x02 \x01(\x0b\x32&.web.communitygames.PlaygroundResponse\"^\n\x18UpdatePlaygroundResponse\x12\x42\n\x12playgroundResponse\x18\x02 \x01(\x0b\x32&.web.communitygames.PlaygroundResponse\"\x1a\n\x18\x44\x65letePlaygroundResponse\"T\n\x16PlaygroundInfoResponse\x12:\n\nplayground\x18\x01 \x01(\x0b\x32&.web.communitygames.PlaygroundResponse*T\n\x08Platform\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x06\n\x02PC\x10\x01\x12\x07\n\x03PS4\x10\x02\x12\x0b\n\x07XBOXONE\x10\x03\x12\x07\n\x03PS5\x10\x04\x12\x08\n\x04XBSX\x10\x05\x12\n\n\x06\x43OMMON\x10\x06*@\n\x0cInputMethods\x12\x07\n\x03\x41LL\x10\x00\x12\x12\n\x0eKEYBOARD_MOUSE\x10\x01\x12\x13\n\x0fGAME_CONTROLLER\x10\x03*l\n\rIncludeFields\x12\x17\n\x13\x41VAILABLE_GAME_DATA\x10\x00\x12\x0c\n\x08METADATA\x10\x01\x12\x0f\n\x0b\x43USTOM_DATA\x10\x02\x12\x0f\n\x0b\x43ONSTRAINTS\x10\x03\x12\x12\n\x0e\x41VAILABLE_TAGS\x10\x04*!\n\x05State\x12\n\n\x06\x41\x43TIVE\x10\x00\x12\x0c\n\x08\x41RCHIVED\x10\x01*_\n\x08\x43\x61tegory\x12\x14\n\x10\x43\x41TEGORY_UNKNOWN\x10\x00\x12\x11\n\rCATEGORY_MODE\x10\x01\x12\x14\n\x10\x43\x41TEGORY_PACKAGE\x10\x02\x12\x14\n\x10\x43\x41TEGORY_GENERAL\x10\x03*-\n\x10PhantomGameState\x12\x0b\n\x07\x45NABLED\x10\x00\x12\x0c\n\x08\x44ISABLED\x10\x01*.\n\x0c\x43\x61pacityType\x12\x0f\n\x0b\x41I_BACKFILL\x10\x00\x12\r\n\tAI_STATIC\x10\x01*8\n\x10RotationBehavior\x12\x08\n\x04LOOP\x10\x00\x12\r\n\tMATCHMAKE\x10\x01\x12\x0b\n\x07ONE_MAP\x10\x02*\x1d\n\rRoundBehavior\x12\x0c\n\x08\x43ONTINUE\x10\x00*a\n\x0f\x42\x61lancingMethod\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x10\n\x0c\x45VEN_NUMBERS\x10\x01\x12\x13\n\x0f\x45VEN_PERCENTAGE\x10\x02\x12\x16\n\x12\x46ILL_IN_TEAM_ORDER\x10\x03\x32\x9b\t\n\x0e\x43ommunityGames\x12o\n\x10\x63reatePlayground\x12+.web.communitygames.CreatePlaygroundRequest\x1a,.web.communitygames.CreatePlaygroundResponse\"\x00\x12o\n\x10updatePlayground\x12+.web.communitygames.UpdatePlaygroundRequest\x1a,.web.communitygames.UpdatePlaygroundResponse\"\x00\x12o\n\x10\x64\x65letePlayground\x12+.web.communitygames.DeletePlaygroundRequest\x1a,.web.communitygames.DeletePlaygroundResponse\"\x00\x12g\n\rgetPlayground\x12(.web.communitygames.GetPlaygroundRequest\x1a*.web.communitygames.PlaygroundInfoResponse\"\x00\x12\x81\x01\n\x16listPlaygroundsByOwner\x12\x31.web.communitygames.ListPlaygroundsByOwnerRequest\x1a\x32.web.communitygames.ListPlaygroundsByOwnerResponse\"\x00\x12r\n\x11getBlueprintsById\x12,.web.communitygames.GetBlueprintsByIdRequest\x1a-.web.communitygames.GetBlueprintsByIdResponse\"\x00\x12\x81\x01\n\x16getScheduledBlueprints\x12\x31.web.communitygames.GetScheduledBlueprintsRequest\x1a\x32.web.communitygames.GetScheduledBlueprintsResponse\"\x00\x12i\n\x0egetConstraints\x12).web.communitygames.GetConstraintsRequest\x1a*.web.communitygames.GetConstraintsResponse\"\x00\x12l\n\x0fsharePlayground\x12*.web.communitygames.SharePlaygroundRequest\x1a+.web.communitygames.SharePlaygroundResponse\"\x00\x12x\n\x13getProgressionTypes\x12..web.communitygames.GetProgressionTypesRequest\x1a/.web.communitygames.GetProgressionTypesResponse\"\x00\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x14\x63ommunitygames.proto\x12\x12web.communitygames\"_\n\x10ProgressionEntry\x12\x17\n\x0fprogressionMode\x18\x01 \x01(\t\x12\x32\n\rprogressibles\x18\x02 \x03(\x0b\x32\x1b.web.communitygames.Mutator\":\n\x13TranslationMetadata\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x15\n\rtranslationId\x18\x02 \x01(\t\",\n\x10ResourceLocation\x12\x0b\n\x03ref\x18\x01 \x01(\t\x12\x0b\n\x03url\x18\x02 \x01(\t\"P\n\x08Resource\x12\x36\n\x08location\x18\x01 \x01(\x0b\x32$.web.communitygames.ResourceLocation\x12\x0c\n\x04kind\x18\x02 \x01(\t\"z\n\x08Metadata\x12=\n\x0ctranslations\x18\x01 \x03(\x0b\x32\'.web.communitygames.TranslationMetadata\x12/\n\tresources\x18\x02 \x03(\x0b\x32\x1c.web.communitygames.Resource\"T\n\x03Tag\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\tsortOrder\x18\x02 \x01(\x05\x12.\n\x08metadata\x18\x03 \x01(\x0b\x32\x1c.web.communitygames.Metadata\" \n\x0fProgressionMode\x12\r\n\x05value\x18\x01 \x01(\t\"\xf1\x01\n\x12PlaygroundResponse\x12:\n\x12originalPlayground\x18\x01 \x01(\x0b\x32\x1e.web.communitygames.Playground\x12;\n\x13validatedPlayground\x18\x02 \x01(\x0b\x32\x1e.web.communitygames.Playground\x12$\n\x03tag\x18\x03 \x03(\x0b\x32\x17.web.communitygames.Tag\x12<\n\x0fprogressionMode\x18\x04 \x01(\x0b\x32#.web.communitygames.ProgressionMode\"\xd0\x01\n\x07MapInfo\x12\x0f\n\x07mapname\x18\x01 \x01(\t\x12\x0c\n\x04mode\x18\x02 \x01(\t\x12\x10\n\x08gameSize\x18\x03 \x01(\r\x12\x0e\n\x06rounds\x18\x04 \x01(\r\x12-\n\x08mutators\x18\x05 \x01(\x0b\x32\x1b.web.communitygames.Mutator\x12\x10\n\x08location\x18\x06 \x01(\t\x12\x14\n\x0cpreRoundSize\x18\x07 \x01(\r\x12\x12\n\nwarmUpSize\x18\x08 \x01(\r\x12\x19\n\x11\x61llowedSpectators\x18\t \x01(\r\"\xb2\x01\n\x0bMapRotation\x12)\n\x04maps\x18\x01 \x03(\x0b\x32\x1b.web.communitygames.MapInfo\x12>\n\x10rotationBehavior\x18\x02 \x01(\x0e\x32$.web.communitygames.RotationBehavior\x12\x38\n\rroundBehavior\x18\x03 \x01(\x0e\x32!.web.communitygames.RoundBehavior\"1\n\rTeamStructure\x12\x0e\n\x06teamId\x18\x01 \x01(\x05\x12\x10\n\x08\x63\x61pacity\x18\x02 \x01(\x05\"q\n\x15InternalTeamStructure\x12\x0e\n\x06teamId\x18\x01 \x01(\x05\x12\x10\n\x08\x63\x61pacity\x18\x02 \x01(\x05\x12\x36\n\x0c\x63\x61pacityType\x18\x03 \x01(\x0e\x32 .web.communitygames.CapacityType\"7\n\x17MutatorSparseFloatEntry\x12\r\n\x05index\x18\x01 \x01(\r\x12\r\n\x05value\x18\x02 \x01(\x02\"{\n\x12MutatorSparseFloat\x12\x14\n\x0c\x64\x65\x66\x61ultValue\x18\x01 \x01(\x02\x12\x0c\n\x04size\x18\x02 \x01(\r\x12\x41\n\x0csparseValues\x18\x03 \x03(\x0b\x32+.web.communitygames.MutatorSparseFloatEntry\"\x1d\n\x0cMutatorFloat\x12\r\n\x05value\x18\x01 \x01(\x02\"#\n\x0eMutatorBoolean\x12\x11\n\tboolValue\x18\x01 \x01(\x08\"$\n\rMutatorString\x12\x13\n\x0bstringValue\x18\x01 \x01(\t\"\x1b\n\nMutatorInt\x12\r\n\x05value\x18\x01 \x01(\x05\"9\n\x19MutatorSparseBooleanEntry\x12\r\n\x05index\x18\x01 \x01(\r\x12\r\n\x05value\x18\x02 \x01(\x08\"\x7f\n\x14MutatorSparseBoolean\x12\x14\n\x0c\x64\x65\x66\x61ultValue\x18\x01 \x01(\x08\x12\x0c\n\x04size\x18\x02 \x01(\r\x12\x43\n\x0csparseValues\x18\x03 \x03(\x0b\x32-.web.communitygames.MutatorSparseBooleanEntry\"!\n\x0fSparseIntEntity\x12\x0e\n\x06values\x18\x01 \x03(\x05\"5\n\x15MutatorSparseIntEntry\x12\r\n\x05index\x18\x01 \x01(\r\x12\r\n\x05value\x18\x02 \x01(\x05\"w\n\x10MutatorSparseInt\x12\x14\n\x0c\x64\x65\x66\x61ultValue\x18\x01 \x01(\x05\x12\x0c\n\x04size\x18\x02 \x01(\r\x12?\n\x0csparseValues\x18\x03 \x01(\x0b\x32).web.communitygames.MutatorSparseIntEntry\"\xbb\x03\n\x0bMutatorKind\x12:\n\x0emutatorBoolean\x18\x01 \x01(\x0b\x32\".web.communitygames.MutatorBoolean\x12\x38\n\rmutatorString\x18\x04 \x01(\x0b\x32!.web.communitygames.MutatorString\x12\x36\n\x0cmutatorFloat\x18\x05 \x01(\x0b\x32 .web.communitygames.MutatorFloat\x12\x32\n\nmutatorInt\x18\x06 \x01(\x0b\x32\x1e.web.communitygames.MutatorInt\x12\x46\n\x14mutatorSparseBoolean\x18\x07 \x01(\x0b\x32(.web.communitygames.MutatorSparseBoolean\x12>\n\x10mutatorSparseInt\x18\x08 \x01(\x0b\x32$.web.communitygames.MutatorSparseInt\x12\x42\n\x12mutatorSparseFloat\x18\t \x01(\x0b\x32&.web.communitygames.MutatorSparseFloat\"\xc3\x01\n\x0fTeamComposition\x12\x30\n\x05teams\x18\x01 \x01(\x0b\x32!.web.communitygames.TeamStructure\x12@\n\rinternalTeams\x18\x02 \x03(\x0b\x32).web.communitygames.InternalTeamStructure\x12<\n\x0f\x62\x61lancingMethod\x18\x03 \x01(\x0e\x32#.web.communitygames.BalancingMethod\"d\n\x07Mutator\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x08\x63\x61tegory\x18\x02 \x01(\t\x12-\n\x04kind\x18\x03 \x01(\x0b\x32\x1f.web.communitygames.MutatorKind\x12\n\n\x02id\x18\x04 \x01(\t\"/\n\tTimestamp\x12\x13\n\x07seconds\x18\x01 \x01(\x03\x42\x02\x30\x01\x12\r\n\x05nanos\x18\x02 \x01(\x05\"\x1c\n\x0bStringValue\x12\r\n\x05value\x18\x01 \x01(\t\"/\n\x11GameServerMessage\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\"\xcb\x02\n\x12GameServerSettings\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x34\n\x0b\x64\x65scription\x18\x02 \x01(\x0b\x32\x1f.web.communitygames.StringValue\x12@\n\x11gameServerMessage\x18\x03 \x03(\x0b\x32%.web.communitygames.GameServerMessage\x12\x33\n\nconfigName\x18\x04 \x01(\x0b\x32\x1f.web.communitygames.StringValue\x12:\n\x11\x43onfigDescription\x18\x05 \x01(\x0b\x32\x1f.web.communitygames.StringValue\x12>\n\x10phantomGameState\x18\x06 \x01(\x0e\x32$.web.communitygames.PhantomGameState\"l\n\nPlayerInfo\x12\x15\n\tnucleusId\x18\x01 \x01(\x04\x42\x02\x30\x01\x12\x15\n\tpersonaId\x18\x02 \x01(\x04\x42\x02\x30\x01\x12\x30\n\nplatformId\x18\x03 \x01(\x0e\x32\x1c.web.communitygames.Platform\"G\n\x14PlatformRestrictions\x12/\n\tplatforms\x18\x01 \x03(\x0e\x32\x1c.web.communitygames.Platform\"P\n\x16InputMethodResrictions\x12\x36\n\x0cinputMethods\x18\x01 \x03(\x0e\x32 .web.communitygames.InputMethods\"\xa4\x01\n\x0cRestrictions\x12\x46\n\x14platformRestrictions\x18\x01 \x01(\x0b\x32(.web.communitygames.PlatformRestrictions\x12L\n\x18inputMethodResctrictions\x18\x02 \x01(\x0b\x32*.web.communitygames.InputMethodResrictions\"R\n\nCompressed\x12\x18\n\x10\x63ompiledModRules\x18\x01 \x01(\x0c\x12\x14\n\x0crulesVersion\x18\x02 \x01(\x05\x12\x14\n\x0cinflatedSize\x18\x03 \x01(\x05\">\n\x0cUncompressed\x12\x18\n\x10\x63ompiledModRules\x18\x01 \x01(\x0c\x12\x14\n\x0crulesVersion\x18\x02 \x01(\x05\"{\n\rCompiledRules\x12\x36\n\x0cuncompressed\x18\x01 \x01(\x0b\x32 .web.communitygames.Uncompressed\x12\x32\n\ncompressed\x18\x02 \x01(\x0b\x32\x1e.web.communitygames.Compressed\"n\n\x12\x43ompatibleModRules\x12\r\n\x05rules\x18\x01 \x01(\x0c\x12\x14\n\x0crulesVersion\x18\x03 \x01(\x05\x12\x33\n\x08\x63ompiled\x18\x04 \x01(\x0b\x32!.web.communitygames.CompiledRules\"Z\n\x14InCompatibleModRules\x12\r\n\x05rules\x18\x01 \x01(\x0c\x12\x14\n\x0crulesVersion\x18\x02 \x01(\x05\x12\x1d\n\x15\x62lueprintRulesVersion\x18\x03 \x01(\x05\"\x98\x01\n\x10OriginalModRules\x12?\n\x0f\x63ompatibleRules\x18\x01 \x01(\x0b\x32&.web.communitygames.CompatibleModRules\x12\x43\n\x11incompatibleRules\x18\x02 \x01(\x0b\x32(.web.communitygames.InCompatibleModRules\"K\n\x1f\x41ssetCategoryTagBooleanOverride\x12\x19\n\x11\x61ssetCategoryTags\x18\x01 \x03(\t\x12\r\n\x05value\x18\x02 \x01(\x08\"_\n#AssetCategoryTagBooleanTeamOverride\x12\x19\n\x11\x61ssetCategoryTags\x18\x01 \x03(\t\x12\r\n\x05value\x18\x02 \x01(\x08\x12\x0e\n\x06teamId\x18\x03 \x01(\r\"\xc4\x01\n\x14\x41ssetCategoryBoolean\x12\x14\n\x0c\x64\x65\x66\x61ultValue\x18\x01 \x01(\x08\x12\x46\n\toverrides\x18\x02 \x01(\x0b\x32\x33.web.communitygames.AssetCategoryTagBooleanOverride\x12N\n\rteamOverrides\x18\x03 \x03(\x0b\x32\x37.web.communitygames.AssetCategoryTagBooleanTeamOverride\"Y\n\rAssetCategory\x12\r\n\x05tagId\x18\x01 \x01(\t\x12\x39\n\x07\x62oolean\x18\x02 \x01(\x0b\x32(.web.communitygames.AssetCategoryBoolean\"\xca\x05\n\nPlayground\x12\x14\n\x0cplaygroundId\x18\x01 \x01(\t\x12\x15\n\rblueprintType\x18\x03 \x01(\t\x12\x0c\n\x04name\x18\x04 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x05 \x01(\t\x12-\n\x08mutators\x18\x06 \x03(\x0b\x32\x1b.web.communitygames.Mutator\x12\x34\n\x0bmapRotation\x18\x07 \x01(\x0b\x32\x1f.web.communitygames.MapRotation\x12(\n\x05state\x18\x08 \x01(\x0e\x32\x19.web.communitygames.State\x12\x10\n\x08\x63hecksum\x18\t \x01(\t\x12\x0e\n\x06secret\x18\n \x01(\t\x12\x30\n\tcreatedAt\x18\x0b \x01(\x0b\x32\x1d.web.communitygames.Timestamp\x12\x30\n\tupdatedAt\x18\x0c \x01(\x0b\x32\x1d.web.communitygames.Timestamp\x12>\n\x0eserverSettings\x18\r \x01(\x0b\x32&.web.communitygames.GameServerSettings\x12-\n\x05owner\x18\x0e \x01(\x0b\x32\x1e.web.communitygames.PlayerInfo\x12\x36\n\x0crestrictions\x18\x0f \x01(\x0b\x32 .web.communitygames.Restrictions\x12\x36\n\x08modRules\x18\x10 \x01(\x0b\x32$.web.communitygames.OriginalModRules\x12:\n\x0f\x61ssetCategories\x18\x11 \x03(\x0b\x32!.web.communitygames.AssetCategory\x12<\n\x0fteamComposition\x18\x12 \x01(\x0b\x32#.web.communitygames.TeamComposition\"O\n\x1dListPlaygroundsByOwnerRequest\x12\x15\n\rblueprintType\x18\x01 \x01(\t\x12\x17\n\x0fprotocolVersion\x18\x02 \x01(\t\"\x17\n\x15GetConstraintsRequest\"j\n\x18GetBlueprintsByIdRequest\x12\x14\n\x0c\x62lueprintIds\x18\x01 \x03(\t\x12\x38\n\rincludeFields\x18\x02 \x03(\x0e\x32!.web.communitygames.IncludeFields\"w\n\x11GlobalConstraints\x12\x1f\n\x17maxPlaygroundsPerPlayer\x18\x01 \x01(\x05\x12\x1f\n\x17maxGameServersPerPlayer\x18\x02 \x01(\x05\x12 \n\x18maxFollowedHostsListSize\x18\x03 \x01(\x05\".\n\x08IntRange\x12\x10\n\x08minValue\x18\x01 \x01(\x05\x12\x10\n\x08maxValue\x18\x02 \x01(\x05\"|\n\x12\x41vailableIntValues\x12+\n\x05range\x18\x01 \x01(\x0b\x32\x1c.web.communitygames.IntRange\x12\x39\n\x0csparseValues\x18\x02 \x01(\x0b\x32#.web.communitygames.SparseIntEntity\"j\n\x11\x41vailableIntValue\x12\x14\n\x0c\x64\x65\x66\x61ultValue\x18\x01 \x01(\x05\x12?\n\x0f\x61vailableValues\x18\x02 \x01(\x0b\x32&.web.communitygames.AvailableIntValues\"#\n\x11SparseFloatValues\x12\x0e\n\x06values\x18\x01 \x03(\x02\"0\n\nFloatRange\x12\x10\n\x08minValue\x18\x01 \x01(\x02\x12\x10\n\x08maxValue\x18\x02 \x01(\x02\"\x82\x01\n\x14\x41vailableFloatValues\x12-\n\x05range\x18\x01 \x01(\x0b\x32\x1e.web.communitygames.FloatRange\x12;\n\x0csparseValues\x18\x02 \x01(\x0b\x32%.web.communitygames.SparseFloatValues\"\x93\x01\n\x1b\x41vailableMutatorFloatValues\x12\x31\n\x07mutator\x18\x01 \x01(\x0b\x32 .web.communitygames.MutatorFloat\x12\x41\n\x0f\x61vailableValues\x18\x02 \x01(\x0b\x32(.web.communitygames.AvailableFloatValues\"\x8d\x01\n\x19\x41vailableMutatorIntValues\x12/\n\x07mutator\x18\x01 \x01(\x0b\x32\x1e.web.communitygames.MutatorInt\x12?\n\x0f\x61vailableValues\x18\x02 \x01(\x0b\x32&.web.communitygames.AvailableIntValues\"\x99\x01\n\x1f\x41vailableMutatorSparseIntValues\x12\x35\n\x07mutator\x18\x01 \x01(\x0b\x32$.web.communitygames.MutatorSparseInt\x12?\n\x0f\x61vailableValues\x18\x02 \x01(\x0b\x32&.web.communitygames.AvailableIntValues\"\x9f\x01\n!AvailableMutatorSparseFloatValues\x12\x37\n\x07mutator\x18\x01 \x01(\x0b\x32&.web.communitygames.MutatorSparseFloat\x12\x41\n\x0f\x61vailableValues\x18\x02 \x01(\x0b\x32(.web.communitygames.AvailableFloatValues\"\x98\x04\n\x14\x41vailableMutatorKind\x12:\n\x0emutatorBoolean\x18\x01 \x01(\x0b\x32\".web.communitygames.MutatorBoolean\x12\x38\n\rmutatorString\x18\x04 \x01(\x0b\x32!.web.communitygames.MutatorString\x12K\n\x12mutatorFloatValues\x18\x07 \x01(\x0b\x32/.web.communitygames.AvailableMutatorFloatValues\x12G\n\x10mutatorIntValues\x18\x08 \x01(\x0b\x32-.web.communitygames.AvailableMutatorIntValues\x12\x46\n\x14mutatorSparseBoolean\x18\t \x01(\x0b\x32(.web.communitygames.MutatorSparseBoolean\x12S\n\x16mutatorSparseIntValues\x18\n \x01(\x0b\x32\x33.web.communitygames.AvailableMutatorSparseIntValues\x12W\n\x18mutatorSparseFloatValues\x18\x0b \x01(\x0b\x32\x35.web.communitygames.AvailableMutatorSparseFloatValues\"\xa6\x01\n\x10\x41vailableMutator\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x08\x63\x61tegory\x18\x02 \x01(\t\x12\x36\n\x04kind\x18\x03 \x01(\x0b\x32(.web.communitygames.AvailableMutatorKind\x12.\n\x08metadata\x18\x04 \x01(\x0b\x32\x1c.web.communitygames.Metadata\x12\n\n\x02id\x18\x05 \x01(\t\"\xe1\x03\n\x11\x41vailableMapEntry\x12\x11\n\tlevelName\x18\x01 \x01(\t\x12\x10\n\x08gameMode\x18\x02 \x01(\t\x12\x15\n\rlevelLocation\x18\x03 \x01(\t\x12\x37\n\x08gameSize\x18\x04 \x01(\x0b\x32%.web.communitygames.AvailableIntValue\x12\x35\n\x06rounds\x18\x05 \x01(\x0b\x32%.web.communitygames.AvailableIntValue\x12;\n\x0cpreRoundSize\x18\x06 \x01(\x0b\x32%.web.communitygames.AvailableIntValue\x12\x39\n\nwarmUpSize\x18\x07 \x01(\x0b\x32%.web.communitygames.AvailableIntValue\x12@\n\x11\x61llowedSpectators\x18\x08 \x01(\x0b\x32%.web.communitygames.AvailableIntValue\x12\x36\n\x08mutators\x18\t \x03(\x0b\x32$.web.communitygames.AvailableMutator\x12.\n\x08metadata\x18\n \x03(\x0b\x32\x1c.web.communitygames.Metadata\"z\n\x0c\x41vailableTag\x12\n\n\x02id\x18\x01 \x01(\t\x12.\n\x08metadata\x18\x02 \x01(\x0b\x32\x1c.web.communitygames.Metadata\x12.\n\x08\x63\x61tegory\x18\x03 \x01(\x0e\x32\x1c.web.communitygames.Category\"~\n\x19\x41vailableAssetCategoryTag\x12\r\n\x05tagId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x14\n\x0c\x63hildrenTags\x18\x03 \x03(\t\x12.\n\x08metadata\x18\x04 \x01(\x0b\x32\x1c.web.communitygames.Metadata\"\x98\x01\n\x18\x41vailableAssetCategories\x12?\n\x08rootTags\x18\x01 \x03(\x0b\x32-.web.communitygames.AvailableAssetCategoryTag\x12;\n\x04tags\x18\x02 \x03(\x0b\x32-.web.communitygames.AvailableAssetCategoryTag\"\xcc\x01\n\x15PlaygroundConstraints\x12\x13\n\x0bmaxNameSize\x18\x01 \x01(\x05\x12\x1a\n\x12maxDescriptionSize\x18\x02 \x01(\x05\x12\x15\n\rmaxSecretSize\x18\x03 \x01(\x05\x12\x19\n\x11maxMapsInRotation\x18\x04 \x01(\x05\x12\x13\n\x0bmaxMutators\x18\x05 \x01(\x05\x12\x19\n\x11maxConfigNameSize\x18\x06 \x01(\x05\x12 \n\x18maxConfigDescriptionSize\x18\x07 \x01(\x05\">\n\x12ModRulesDefinition\x12\x14\n\x0crulesVersion\x18\x01 \x01(\x05\x12\x12\n\nmodBuilder\x18\x02 \x01(\x0c\"\x81\x02\n\x11\x41vailableGameData\x12\x36\n\x08mutators\x18\x01 \x03(\x0b\x32$.web.communitygames.AvailableMutator\x12\x33\n\x04maps\x18\x02 \x03(\x0b\x32%.web.communitygames.AvailableMapEntry\x12\x38\n\x08modRules\x18\x04 \x01(\x0b\x32&.web.communitygames.ModRulesDefinition\x12\x45\n\x0f\x61ssetCategories\x18\x05 \x01(\x0b\x32,.web.communitygames.AvailableAssetCategories\"\xb9\x02\n\tBlueprint\x12\x15\n\rblueprintType\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12@\n\x11\x61vailableGameData\x18\x03 \x01(\x0b\x32%.web.communitygames.AvailableGameData\x12.\n\x08metadata\x18\x04 \x01(\x0b\x32\x1c.web.communitygames.Metadata\x12\x12\n\ncustomData\x18\x05 \x01(\x0c\x12H\n\x15playgroundConstraints\x18\x06 \x01(\x0b\x32).web.communitygames.PlaygroundConstraints\x12\x37\n\ravailableTags\x18\x07 \x03(\x0b\x32 .web.communitygames.AvailableTag\"\x19\n\tShortCode\x12\x0c\n\x04\x63ode\x18\x01 \x01(\t\"\x1c\n\x1aGetProgressionTypesRequest\";\n\rBlueprintInfo\x12\x15\n\rblueprintType\x18\x01 \x01(\t\x12\x13\n\x0b\x62lueprintId\x18\x02 \x01(\t\"T\n\x1bGetProgressionTypesResponse\x12\x35\n\x07\x65ntries\x18\x01 \x03(\x0b\x32$.web.communitygames.ProgressionEntry\"8\n\x1dGetScheduledBlueprintsRequest\x12\x17\n\x0fprotocolVersion\x18\x01 \x01(\t\"W\n\x1eGetScheduledBlueprintsResponse\x12\x35\n\nblueprints\x18\x01 \x01(\x0b\x32!.web.communitygames.BlueprintInfo\"M\n\x19GetBlueprintsByIdResponse\x12\x30\n\tblueprint\x18\x01 \x03(\x0b\x32\x1d.web.communitygames.Blueprint\"Z\n\x16GetConstraintsResponse\x12@\n\x11globalConstraints\x18\x01 \x01(\x0b\x32%.web.communitygames.GlobalConstraints\"e\n\x1eListPlaygroundsByOwnerResponse\x12\x43\n\x13playgroundResponses\x18\x02 \x03(\x0b\x32&.web.communitygames.PlaygroundResponse\"\x96\x04\n\x17\x43reatePlaygroundRequest\x12\x15\n\rblueprintType\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x34\n\x0b\x64\x65scription\x18\x04 \x01(\x0b\x32\x1f.web.communitygames.StringValue\x12-\n\x08mutators\x18\x05 \x03(\x0b\x32\x1b.web.communitygames.Mutator\x12\x34\n\x0bmapRotation\x18\x06 \x01(\x0b\x32\x1f.web.communitygames.MapRotation\x12/\n\x06secret\x18\x07 \x01(\x0b\x32\x1f.web.communitygames.StringValue\x12>\n\x0eserverSettings\x18\x08 \x01(\x0b\x32&.web.communitygames.GameServerSettings\x12\x36\n\x0crestrictions\x18\t \x01(\x0b\x32 .web.communitygames.Restrictions\x12\x18\n\x10originalModRules\x18\n \x01(\x0c\x12:\n\x0f\x61ssetCategories\x18\x0b \x03(\x0b\x32!.web.communitygames.AssetCategory\x12<\n\x0fteamComposition\x18\x0c \x01(\x0b\x32#.web.communitygames.TeamComposition\"P\n\x17UpdatePlaygroundRequest\x12\x35\n\rnewPlayground\x18\x02 \x01(\x0b\x32\x1e.web.communitygames.Playground\"/\n\x17\x44\x65letePlaygroundRequest\x12\x14\n\x0cplaygroundId\x18\x01 \x01(\t\",\n\x14GetPlaygroundRequest\x12\x14\n\x0cplaygroundId\x18\x02 \x01(\t\".\n\x16SharePlaygroundRequest\x12\x14\n\x0cplaygroundId\x18\x01 \x01(\t\"K\n\x17SharePlaygroundResponse\x12\x30\n\tshortCode\x18\x01 \x01(\x0b\x32\x1d.web.communitygames.ShortCode\"^\n\x18\x43reatePlaygroundResponse\x12\x42\n\x12playgroundResponse\x18\x02 \x01(\x0b\x32&.web.communitygames.PlaygroundResponse\"^\n\x18UpdatePlaygroundResponse\x12\x42\n\x12playgroundResponse\x18\x02 \x01(\x0b\x32&.web.communitygames.PlaygroundResponse\"\x1a\n\x18\x44\x65letePlaygroundResponse\"T\n\x16PlaygroundInfoResponse\x12:\n\nplayground\x18\x01 \x01(\x0b\x32&.web.communitygames.PlaygroundResponse*T\n\x08Platform\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x06\n\x02PC\x10\x01\x12\x07\n\x03PS4\x10\x02\x12\x0b\n\x07XBOXONE\x10\x03\x12\x07\n\x03PS5\x10\x04\x12\x08\n\x04XBSX\x10\x05\x12\n\n\x06\x43OMMON\x10\x06*@\n\x0cInputMethods\x12\x07\n\x03\x41LL\x10\x00\x12\x12\n\x0eKEYBOARD_MOUSE\x10\x01\x12\x13\n\x0fGAME_CONTROLLER\x10\x03*l\n\rIncludeFields\x12\x17\n\x13\x41VAILABLE_GAME_DATA\x10\x00\x12\x0c\n\x08METADATA\x10\x01\x12\x0f\n\x0b\x43USTOM_DATA\x10\x02\x12\x0f\n\x0b\x43ONSTRAINTS\x10\x03\x12\x12\n\x0e\x41VAILABLE_TAGS\x10\x04*!\n\x05State\x12\n\n\x06\x41\x43TIVE\x10\x00\x12\x0c\n\x08\x41RCHIVED\x10\x01*_\n\x08\x43\x61tegory\x12\x14\n\x10\x43\x41TEGORY_UNKNOWN\x10\x00\x12\x11\n\rCATEGORY_MODE\x10\x01\x12\x14\n\x10\x43\x41TEGORY_PACKAGE\x10\x02\x12\x14\n\x10\x43\x41TEGORY_GENERAL\x10\x03*-\n\x10PhantomGameState\x12\x0b\n\x07\x45NABLED\x10\x00\x12\x0c\n\x08\x44ISABLED\x10\x01*.\n\x0c\x43\x61pacityType\x12\x0f\n\x0b\x41I_BACKFILL\x10\x00\x12\r\n\tAI_STATIC\x10\x01*8\n\x10RotationBehavior\x12\x08\n\x04LOOP\x10\x00\x12\r\n\tMATCHMAKE\x10\x01\x12\x0b\n\x07ONE_MAP\x10\x02*\x1d\n\rRoundBehavior\x12\x0c\n\x08\x43ONTINUE\x10\x00*a\n\x0f\x42\x61lancingMethod\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x10\n\x0c\x45VEN_NUMBERS\x10\x01\x12\x13\n\x0f\x45VEN_PERCENTAGE\x10\x02\x12\x16\n\x12\x46ILL_IN_TEAM_ORDER\x10\x03\x32\x9b\t\n\x0e\x43ommunityGames\x12o\n\x10\x63reatePlayground\x12+.web.communitygames.CreatePlaygroundRequest\x1a,.web.communitygames.CreatePlaygroundResponse\"\x00\x12o\n\x10updatePlayground\x12+.web.communitygames.UpdatePlaygroundRequest\x1a,.web.communitygames.UpdatePlaygroundResponse\"\x00\x12o\n\x10\x64\x65letePlayground\x12+.web.communitygames.DeletePlaygroundRequest\x1a,.web.communitygames.DeletePlaygroundResponse\"\x00\x12g\n\rgetPlayground\x12(.web.communitygames.GetPlaygroundRequest\x1a*.web.communitygames.PlaygroundInfoResponse\"\x00\x12\x81\x01\n\x16listPlaygroundsByOwner\x12\x31.web.communitygames.ListPlaygroundsByOwnerRequest\x1a\x32.web.communitygames.ListPlaygroundsByOwnerResponse\"\x00\x12r\n\x11getBlueprintsById\x12,.web.communitygames.GetBlueprintsByIdRequest\x1a-.web.communitygames.GetBlueprintsByIdResponse\"\x00\x12\x81\x01\n\x16getScheduledBlueprints\x12\x31.web.communitygames.GetScheduledBlueprintsRequest\x1a\x32.web.communitygames.GetScheduledBlueprintsResponse\"\x00\x12i\n\x0egetConstraints\x12).web.communitygames.GetConstraintsRequest\x1a*.web.communitygames.GetConstraintsResponse\"\x00\x12l\n\x0fsharePlayground\x12*.web.communitygames.SharePlaygroundRequest\x1a+.web.communitygames.SharePlaygroundResponse\"\x00\x12x\n\x13getProgressionTypes\x12..web.communitygames.GetProgressionTypesRequest\x1a/.web.communitygames.GetProgressionTypesResponse\"\x00\x62\x06proto3') _PLATFORM = DESCRIPTOR.enum_types_by_name['Platform'] Platform = enum_type_wrapper.EnumTypeWrapper(_PLATFORM) @@ -162,616 +162,616 @@ _PLAYGROUNDINFORESPONSE = DESCRIPTOR.message_types_by_name['PlaygroundInfoResponse'] ProgressionEntry = _reflection.GeneratedProtocolMessageType('ProgressionEntry', (_message.Message,), { 'DESCRIPTOR' : _PROGRESSIONENTRY, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.ProgressionEntry) }) _sym_db.RegisterMessage(ProgressionEntry) TranslationMetadata = _reflection.GeneratedProtocolMessageType('TranslationMetadata', (_message.Message,), { 'DESCRIPTOR' : _TRANSLATIONMETADATA, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.TranslationMetadata) }) _sym_db.RegisterMessage(TranslationMetadata) ResourceLocation = _reflection.GeneratedProtocolMessageType('ResourceLocation', (_message.Message,), { 'DESCRIPTOR' : _RESOURCELOCATION, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.ResourceLocation) }) _sym_db.RegisterMessage(ResourceLocation) Resource = _reflection.GeneratedProtocolMessageType('Resource', (_message.Message,), { 'DESCRIPTOR' : _RESOURCE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.Resource) }) _sym_db.RegisterMessage(Resource) Metadata = _reflection.GeneratedProtocolMessageType('Metadata', (_message.Message,), { 'DESCRIPTOR' : _METADATA, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.Metadata) }) _sym_db.RegisterMessage(Metadata) Tag = _reflection.GeneratedProtocolMessageType('Tag', (_message.Message,), { 'DESCRIPTOR' : _TAG, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.Tag) }) _sym_db.RegisterMessage(Tag) ProgressionMode = _reflection.GeneratedProtocolMessageType('ProgressionMode', (_message.Message,), { 'DESCRIPTOR' : _PROGRESSIONMODE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.ProgressionMode) }) _sym_db.RegisterMessage(ProgressionMode) PlaygroundResponse = _reflection.GeneratedProtocolMessageType('PlaygroundResponse', (_message.Message,), { 'DESCRIPTOR' : _PLAYGROUNDRESPONSE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.PlaygroundResponse) }) _sym_db.RegisterMessage(PlaygroundResponse) MapInfo = _reflection.GeneratedProtocolMessageType('MapInfo', (_message.Message,), { 'DESCRIPTOR' : _MAPINFO, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.MapInfo) }) _sym_db.RegisterMessage(MapInfo) MapRotation = _reflection.GeneratedProtocolMessageType('MapRotation', (_message.Message,), { 'DESCRIPTOR' : _MAPROTATION, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.MapRotation) }) _sym_db.RegisterMessage(MapRotation) TeamStructure = _reflection.GeneratedProtocolMessageType('TeamStructure', (_message.Message,), { 'DESCRIPTOR' : _TEAMSTRUCTURE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.TeamStructure) }) _sym_db.RegisterMessage(TeamStructure) InternalTeamStructure = _reflection.GeneratedProtocolMessageType('InternalTeamStructure', (_message.Message,), { 'DESCRIPTOR' : _INTERNALTEAMSTRUCTURE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.InternalTeamStructure) }) _sym_db.RegisterMessage(InternalTeamStructure) MutatorSparseFloatEntry = _reflection.GeneratedProtocolMessageType('MutatorSparseFloatEntry', (_message.Message,), { 'DESCRIPTOR' : _MUTATORSPARSEFLOATENTRY, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.MutatorSparseFloatEntry) }) _sym_db.RegisterMessage(MutatorSparseFloatEntry) MutatorSparseFloat = _reflection.GeneratedProtocolMessageType('MutatorSparseFloat', (_message.Message,), { 'DESCRIPTOR' : _MUTATORSPARSEFLOAT, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.MutatorSparseFloat) }) _sym_db.RegisterMessage(MutatorSparseFloat) MutatorFloat = _reflection.GeneratedProtocolMessageType('MutatorFloat', (_message.Message,), { 'DESCRIPTOR' : _MUTATORFLOAT, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.MutatorFloat) }) _sym_db.RegisterMessage(MutatorFloat) MutatorBoolean = _reflection.GeneratedProtocolMessageType('MutatorBoolean', (_message.Message,), { 'DESCRIPTOR' : _MUTATORBOOLEAN, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.MutatorBoolean) }) _sym_db.RegisterMessage(MutatorBoolean) MutatorString = _reflection.GeneratedProtocolMessageType('MutatorString', (_message.Message,), { 'DESCRIPTOR' : _MUTATORSTRING, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.MutatorString) }) _sym_db.RegisterMessage(MutatorString) MutatorInt = _reflection.GeneratedProtocolMessageType('MutatorInt', (_message.Message,), { 'DESCRIPTOR' : _MUTATORINT, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.MutatorInt) }) _sym_db.RegisterMessage(MutatorInt) MutatorSparseBooleanEntry = _reflection.GeneratedProtocolMessageType('MutatorSparseBooleanEntry', (_message.Message,), { 'DESCRIPTOR' : _MUTATORSPARSEBOOLEANENTRY, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.MutatorSparseBooleanEntry) }) _sym_db.RegisterMessage(MutatorSparseBooleanEntry) MutatorSparseBoolean = _reflection.GeneratedProtocolMessageType('MutatorSparseBoolean', (_message.Message,), { 'DESCRIPTOR' : _MUTATORSPARSEBOOLEAN, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.MutatorSparseBoolean) }) _sym_db.RegisterMessage(MutatorSparseBoolean) SparseIntEntity = _reflection.GeneratedProtocolMessageType('SparseIntEntity', (_message.Message,), { 'DESCRIPTOR' : _SPARSEINTENTITY, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.SparseIntEntity) }) _sym_db.RegisterMessage(SparseIntEntity) MutatorSparseIntEntry = _reflection.GeneratedProtocolMessageType('MutatorSparseIntEntry', (_message.Message,), { 'DESCRIPTOR' : _MUTATORSPARSEINTENTRY, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.MutatorSparseIntEntry) }) _sym_db.RegisterMessage(MutatorSparseIntEntry) MutatorSparseInt = _reflection.GeneratedProtocolMessageType('MutatorSparseInt', (_message.Message,), { 'DESCRIPTOR' : _MUTATORSPARSEINT, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.MutatorSparseInt) }) _sym_db.RegisterMessage(MutatorSparseInt) MutatorKind = _reflection.GeneratedProtocolMessageType('MutatorKind', (_message.Message,), { 'DESCRIPTOR' : _MUTATORKIND, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.MutatorKind) }) _sym_db.RegisterMessage(MutatorKind) TeamComposition = _reflection.GeneratedProtocolMessageType('TeamComposition', (_message.Message,), { 'DESCRIPTOR' : _TEAMCOMPOSITION, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.TeamComposition) }) _sym_db.RegisterMessage(TeamComposition) Mutator = _reflection.GeneratedProtocolMessageType('Mutator', (_message.Message,), { 'DESCRIPTOR' : _MUTATOR, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.Mutator) }) _sym_db.RegisterMessage(Mutator) Timestamp = _reflection.GeneratedProtocolMessageType('Timestamp', (_message.Message,), { 'DESCRIPTOR' : _TIMESTAMP, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.Timestamp) }) _sym_db.RegisterMessage(Timestamp) StringValue = _reflection.GeneratedProtocolMessageType('StringValue', (_message.Message,), { 'DESCRIPTOR' : _STRINGVALUE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.StringValue) }) _sym_db.RegisterMessage(StringValue) GameServerMessage = _reflection.GeneratedProtocolMessageType('GameServerMessage', (_message.Message,), { 'DESCRIPTOR' : _GAMESERVERMESSAGE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.GameServerMessage) }) _sym_db.RegisterMessage(GameServerMessage) GameServerSettings = _reflection.GeneratedProtocolMessageType('GameServerSettings', (_message.Message,), { 'DESCRIPTOR' : _GAMESERVERSETTINGS, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.GameServerSettings) }) _sym_db.RegisterMessage(GameServerSettings) PlayerInfo = _reflection.GeneratedProtocolMessageType('PlayerInfo', (_message.Message,), { 'DESCRIPTOR' : _PLAYERINFO, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.PlayerInfo) }) _sym_db.RegisterMessage(PlayerInfo) PlatformRestrictions = _reflection.GeneratedProtocolMessageType('PlatformRestrictions', (_message.Message,), { 'DESCRIPTOR' : _PLATFORMRESTRICTIONS, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.PlatformRestrictions) }) _sym_db.RegisterMessage(PlatformRestrictions) InputMethodResrictions = _reflection.GeneratedProtocolMessageType('InputMethodResrictions', (_message.Message,), { 'DESCRIPTOR' : _INPUTMETHODRESRICTIONS, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.InputMethodResrictions) }) _sym_db.RegisterMessage(InputMethodResrictions) Restrictions = _reflection.GeneratedProtocolMessageType('Restrictions', (_message.Message,), { 'DESCRIPTOR' : _RESTRICTIONS, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.Restrictions) }) _sym_db.RegisterMessage(Restrictions) Compressed = _reflection.GeneratedProtocolMessageType('Compressed', (_message.Message,), { 'DESCRIPTOR' : _COMPRESSED, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.Compressed) }) _sym_db.RegisterMessage(Compressed) Uncompressed = _reflection.GeneratedProtocolMessageType('Uncompressed', (_message.Message,), { 'DESCRIPTOR' : _UNCOMPRESSED, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.Uncompressed) }) _sym_db.RegisterMessage(Uncompressed) CompiledRules = _reflection.GeneratedProtocolMessageType('CompiledRules', (_message.Message,), { 'DESCRIPTOR' : _COMPILEDRULES, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.CompiledRules) }) _sym_db.RegisterMessage(CompiledRules) CompatibleModRules = _reflection.GeneratedProtocolMessageType('CompatibleModRules', (_message.Message,), { 'DESCRIPTOR' : _COMPATIBLEMODRULES, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.CompatibleModRules) }) _sym_db.RegisterMessage(CompatibleModRules) InCompatibleModRules = _reflection.GeneratedProtocolMessageType('InCompatibleModRules', (_message.Message,), { 'DESCRIPTOR' : _INCOMPATIBLEMODRULES, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.InCompatibleModRules) }) _sym_db.RegisterMessage(InCompatibleModRules) OriginalModRules = _reflection.GeneratedProtocolMessageType('OriginalModRules', (_message.Message,), { 'DESCRIPTOR' : _ORIGINALMODRULES, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.OriginalModRules) }) _sym_db.RegisterMessage(OriginalModRules) AssetCategoryTagBooleanOverride = _reflection.GeneratedProtocolMessageType('AssetCategoryTagBooleanOverride', (_message.Message,), { 'DESCRIPTOR' : _ASSETCATEGORYTAGBOOLEANOVERRIDE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AssetCategoryTagBooleanOverride) }) _sym_db.RegisterMessage(AssetCategoryTagBooleanOverride) AssetCategoryTagBooleanTeamOverride = _reflection.GeneratedProtocolMessageType('AssetCategoryTagBooleanTeamOverride', (_message.Message,), { 'DESCRIPTOR' : _ASSETCATEGORYTAGBOOLEANTEAMOVERRIDE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AssetCategoryTagBooleanTeamOverride) }) _sym_db.RegisterMessage(AssetCategoryTagBooleanTeamOverride) AssetCategoryBoolean = _reflection.GeneratedProtocolMessageType('AssetCategoryBoolean', (_message.Message,), { 'DESCRIPTOR' : _ASSETCATEGORYBOOLEAN, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AssetCategoryBoolean) }) _sym_db.RegisterMessage(AssetCategoryBoolean) AssetCategory = _reflection.GeneratedProtocolMessageType('AssetCategory', (_message.Message,), { 'DESCRIPTOR' : _ASSETCATEGORY, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AssetCategory) }) _sym_db.RegisterMessage(AssetCategory) Playground = _reflection.GeneratedProtocolMessageType('Playground', (_message.Message,), { 'DESCRIPTOR' : _PLAYGROUND, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.Playground) }) _sym_db.RegisterMessage(Playground) ListPlaygroundsByOwnerRequest = _reflection.GeneratedProtocolMessageType('ListPlaygroundsByOwnerRequest', (_message.Message,), { 'DESCRIPTOR' : _LISTPLAYGROUNDSBYOWNERREQUEST, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.ListPlaygroundsByOwnerRequest) }) _sym_db.RegisterMessage(ListPlaygroundsByOwnerRequest) GetConstraintsRequest = _reflection.GeneratedProtocolMessageType('GetConstraintsRequest', (_message.Message,), { 'DESCRIPTOR' : _GETCONSTRAINTSREQUEST, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.GetConstraintsRequest) }) _sym_db.RegisterMessage(GetConstraintsRequest) GetBlueprintsByIdRequest = _reflection.GeneratedProtocolMessageType('GetBlueprintsByIdRequest', (_message.Message,), { 'DESCRIPTOR' : _GETBLUEPRINTSBYIDREQUEST, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.GetBlueprintsByIdRequest) }) _sym_db.RegisterMessage(GetBlueprintsByIdRequest) GlobalConstraints = _reflection.GeneratedProtocolMessageType('GlobalConstraints', (_message.Message,), { 'DESCRIPTOR' : _GLOBALCONSTRAINTS, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.GlobalConstraints) }) _sym_db.RegisterMessage(GlobalConstraints) IntRange = _reflection.GeneratedProtocolMessageType('IntRange', (_message.Message,), { 'DESCRIPTOR' : _INTRANGE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.IntRange) }) _sym_db.RegisterMessage(IntRange) AvailableIntValues = _reflection.GeneratedProtocolMessageType('AvailableIntValues', (_message.Message,), { 'DESCRIPTOR' : _AVAILABLEINTVALUES, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AvailableIntValues) }) _sym_db.RegisterMessage(AvailableIntValues) AvailableIntValue = _reflection.GeneratedProtocolMessageType('AvailableIntValue', (_message.Message,), { 'DESCRIPTOR' : _AVAILABLEINTVALUE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AvailableIntValue) }) _sym_db.RegisterMessage(AvailableIntValue) SparseFloatValues = _reflection.GeneratedProtocolMessageType('SparseFloatValues', (_message.Message,), { 'DESCRIPTOR' : _SPARSEFLOATVALUES, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.SparseFloatValues) }) _sym_db.RegisterMessage(SparseFloatValues) FloatRange = _reflection.GeneratedProtocolMessageType('FloatRange', (_message.Message,), { 'DESCRIPTOR' : _FLOATRANGE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.FloatRange) }) _sym_db.RegisterMessage(FloatRange) AvailableFloatValues = _reflection.GeneratedProtocolMessageType('AvailableFloatValues', (_message.Message,), { 'DESCRIPTOR' : _AVAILABLEFLOATVALUES, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AvailableFloatValues) }) _sym_db.RegisterMessage(AvailableFloatValues) AvailableMutatorFloatValues = _reflection.GeneratedProtocolMessageType('AvailableMutatorFloatValues', (_message.Message,), { 'DESCRIPTOR' : _AVAILABLEMUTATORFLOATVALUES, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AvailableMutatorFloatValues) }) _sym_db.RegisterMessage(AvailableMutatorFloatValues) AvailableMutatorIntValues = _reflection.GeneratedProtocolMessageType('AvailableMutatorIntValues', (_message.Message,), { 'DESCRIPTOR' : _AVAILABLEMUTATORINTVALUES, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AvailableMutatorIntValues) }) _sym_db.RegisterMessage(AvailableMutatorIntValues) AvailableMutatorSparseIntValues = _reflection.GeneratedProtocolMessageType('AvailableMutatorSparseIntValues', (_message.Message,), { 'DESCRIPTOR' : _AVAILABLEMUTATORSPARSEINTVALUES, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AvailableMutatorSparseIntValues) }) _sym_db.RegisterMessage(AvailableMutatorSparseIntValues) AvailableMutatorSparseFloatValues = _reflection.GeneratedProtocolMessageType('AvailableMutatorSparseFloatValues', (_message.Message,), { 'DESCRIPTOR' : _AVAILABLEMUTATORSPARSEFLOATVALUES, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AvailableMutatorSparseFloatValues) }) _sym_db.RegisterMessage(AvailableMutatorSparseFloatValues) AvailableMutatorKind = _reflection.GeneratedProtocolMessageType('AvailableMutatorKind', (_message.Message,), { 'DESCRIPTOR' : _AVAILABLEMUTATORKIND, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AvailableMutatorKind) }) _sym_db.RegisterMessage(AvailableMutatorKind) AvailableMutator = _reflection.GeneratedProtocolMessageType('AvailableMutator', (_message.Message,), { 'DESCRIPTOR' : _AVAILABLEMUTATOR, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AvailableMutator) }) _sym_db.RegisterMessage(AvailableMutator) AvailableMapEntry = _reflection.GeneratedProtocolMessageType('AvailableMapEntry', (_message.Message,), { 'DESCRIPTOR' : _AVAILABLEMAPENTRY, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AvailableMapEntry) }) _sym_db.RegisterMessage(AvailableMapEntry) AvailableTag = _reflection.GeneratedProtocolMessageType('AvailableTag', (_message.Message,), { 'DESCRIPTOR' : _AVAILABLETAG, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AvailableTag) }) _sym_db.RegisterMessage(AvailableTag) AvailableAssetCategoryTag = _reflection.GeneratedProtocolMessageType('AvailableAssetCategoryTag', (_message.Message,), { 'DESCRIPTOR' : _AVAILABLEASSETCATEGORYTAG, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AvailableAssetCategoryTag) }) _sym_db.RegisterMessage(AvailableAssetCategoryTag) AvailableAssetCategories = _reflection.GeneratedProtocolMessageType('AvailableAssetCategories', (_message.Message,), { 'DESCRIPTOR' : _AVAILABLEASSETCATEGORIES, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AvailableAssetCategories) }) _sym_db.RegisterMessage(AvailableAssetCategories) PlaygroundConstraints = _reflection.GeneratedProtocolMessageType('PlaygroundConstraints', (_message.Message,), { 'DESCRIPTOR' : _PLAYGROUNDCONSTRAINTS, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.PlaygroundConstraints) }) _sym_db.RegisterMessage(PlaygroundConstraints) ModRulesDefinition = _reflection.GeneratedProtocolMessageType('ModRulesDefinition', (_message.Message,), { 'DESCRIPTOR' : _MODRULESDEFINITION, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.ModRulesDefinition) }) _sym_db.RegisterMessage(ModRulesDefinition) AvailableGameData = _reflection.GeneratedProtocolMessageType('AvailableGameData', (_message.Message,), { 'DESCRIPTOR' : _AVAILABLEGAMEDATA, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.AvailableGameData) }) _sym_db.RegisterMessage(AvailableGameData) Blueprint = _reflection.GeneratedProtocolMessageType('Blueprint', (_message.Message,), { 'DESCRIPTOR' : _BLUEPRINT, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.Blueprint) }) _sym_db.RegisterMessage(Blueprint) ShortCode = _reflection.GeneratedProtocolMessageType('ShortCode', (_message.Message,), { 'DESCRIPTOR' : _SHORTCODE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.ShortCode) }) _sym_db.RegisterMessage(ShortCode) GetProgressionTypesRequest = _reflection.GeneratedProtocolMessageType('GetProgressionTypesRequest', (_message.Message,), { 'DESCRIPTOR' : _GETPROGRESSIONTYPESREQUEST, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.GetProgressionTypesRequest) }) _sym_db.RegisterMessage(GetProgressionTypesRequest) BlueprintInfo = _reflection.GeneratedProtocolMessageType('BlueprintInfo', (_message.Message,), { 'DESCRIPTOR' : _BLUEPRINTINFO, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.BlueprintInfo) }) _sym_db.RegisterMessage(BlueprintInfo) GetProgressionTypesResponse = _reflection.GeneratedProtocolMessageType('GetProgressionTypesResponse', (_message.Message,), { 'DESCRIPTOR' : _GETPROGRESSIONTYPESRESPONSE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.GetProgressionTypesResponse) }) _sym_db.RegisterMessage(GetProgressionTypesResponse) GetScheduledBlueprintsRequest = _reflection.GeneratedProtocolMessageType('GetScheduledBlueprintsRequest', (_message.Message,), { 'DESCRIPTOR' : _GETSCHEDULEDBLUEPRINTSREQUEST, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.GetScheduledBlueprintsRequest) }) _sym_db.RegisterMessage(GetScheduledBlueprintsRequest) GetScheduledBlueprintsResponse = _reflection.GeneratedProtocolMessageType('GetScheduledBlueprintsResponse', (_message.Message,), { 'DESCRIPTOR' : _GETSCHEDULEDBLUEPRINTSRESPONSE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.GetScheduledBlueprintsResponse) }) _sym_db.RegisterMessage(GetScheduledBlueprintsResponse) GetBlueprintsByIdResponse = _reflection.GeneratedProtocolMessageType('GetBlueprintsByIdResponse', (_message.Message,), { 'DESCRIPTOR' : _GETBLUEPRINTSBYIDRESPONSE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.GetBlueprintsByIdResponse) }) _sym_db.RegisterMessage(GetBlueprintsByIdResponse) GetConstraintsResponse = _reflection.GeneratedProtocolMessageType('GetConstraintsResponse', (_message.Message,), { 'DESCRIPTOR' : _GETCONSTRAINTSRESPONSE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.GetConstraintsResponse) }) _sym_db.RegisterMessage(GetConstraintsResponse) ListPlaygroundsByOwnerResponse = _reflection.GeneratedProtocolMessageType('ListPlaygroundsByOwnerResponse', (_message.Message,), { 'DESCRIPTOR' : _LISTPLAYGROUNDSBYOWNERRESPONSE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.ListPlaygroundsByOwnerResponse) }) _sym_db.RegisterMessage(ListPlaygroundsByOwnerResponse) CreatePlaygroundRequest = _reflection.GeneratedProtocolMessageType('CreatePlaygroundRequest', (_message.Message,), { 'DESCRIPTOR' : _CREATEPLAYGROUNDREQUEST, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.CreatePlaygroundRequest) }) _sym_db.RegisterMessage(CreatePlaygroundRequest) UpdatePlaygroundRequest = _reflection.GeneratedProtocolMessageType('UpdatePlaygroundRequest', (_message.Message,), { 'DESCRIPTOR' : _UPDATEPLAYGROUNDREQUEST, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.UpdatePlaygroundRequest) }) _sym_db.RegisterMessage(UpdatePlaygroundRequest) DeletePlaygroundRequest = _reflection.GeneratedProtocolMessageType('DeletePlaygroundRequest', (_message.Message,), { 'DESCRIPTOR' : _DELETEPLAYGROUNDREQUEST, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.DeletePlaygroundRequest) }) _sym_db.RegisterMessage(DeletePlaygroundRequest) GetPlaygroundRequest = _reflection.GeneratedProtocolMessageType('GetPlaygroundRequest', (_message.Message,), { 'DESCRIPTOR' : _GETPLAYGROUNDREQUEST, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.GetPlaygroundRequest) }) _sym_db.RegisterMessage(GetPlaygroundRequest) SharePlaygroundRequest = _reflection.GeneratedProtocolMessageType('SharePlaygroundRequest', (_message.Message,), { 'DESCRIPTOR' : _SHAREPLAYGROUNDREQUEST, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.SharePlaygroundRequest) }) _sym_db.RegisterMessage(SharePlaygroundRequest) SharePlaygroundResponse = _reflection.GeneratedProtocolMessageType('SharePlaygroundResponse', (_message.Message,), { 'DESCRIPTOR' : _SHAREPLAYGROUNDRESPONSE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.SharePlaygroundResponse) }) _sym_db.RegisterMessage(SharePlaygroundResponse) CreatePlaygroundResponse = _reflection.GeneratedProtocolMessageType('CreatePlaygroundResponse', (_message.Message,), { 'DESCRIPTOR' : _CREATEPLAYGROUNDRESPONSE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.CreatePlaygroundResponse) }) _sym_db.RegisterMessage(CreatePlaygroundResponse) UpdatePlaygroundResponse = _reflection.GeneratedProtocolMessageType('UpdatePlaygroundResponse', (_message.Message,), { 'DESCRIPTOR' : _UPDATEPLAYGROUNDRESPONSE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.UpdatePlaygroundResponse) }) _sym_db.RegisterMessage(UpdatePlaygroundResponse) DeletePlaygroundResponse = _reflection.GeneratedProtocolMessageType('DeletePlaygroundResponse', (_message.Message,), { 'DESCRIPTOR' : _DELETEPLAYGROUNDRESPONSE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.DeletePlaygroundResponse) }) _sym_db.RegisterMessage(DeletePlaygroundResponse) PlaygroundInfoResponse = _reflection.GeneratedProtocolMessageType('PlaygroundInfoResponse', (_message.Message,), { 'DESCRIPTOR' : _PLAYGROUNDINFORESPONSE, - '__module__' : 'proto.communitygames_pb2' + '__module__' : 'communitygames_pb2' # @@protoc_insertion_point(class_scope:web.communitygames.PlaygroundInfoResponse) }) _sym_db.RegisterMessage(PlaygroundInfoResponse) @@ -786,202 +786,202 @@ _PLAYERINFO.fields_by_name['nucleusId']._serialized_options = b'0\001' _PLAYERINFO.fields_by_name['personaId']._options = None _PLAYERINFO.fields_by_name['personaId']._serialized_options = b'0\001' - _PLATFORM._serialized_start=11215 - _PLATFORM._serialized_end=11299 - _INPUTMETHODS._serialized_start=11301 - _INPUTMETHODS._serialized_end=11365 - _INCLUDEFIELDS._serialized_start=11367 - _INCLUDEFIELDS._serialized_end=11475 - _STATE._serialized_start=11477 - _STATE._serialized_end=11510 - _CATEGORY._serialized_start=11512 - _CATEGORY._serialized_end=11607 - _PHANTOMGAMESTATE._serialized_start=11609 - _PHANTOMGAMESTATE._serialized_end=11654 - _CAPACITYTYPE._serialized_start=11656 - _CAPACITYTYPE._serialized_end=11702 - _ROTATIONBEHAVIOR._serialized_start=11704 - _ROTATIONBEHAVIOR._serialized_end=11760 - _ROUNDBEHAVIOR._serialized_start=11762 - _ROUNDBEHAVIOR._serialized_end=11791 - _BALANCINGMETHOD._serialized_start=11793 - _BALANCINGMETHOD._serialized_end=11890 - _PROGRESSIONENTRY._serialized_start=50 - _PROGRESSIONENTRY._serialized_end=145 - _TRANSLATIONMETADATA._serialized_start=147 - _TRANSLATIONMETADATA._serialized_end=205 - _RESOURCELOCATION._serialized_start=207 - _RESOURCELOCATION._serialized_end=251 - _RESOURCE._serialized_start=253 - _RESOURCE._serialized_end=333 - _METADATA._serialized_start=335 - _METADATA._serialized_end=457 - _TAG._serialized_start=459 - _TAG._serialized_end=543 - _PROGRESSIONMODE._serialized_start=545 - _PROGRESSIONMODE._serialized_end=577 - _PLAYGROUNDRESPONSE._serialized_start=580 - _PLAYGROUNDRESPONSE._serialized_end=821 - _MAPINFO._serialized_start=824 - _MAPINFO._serialized_end=1032 - _MAPROTATION._serialized_start=1035 - _MAPROTATION._serialized_end=1213 - _TEAMSTRUCTURE._serialized_start=1215 - _TEAMSTRUCTURE._serialized_end=1264 - _INTERNALTEAMSTRUCTURE._serialized_start=1266 - _INTERNALTEAMSTRUCTURE._serialized_end=1379 - _MUTATORSPARSEFLOATENTRY._serialized_start=1381 - _MUTATORSPARSEFLOATENTRY._serialized_end=1436 - _MUTATORSPARSEFLOAT._serialized_start=1438 - _MUTATORSPARSEFLOAT._serialized_end=1561 - _MUTATORFLOAT._serialized_start=1563 - _MUTATORFLOAT._serialized_end=1592 - _MUTATORBOOLEAN._serialized_start=1594 - _MUTATORBOOLEAN._serialized_end=1629 - _MUTATORSTRING._serialized_start=1631 - _MUTATORSTRING._serialized_end=1667 - _MUTATORINT._serialized_start=1669 - _MUTATORINT._serialized_end=1696 - _MUTATORSPARSEBOOLEANENTRY._serialized_start=1698 - _MUTATORSPARSEBOOLEANENTRY._serialized_end=1755 - _MUTATORSPARSEBOOLEAN._serialized_start=1757 - _MUTATORSPARSEBOOLEAN._serialized_end=1884 - _SPARSEINTENTITY._serialized_start=1886 - _SPARSEINTENTITY._serialized_end=1919 - _MUTATORSPARSEINTENTRY._serialized_start=1921 - _MUTATORSPARSEINTENTRY._serialized_end=1974 - _MUTATORSPARSEINT._serialized_start=1976 - _MUTATORSPARSEINT._serialized_end=2095 - _MUTATORKIND._serialized_start=2098 - _MUTATORKIND._serialized_end=2541 - _TEAMCOMPOSITION._serialized_start=2544 - _TEAMCOMPOSITION._serialized_end=2739 - _MUTATOR._serialized_start=2741 - _MUTATOR._serialized_end=2841 - _TIMESTAMP._serialized_start=2843 - _TIMESTAMP._serialized_end=2890 - _STRINGVALUE._serialized_start=2892 - _STRINGVALUE._serialized_end=2920 - _GAMESERVERMESSAGE._serialized_start=2922 - _GAMESERVERMESSAGE._serialized_end=2969 - _GAMESERVERSETTINGS._serialized_start=2972 - _GAMESERVERSETTINGS._serialized_end=3303 - _PLAYERINFO._serialized_start=3305 - _PLAYERINFO._serialized_end=3413 - _PLATFORMRESTRICTIONS._serialized_start=3415 - _PLATFORMRESTRICTIONS._serialized_end=3486 - _INPUTMETHODRESRICTIONS._serialized_start=3488 - _INPUTMETHODRESRICTIONS._serialized_end=3568 - _RESTRICTIONS._serialized_start=3571 - _RESTRICTIONS._serialized_end=3735 - _COMPRESSED._serialized_start=3737 - _COMPRESSED._serialized_end=3819 - _UNCOMPRESSED._serialized_start=3821 - _UNCOMPRESSED._serialized_end=3883 - _COMPILEDRULES._serialized_start=3885 - _COMPILEDRULES._serialized_end=4008 - _COMPATIBLEMODRULES._serialized_start=4010 - _COMPATIBLEMODRULES._serialized_end=4120 - _INCOMPATIBLEMODRULES._serialized_start=4122 - _INCOMPATIBLEMODRULES._serialized_end=4212 - _ORIGINALMODRULES._serialized_start=4215 - _ORIGINALMODRULES._serialized_end=4367 - _ASSETCATEGORYTAGBOOLEANOVERRIDE._serialized_start=4369 - _ASSETCATEGORYTAGBOOLEANOVERRIDE._serialized_end=4444 - _ASSETCATEGORYTAGBOOLEANTEAMOVERRIDE._serialized_start=4446 - _ASSETCATEGORYTAGBOOLEANTEAMOVERRIDE._serialized_end=4541 - _ASSETCATEGORYBOOLEAN._serialized_start=4544 - _ASSETCATEGORYBOOLEAN._serialized_end=4740 - _ASSETCATEGORY._serialized_start=4742 - _ASSETCATEGORY._serialized_end=4831 - _PLAYGROUND._serialized_start=4834 - _PLAYGROUND._serialized_end=5548 - _LISTPLAYGROUNDSBYOWNERREQUEST._serialized_start=5550 - _LISTPLAYGROUNDSBYOWNERREQUEST._serialized_end=5629 - _GETCONSTRAINTSREQUEST._serialized_start=5631 - _GETCONSTRAINTSREQUEST._serialized_end=5654 - _GETBLUEPRINTSBYIDREQUEST._serialized_start=5656 - _GETBLUEPRINTSBYIDREQUEST._serialized_end=5762 - _GLOBALCONSTRAINTS._serialized_start=5764 - _GLOBALCONSTRAINTS._serialized_end=5883 - _INTRANGE._serialized_start=5885 - _INTRANGE._serialized_end=5931 - _AVAILABLEINTVALUES._serialized_start=5933 - _AVAILABLEINTVALUES._serialized_end=6057 - _AVAILABLEINTVALUE._serialized_start=6059 - _AVAILABLEINTVALUE._serialized_end=6165 - _SPARSEFLOATVALUES._serialized_start=6167 - _SPARSEFLOATVALUES._serialized_end=6202 - _FLOATRANGE._serialized_start=6204 - _FLOATRANGE._serialized_end=6252 - _AVAILABLEFLOATVALUES._serialized_start=6255 - _AVAILABLEFLOATVALUES._serialized_end=6385 - _AVAILABLEMUTATORFLOATVALUES._serialized_start=6388 - _AVAILABLEMUTATORFLOATVALUES._serialized_end=6535 - _AVAILABLEMUTATORINTVALUES._serialized_start=6538 - _AVAILABLEMUTATORINTVALUES._serialized_end=6679 - _AVAILABLEMUTATORSPARSEINTVALUES._serialized_start=6682 - _AVAILABLEMUTATORSPARSEINTVALUES._serialized_end=6835 - _AVAILABLEMUTATORSPARSEFLOATVALUES._serialized_start=6838 - _AVAILABLEMUTATORSPARSEFLOATVALUES._serialized_end=6997 - _AVAILABLEMUTATORKIND._serialized_start=7000 - _AVAILABLEMUTATORKIND._serialized_end=7536 - _AVAILABLEMUTATOR._serialized_start=7539 - _AVAILABLEMUTATOR._serialized_end=7705 - _AVAILABLEMAPENTRY._serialized_start=7708 - _AVAILABLEMAPENTRY._serialized_end=8189 - _AVAILABLETAG._serialized_start=8191 - _AVAILABLETAG._serialized_end=8313 - _AVAILABLEASSETCATEGORYTAG._serialized_start=8315 - _AVAILABLEASSETCATEGORYTAG._serialized_end=8441 - _AVAILABLEASSETCATEGORIES._serialized_start=8444 - _AVAILABLEASSETCATEGORIES._serialized_end=8596 - _PLAYGROUNDCONSTRAINTS._serialized_start=8599 - _PLAYGROUNDCONSTRAINTS._serialized_end=8803 - _MODRULESDEFINITION._serialized_start=8805 - _MODRULESDEFINITION._serialized_end=8867 - _AVAILABLEGAMEDATA._serialized_start=8870 - _AVAILABLEGAMEDATA._serialized_end=9127 - _BLUEPRINT._serialized_start=9130 - _BLUEPRINT._serialized_end=9443 - _SHORTCODE._serialized_start=9445 - _SHORTCODE._serialized_end=9470 - _GETPROGRESSIONTYPESREQUEST._serialized_start=9472 - _GETPROGRESSIONTYPESREQUEST._serialized_end=9500 - _BLUEPRINTINFO._serialized_start=9502 - _BLUEPRINTINFO._serialized_end=9561 - _GETPROGRESSIONTYPESRESPONSE._serialized_start=9563 - _GETPROGRESSIONTYPESRESPONSE._serialized_end=9647 - _GETSCHEDULEDBLUEPRINTSREQUEST._serialized_start=9649 - _GETSCHEDULEDBLUEPRINTSREQUEST._serialized_end=9705 - _GETSCHEDULEDBLUEPRINTSRESPONSE._serialized_start=9707 - _GETSCHEDULEDBLUEPRINTSRESPONSE._serialized_end=9794 - _GETBLUEPRINTSBYIDRESPONSE._serialized_start=9796 - _GETBLUEPRINTSBYIDRESPONSE._serialized_end=9873 - _GETCONSTRAINTSRESPONSE._serialized_start=9875 - _GETCONSTRAINTSRESPONSE._serialized_end=9965 - _LISTPLAYGROUNDSBYOWNERRESPONSE._serialized_start=9967 - _LISTPLAYGROUNDSBYOWNERRESPONSE._serialized_end=10068 - _CREATEPLAYGROUNDREQUEST._serialized_start=10071 - _CREATEPLAYGROUNDREQUEST._serialized_end=10605 - _UPDATEPLAYGROUNDREQUEST._serialized_start=10607 - _UPDATEPLAYGROUNDREQUEST._serialized_end=10687 - _DELETEPLAYGROUNDREQUEST._serialized_start=10689 - _DELETEPLAYGROUNDREQUEST._serialized_end=10736 - _GETPLAYGROUNDREQUEST._serialized_start=10738 - _GETPLAYGROUNDREQUEST._serialized_end=10782 - _SHAREPLAYGROUNDREQUEST._serialized_start=10784 - _SHAREPLAYGROUNDREQUEST._serialized_end=10830 - _SHAREPLAYGROUNDRESPONSE._serialized_start=10832 - _SHAREPLAYGROUNDRESPONSE._serialized_end=10907 - _CREATEPLAYGROUNDRESPONSE._serialized_start=10909 - _CREATEPLAYGROUNDRESPONSE._serialized_end=11003 - _UPDATEPLAYGROUNDRESPONSE._serialized_start=11005 - _UPDATEPLAYGROUNDRESPONSE._serialized_end=11099 - _DELETEPLAYGROUNDRESPONSE._serialized_start=11101 - _DELETEPLAYGROUNDRESPONSE._serialized_end=11127 - _PLAYGROUNDINFORESPONSE._serialized_start=11129 - _PLAYGROUNDINFORESPONSE._serialized_end=11213 - _COMMUNITYGAMES._serialized_start=11893 - _COMMUNITYGAMES._serialized_end=13072 + _PLATFORM._serialized_start=11209 + _PLATFORM._serialized_end=11293 + _INPUTMETHODS._serialized_start=11295 + _INPUTMETHODS._serialized_end=11359 + _INCLUDEFIELDS._serialized_start=11361 + _INCLUDEFIELDS._serialized_end=11469 + _STATE._serialized_start=11471 + _STATE._serialized_end=11504 + _CATEGORY._serialized_start=11506 + _CATEGORY._serialized_end=11601 + _PHANTOMGAMESTATE._serialized_start=11603 + _PHANTOMGAMESTATE._serialized_end=11648 + _CAPACITYTYPE._serialized_start=11650 + _CAPACITYTYPE._serialized_end=11696 + _ROTATIONBEHAVIOR._serialized_start=11698 + _ROTATIONBEHAVIOR._serialized_end=11754 + _ROUNDBEHAVIOR._serialized_start=11756 + _ROUNDBEHAVIOR._serialized_end=11785 + _BALANCINGMETHOD._serialized_start=11787 + _BALANCINGMETHOD._serialized_end=11884 + _PROGRESSIONENTRY._serialized_start=44 + _PROGRESSIONENTRY._serialized_end=139 + _TRANSLATIONMETADATA._serialized_start=141 + _TRANSLATIONMETADATA._serialized_end=199 + _RESOURCELOCATION._serialized_start=201 + _RESOURCELOCATION._serialized_end=245 + _RESOURCE._serialized_start=247 + _RESOURCE._serialized_end=327 + _METADATA._serialized_start=329 + _METADATA._serialized_end=451 + _TAG._serialized_start=453 + _TAG._serialized_end=537 + _PROGRESSIONMODE._serialized_start=539 + _PROGRESSIONMODE._serialized_end=571 + _PLAYGROUNDRESPONSE._serialized_start=574 + _PLAYGROUNDRESPONSE._serialized_end=815 + _MAPINFO._serialized_start=818 + _MAPINFO._serialized_end=1026 + _MAPROTATION._serialized_start=1029 + _MAPROTATION._serialized_end=1207 + _TEAMSTRUCTURE._serialized_start=1209 + _TEAMSTRUCTURE._serialized_end=1258 + _INTERNALTEAMSTRUCTURE._serialized_start=1260 + _INTERNALTEAMSTRUCTURE._serialized_end=1373 + _MUTATORSPARSEFLOATENTRY._serialized_start=1375 + _MUTATORSPARSEFLOATENTRY._serialized_end=1430 + _MUTATORSPARSEFLOAT._serialized_start=1432 + _MUTATORSPARSEFLOAT._serialized_end=1555 + _MUTATORFLOAT._serialized_start=1557 + _MUTATORFLOAT._serialized_end=1586 + _MUTATORBOOLEAN._serialized_start=1588 + _MUTATORBOOLEAN._serialized_end=1623 + _MUTATORSTRING._serialized_start=1625 + _MUTATORSTRING._serialized_end=1661 + _MUTATORINT._serialized_start=1663 + _MUTATORINT._serialized_end=1690 + _MUTATORSPARSEBOOLEANENTRY._serialized_start=1692 + _MUTATORSPARSEBOOLEANENTRY._serialized_end=1749 + _MUTATORSPARSEBOOLEAN._serialized_start=1751 + _MUTATORSPARSEBOOLEAN._serialized_end=1878 + _SPARSEINTENTITY._serialized_start=1880 + _SPARSEINTENTITY._serialized_end=1913 + _MUTATORSPARSEINTENTRY._serialized_start=1915 + _MUTATORSPARSEINTENTRY._serialized_end=1968 + _MUTATORSPARSEINT._serialized_start=1970 + _MUTATORSPARSEINT._serialized_end=2089 + _MUTATORKIND._serialized_start=2092 + _MUTATORKIND._serialized_end=2535 + _TEAMCOMPOSITION._serialized_start=2538 + _TEAMCOMPOSITION._serialized_end=2733 + _MUTATOR._serialized_start=2735 + _MUTATOR._serialized_end=2835 + _TIMESTAMP._serialized_start=2837 + _TIMESTAMP._serialized_end=2884 + _STRINGVALUE._serialized_start=2886 + _STRINGVALUE._serialized_end=2914 + _GAMESERVERMESSAGE._serialized_start=2916 + _GAMESERVERMESSAGE._serialized_end=2963 + _GAMESERVERSETTINGS._serialized_start=2966 + _GAMESERVERSETTINGS._serialized_end=3297 + _PLAYERINFO._serialized_start=3299 + _PLAYERINFO._serialized_end=3407 + _PLATFORMRESTRICTIONS._serialized_start=3409 + _PLATFORMRESTRICTIONS._serialized_end=3480 + _INPUTMETHODRESRICTIONS._serialized_start=3482 + _INPUTMETHODRESRICTIONS._serialized_end=3562 + _RESTRICTIONS._serialized_start=3565 + _RESTRICTIONS._serialized_end=3729 + _COMPRESSED._serialized_start=3731 + _COMPRESSED._serialized_end=3813 + _UNCOMPRESSED._serialized_start=3815 + _UNCOMPRESSED._serialized_end=3877 + _COMPILEDRULES._serialized_start=3879 + _COMPILEDRULES._serialized_end=4002 + _COMPATIBLEMODRULES._serialized_start=4004 + _COMPATIBLEMODRULES._serialized_end=4114 + _INCOMPATIBLEMODRULES._serialized_start=4116 + _INCOMPATIBLEMODRULES._serialized_end=4206 + _ORIGINALMODRULES._serialized_start=4209 + _ORIGINALMODRULES._serialized_end=4361 + _ASSETCATEGORYTAGBOOLEANOVERRIDE._serialized_start=4363 + _ASSETCATEGORYTAGBOOLEANOVERRIDE._serialized_end=4438 + _ASSETCATEGORYTAGBOOLEANTEAMOVERRIDE._serialized_start=4440 + _ASSETCATEGORYTAGBOOLEANTEAMOVERRIDE._serialized_end=4535 + _ASSETCATEGORYBOOLEAN._serialized_start=4538 + _ASSETCATEGORYBOOLEAN._serialized_end=4734 + _ASSETCATEGORY._serialized_start=4736 + _ASSETCATEGORY._serialized_end=4825 + _PLAYGROUND._serialized_start=4828 + _PLAYGROUND._serialized_end=5542 + _LISTPLAYGROUNDSBYOWNERREQUEST._serialized_start=5544 + _LISTPLAYGROUNDSBYOWNERREQUEST._serialized_end=5623 + _GETCONSTRAINTSREQUEST._serialized_start=5625 + _GETCONSTRAINTSREQUEST._serialized_end=5648 + _GETBLUEPRINTSBYIDREQUEST._serialized_start=5650 + _GETBLUEPRINTSBYIDREQUEST._serialized_end=5756 + _GLOBALCONSTRAINTS._serialized_start=5758 + _GLOBALCONSTRAINTS._serialized_end=5877 + _INTRANGE._serialized_start=5879 + _INTRANGE._serialized_end=5925 + _AVAILABLEINTVALUES._serialized_start=5927 + _AVAILABLEINTVALUES._serialized_end=6051 + _AVAILABLEINTVALUE._serialized_start=6053 + _AVAILABLEINTVALUE._serialized_end=6159 + _SPARSEFLOATVALUES._serialized_start=6161 + _SPARSEFLOATVALUES._serialized_end=6196 + _FLOATRANGE._serialized_start=6198 + _FLOATRANGE._serialized_end=6246 + _AVAILABLEFLOATVALUES._serialized_start=6249 + _AVAILABLEFLOATVALUES._serialized_end=6379 + _AVAILABLEMUTATORFLOATVALUES._serialized_start=6382 + _AVAILABLEMUTATORFLOATVALUES._serialized_end=6529 + _AVAILABLEMUTATORINTVALUES._serialized_start=6532 + _AVAILABLEMUTATORINTVALUES._serialized_end=6673 + _AVAILABLEMUTATORSPARSEINTVALUES._serialized_start=6676 + _AVAILABLEMUTATORSPARSEINTVALUES._serialized_end=6829 + _AVAILABLEMUTATORSPARSEFLOATVALUES._serialized_start=6832 + _AVAILABLEMUTATORSPARSEFLOATVALUES._serialized_end=6991 + _AVAILABLEMUTATORKIND._serialized_start=6994 + _AVAILABLEMUTATORKIND._serialized_end=7530 + _AVAILABLEMUTATOR._serialized_start=7533 + _AVAILABLEMUTATOR._serialized_end=7699 + _AVAILABLEMAPENTRY._serialized_start=7702 + _AVAILABLEMAPENTRY._serialized_end=8183 + _AVAILABLETAG._serialized_start=8185 + _AVAILABLETAG._serialized_end=8307 + _AVAILABLEASSETCATEGORYTAG._serialized_start=8309 + _AVAILABLEASSETCATEGORYTAG._serialized_end=8435 + _AVAILABLEASSETCATEGORIES._serialized_start=8438 + _AVAILABLEASSETCATEGORIES._serialized_end=8590 + _PLAYGROUNDCONSTRAINTS._serialized_start=8593 + _PLAYGROUNDCONSTRAINTS._serialized_end=8797 + _MODRULESDEFINITION._serialized_start=8799 + _MODRULESDEFINITION._serialized_end=8861 + _AVAILABLEGAMEDATA._serialized_start=8864 + _AVAILABLEGAMEDATA._serialized_end=9121 + _BLUEPRINT._serialized_start=9124 + _BLUEPRINT._serialized_end=9437 + _SHORTCODE._serialized_start=9439 + _SHORTCODE._serialized_end=9464 + _GETPROGRESSIONTYPESREQUEST._serialized_start=9466 + _GETPROGRESSIONTYPESREQUEST._serialized_end=9494 + _BLUEPRINTINFO._serialized_start=9496 + _BLUEPRINTINFO._serialized_end=9555 + _GETPROGRESSIONTYPESRESPONSE._serialized_start=9557 + _GETPROGRESSIONTYPESRESPONSE._serialized_end=9641 + _GETSCHEDULEDBLUEPRINTSREQUEST._serialized_start=9643 + _GETSCHEDULEDBLUEPRINTSREQUEST._serialized_end=9699 + _GETSCHEDULEDBLUEPRINTSRESPONSE._serialized_start=9701 + _GETSCHEDULEDBLUEPRINTSRESPONSE._serialized_end=9788 + _GETBLUEPRINTSBYIDRESPONSE._serialized_start=9790 + _GETBLUEPRINTSBYIDRESPONSE._serialized_end=9867 + _GETCONSTRAINTSRESPONSE._serialized_start=9869 + _GETCONSTRAINTSRESPONSE._serialized_end=9959 + _LISTPLAYGROUNDSBYOWNERRESPONSE._serialized_start=9961 + _LISTPLAYGROUNDSBYOWNERRESPONSE._serialized_end=10062 + _CREATEPLAYGROUNDREQUEST._serialized_start=10065 + _CREATEPLAYGROUNDREQUEST._serialized_end=10599 + _UPDATEPLAYGROUNDREQUEST._serialized_start=10601 + _UPDATEPLAYGROUNDREQUEST._serialized_end=10681 + _DELETEPLAYGROUNDREQUEST._serialized_start=10683 + _DELETEPLAYGROUNDREQUEST._serialized_end=10730 + _GETPLAYGROUNDREQUEST._serialized_start=10732 + _GETPLAYGROUNDREQUEST._serialized_end=10776 + _SHAREPLAYGROUNDREQUEST._serialized_start=10778 + _SHAREPLAYGROUNDREQUEST._serialized_end=10824 + _SHAREPLAYGROUNDRESPONSE._serialized_start=10826 + _SHAREPLAYGROUNDRESPONSE._serialized_end=10901 + _CREATEPLAYGROUNDRESPONSE._serialized_start=10903 + _CREATEPLAYGROUNDRESPONSE._serialized_end=10997 + _UPDATEPLAYGROUNDRESPONSE._serialized_start=10999 + _UPDATEPLAYGROUNDRESPONSE._serialized_end=11093 + _DELETEPLAYGROUNDRESPONSE._serialized_start=11095 + _DELETEPLAYGROUNDRESPONSE._serialized_end=11121 + _PLAYGROUNDINFORESPONSE._serialized_start=11123 + _PLAYGROUNDINFORESPONSE._serialized_end=11207 + _COMMUNITYGAMES._serialized_start=11887 + _COMMUNITYGAMES._serialized_end=13066 # @@protoc_insertion_point(module_scope) diff --git a/bfportal_grpc_python/proto/communitygames_pb2_grpc.py b/bfportal_grpc/proto/communitygames_pb2_grpc.py similarity index 66% rename from bfportal_grpc_python/proto/communitygames_pb2_grpc.py rename to bfportal_grpc/proto/communitygames_pb2_grpc.py index 457ff75..f0950c8 100644 --- a/bfportal_grpc_python/proto/communitygames_pb2_grpc.py +++ b/bfportal_grpc/proto/communitygames_pb2_grpc.py @@ -2,7 +2,7 @@ """Client and server classes corresponding to protobuf-defined services.""" import grpc -from proto import communitygames_pb2 as proto_dot_communitygames__pb2 +from . import communitygames_pb2 as communitygames__pb2 class CommunityGamesStub(object): @@ -16,53 +16,53 @@ def __init__(self, channel): """ self.createPlayground = channel.unary_unary( '/web.communitygames.CommunityGames/createPlayground', - request_serializer=proto_dot_communitygames__pb2.CreatePlaygroundRequest.SerializeToString, - response_deserializer=proto_dot_communitygames__pb2.CreatePlaygroundResponse.FromString, + request_serializer=communitygames__pb2.CreatePlaygroundRequest.SerializeToString, + response_deserializer=communitygames__pb2.CreatePlaygroundResponse.FromString, ) self.updatePlayground = channel.unary_unary( '/web.communitygames.CommunityGames/updatePlayground', - request_serializer=proto_dot_communitygames__pb2.UpdatePlaygroundRequest.SerializeToString, - response_deserializer=proto_dot_communitygames__pb2.UpdatePlaygroundResponse.FromString, + request_serializer=communitygames__pb2.UpdatePlaygroundRequest.SerializeToString, + response_deserializer=communitygames__pb2.UpdatePlaygroundResponse.FromString, ) self.deletePlayground = channel.unary_unary( '/web.communitygames.CommunityGames/deletePlayground', - request_serializer=proto_dot_communitygames__pb2.DeletePlaygroundRequest.SerializeToString, - response_deserializer=proto_dot_communitygames__pb2.DeletePlaygroundResponse.FromString, + request_serializer=communitygames__pb2.DeletePlaygroundRequest.SerializeToString, + response_deserializer=communitygames__pb2.DeletePlaygroundResponse.FromString, ) self.getPlayground = channel.unary_unary( '/web.communitygames.CommunityGames/getPlayground', - request_serializer=proto_dot_communitygames__pb2.GetPlaygroundRequest.SerializeToString, - response_deserializer=proto_dot_communitygames__pb2.PlaygroundInfoResponse.FromString, + request_serializer=communitygames__pb2.GetPlaygroundRequest.SerializeToString, + response_deserializer=communitygames__pb2.PlaygroundInfoResponse.FromString, ) self.listPlaygroundsByOwner = channel.unary_unary( '/web.communitygames.CommunityGames/listPlaygroundsByOwner', - request_serializer=proto_dot_communitygames__pb2.ListPlaygroundsByOwnerRequest.SerializeToString, - response_deserializer=proto_dot_communitygames__pb2.ListPlaygroundsByOwnerResponse.FromString, + request_serializer=communitygames__pb2.ListPlaygroundsByOwnerRequest.SerializeToString, + response_deserializer=communitygames__pb2.ListPlaygroundsByOwnerResponse.FromString, ) self.getBlueprintsById = channel.unary_unary( '/web.communitygames.CommunityGames/getBlueprintsById', - request_serializer=proto_dot_communitygames__pb2.GetBlueprintsByIdRequest.SerializeToString, - response_deserializer=proto_dot_communitygames__pb2.GetBlueprintsByIdResponse.FromString, + request_serializer=communitygames__pb2.GetBlueprintsByIdRequest.SerializeToString, + response_deserializer=communitygames__pb2.GetBlueprintsByIdResponse.FromString, ) self.getScheduledBlueprints = channel.unary_unary( '/web.communitygames.CommunityGames/getScheduledBlueprints', - request_serializer=proto_dot_communitygames__pb2.GetScheduledBlueprintsRequest.SerializeToString, - response_deserializer=proto_dot_communitygames__pb2.GetScheduledBlueprintsResponse.FromString, + request_serializer=communitygames__pb2.GetScheduledBlueprintsRequest.SerializeToString, + response_deserializer=communitygames__pb2.GetScheduledBlueprintsResponse.FromString, ) self.getConstraints = channel.unary_unary( '/web.communitygames.CommunityGames/getConstraints', - request_serializer=proto_dot_communitygames__pb2.GetConstraintsRequest.SerializeToString, - response_deserializer=proto_dot_communitygames__pb2.GetConstraintsResponse.FromString, + request_serializer=communitygames__pb2.GetConstraintsRequest.SerializeToString, + response_deserializer=communitygames__pb2.GetConstraintsResponse.FromString, ) self.sharePlayground = channel.unary_unary( '/web.communitygames.CommunityGames/sharePlayground', - request_serializer=proto_dot_communitygames__pb2.SharePlaygroundRequest.SerializeToString, - response_deserializer=proto_dot_communitygames__pb2.SharePlaygroundResponse.FromString, + request_serializer=communitygames__pb2.SharePlaygroundRequest.SerializeToString, + response_deserializer=communitygames__pb2.SharePlaygroundResponse.FromString, ) self.getProgressionTypes = channel.unary_unary( '/web.communitygames.CommunityGames/getProgressionTypes', - request_serializer=proto_dot_communitygames__pb2.GetProgressionTypesRequest.SerializeToString, - response_deserializer=proto_dot_communitygames__pb2.GetProgressionTypesResponse.FromString, + request_serializer=communitygames__pb2.GetProgressionTypesRequest.SerializeToString, + response_deserializer=communitygames__pb2.GetProgressionTypesResponse.FromString, ) @@ -134,53 +134,53 @@ def add_CommunityGamesServicer_to_server(servicer, server): rpc_method_handlers = { 'createPlayground': grpc.unary_unary_rpc_method_handler( servicer.createPlayground, - request_deserializer=proto_dot_communitygames__pb2.CreatePlaygroundRequest.FromString, - response_serializer=proto_dot_communitygames__pb2.CreatePlaygroundResponse.SerializeToString, + request_deserializer=communitygames__pb2.CreatePlaygroundRequest.FromString, + response_serializer=communitygames__pb2.CreatePlaygroundResponse.SerializeToString, ), 'updatePlayground': grpc.unary_unary_rpc_method_handler( servicer.updatePlayground, - request_deserializer=proto_dot_communitygames__pb2.UpdatePlaygroundRequest.FromString, - response_serializer=proto_dot_communitygames__pb2.UpdatePlaygroundResponse.SerializeToString, + request_deserializer=communitygames__pb2.UpdatePlaygroundRequest.FromString, + response_serializer=communitygames__pb2.UpdatePlaygroundResponse.SerializeToString, ), 'deletePlayground': grpc.unary_unary_rpc_method_handler( servicer.deletePlayground, - request_deserializer=proto_dot_communitygames__pb2.DeletePlaygroundRequest.FromString, - response_serializer=proto_dot_communitygames__pb2.DeletePlaygroundResponse.SerializeToString, + request_deserializer=communitygames__pb2.DeletePlaygroundRequest.FromString, + response_serializer=communitygames__pb2.DeletePlaygroundResponse.SerializeToString, ), 'getPlayground': grpc.unary_unary_rpc_method_handler( servicer.getPlayground, - request_deserializer=proto_dot_communitygames__pb2.GetPlaygroundRequest.FromString, - response_serializer=proto_dot_communitygames__pb2.PlaygroundInfoResponse.SerializeToString, + request_deserializer=communitygames__pb2.GetPlaygroundRequest.FromString, + response_serializer=communitygames__pb2.PlaygroundInfoResponse.SerializeToString, ), 'listPlaygroundsByOwner': grpc.unary_unary_rpc_method_handler( servicer.listPlaygroundsByOwner, - request_deserializer=proto_dot_communitygames__pb2.ListPlaygroundsByOwnerRequest.FromString, - response_serializer=proto_dot_communitygames__pb2.ListPlaygroundsByOwnerResponse.SerializeToString, + request_deserializer=communitygames__pb2.ListPlaygroundsByOwnerRequest.FromString, + response_serializer=communitygames__pb2.ListPlaygroundsByOwnerResponse.SerializeToString, ), 'getBlueprintsById': grpc.unary_unary_rpc_method_handler( servicer.getBlueprintsById, - request_deserializer=proto_dot_communitygames__pb2.GetBlueprintsByIdRequest.FromString, - response_serializer=proto_dot_communitygames__pb2.GetBlueprintsByIdResponse.SerializeToString, + request_deserializer=communitygames__pb2.GetBlueprintsByIdRequest.FromString, + response_serializer=communitygames__pb2.GetBlueprintsByIdResponse.SerializeToString, ), 'getScheduledBlueprints': grpc.unary_unary_rpc_method_handler( servicer.getScheduledBlueprints, - request_deserializer=proto_dot_communitygames__pb2.GetScheduledBlueprintsRequest.FromString, - response_serializer=proto_dot_communitygames__pb2.GetScheduledBlueprintsResponse.SerializeToString, + request_deserializer=communitygames__pb2.GetScheduledBlueprintsRequest.FromString, + response_serializer=communitygames__pb2.GetScheduledBlueprintsResponse.SerializeToString, ), 'getConstraints': grpc.unary_unary_rpc_method_handler( servicer.getConstraints, - request_deserializer=proto_dot_communitygames__pb2.GetConstraintsRequest.FromString, - response_serializer=proto_dot_communitygames__pb2.GetConstraintsResponse.SerializeToString, + request_deserializer=communitygames__pb2.GetConstraintsRequest.FromString, + response_serializer=communitygames__pb2.GetConstraintsResponse.SerializeToString, ), 'sharePlayground': grpc.unary_unary_rpc_method_handler( servicer.sharePlayground, - request_deserializer=proto_dot_communitygames__pb2.SharePlaygroundRequest.FromString, - response_serializer=proto_dot_communitygames__pb2.SharePlaygroundResponse.SerializeToString, + request_deserializer=communitygames__pb2.SharePlaygroundRequest.FromString, + response_serializer=communitygames__pb2.SharePlaygroundResponse.SerializeToString, ), 'getProgressionTypes': grpc.unary_unary_rpc_method_handler( servicer.getProgressionTypes, - request_deserializer=proto_dot_communitygames__pb2.GetProgressionTypesRequest.FromString, - response_serializer=proto_dot_communitygames__pb2.GetProgressionTypesResponse.SerializeToString, + request_deserializer=communitygames__pb2.GetProgressionTypesRequest.FromString, + response_serializer=communitygames__pb2.GetProgressionTypesResponse.SerializeToString, ), } generic_handler = grpc.method_handlers_generic_handler( @@ -204,8 +204,8 @@ def createPlayground(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/web.communitygames.CommunityGames/createPlayground', - proto_dot_communitygames__pb2.CreatePlaygroundRequest.SerializeToString, - proto_dot_communitygames__pb2.CreatePlaygroundResponse.FromString, + communitygames__pb2.CreatePlaygroundRequest.SerializeToString, + communitygames__pb2.CreatePlaygroundResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @@ -221,8 +221,8 @@ def updatePlayground(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/web.communitygames.CommunityGames/updatePlayground', - proto_dot_communitygames__pb2.UpdatePlaygroundRequest.SerializeToString, - proto_dot_communitygames__pb2.UpdatePlaygroundResponse.FromString, + communitygames__pb2.UpdatePlaygroundRequest.SerializeToString, + communitygames__pb2.UpdatePlaygroundResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @@ -238,8 +238,8 @@ def deletePlayground(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/web.communitygames.CommunityGames/deletePlayground', - proto_dot_communitygames__pb2.DeletePlaygroundRequest.SerializeToString, - proto_dot_communitygames__pb2.DeletePlaygroundResponse.FromString, + communitygames__pb2.DeletePlaygroundRequest.SerializeToString, + communitygames__pb2.DeletePlaygroundResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @@ -255,8 +255,8 @@ def getPlayground(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/web.communitygames.CommunityGames/getPlayground', - proto_dot_communitygames__pb2.GetPlaygroundRequest.SerializeToString, - proto_dot_communitygames__pb2.PlaygroundInfoResponse.FromString, + communitygames__pb2.GetPlaygroundRequest.SerializeToString, + communitygames__pb2.PlaygroundInfoResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @@ -272,8 +272,8 @@ def listPlaygroundsByOwner(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/web.communitygames.CommunityGames/listPlaygroundsByOwner', - proto_dot_communitygames__pb2.ListPlaygroundsByOwnerRequest.SerializeToString, - proto_dot_communitygames__pb2.ListPlaygroundsByOwnerResponse.FromString, + communitygames__pb2.ListPlaygroundsByOwnerRequest.SerializeToString, + communitygames__pb2.ListPlaygroundsByOwnerResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @@ -289,8 +289,8 @@ def getBlueprintsById(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/web.communitygames.CommunityGames/getBlueprintsById', - proto_dot_communitygames__pb2.GetBlueprintsByIdRequest.SerializeToString, - proto_dot_communitygames__pb2.GetBlueprintsByIdResponse.FromString, + communitygames__pb2.GetBlueprintsByIdRequest.SerializeToString, + communitygames__pb2.GetBlueprintsByIdResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @@ -306,8 +306,8 @@ def getScheduledBlueprints(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/web.communitygames.CommunityGames/getScheduledBlueprints', - proto_dot_communitygames__pb2.GetScheduledBlueprintsRequest.SerializeToString, - proto_dot_communitygames__pb2.GetScheduledBlueprintsResponse.FromString, + communitygames__pb2.GetScheduledBlueprintsRequest.SerializeToString, + communitygames__pb2.GetScheduledBlueprintsResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @@ -323,8 +323,8 @@ def getConstraints(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/web.communitygames.CommunityGames/getConstraints', - proto_dot_communitygames__pb2.GetConstraintsRequest.SerializeToString, - proto_dot_communitygames__pb2.GetConstraintsResponse.FromString, + communitygames__pb2.GetConstraintsRequest.SerializeToString, + communitygames__pb2.GetConstraintsResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @@ -340,8 +340,8 @@ def sharePlayground(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/web.communitygames.CommunityGames/sharePlayground', - proto_dot_communitygames__pb2.SharePlaygroundRequest.SerializeToString, - proto_dot_communitygames__pb2.SharePlaygroundResponse.FromString, + communitygames__pb2.SharePlaygroundRequest.SerializeToString, + communitygames__pb2.SharePlaygroundResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @@ -357,7 +357,7 @@ def getProgressionTypes(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/web.communitygames.CommunityGames/getProgressionTypes', - proto_dot_communitygames__pb2.GetProgressionTypesRequest.SerializeToString, - proto_dot_communitygames__pb2.GetProgressionTypesResponse.FromString, + communitygames__pb2.GetProgressionTypesRequest.SerializeToString, + communitygames__pb2.GetProgressionTypesResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/bfportal_grpc_python/proto/localization_pb2.py b/bfportal_grpc/proto/localization_pb2.py similarity index 58% rename from bfportal_grpc_python/proto/localization_pb2.py rename to bfportal_grpc/proto/localization_pb2.py index 454a1a7..019a2dd 100644 --- a/bfportal_grpc_python/proto/localization_pb2.py +++ b/bfportal_grpc/proto/localization_pb2.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! -# source: proto/localization.proto +# source: localization.proto """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool @@ -14,7 +14,7 @@ -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18proto/localization.proto\x12\x10web.localization\"\x17\n\x07SidList\x12\x0c\n\x04sids\x18\x01 \x03(\t\"\x1d\n\x0e\x43\x61tegoryIdList\x12\x0b\n\x03ids\x18\x01 \x03(\x05\" \n\x11SubCategoryIdList\x12\x0b\n\x03ids\x18\x01 \x03(\x05\"\xb9\x01\n\x11TranslationsQuery\x12*\n\x07sidList\x18\x01 \x01(\x0b\x32\x19.web.localization.SidList\x12\x38\n\x0e\x63\x61tegoryIdList\x18\x02 \x01(\x0b\x32 .web.localization.CategoryIdList\x12>\n\x11subCategoryIdList\x18\x03 \x01(\x0b\x32#.web.localization.SubCategoryIdList\"G\n\rLocalizedText\x12\x0b\n\x03sid\x18\x01 \x01(\t\x12\x15\n\rlocalizedText\x18\x02 \x01(\t\x12\x12\n\ncategoryId\x18\x03 \x01(\x05\"/\n\tTimestamp\x12\x13\n\x07seconds\x18\x01 \x01(\x03\x42\x02\x30\x01\x12\r\n\x05nanos\x18\x02 \x01(\x05\"\x98\x01\n\x16GetTranslationsRequest\x12>\n\x11translationsQuery\x18\x01 \x01(\x0b\x32#.web.localization.TranslationsQuery\x12\x0e\n\x06locale\x18\x04 \x01(\t\x12.\n\tfetchFrom\x18\x05 \x01(\x0b\x32\x1b.web.localization.Timestamp\"\x85\x01\n\x17GetTranslationsResponse\x12\x37\n\x0elocalizedTexts\x18\x03 \x03(\x0b\x32\x1f.web.localization.LocalizedText\x12\x31\n\x0c\x66\x65tchedUntil\x18\x04 \x01(\x0b\x32\x1b.web.localization.Timestamp2~\n\x12\x43lientLocalization\x12h\n\x0fgetTranslations\x12(.web.localization.GetTranslationsRequest\x1a).web.localization.GetTranslationsResponse\"\x00\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x12localization.proto\x12\x10web.localization\"\x17\n\x07SidList\x12\x0c\n\x04sids\x18\x01 \x03(\t\"\x1d\n\x0e\x43\x61tegoryIdList\x12\x0b\n\x03ids\x18\x01 \x03(\x05\" \n\x11SubCategoryIdList\x12\x0b\n\x03ids\x18\x01 \x03(\x05\"\xb9\x01\n\x11TranslationsQuery\x12*\n\x07sidList\x18\x01 \x01(\x0b\x32\x19.web.localization.SidList\x12\x38\n\x0e\x63\x61tegoryIdList\x18\x02 \x01(\x0b\x32 .web.localization.CategoryIdList\x12>\n\x11subCategoryIdList\x18\x03 \x01(\x0b\x32#.web.localization.SubCategoryIdList\"G\n\rLocalizedText\x12\x0b\n\x03sid\x18\x01 \x01(\t\x12\x15\n\rlocalizedText\x18\x02 \x01(\t\x12\x12\n\ncategoryId\x18\x03 \x01(\x05\"/\n\tTimestamp\x12\x13\n\x07seconds\x18\x01 \x01(\x03\x42\x02\x30\x01\x12\r\n\x05nanos\x18\x02 \x01(\x05\"\x98\x01\n\x16GetTranslationsRequest\x12>\n\x11translationsQuery\x18\x01 \x01(\x0b\x32#.web.localization.TranslationsQuery\x12\x0e\n\x06locale\x18\x04 \x01(\t\x12.\n\tfetchFrom\x18\x05 \x01(\x0b\x32\x1b.web.localization.Timestamp\"\x85\x01\n\x17GetTranslationsResponse\x12\x37\n\x0elocalizedTexts\x18\x03 \x03(\x0b\x32\x1f.web.localization.LocalizedText\x12\x31\n\x0c\x66\x65tchedUntil\x18\x04 \x01(\x0b\x32\x1b.web.localization.Timestamp2~\n\x12\x43lientLocalization\x12h\n\x0fgetTranslations\x12(.web.localization.GetTranslationsRequest\x1a).web.localization.GetTranslationsResponse\"\x00\x62\x06proto3') @@ -28,56 +28,56 @@ _GETTRANSLATIONSRESPONSE = DESCRIPTOR.message_types_by_name['GetTranslationsResponse'] SidList = _reflection.GeneratedProtocolMessageType('SidList', (_message.Message,), { 'DESCRIPTOR' : _SIDLIST, - '__module__' : 'proto.localization_pb2' + '__module__' : 'localization_pb2' # @@protoc_insertion_point(class_scope:web.localization.SidList) }) _sym_db.RegisterMessage(SidList) CategoryIdList = _reflection.GeneratedProtocolMessageType('CategoryIdList', (_message.Message,), { 'DESCRIPTOR' : _CATEGORYIDLIST, - '__module__' : 'proto.localization_pb2' + '__module__' : 'localization_pb2' # @@protoc_insertion_point(class_scope:web.localization.CategoryIdList) }) _sym_db.RegisterMessage(CategoryIdList) SubCategoryIdList = _reflection.GeneratedProtocolMessageType('SubCategoryIdList', (_message.Message,), { 'DESCRIPTOR' : _SUBCATEGORYIDLIST, - '__module__' : 'proto.localization_pb2' + '__module__' : 'localization_pb2' # @@protoc_insertion_point(class_scope:web.localization.SubCategoryIdList) }) _sym_db.RegisterMessage(SubCategoryIdList) TranslationsQuery = _reflection.GeneratedProtocolMessageType('TranslationsQuery', (_message.Message,), { 'DESCRIPTOR' : _TRANSLATIONSQUERY, - '__module__' : 'proto.localization_pb2' + '__module__' : 'localization_pb2' # @@protoc_insertion_point(class_scope:web.localization.TranslationsQuery) }) _sym_db.RegisterMessage(TranslationsQuery) LocalizedText = _reflection.GeneratedProtocolMessageType('LocalizedText', (_message.Message,), { 'DESCRIPTOR' : _LOCALIZEDTEXT, - '__module__' : 'proto.localization_pb2' + '__module__' : 'localization_pb2' # @@protoc_insertion_point(class_scope:web.localization.LocalizedText) }) _sym_db.RegisterMessage(LocalizedText) Timestamp = _reflection.GeneratedProtocolMessageType('Timestamp', (_message.Message,), { 'DESCRIPTOR' : _TIMESTAMP, - '__module__' : 'proto.localization_pb2' + '__module__' : 'localization_pb2' # @@protoc_insertion_point(class_scope:web.localization.Timestamp) }) _sym_db.RegisterMessage(Timestamp) GetTranslationsRequest = _reflection.GeneratedProtocolMessageType('GetTranslationsRequest', (_message.Message,), { 'DESCRIPTOR' : _GETTRANSLATIONSREQUEST, - '__module__' : 'proto.localization_pb2' + '__module__' : 'localization_pb2' # @@protoc_insertion_point(class_scope:web.localization.GetTranslationsRequest) }) _sym_db.RegisterMessage(GetTranslationsRequest) GetTranslationsResponse = _reflection.GeneratedProtocolMessageType('GetTranslationsResponse', (_message.Message,), { 'DESCRIPTOR' : _GETTRANSLATIONSRESPONSE, - '__module__' : 'proto.localization_pb2' + '__module__' : 'localization_pb2' # @@protoc_insertion_point(class_scope:web.localization.GetTranslationsResponse) }) _sym_db.RegisterMessage(GetTranslationsResponse) @@ -88,22 +88,22 @@ DESCRIPTOR._options = None _TIMESTAMP.fields_by_name['seconds']._options = None _TIMESTAMP.fields_by_name['seconds']._serialized_options = b'0\001' - _SIDLIST._serialized_start=46 - _SIDLIST._serialized_end=69 - _CATEGORYIDLIST._serialized_start=71 - _CATEGORYIDLIST._serialized_end=100 - _SUBCATEGORYIDLIST._serialized_start=102 - _SUBCATEGORYIDLIST._serialized_end=134 - _TRANSLATIONSQUERY._serialized_start=137 - _TRANSLATIONSQUERY._serialized_end=322 - _LOCALIZEDTEXT._serialized_start=324 - _LOCALIZEDTEXT._serialized_end=395 - _TIMESTAMP._serialized_start=397 - _TIMESTAMP._serialized_end=444 - _GETTRANSLATIONSREQUEST._serialized_start=447 - _GETTRANSLATIONSREQUEST._serialized_end=599 - _GETTRANSLATIONSRESPONSE._serialized_start=602 - _GETTRANSLATIONSRESPONSE._serialized_end=735 - _CLIENTLOCALIZATION._serialized_start=737 - _CLIENTLOCALIZATION._serialized_end=863 + _SIDLIST._serialized_start=40 + _SIDLIST._serialized_end=63 + _CATEGORYIDLIST._serialized_start=65 + _CATEGORYIDLIST._serialized_end=94 + _SUBCATEGORYIDLIST._serialized_start=96 + _SUBCATEGORYIDLIST._serialized_end=128 + _TRANSLATIONSQUERY._serialized_start=131 + _TRANSLATIONSQUERY._serialized_end=316 + _LOCALIZEDTEXT._serialized_start=318 + _LOCALIZEDTEXT._serialized_end=389 + _TIMESTAMP._serialized_start=391 + _TIMESTAMP._serialized_end=438 + _GETTRANSLATIONSREQUEST._serialized_start=441 + _GETTRANSLATIONSREQUEST._serialized_end=593 + _GETTRANSLATIONSRESPONSE._serialized_start=596 + _GETTRANSLATIONSRESPONSE._serialized_end=729 + _CLIENTLOCALIZATION._serialized_start=731 + _CLIENTLOCALIZATION._serialized_end=857 # @@protoc_insertion_point(module_scope) diff --git a/bfportal_grpc_python/proto/localization_pb2_grpc.py b/bfportal_grpc/proto/localization_pb2_grpc.py similarity index 76% rename from bfportal_grpc_python/proto/localization_pb2_grpc.py rename to bfportal_grpc/proto/localization_pb2_grpc.py index 08f7b6a..852dc22 100644 --- a/bfportal_grpc_python/proto/localization_pb2_grpc.py +++ b/bfportal_grpc/proto/localization_pb2_grpc.py @@ -2,7 +2,7 @@ """Client and server classes corresponding to protobuf-defined services.""" import grpc -from proto import localization_pb2 as proto_dot_localization__pb2 +from . import localization_pb2 as localization__pb2 class ClientLocalizationStub(object): @@ -16,8 +16,8 @@ def __init__(self, channel): """ self.getTranslations = channel.unary_unary( '/web.localization.ClientLocalization/getTranslations', - request_serializer=proto_dot_localization__pb2.GetTranslationsRequest.SerializeToString, - response_deserializer=proto_dot_localization__pb2.GetTranslationsResponse.FromString, + request_serializer=localization__pb2.GetTranslationsRequest.SerializeToString, + response_deserializer=localization__pb2.GetTranslationsResponse.FromString, ) @@ -35,8 +35,8 @@ def add_ClientLocalizationServicer_to_server(servicer, server): rpc_method_handlers = { 'getTranslations': grpc.unary_unary_rpc_method_handler( servicer.getTranslations, - request_deserializer=proto_dot_localization__pb2.GetTranslationsRequest.FromString, - response_serializer=proto_dot_localization__pb2.GetTranslationsResponse.SerializeToString, + request_deserializer=localization__pb2.GetTranslationsRequest.FromString, + response_serializer=localization__pb2.GetTranslationsResponse.SerializeToString, ), } generic_handler = grpc.method_handlers_generic_handler( @@ -60,7 +60,7 @@ def getTranslations(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/web.localization.ClientLocalization/getTranslations', - proto_dot_localization__pb2.GetTranslationsRequest.SerializeToString, - proto_dot_localization__pb2.GetTranslationsResponse.FromString, + localization__pb2.GetTranslationsRequest.SerializeToString, + localization__pb2.GetTranslationsResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/bfportal_grpc_python/proto/reporting_pb2.py b/bfportal_grpc/proto/reporting_pb2.py similarity index 54% rename from bfportal_grpc_python/proto/reporting_pb2.py rename to bfportal_grpc/proto/reporting_pb2.py index 891e166..12f2f87 100644 --- a/bfportal_grpc_python/proto/reporting_pb2.py +++ b/bfportal_grpc/proto/reporting_pb2.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! -# source: proto/reporting.proto +# source: reporting.proto """Generated protocol buffer code.""" from google.protobuf.internal import enum_type_wrapper from google.protobuf import descriptor as _descriptor @@ -15,7 +15,7 @@ -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15proto/reporting.proto\x12\rweb.reporting\"\x1c\n\x0bStringValue\x12\r\n\x05value\x18\x01 \x01(\t\"\xd4\x01\n\x17ReportPlaygroundRequest\x12\x17\n\x0fprotocolVersion\x18\x01 \x01(\t\x12\x14\n\x0cplaygroundId\x18\x02 \x01(\t\x12)\n\x08\x63\x61tegory\x18\x03 \x01(\x0e\x32\x17.web.reporting.Category\x12\x32\n\x0erequesterEmail\x18\x04 \x01(\x0b\x32\x1a.web.reporting.StringValue\x12+\n\x07subject\x18\x05 \x01(\x0b\x32\x1a.web.reporting.StringValue\".\n\x18ReportPlaygroundResponse\x12\x12\n\npetitionId\x18\x01 \x01(\t*\xc7\x02\n\x08\x43\x61tegory\x12\x14\n\x10UNKNOWN_CATEGORY\x10\x00\x12\x0c\n\x08\x43HEATING\x10\x01\x12\x0e\n\nHARASSMENT\x10\x02\x12\x08\n\x04SPAM\x10\x03\x12\x0e\n\nPLAGIARISM\x10\x04\x12\x0f\n\x0bHATE_SPEECH\x10\x05\x12\x15\n\x11SEXUALLY_EXPLICIT\x10\x06\x12\x16\n\x12\x43HILD_SOLICITATION\x10\x07\x12\x14\n\x10TERRORIST_THREAT\x10\x08\x12\x0f\n\x0b\x43LIENT_HACK\x10\t\x12\x12\n\x0eSUICIDE_THREAT\x10\n\x12\n\n\x06\x44OXING\x10\x0b\x12\x0f\n\x0b\x41\x44VERTISING\x10\x0c\x12\x11\n\rINAPPROPRIATE\x10\r\x12\x0b\n\x07VIOLENT\x10\x0e\x12\r\n\tOFFENSIVE\x10\x0f\x12\x12\n\x0eOFFENSIVE_CHAT\x10\x10\x12\x12\n\x0eOFFENSIVE_NAME\x10\x11\x32u\n\x0cWebReporting\x12\x65\n\x10reportPlayground\x12&.web.reporting.ReportPlaygroundRequest\x1a\'.web.reporting.ReportPlaygroundResponse\"\x00\x62\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0freporting.proto\x12\rweb.reporting\"\x1c\n\x0bStringValue\x12\r\n\x05value\x18\x01 \x01(\t\"\xd4\x01\n\x17ReportPlaygroundRequest\x12\x17\n\x0fprotocolVersion\x18\x01 \x01(\t\x12\x14\n\x0cplaygroundId\x18\x02 \x01(\t\x12)\n\x08\x63\x61tegory\x18\x03 \x01(\x0e\x32\x17.web.reporting.Category\x12\x32\n\x0erequesterEmail\x18\x04 \x01(\x0b\x32\x1a.web.reporting.StringValue\x12+\n\x07subject\x18\x05 \x01(\x0b\x32\x1a.web.reporting.StringValue\".\n\x18ReportPlaygroundResponse\x12\x12\n\npetitionId\x18\x01 \x01(\t*\xc7\x02\n\x08\x43\x61tegory\x12\x14\n\x10UNKNOWN_CATEGORY\x10\x00\x12\x0c\n\x08\x43HEATING\x10\x01\x12\x0e\n\nHARASSMENT\x10\x02\x12\x08\n\x04SPAM\x10\x03\x12\x0e\n\nPLAGIARISM\x10\x04\x12\x0f\n\x0bHATE_SPEECH\x10\x05\x12\x15\n\x11SEXUALLY_EXPLICIT\x10\x06\x12\x16\n\x12\x43HILD_SOLICITATION\x10\x07\x12\x14\n\x10TERRORIST_THREAT\x10\x08\x12\x0f\n\x0b\x43LIENT_HACK\x10\t\x12\x12\n\x0eSUICIDE_THREAT\x10\n\x12\n\n\x06\x44OXING\x10\x0b\x12\x0f\n\x0b\x41\x44VERTISING\x10\x0c\x12\x11\n\rINAPPROPRIATE\x10\r\x12\x0b\n\x07VIOLENT\x10\x0e\x12\r\n\tOFFENSIVE\x10\x0f\x12\x12\n\x0eOFFENSIVE_CHAT\x10\x10\x12\x12\n\x0eOFFENSIVE_NAME\x10\x11\x32u\n\x0cWebReporting\x12\x65\n\x10reportPlayground\x12&.web.reporting.ReportPlaygroundRequest\x1a\'.web.reporting.ReportPlaygroundResponse\"\x00\x62\x06proto3') _CATEGORY = DESCRIPTOR.enum_types_by_name['Category'] Category = enum_type_wrapper.EnumTypeWrapper(_CATEGORY) @@ -44,21 +44,21 @@ _REPORTPLAYGROUNDRESPONSE = DESCRIPTOR.message_types_by_name['ReportPlaygroundResponse'] StringValue = _reflection.GeneratedProtocolMessageType('StringValue', (_message.Message,), { 'DESCRIPTOR' : _STRINGVALUE, - '__module__' : 'proto.reporting_pb2' + '__module__' : 'reporting_pb2' # @@protoc_insertion_point(class_scope:web.reporting.StringValue) }) _sym_db.RegisterMessage(StringValue) ReportPlaygroundRequest = _reflection.GeneratedProtocolMessageType('ReportPlaygroundRequest', (_message.Message,), { 'DESCRIPTOR' : _REPORTPLAYGROUNDREQUEST, - '__module__' : 'proto.reporting_pb2' + '__module__' : 'reporting_pb2' # @@protoc_insertion_point(class_scope:web.reporting.ReportPlaygroundRequest) }) _sym_db.RegisterMessage(ReportPlaygroundRequest) ReportPlaygroundResponse = _reflection.GeneratedProtocolMessageType('ReportPlaygroundResponse', (_message.Message,), { 'DESCRIPTOR' : _REPORTPLAYGROUNDRESPONSE, - '__module__' : 'proto.reporting_pb2' + '__module__' : 'reporting_pb2' # @@protoc_insertion_point(class_scope:web.reporting.ReportPlaygroundResponse) }) _sym_db.RegisterMessage(ReportPlaygroundResponse) @@ -67,14 +67,14 @@ if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None - _CATEGORY._serialized_start=334 - _CATEGORY._serialized_end=661 - _STRINGVALUE._serialized_start=40 - _STRINGVALUE._serialized_end=68 - _REPORTPLAYGROUNDREQUEST._serialized_start=71 - _REPORTPLAYGROUNDREQUEST._serialized_end=283 - _REPORTPLAYGROUNDRESPONSE._serialized_start=285 - _REPORTPLAYGROUNDRESPONSE._serialized_end=331 - _WEBREPORTING._serialized_start=663 - _WEBREPORTING._serialized_end=780 + _CATEGORY._serialized_start=328 + _CATEGORY._serialized_end=655 + _STRINGVALUE._serialized_start=34 + _STRINGVALUE._serialized_end=62 + _REPORTPLAYGROUNDREQUEST._serialized_start=65 + _REPORTPLAYGROUNDREQUEST._serialized_end=277 + _REPORTPLAYGROUNDRESPONSE._serialized_start=279 + _REPORTPLAYGROUNDRESPONSE._serialized_end=325 + _WEBREPORTING._serialized_start=657 + _WEBREPORTING._serialized_end=774 # @@protoc_insertion_point(module_scope) diff --git a/bfportal_grpc_python/proto/reporting_pb2_grpc.py b/bfportal_grpc/proto/reporting_pb2_grpc.py similarity index 76% rename from bfportal_grpc_python/proto/reporting_pb2_grpc.py rename to bfportal_grpc/proto/reporting_pb2_grpc.py index 8d57922..da83c64 100644 --- a/bfportal_grpc_python/proto/reporting_pb2_grpc.py +++ b/bfportal_grpc/proto/reporting_pb2_grpc.py @@ -2,7 +2,7 @@ """Client and server classes corresponding to protobuf-defined services.""" import grpc -from proto import reporting_pb2 as proto_dot_reporting__pb2 +from . import reporting_pb2 as reporting__pb2 class WebReportingStub(object): @@ -16,8 +16,8 @@ def __init__(self, channel): """ self.reportPlayground = channel.unary_unary( '/web.reporting.WebReporting/reportPlayground', - request_serializer=proto_dot_reporting__pb2.ReportPlaygroundRequest.SerializeToString, - response_deserializer=proto_dot_reporting__pb2.ReportPlaygroundResponse.FromString, + request_serializer=reporting__pb2.ReportPlaygroundRequest.SerializeToString, + response_deserializer=reporting__pb2.ReportPlaygroundResponse.FromString, ) @@ -35,8 +35,8 @@ def add_WebReportingServicer_to_server(servicer, server): rpc_method_handlers = { 'reportPlayground': grpc.unary_unary_rpc_method_handler( servicer.reportPlayground, - request_deserializer=proto_dot_reporting__pb2.ReportPlaygroundRequest.FromString, - response_serializer=proto_dot_reporting__pb2.ReportPlaygroundResponse.SerializeToString, + request_deserializer=reporting__pb2.ReportPlaygroundRequest.FromString, + response_serializer=reporting__pb2.ReportPlaygroundResponse.SerializeToString, ), } generic_handler = grpc.method_handlers_generic_handler( @@ -60,7 +60,7 @@ def reportPlayground(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/web.reporting.WebReporting/reportPlayground', - proto_dot_reporting__pb2.ReportPlaygroundRequest.SerializeToString, - proto_dot_reporting__pb2.ReportPlaygroundResponse.FromString, + reporting__pb2.ReportPlaygroundRequest.SerializeToString, + reporting__pb2.ReportPlaygroundResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/package.json b/package.json index 76890fb..27ba13a 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,8 @@ "build:esm": "node tools/cleanup esm && tsc -p config/tsconfig.esm.json && copyfiles -u 1 src/**/*.js dist/esm/", "build:umd": "node tools/cleanup umd && webpack --config config/webpack.config.js && copyfiles -u 1 src/**/*.js dist/umd/", "build:types": "node tools/cleanup types && tsc -p config/tsconfig.types.json && copyfiles -u 1 src/**/*.js dist/types/", - "build:python": "python3 -m grpc_tools.protoc -I. --python_out=./grpc-python --grpc_python_out=./grpc-python ./proto/communitygames.proto ./proto/localization.proto ./proto/authentication.proto ./proto/reporting.proto", + "build:python": "cd proto && python3 -m grpc_tools.protoc -I. --python_out=../bfportal_grpc/proto --grpc_python_out=../bfportal_grpc/proto communitygames.proto localization.proto authentication.proto reporting.proto && cd ../", + "python:setimports": "cd bfportal_grpc/proto && for i in *_grpc.py; do sed -i '/ as / s/import /from . import /;' $i; done && cd ../..", "test": "jest --no-cache --runInBand" }, "publishConfig": { diff --git a/proto/authentication.proto b/proto/authentication.proto index b034af4..7fa01b6 100644 --- a/proto/authentication.proto +++ b/proto/authentication.proto @@ -2,7 +2,7 @@ syntax = "proto3"; package web.authentication; -service ClientAuthentication { +service Authentication { rpc viaAuthCode (AuthRequest) returns (AuthResponse) {} rpc logout (Empty) returns (Empty) {} } diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..0060c79 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,51 @@ +[build-system] +requires = ["poetry>=0.12"] +build-backend = "poetry.core.masonry.api" + +[tool.poetry] +name = "bfportal_grpc" +version = "0.1.3" +description = " bf2042 portal web grpc as python package " +readme = "Readme.md" +authors = ["iiTzArcur "] +# license = { file = "LICENSE" } +classifiers = [ + # "License :: OSI Approved :: MIT License", + "Programming Language :: Python", + "Programming Language :: Python :: 3", +] +keywords = ["bfportal", "grpc", "Battlefield portal"] +repository = "https://github.com/community-network/bfportal-grpc" +packages = [ + { include = "bfportal_grpc" }, +] + +[tool.poetry.dependencies] +aiohttp = "^3.8.1" +protobuf = "4.21.6" +grpcio = "1.48.1" +python = "^3.10" + +[tool.poetry.urls] +"Bug Tracker" = "https://github.com/community-network/bfportal-grpc/issues" + +[tool.poetry.dev-dependencies] +pytest = "*" +sonora = "*" +grpcio-tools = "*" +proto-compile ="*" +black = "*" +isort = "*" + +[tool.isort] +profile = "black" +import_heading_stdlib = "Standard library imports" +import_heading_thirdparty = "Third party imports" +import_heading_firstparty = "Reader imports" + +[tool.mypy] +strict = true + + [[tool.mypy.overrides]] + module = "feedparser" + ignore_missing_imports = true diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..fc1f76c --- /dev/null +++ b/setup.py @@ -0,0 +1,3 @@ +from setuptools import setup + +setup() \ No newline at end of file diff --git a/tests/test_communitygames.py b/tests/test_communitygames.py index 5fe7e95..794eb8e 100644 --- a/tests/test_communitygames.py +++ b/tests/test_communitygames.py @@ -1,6 +1,6 @@ import asyncio import sonora.aio -from bfportal_grpc_python.proto import communitygames_pb2, communitygames_pb2_grpc +from bfportal_grpc import communitygames_pb2, communitygames_pb2_grpc async def test__playground(): async with sonora.aio.insecure_web_channel(