# 4.3. Полуавтоматический ТАСинг

Полуавтоматический ТАСинг

Этот метод является дальнейшим развитием идей нелинейного метода ТАСинга.

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

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

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

Однако, когда текущий участок несложен, и все факторы оптимальности уже известны (и требуется только найти их идеальное сочетание), полезно отвлечься от всего остального и посвятить всё внимание перебору вариантов. Тогда вы успеете проверить гораздо больше подходов, до того как вам надоест текущий участок.

Режим Записи должен быть выключен. Галочка "Auto-restore last position" должна быть включена. Галочки "Turbo seek" и "Follow cursor" обычно отключены, и включаются по мере необходимости.

Основное занятие:

1. Проскроллировать Piano Roll к началу редактируемого участка мувика, доставить сюда Курсор Проигрывателя, определиться с целью.
2. Определить кадр конца участка и оставить там Курсор Проигрывателя.
3. Предположить наличие ошибки на участке, взвесить имеющиеся факторы оптимальности и прикинуть способ исправления ошибки.
4. Н авигация курсором мыши к любому кадру текущего участка осуществляется практически мгновенно.
5. Редактировать участок мышью. После каждого вносимого изменения Курсор Проигрывателя будет автоматически проигрывать участок и останавливаться на кадре, который считался концом участка. При необходимости можно передвигать текущий конец участка, перемещая Курсор Проигрывателя вручную (колесом). Шаги 4 и 5 непрерывно чередуются, пока редактирование не считается законченным в соответствии с критерием оптимальности.
6. [необязательный шаг] Сохранить готовый подход в любую свободную Закладку, например, в слот 8 или 7.
7. Если это не первый подход к прохождению участка, с равнить новый результат с лучшим старым результатом, используя критерий оптимальности. Если новый подход оказался лучше (или это первый подход), следует сохранить его в Закладку 9. Слот 9 будет отвечать за хранение самого лучшего результата шлифовки участка.
8. Если осталось желание испробовать другую серию подходов, следует вернуться к шагу 3, и так до тех пор пока не иссякнут идеи по данному участку.
9. [необязательный шаг] Когда идеи начинают иссякать, можно почерпнуть информацию из прошлого или будущего: пересмотреть несколько участков, перетаскивая Курсор Проигрывателя или отпустив паузу эмулятора. При необходимости можно по-быстрому дорисовать Ввод для просмотра предстоящих событий игры. Но п ри возвращении к редактированию участка нужно вернуть Курсор Проигрывателя на кадр целевого события.
10. Когда идеи полностью иссякли, восстановить лучший подход из Журнала Истории или из Закладки 9 в текущий мувик и перейти к следующему участку.

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

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

Например, чтобы создать прыжок через яму, вы сначала рисуете длинное зажатие R и даже не обращаете внимание, что на экране FCEUX в это время Марио на бегу проваливается в яму. Вы дорисовываете нажатие кнопки A, а затем уже смотрите на окно эмулятора и стираете/дорисовываете дополнительные нажатия A, тем самым изменяя начало и длительность прыжка и наблюдая траекторию спрайта Марио.

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

Как и в простом нелинейном методе, здесь можно менять скорость эмуляции, получая различные вариации полуавтоматического метода:

1. редактирование с просмотром изменений в реальном времени
2. редактирование с просмотром изменений при замедленной эмуляции
3. редактирование с мгновенным просмотром итога (турбо)

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

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

В традиционном методе на перебор подходов (поиск самого первого кадра) уйдёт 5-10 минут, а полуавтоматический метод позволяет проверить все эти подходы гораздо быстрее:

- Включаете галочку "Auto-restore last position" и "Turbo seek". Отключаете галочку "Follow cursor".
- Ставите пробное нажатие Start на кадре, где оно точно сработает, например, на кадр 100.
- Просматриваете срабатывание кнопки до момента, когда по изображению на экране уже понятно, что Start сработал (например, на экране появился текст "World 1-1"). Допустим, это кадр 150. Оставляете Курсор Проигрывателя на этом месте – это и будет конец участка.
- Теперь удаляете своё пробное нажатие (в окне FCEUX тут же мигнёт и исчезнет "World 1-1", и останется только экран заставки, так как нажатия Start больше нет).
- Ставите нажатие Start на начало участка, то есть заведомо раньше, чем оно может сработать. Например, поставьте его на первый кадр мувика. Изображение в окне FCEUX мигнёт, но экран заставки останется без изменений, так как Start не сработал.
- Зажимаете Ctrl + Shift и начинаете периодически нажимать Insert (раз в секунду или чаще – это зависит от мощности вашего компьютера). После каждого нажатия Ctrl + Shift + Insert символ кнопки Start отодвигается на один кадр вперёд, а в окне FCEUX вы видите, повлияло ли это нажатие на состояние игры в кадре 150, или не повлияло.
- Пока Start не доходит до момента, с которого игра начинает принимать Ввод, окно FCEUX будет показывать заставку. Но когда очередное нажатие Ctrl + Shift + Insert передвинет Start на подходящий кадр, в окне FCEUX появится экран "World 1-1".
- Таким образом, вы обнаружили самый первый возможный кадр для нажатия Start. Номер этого кадра, скорее всего, будет намного меньше 100.

Таким же образом можно очень быстро находить оптимальную длительность зажатия кнопки A для приземления в нужной точке. Также можно быстро манипулировать удачей во многих играх. И вообще, удобство автоматического турбо-добегания наглядно проявляется в ситуациях, когда на участке важен только один фактор оптимальности, и требуется быстро перебрать сотню однотипных подходов.

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

Плюсы метода:

+ Мгновенная навигация и высокая скорость работы побуждает выполнять больше тестов.

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

+ Возможность пропускать ненужные сцены.

Минусы метода:

– Настойчивая игровая отдача провоцирует ТАСера отсекать некоторые нелогичные, но потенциально выигрышные подходы.

– Упор на мышиное управление.

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

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

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

В следующей главе: тонкая настройка программы.

ПРАКТИЧЕСКОЕ ЗАДАНИЕ: Хорошенько отшлифуйте Ввод в распланированных участках своего тестового мувика. Если пробное разбиение Маркерами оказалось неудачным – переразбивайте на ходу. Используйте только второй и третий методы ТАСинга, так как традиционный метод устарел. Попробуйте также воспользоваться турбо в нужных местах. Примерное время выполнения: 30-60 минут.

Created with the Personal Edition of HelpNDoc: Produce Kindle eBooks easily