Инст-Зеркало/копия (Баги при входе в инст)

Статус
Закрыто для дальнейших ответов.
Прогресс прохождения рейдинстансов (далее, "сэйв") сохраняется между входами/выходами, сбрасывается по понедельникам. Изначально игроки не имеют приписанного к ним сейва, он появляется в момент убийства первого моба, который не будет респавниться вплоть до сброса сейва. То есть факт смерти этого моба сохраняется в сейв. Второй способ получить сейв - принять чужой прогресс.

Правило 0: для одного сейва создается не более одного инста

Правило 1: если игрок обладает сейвом, он всегда будет попадать только в инстанс с этим сейвом
Следствие 1.1: два игрока, обладающие раздельными сейвами, в один инстанс не попадут в принципе
Следствие 1.2: игроку с сейвом не будут предлагать принять сейвы других игроков
Следствие 1.3: игрок, не обладающий сейвом, но принявший чужой сейв, будет попадать в инстанс с принятым им сейвом и перепринять другой сейв уже не сможет
Следствие 1.4, шоке-шоке: игроки, не состоящие в одном рейде, но в прошлом получившие общий сейв, попадут в один и тот же инстанс!

Правило 2: сейв *общий*, в единственном экземпляре, для всех игроков, присутствовавших в инстансе на момент смерти (на самом деле список игроков, которым присваивается сейв составляется чуть более сложно, но пока это не важно).

Следствие 2.1: если у игрока был сейв, общий с другими игроками, и во время отсутствия этого игрока остальные изменили сейв (например, убили еще одного босса), для этого игрока босс тоже будет мертв.
Следствие 2.2: после получения сейва игрок в любой момент может снова присоединиться к своему рейду, т.к. обладает тем же сейвом
Следствие 2.3: если игроку, не обладающему сейвом и состоящему в рейде у членов которого есть более одного сейва, предлагают принять прогресс, то черт знает какой из этих прогрессов ему предлагают принять. Надо уточнить в коде.

Правило 3: в рейдинсте не может присутствовать более 24 человек одновременно
Следствие 3.1: возможно создать ситуацию, когда игрока не будет пускать в инст потому что в нем нет места. Например, два человека получают общий сейв, потом один выходит, второй собирает полный рейд, весь рейд принимает сейв и заходит в инстанс. В результате сейв принадлежит 25 людям и первый игрок, покинувший рейд, в инст зайти не сможет - по правилам 0+1 он должен попасть в тот же самый инст, однако он не может в него попасть по правилу 3.
 
Статус
Закрыто для дальнейших ответов.
Вверх