Version 5, last updated by Shevchenko.Artem at March 16, 2010 06:01 UTC
Генерация случайных действий
Генерация защиты
Генерировать противодействие игрок защиты может следующим образом. Он перебирает всех игроков противника. Для каждого из них он ищет начиная с начала таблицы и вниз, до тех пор, пока не найдет класс, который включает действие данного игрока противника. Затем из возможных противодействий он с умом (т.е. оценивая, насколько он близко к противнику в случае дриблинга или может ли он попасть в зону, где возможен перехват) выбирает из возможных противодействий те, которые он реально может в данном случае применить по отношению к этому игроку, попутно получая нужные параметры, например, в какую зону для валидного совершения данного действия ему нужно переместиться. При этом, кажется, NotAction и Move стоит вынести отдельно, т.к. они не имеют отношения к конкретному игроку. После этого он должен кинуть монетку и решить, какое же из возможных действий он выберет.
| Класс действий | Альтернативное название класса | Возможные действия (атака) | Обладание мячом | Возможные противодействия (защита) | Общие действия защиты |
| 0 | Движение без мяча | NotAction, Move | Нет | NotAction, Move | |
| 1 | Только движение | NotAction, Move | Да | Pressing, Move&Pressing | NotAction, Move |
| 2 | Движение с дриблингом | Move&Dribbling | Да | AntiDribbling, Move&AntiDribbling | NotAction, Move |
| 3 | Отдача паса | Pass | Да | Intercept, Move&Intercept | NotAction, Move |
| 4 | Прием паса | RecievingPass, Move&RecievingPass | Да (!!!) | Pressing, Move&Pressing | NotAction, Move |
В случае с пассом действие делится на две фазы. Первая -- отдача паса одним из игроков (противодействие к этой фазе -- перехват), а вторая -- прием мяча другим игроком (противодействие -- отбор). Обладающими мячом считаются в данном случае "одновременно" два игрока -- отдающий пас и принимающий его.
В случае с оценкой позиции, предлагается ее загнать как составную часть действия. Подробнее лучше вживую объяснять.
Генерация атаки