Цитата:
Сообщение от Novus
дак что бы не было таких заблуждений - разжуйте, пожалуйста, для нубов чё и как. На пальцах если можно.
|
Все гениально: если убрать возможность преимущества в 1 человека - на БГ будет 0.
Рассмотрим ситуацию:
Начало бг: 0-0. В очереди записано N алых и M ордиков.
Из очереди на БГ добавляется один ордик. становится 0-1. Теперь, кидается запрос на вступление на БГ первому алому в очереди. Допустим он принимает - становится 1:1. И так далее.
Косяки могу возникать из-за того, что "алый"/"ордик" подставной - то есть запрос ему кидается, и система думает что он на БГ уже (на лицо баг системы, не спорю, но это отдельная история) и ищет "следующего в очереди", в то время как "подставной" запрос не принимает и удаляется из очереди. Кроме этого после "лива" - система не пересчитывает число игроков (опять же баг), а думает что на БГ все еще 6 на 6 (для примера), не смотря на то, что пара алых уже "сбежала в страхе". И продолжает добавлять. Эти баги понятны, и необходим анализ системы на уровне алгоритма и кода, что есть вещь трудоемкая и сложная, для любого программиста. Дело тут совсем не в "фракционных предпочтениях". Если бы сначала было проверка на число "алых", а потом на число "ордиков" - перевес был бы в сторону альянса и вопила бы на форуме орда. Закономерно.
Теперь. Что будет, если запретить +1:
Начало, на бг 0-0. Система хочет добавить из очереди первого игрока - не важно, ордика или алого, НО, при добавлении будет создан перевес в 1 игрока на БГ, что запрещено. Значит система никого не добавляет. Все. Занавес
Хоть немного прояснил ситуацию?
Предвосхищая крики "ну так если знаете - почините", повторюсь уже в который раз. Мы знаем ОБ ОЧЕНЬ МНОГИХ БАГАХ. Реально ОБ ОЧЕНЬ МНОГИХ. Но код мангоса, как программистского проекта, оставляет желать лучшего в плане "понятности" и "доступности" сторонним разработчикам, так что правка порой самого "наглядного", "выпираюшего" бага, требует кучи месяцев, а правка "злого, но глупого" - может занять пару минут и пару строчек кода.