Тема: Battlegrounds
Показать сообщение отдельно

Старый 07.04.2010, 17:10   #1
небо здесь
World GM
 
Аватар для небо здесь
 
Регистрация: 15.02.2007
Адрес: Пироговка
Сообщения: 598
небо здесь , несомненно, знает многое, чему стоит поучиться...небо здесь , несомненно, знает многое, чему стоит поучиться...
Вес репутации: 40
Отправить сообщение для  небо здесь с помощью ICQ
По умолчанию

Цитата:
Сообщение от Novus Посмотреть сообщение
дак что бы не было таких заблуждений - разжуйте, пожалуйста, для нубов чё и как. На пальцах если можно.
Все гениально: если убрать возможность преимущества в 1 человека - на БГ будет 0.

Рассмотрим ситуацию:
Начало бг: 0-0. В очереди записано N алых и M ордиков.
Из очереди на БГ добавляется один ордик. становится 0-1. Теперь, кидается запрос на вступление на БГ первому алому в очереди. Допустим он принимает - становится 1:1. И так далее.

Косяки могу возникать из-за того, что "алый"/"ордик" подставной - то есть запрос ему кидается, и система думает что он на БГ уже (на лицо баг системы, не спорю, но это отдельная история) и ищет "следующего в очереди", в то время как "подставной" запрос не принимает и удаляется из очереди. Кроме этого после "лива" - система не пересчитывает число игроков (опять же баг), а думает что на БГ все еще 6 на 6 (для примера), не смотря на то, что пара алых уже "сбежала в страхе". И продолжает добавлять. Эти баги понятны, и необходим анализ системы на уровне алгоритма и кода, что есть вещь трудоемкая и сложная, для любого программиста. Дело тут совсем не в "фракционных предпочтениях". Если бы сначала было проверка на число "алых", а потом на число "ордиков" - перевес был бы в сторону альянса и вопила бы на форуме орда. Закономерно.

Теперь. Что будет, если запретить +1:
Начало, на бг 0-0. Система хочет добавить из очереди первого игрока - не важно, ордика или алого, НО, при добавлении будет создан перевес в 1 игрока на БГ, что запрещено. Значит система никого не добавляет. Все. Занавес

Хоть немного прояснил ситуацию?

Предвосхищая крики "ну так если знаете - почините", повторюсь уже в который раз. Мы знаем ОБ ОЧЕНЬ МНОГИХ БАГАХ. Реально ОБ ОЧЕНЬ МНОГИХ. Но код мангоса, как программистского проекта, оставляет желать лучшего в плане "понятности" и "доступности" сторонним разработчикам, так что правка порой самого "наглядного", "выпираюшего" бага, требует кучи месяцев, а правка "злого, но глупого" - может занять пару минут и пару строчек кода.
__________________
"Я буду костью в горле всем до тех пор пока жив" (7000$)
небо здесь вне форума   Ответить с цитированием