Инструменты пользователя

Инструменты сайта


генератор:размещение_игроков

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

генератор:размещение_игроков [2018/11/27 13:07] (текущий)
Дмитрий Язынин создано
Строка 1: Строка 1:
 +====== Размещение игроков ======
  
 +В начале каждого такта генератор занимается "​глобальным"​ размещением игроков в рамках клеток.
 +
 +В самом начале такте генератор определят перечень клеток,​ в которые может быть отдан пас. Этот перечень формируется на базе стиля, которым играет команда,​ владеющая мячом.
 +Перечень клеток,​ может быть скорректирован,​ в частности,​ в районе чужой штрафной добавляются клетки штрафной и клетки перед ней (однако,​ игрок с мячом не рассматривает такие клетки,​ как клетки продолжения атаки).
 +
 +Сначала размещаются игроки атаки.
 +Генератор проходит по перечню клеток и проверяет игроков на возможность оказаться в заданной клетке (игроки проходят проверку на локализацию).
 +результаты проверки локализации,​ как положительные,​ так и отрицательные,​ запоминаются генератором.
 +Подробнее процесс описан в статье [[генератор:​размещение_игроков_атаки|размещении игроков атаки]]
 +
 +Для игроков защиты генератор так же проходит по перечню клеток и проверяет игроков на локализацию. Обычно в клетках,​ где нет игроков атаки, защитники не проверяются на локализацию. Подробнее о см в статье [[генератор:​размещение_игроков_защиты|Размещение игроков защиты]]
 +
 +После того, как все игроки были размещены в клетках,​ генератор проверяет нет ли где перебора защитников. Если в какой-то клетке есть "​лишние"​ защитники,​ то генератор пробует передвинуть их в ту соседнею клетку,​ в которой мало защитников.
 +
 +Если так получилось,​ что в соседние клетки передвинуть нельзя,​ например,​ если там нет игроков атаки, то генератор пытается найти "​лишнего"​ защитника и передвинуть его уже не в соседнею клетку,​ а в ту точку, которая прописан в его роли как **point_def** (или "​родная"​ точка).
 +
 +Для игроков атаки point_def расположена на чужой половине поля и они, либо бегут вперед (например,​ в начале матча),​ либо отходят немного назад, после потери мяча в чужой штрафной.
 +
 +Если point_def находится на своей половине поля, то она корректируется на линию мяча (то есть такой игрок старается не отстать от игрока с мячом)
 +
 +Стоит отметить,​ что point_def для LCD и RCD расположен в разных клетках и они будут стараться оказаться в разных зонах поля.
 +
 +Перемещение игрока в "​родную"​ точку происходит с учетом его скорости,​ усталости и временем между эпизодами. Данный процесс получил условное наименование "​RESERVE 2.0" (эти игроки,​ как бы остаются в резерве,​ смещаясь к своим "​родным"​ точкам,​ но при этом могут взаимодействовать с игроками атаки).
 +
 +Из одной клетки,​ может быть задействовано в "​RESERVE 2.0" до двух игроков. Обычно,​ это не более одного игрока. Надо отметить,​ что далеко не каждый такт находятся "​лишние"​ защитники.
 +
 +===== Поиск "​лишнего"​ защитника =====
 +  - Если клетка,​ не является клеткой свой штрафной (6,2 в системе координат атакующих) и в клетке есть SW, то он выбирается кандидатом в "​лишнего"​ защитника.
 +  - Среди всех защитников выбираем того, у кого минимальный вес локализации в клетке.
 +  - для найденного защитника проверяем координаты его "​родной"​ клетки,​ если она совпадает с текущей клеткой,​ то пробуем найти другого игрока.
 +
 +  * "​лишний"​ защитник перемещается по направлению к своей "​родной"​ клетке.
 +(Стоит отметить,​ что при этом он может и не успеть покинуть текущую клетку,​ все зависит от запаса времени и скорости)
 +такой защитник в просмотрщике в поле **mode** получает отметку "​RESERVE 2.0"
 +
 +Затем еще раз проверяем есть ли в клетке "​лишние"​ защитники и если есть то пробуем найти второго "​лишнего"​ защитника. При этом, ранее передвинутый игрок не может быть выбран.
 +такой защитник в просмотрщике в поле **mode** получает отметку "​RESERVE 2.1"
 +Если второй лишний защитник найден,​ то он тоже перемещается в point_def, скорректированную на линию мяча.
генератор/размещение_игроков.txt · Последние изменения: 2018/11/27 13:07 — Дмитрий Язынин