# 4. Методология ТАСинга

Методология ТАСинга

Эта глава посвящена центральному занятию в ТАСинге – созданию оптимального Ввод а на отдельно взятом участке мувика. Именно благодаря упорной ручной шлифовке Ввод а ТАСы выглядят так блестяще. Размер участка может быть любым, критерии и факторы оптимальности могут быть разными, но метод в сущности один и тот же: перепробовать всевозможные подходы и выбрать самый лучший. Вопрос только в том, как сделать это с минимальными затратами времени и усилий.

- Геймеры ошибочно считают, что для создания ТАСа достаточно просто один раз пройти игру, пользуясь сэйвами только в тех случаях, когда совершаются фатальные ошибки, приводящие к невозможности пройти текущий участок (например, смерть персонажа).
- ТАСеры-новички понимают, что для красивого ТАСа нужно исправлять все замеченные ошибки (например, такие мелочи, как спотыкание о порог). Они тоже проходят каждый участок лишь один раз, но затрачивают на прохождение больше времени, чем простые игроки, так как сохраняются и загружают сэйвы гораздо чаще. При ТАСинге простых игр этого может быть достаточно.
- Опытные ТАСеры знают, что для совершенного ТАСа не достаточно исправления всех замеченных ошибок. Нужно также исправлять незамеченные ошибки. Учитывать неизвестные факторы. Подходить к задаче с неочевидной стороны. Для всего этого они проходят один и тот же участок несколько раз, исправляя все замеченные ошибки и пытаясь как-то не совершить незаметные.

Нелегко убедить себя тратить время на альтернативные способы прохождения участка, когда он уже пройден, и в нём уже исправлены все явные ошибки. После достижения текущей внутриигровой цели хочется сразу ставить перед собой следующую цель в рамках игры. Однако следует помнить, что цель ТАСера сильно отличается от целей игрока. Поэтому нужно абстрагироваться от правил игры и не отступать от участка, пока не выполнена реальная цель, а не просто мелкая цель игрока.

Это вообще самое сложное – изобретать новые подходы к решению одной и той же задачи. Главным образом на ум ТАСеру приходит тот же самый подход, который использовал бы в этом месте игры обычный игрок. Поэтому в большинстве случаев вместо революционного пути используется эволюционный. ТАСер производит постепенную модификацию имеющегося базового подхода, то исправляя его ошибки, то проводя эксперименты. В ходе таких вдумчивых модификаций ТАСер пополняет свою базу знаний об игре, и в результате получается Ввод, до которого невозможно было догадаться сразу.

Конечно, иногда приходит озарение, и некая революционная идея даёт потрясающие улучшения, превосходящие все выгоды от полировки. Ради таких эмоциональных моментов многие и любят ТАСинг. Только это не отменяет необходимость отшлифовывать новый революционный подход теми же самыми методами, чтобы сделать его ещё ближе к идеалу.

Вместо чтения описываемых здесь техник вы можете сразу приступить к реальному ТАСингу, чтобы по завершении нескольких проектов выработать собственную методику. Но, вероятнее всего, через год ТАСинга вы придёте к описываемой здесь схеме работы.

Итак, процесс создания наилучшего Ввод а на оптимизируемом участке можно условно представить в виде зацикленного процесса исправления ошибок в предыдущих версиях Ввод а на этом участке. Ошибкой мы называем любое отличие текущего Ввода от неизвестного идеального Ввода. В такой постановке вопроса хорошо то, что к совершенному Вводу можно приближаться постепенно, совершая небольшие шаги, которые реально разработать, даже не будучи гением. Большинство ошибок успешно исправляются многократным осмотром и модификацией. То есть, даже когда у вас нет никаких оригинальных идей, вы можете достигать успехов за счёт упорства. Успехи мотивируют продолжать работу, и это подготавливает почву для прорывных идей.

Чтобы исправить ошибку во Вводе мувика, нужно:

1. Осознать факт ошибки.
2. Предположить способ решения.
3. Осуществить навигацию к месту исправления.
4. Внести изменения.
5. Оценить результат и подтвердить факт исправления.

1. Осознание ошибки происходит либо во время просмотра мувика в режиме Read-Only, либо прямо во время Записи/редактирования Ввод а.

Примечание: Зачастую вместо обнаружения осязаемой ошибки ТАСер только предполагает, что данный участок ещё можно улучшить. Всегда полезно усомниться в идеальности текущего результата и поэкспериментировать с Вводом – порой действительно обнаруживаются нереализованные возможности.

2. Способы решения либо очевидны сразу, либо находятся экспериментальным путём. В редких случаях требуются расчёты и сравнения. В правильно выбранных участках все ключевые факторы оптимальности находятся внутри участка. Информация из предыдущих или последующих участков требуется редко.

Примечание: Иногда, исправляя одну ошибку, мы незаметно создаём другую. В этом случае процесс оптимизации мог бы пойти в неправильном направлении, но, к счастью, в ТАСинге такие ситуации возникают крайне редко, потому что видеоигры гораздо нагляднее и линейнее реальной жизни, поэтому игрок может обнаружить все факторы и верный критерий оптимальности. Тасэдитор дополнительно облегчает этот процесс благодаря визуализации данных.

3. Возможность навигации к месту ошибки является главным отличием ТАСинга от обычных спидранов. Простые игроки могут осознать ошибку, но только ТАСеры всегда возвращаются назад для её коррекции.

В традиционном методе ТАСинга навигация может занимать заметное количество времени и усилий. Тасэдитор же делает навигацию молниеносной..

Примечание: Иногда место совершения ошибки находится на более раннем участке, а обнаруживается только на текущем. В этом случае нужно выявить участок совершения ошибки и отредактировать его согласно полученной информации от проигрываемого участка. И в этом случае скорость навигации ещё более критична.

4. Внесение изменений во Ввод – это воплощение мыслей ТАСера в жизнь. Чем меньше задержка между мыслью и её реализацией, тем лучше.

В традиционном методе ТАСинга модификация Ввода длится дольше, так как помимо перезаписи ошибочных кадров требуется ещё перезаписать соседние кадры. В Тасэдиторе это обычно не требуется.

Примечание: Так как любое изменение Ввода влечёт за собой изменения игрового процесса, иногда и в Тасэдиторе может потребоваться пересинхронизация Ввода, следующего за местом исправления ошибки.

5. Чтобы увидеть результат, достаточно возобновить просмотр мувика с начала участка или прямо с кадра исправления ошибки, не перепроверяя предшествующие участки, так как исправление ошибки влияет только на последующие события.

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

Досмотреть участок требуется до конца, то есть до момента, когда в игре происходит целевое событие, и к нему можно надёжно применить критерий оптимальности. Потому что может оказаться, что это исправление только поначалу кажется выгодным, но в итоге только ухудшает участок.

После оценки результата ошибка либо считается исправленной/несуществующей, либо требуется вернуться к шагу 2 и переобдумать ситуацию.

До Тасэдитора все ошибки (как явные, так и предполагаемые) исправлялись с помощью создания и загрузки сэйвов. Если вы не знакомы с традиционным методом ТАСинга, вот его основные принципы:

- Эмуляция игры почти всё время стоит на паузе. Пауза отпускается только при просмотре готовых участков.
- ТАСер последовательно впечатывает Ввод в кадры, на которые указывает Курсор Проигрывателя. Он видит результат совершённого Ввод а на следующий кадр после впечатывания (а иногда через несколько кадров). Опытный ТАСер создаёт новый сэйв после любого сложно воспроизводимого действия, чтобы иметь возможность быстро возвращаться назад и не переигрывать весь участок с начала.
- Чтобы исправить ошибку, ТАСер возвращается к предполагаемому месту ошибки и переписывает весь Ввод, начиная с кадра, требующего изменения. Если на этом кадре был сделан сэйв, можно сразу загрузить этот сэйв в режиме Read+Write и начать впечатывать кнопки. Если же имеются только сэйвы на некотором расстоянии перед этим кадром, существует два варианта. Вариант 1: загрузить ближайший сэйв в режиме Read-Only и досмотреть мувик до нужного кадра, затем переключиться обратно в режим Записи и начать исправление, тем самым не затронув Ввод на промежутке между кадром сэйва и кадром ошибки. Вариант 2: сразу, не переключаясь из режима Записи, загрузить ближайший сэйв и по памяти повторить старый Ввод, дойдя до кадра ошибки, а затем начать исправление. Второй способ используется чаще, потому что после ближайшего сэйва обычно располагается легко воспроизводимый Ввод (например, простое зажатие R + B). Также, по прибытии на предполагаемый кадр ошибки, опытный ТАСер машинально создаёт сэйв (на всякий случай!), чтобы в следующий раз быстро возвращаться прямо к кадру, не тратя время на навигацию. Такая предусмотрительность имеет смысл, потому что ошибки редко исправляются с первой попытки, обычно требуется многократно переписывать один и тот же кусочек Ввод а, начиная примерно с одного кадра.
- Неудобства этого традиционного метода наглядно проявляются, когда нужно увидеть отдалённый результат Ввод а (например, кнопка выбора была нажата сейчас, а шарик рулетки остановится только через несколько секунд). В таком случае ТАСер делает сэйв перед началом Ввода, записывает решающий Ввод и делает сэйв после него, а затем отпускает паузу и наспех (неоптимально) проходит игру до появления результата. При удовлетворительном результате ТАСер загружает сэйв, идущий после решающего Ввода, и покадрово записывает оптимальное прохождение, уже будучи уверенным в успешном исходе. А при неудовлетворительном результате он загружает начальный сэйв, меняет решающий Ввод и повторяет все действия снова (создаёт сэйв после Ввод а и наспех проходит до результата). И так может продолжаться довольно долго.
- Чтобы скопировать старый Ввод (например, хитроумный разгон Марио в начале каждого уровня), ТАСер либо зазубривает комбинацию кнопок, либо копирует её по частям с помощью нескольких прыжков между местом-источником и местом-приёмником. Игра посылается то на сэйв предыдущего Ввод а (посмотреть нажатия в режиме Read-Only и запомнить парочку в уме), то на сэйв текущего места записи (переключиться на Read+Write и выложить запомненные нажатия). Если после каждого прыжка пододвигать тот и другой сэйв на пару кадров вперёд, навигация между источником и приёмником Ввод а будет не очень утомительной. И всё же, когда требуется скопировать длинную последовательность нажатий, используется внешний редактор Ввод а с функциями копипаста. Но переключение между разными программами сильно отвлекает ТАСера, поэтому зачастую проще скопировать Ввод вручную.
- Чтобы осмотреть текущий прогресс, ТАСер сохраняется, отключает Запись и загружает сэйв, оставленный в начале уровня (обычно для этого служит редко используемый слот на клавише F10). Затем он отпускает паузу и смотрит мувик, словно посторонний зритель. Для продолжения записи он включает режим Read+Write и возвращается точно к последнему записанному кадру, загрузив последний сэйв (обычно это наиболее часто используемый слот, F1). А если во время просмотра ТАСер принял решение изменить старый Ввод, он делает сэйв на этом месте, переключается на Read+Write и загружает только что созданный сэйв. Предварительно следует убедиться, что последнее актуальное состояние мувика сохранено не только в F1, но и в другой слот, который вы не будете трогать во время экспериментов со старым Вводом. Это нужно для того, чтобы в случае провала эксперимента можно было восстановить старый мувик, даже если слот F1 уже затёрт в ходе экспериментов.
- Таким образом, большинство из имеющихся 10 слотов используется для навигации между различными моментами игры. Используя термины Тасэдитора – для навигации Курсором Проигрывателя по мувику. Даже на больших участках десяти слотов должно с лихвой хватить для быстрой телепортации между всеми интересующими местами. Обычно хватает 3-5 слотов, которыми опытный ТАСер жонглирует с поразительной скоростью.
- Парочка других слотов обычно используется для хранения альтернативных стратегий прохождения. Когда ТАСер заранее не знает, какой подход к прохождению большого участка (например, целого уровня игры) окажется лучше, он сначала отшлифовывает первый подход и сохраняет его в отдельный слот (например, F8), а затем отшлифовывает второй подход и делает сэйв в соседний слот (например, F7). Затем попеременно загружает то один, то другой слот (или даже просматривает оба ответвления мувика поочерёдно) и выбирает лучший из них, пересохраняет его в слот F1 и продолжает работу в этом ответвлении.

Как видите, почти всё в традиционном методе ТАСинга делается благодаря сэйвам (Закладкам). В Тасэдиторе они частично заменены Гринзоной и Журналом Истории, но и здесь они по-прежнему играют немаловажную роль, в основном для хранения альтернативных ответвлений. Навигацию Курсором Проигрывателя теперь быстрее осуществлять либо перетаскиванием, либо с помощью колеса мыши. Более того, при редактировании Ввода теперь вообще не требуется возвращать Курсор Проигрывателя к кадру исправления, достаточно проскроллировать Piano Roll к этому месту и изменить Ввод мышкой.

Так как вместо Записи в Тасэдиторе эффективнее использовать редактирование, отпадает необходимость постоянно переключать режимы. Теперь эмулятор всё время находится в режиме Read-Only.

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

Ну а при необходимости можно получить в Тасэдиторе многократно усиленную отдачу. Для этого нужно использовать третий метод ТАСинга.

Рассмотрим преимущества и недостатки всех трёх методов по порядку.

Три метода ТАСинга в Тасэдиторе: Традиционный метод навигация по Вводу Курсором Проигрывателя через прыжки по Закладкам запись последовательностей Ввода с клавиатуры/джойстика автоматический просмотр промежуточных результатов Ввода Нелинейный метод навигация по Вводу мышкой редактирование Ввода мышкой/клавиатурой/джойстиком по команде пользователя: просмотр промежуточных или итоговых результатов Ввода Полуавтоматический метод навигация по Вводу мышкой редактирование Ввода мышкой/клавиатурой/джойстиком автоматический просмотр промежуточных или итоговых результатов Ввода

Created with the Personal Edition of HelpNDoc: Easily create Web Help sites