Open GoogleFrog opened 7 years ago
In the long run this would also help us choose maps for the pool.
I think i would rather make some more generic and useful solution. Like rating match on the debriefing, and players and map .. and then reuse these data..
That's better for choosing what maps to unfeature, but I'd still go for this feature. It's not uncommon for other games to allow map choosing/banning in MM. Players being able to play on maps they like can only improve their experience. If this leads to monoculture we should improve our map pool.
Rating map can be collapsed into like/dislike, with dislikes used to weight map selection for the player. Map's global "karma" could also be used as a weight factor.
If a player dislikes the maps sparingly, then the weighting should more or less match the ban list behaviour in the OP (but perhaps with some opportunity for opponent/teammate/global karma to override it if their like/dislike is more intense).
Having just one disliked map is hating it with 100% intensity.
IMO protocol:
public class QueueBanList {
public AutohostMode QueueType; // 1v1, teams etc
public List<string> Maps; // names
}
[Message(Origin.Client)]
public class MatchMakerBanList {
public List<QueueBanList> QueueBans;
}
[Message(Origin.Server)]
public class MatchMakerBanListResponse {
public enum {
OK = 0,
NoSuchMapInThisQueue, // either because map does not exist at all, or eg trying to ban chicken nuggets from 1v1
NoSuchQueue,
TooManyMapsSpecified, // see below for how clients learn the max
} Status;
}
And add to Welcome
:
public List<QueueBanList> MyMapBans;
public Map<AutohostMode, unsigned> MaxQueueBans; // so client knows how many he can ban
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.
Banned 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:
ZKLS 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).