{"action":"created","issue":{"url":"https://api.github.com/repos/ZeroK-RTS/Zero-K-Infrastructure/issues/1552","repository_url":"https://api.github.com/repos/ZeroK-RTS/Zero-K-Infrastructure","labels_url":"https://api.github.com/repos/ZeroK-RTS/Zero-K-Infrastructure/issues/1552/labels{/name}","comments_url":"https://api.github.com/repos/ZeroK-RTS/Zero-K-Infrastructure/issues/1552/comments","events_url":"https://api.github.com/repos/ZeroK-RTS/Zero-K-Infrastructure/issues/1552/events","html_url":"https://github.com/ZeroK-RTS/Zero-K-Infrastructure/issues/1552","id":212153959,"number":1552,"title":"Consider per-player bans for MM maps","user":{"login":"GoogleFrog","id":1318249,"avatar_url":"https://avatars0.githubusercontent.com/u/1318249?v=4","gravatar_id":"","url":"https://api.github.com/users/GoogleFrog","html_url":"https://github.com/GoogleFrog","followers_url":"https://api.github.com/users/GoogleFrog/followers","following_url":"https://api.github.com/users/GoogleFrog/following{/other_user}","gists_url":"https://api.github.com/users/GoogleFrog/gists{/gist_id}","starred_url":"https://api.github.com/users/GoogleFrog/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GoogleFrog/subscriptions","organizations_url":"https://api.github.com/users/GoogleFrog/orgs","repos_url":"https://api.github.com/users/GoogleFrog/repos","events_url":"https://api.github.com/users/GoogleFrog/events{/privacy}","received_events_url":"https://api.github.com/users/GoogleFrog/received_events","type":"User","site_admin":false},"labels":[{"id":103460031,"url":"https://api.github.com/repos/ZeroK-RTS/Zero-K-Infrastructure/labels/enhancement","name":"enhancement","color":"84b6eb","default":true},{"id":324280280,"url":"https://api.github.com/repos/ZeroK-RTS/Zero-K-Infrastructure/labels/lowpriority","name":"lowpriority","color":"c7def8","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2017-03-06T15:21:06Z","updated_at":"2018-05-11T10:42:44Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"Many players dislike particular maps. We could allow players to each nominate a few maps to ban a few maps (this is a feature common in other games). I'd try letting players ban two maps. This request is a bit pie-in-the-sky but would generate good data.\r\n\r\nBanned maps would be removed from the 1v1 map pool when deciding what to play for a 1v1. For larger games you can't remove all the maps because you might end up with none, or a very limited set. Here is a rule I propose:\r\n * If at least 1/4 of the players in the battle ban a map then remove it from the pool of maps to play on.\r\n * If all maps are banned then pick one at random.\r\n\r\nZKLS would tell chobby each players ban list upon joining. Players could send a ban list to ZKLS, possibly get a response (not sure if required)."},"comment":{"url":"https://api.github.com/repos/ZeroK-RTS/Zero-K-Infrastructure/issues/comments/388328834","html_url":"https://github.com/ZeroK-RTS/Zero-K-Infrastructure/issues/1552#issuecomment-388328834","issue_url":"https://api.github.com/repos/ZeroK-RTS/Zero-K-Infrastructure/issues/1552","id":388328834,"user":{"login":"sprunk","id":2573076,"avatar_url":"https://avatars0.githubusercontent.com/u/2573076?v=4","gravatar_id":"","url":"https://api.github.com/users/sprunk","html_url":"https://github.com/sprunk","followers_url":"https://api.github.com/users/sprunk/followers","following_url":"https://api.github.com/users/sprunk/following{/other_user}","gists_url":"https://api.github.com/users/sprunk/gists{/gist_id}","starred_url":"https://api.github.com/users/sprunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sprunk/subscriptions","organizations_url":"https://api.github.com/users/sprunk/orgs","repos_url":"https://api.github.com/users/sprunk/repos","events_url":"https://api.github.com/users/sprunk/events{/privacy}","received_events_url":"https://api.github.com/users/sprunk/received_events","type":"User","site_admin":false},"created_at":"2018-05-11T10:42:44Z","updated_at":"2018-05-11T10:42:44Z","author_association":"MEMBER","body":"IMO protocol:\r\n\r\n```c#\r\npublic class QueueBanList {\r\n    public AutohostMode QueueType; // 1v1, teams etc\r\n    public List<string> Maps; // names\r\n}\r\n\r\n[Message(Origin.Client)]\r\npublic class MatchMakerBanList {\r\n    public List<QueueBanList> QueueBans;\r\n}\r\n\r\n[Message(Origin.Server)]\r\npublic class MatchMakerBanListResponse {\r\n    public enum {\r\n       OK = 0,\r\n       NoSuchMap,\r\n       NoSuchQueue,\r\n       TooManyMapsSpecified,\r\n    } Status;\r\n}\r\n```\r\n\r\nAnd add to Welcome:\r\n```c#\r\npublic List<QueueBanList> MyMapBans;\r\n```"}}
{"actor":{"display_login":"sprunk"}}