fceux/help/taseditor-ru/TASingMethodology.html

211 lines
39 KiB
HTML
Raw Normal View History

<html>
<head>
<title>4. Методология ТАСинга</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="generator" content="HelpNDoc Personal Edition 3.8.0.560">
<link type="text/css" rel="stylesheet" media="all" href="css/reset.css" />
<link type="text/css" rel="stylesheet" media="all" href="css/base.css" />
<link type="text/css" rel="stylesheet" media="all" href="css/hnd.css" />
<!--[if lte IE 8]>
<link type="text/css" rel="stylesheet" media="all" href="css/ielte8.css" />
<![endif]-->
<style type="text/css">
#topic_header
{
background-color: #EFEFEF;
}
</style>
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/hnd.js"></script>
2012-08-08 15:15:13 +00:00
<script type="text/javascript">
$(document).ready(function()
{
if (top.frames.length == 0)
{
var sTopicUrl = top.location.href.substring(top.location.href.lastIndexOf("/") + 1, top.location.href.length);
top.location.href = "index.html?" + sTopicUrl;
}
else if (top && top.FrameTOC && top.FrameTOC.SelectTocItem)
{
top.FrameTOC.SelectTocItem("TASingMethodology");
}
});
</script>
</head>
<body>
<div id="topic_header">
<div id="topic_header_content">
<h1>4. Методология ТАСинга</h1>
<div id="topic_breadcrumb">
<a href="BeginnersGuide.html">Курс для новичка</a> &rsaquo;&rsaquo; </div>
</div>
<div id="topic_header_nav">
<a href="BeginnersGuide.html"><img src="img/arrow_up.png" alt="Parent"/></a>
<a href="TASingProcess.html"><img src="img/arrow_left.png" alt="Previous"/></a>
<a href="TraditionalTASing.html"><img src="img/arrow_right.png" alt="Next"/></a>
</div>
<div class="clear"></div>
</div>
<div id="topic_content">
<p></p>
<p><span class="rvts20">Методология ТАСинга</span></p>
2012-08-08 15:15:13 +00:00
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts22">Эта глава посвящена центральному занятию в ТАСинге созданию оптимального </span><span class="rvts22">Ввод</span><span class="rvts22">а на отдельно взятом участке мувика. Именно благодаря упорной ручной шлифовке </span><span class="rvts22">Ввод</span><span class="rvts22">а ТАСы выглядят так блестяще. Размер участка может быть любым, критерии и факторы оптимальности могут быть разными, но метод в сущности один и тот же:</span><span class="rvts22"> перепробовать всевозможные подходы и выбрать самый лучший. </span><span class="rvts22">Вопрос только в том, как сделать это с минимальными затратами времени и усилий.</span></p>
<p class="rvps10"><span class="rvts22"><br/></span></p>
<ul style="text-indent: 30px; margin-left: 0px; list-style-position: inside;">
<li class="rvps10"><span class="rvts37">Геймеры</span><span class="rvts22"> ошибочно считают, что для создания ТАСа достаточно просто один раз пройти игру, пользуясь сэйвами только в тех случаях, когда совершаются фатальные ошибки, приводящие к невозможности пройти текущий участок (например, смерть персонажа).</span></li>
<li class="rvps10"><span class="rvts37">ТАСеры-новички</span><span class="rvts22"> понимают, что для красивого ТАСа нужно исправлять </span><span class="rvts26">все</span><span class="rvts22"> замеченные ошибки (например, такие мелочи, как спотыкание о порог). Они тоже проходят каждый участок лишь один раз, но затрачивают на прохождение больше времени, чем простые игроки, так как сохраняются и загружают сэйвы гораздо чаще. При ТАСинге простых игр этого может быть достаточно.</span></li>
<li class="rvps10"><span class="rvts37">Опытные ТАСеры</span><span class="rvts22"> знают, что для совершенного ТАСа не достаточно исправления всех замеченных ошибок. Нужно также исправлять незамеченные ошибки. Учитывать неизвестные факторы. Подходить к задаче с неочевидной стороны. Для всего этого они проходят один и тот же участок несколько раз, исправляя все замеченные ошибки и пытаясь как-то не совершить незаметные.</span></li>
</ul>
2012-08-08 15:15:13 +00:00
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts22">Нелегко убедить себя тратить время на альтернативные способы прохождения участка, когда он уже пройден, и в нём уже исправлены все явные ошибки. После достижения текущей внутриигровой цели хочется сразу ставить перед собой следующую цель в рамках игры. Однако следует помнить, что цель ТАСера сильно отличается от целей игрока. Поэтому нужно абстрагироваться от правил игры и не отступать от участка, пока не выполнена реальная цель, а не просто мелкая цель игрока.</span></p>
<p class="rvps10"><span class="rvts22">Это вообще самое сложное изобретать новые подходы к решению одной и той же задачи. Главным образом на ум ТАСеру приходит тот же самый подход, который использовал бы в этом месте игры обычный игрок. Поэтому в большинстве случаев вместо революционного пути используется эволюционный. ТАСер производит постепенную модификацию имеющегося базового подхода, то исправляя его ошибки, то проводя эксперименты. В ходе таких вдумчивых модификаций ТАСер пополняет свою базу знаний об игре, и в результате получается Ввод, до которого невозможно было догадаться сразу.</span></p>
<p class="rvps10"><span class="rvts22">Конечно, иногда приходит озарение, и некая революционная идея даёт потрясающие улучшения, превосходящие все выгоды от полировки. Ради таких эмоциональных моментов многие и любят ТАСинг. Только это не отменяет необходимость отшлифовывать новый революционный подход теми же самыми методами, чтобы сделать его ещё ближе к идеалу.</span></p>
<p class="rvps10"><span class="rvts22">Вместо чтения описываемых здесь техник вы можете сразу приступить к реальному ТАСингу, чтобы по завершении нескольких проектов выработать собственную методику. Но, вероятнее всего, через год ТАСинга вы придёте к описываемой здесь схеме работы.</span></p>
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts22">Итак, процесс создания наилучшего </span><span class="rvts22">Ввод</span><span class="rvts22">а на оптимизируемом участке можно условно представить в виде зацикленного процесса исправления ошибок в предыдущих версиях </span><span class="rvts22">Ввод</span><span class="rvts22">а на этом участке. Ошибкой мы называем </span><span class="rvts22">любое отличие текущего Ввода от неизвестного идеального Ввода.</span><span class="rvts22"> В такой постановке вопроса хорошо то, что к совершенному Вводу можно приближаться постепенно, совершая небольшие шаги, которые реально разработать, даже не будучи гением. </span><span class="rvts26">Большинство ошибок успешно исправляются многократным осмотром и модификацией. </span><span class="rvts22">То есть, даже когда у вас нет никаких оригинальных идей, вы можете достигать успехов за счёт упорства. Успехи мотивируют продолжать работу, и это подготавливает почву для прорывных идей.</span></p>
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts22">Чтобы исправить ошибку во Вводе мувика, нужно:</span></p>
2012-08-08 15:15:13 +00:00
<ol style="text-indent: 30px; margin-left: 0px; list-style-position: inside;">
<li class="rvps10"><span class="rvts22">Осознать факт ошибки.</span></li>
<li class="rvps10"><span class="rvts22">Предположить способ решения.</span></li>
<li class="rvps10"><span class="rvts22">Осуществить навигацию к месту исправления.</span></li>
<li class="rvps10"><span class="rvts22">Внести изменения.</span></li>
<li class="rvps10"><span class="rvts22">Оценить результат и подтвердить факт исправления.</span></li>
2012-08-08 15:15:13 +00:00
</ol>
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts26">1. </span><span class="rvts22">Осознание ошибки происходит либо во время просмотра мувика в режиме Read-Only, либо прямо во время Записи/редактирования </span><span class="rvts22">Ввод</span><span class="rvts22">а.</span></p>
<div class="rvps10"><table width="100%" border="1" cellpadding="6" cellspacing="2" style="border-color: #000000; border-style: solid;">
<tr valign="top">
<td style="border-color: #000000; border-style: solid; height: 15px;"><p class="rvps10"><span class="rvts47">Примечание: </span><span class="rvts48">Зачастую вместо обнаружения осязаемой ошибки ТАСер только предполагает, что данный участок ещё можно улучшить. Всегда полезно усомниться в идеальности текущего результата и поэкспериментировать с Вводом порой действительно обнаруживаются нереализованные возможности.</span></p>
</td>
</tr>
</table>
</div>
<p class="rvps10"><a name="loop"></a>
2012-08-08 15:15:13 +00:00
<span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts26">2. </span><span class="rvts22">Способы решения либо очевидны сразу, либо находятся экспериментальным путём. В редких случаях требуются расчёты и сравнения. В правильно выбранных участках все ключевые факторы оптимальности находятся внутри участка. Информация из предыдущих или последующих участков требуется редко.</span></p>
<div class="rvps10"><table width="100%" border="1" cellpadding="6" cellspacing="2" style="border-color: #000000; border-style: solid;">
<tr valign="top">
<td style="border-color: #000000; border-style: solid; height: 15px;"><p class="rvps10"><span class="rvts47">Примечание: </span><span class="rvts48">Иногда, исправляя одну ошибку, мы незаметно создаём другую. В этом случае процесс оптимизации мог бы пойти в неправильном направлении, но, к счастью, в ТАСинге такие ситуации возникают крайне редко, потому что видеоигры гораздо нагляднее и линейнее реальной жизни, поэтому игрок может обнаружить все факторы и верный критерий оптимальности. Тасэдитор дополнительно облегчает этот процесс благодаря визуализации данных.</span></p>
</td>
</tr>
</table>
</div>
2012-08-08 15:15:13 +00:00
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts26">3. </span><span class="rvts22">Возможность навигации к месту ошибки является главным отличием ТАСинга от обычных спидранов. Простые игроки могут осознать ошибку, но только ТАСеры всегда возвращаются назад для её коррекции.</span></p>
<p class="rvps10"><span class="rvts22">В традиционном методе ТАСинга навигация может занимать заметное количество времени и усилий. Тасэдитор же делает навигацию молниеносной..</span></p>
<div class="rvps10"><table width="100%" border="1" cellpadding="6" cellspacing="2" style="border-color: #000000; border-style: solid;">
<tr valign="top">
<td style="border-color: #000000; border-style: solid; height: 15px;"><p class="rvps10"><span class="rvts47">Примечание: </span><span class="rvts48">Иногда место совершения ошибки находится на более раннем участке, а обнаруживается только на текущем. В этом случае нужно выявить участок совершения ошибки и отредактировать его согласно полученной информации от проигрываемого участка. И в этом случае скорость навигации ещё более критична.</span></p>
</td>
</tr>
</table>
</div>
2012-08-08 15:15:13 +00:00
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts26">4. </span><span class="rvts22">Внесение изменений во Ввод это воплощение мыслей ТАСера в жизнь. Чем меньше задержка между мыслью и её реализацией, тем лучше.</span></p>
<p class="rvps10"><span class="rvts22">В традиционном методе ТАСинга модификация Ввода длится дольше, так как помимо перезаписи ошибочных кадров требуется ещё перезаписать соседние </span><span class="rvts22">кадры.</span><span class="rvts22"> В Тасэдиторе это обычно не требуется.</span></p>
<div class="rvps10"><table width="100%" border="1" cellpadding="6" cellspacing="2" style="border-color: #000000; border-style: solid;">
<tr valign="top">
<td style="border-color: #000000; border-style: solid; height: 15px;"><p class="rvps10"><span class="rvts47">Примечание: </span><span class="rvts48">Так как любое изменение Ввода влечёт за собой изменения игрового процесса, иногда и в Тасэдиторе может потребоваться пересинхронизация Ввода, следующего за местом исправления ошибки.</span></p>
</td>
</tr>
</table>
</div>
2012-08-08 15:15:13 +00:00
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts26">5. </span><span class="rvts22">Чтобы увидеть результат, достаточно возобновить просмотр мувика с начала участка или прямо с кадра исправления ошибки, не перепроверяя предшествующие участки, так как исправление ошибки влияет только на последующие события.</span></p>
<div class="rvps10"><table width="100%" border="1" cellpadding="6" cellspacing="2" style="border-color: #000000; border-style: solid;">
<tr valign="top">
<td style="border-color: #000000; border-style: solid; height: 15px;"><p class="rvps10"><span class="rvts47">Примечание: </span><span class="rvts48">Хотя, если вы записываете не спидран, а развлекательный мувик, после исправления ошибки (например, перемещение спрайта по более плавной траектории) всё-таки желательно просмотреть предшествующие события, чтобы это исправление удачно смотрелось не только в контексте своего участка, но и в общей последовательности игровых событий.</span></p>
</td>
</tr>
</table>
</div>
<p class="rvps10"><span class="rvts22">Досмотреть участок требуется до конца, то есть до момента, когда в игре происходит целевое событие, и к нему можно надёжно применить критерий оптимальности. Потому что может оказаться, что это исправление только поначалу кажется выгодным, но в итоге только ухудшает участок.</span></p>
<p class="rvps10"><span class="rvts22">После оценки результата ошибка либо считается исправленной/несуществующей, либо требуется вернуться к </span><a class="rvts28" href="TASingMethodology.html#loop">шагу 2</a><span class="rvts22"> и переобдумать ситуацию.</span></p>
2012-08-08 15:15:13 +00:00
<p class="rvps10"><span class="rvts22"><br/></span></p>
<hr style="height: 1px; color : #000000; background-color : #000000; border-width : 0px;"/>
<p class="rvps10"><a name="linear-tasing"></a>
2012-08-08 15:15:13 +00:00
<span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts22">До Тасэдитора все ошибки (как явные, так и предполагаемые) исправлялись с помощью создания и загрузки сэйвов. Если вы не знакомы с традиционным методом ТАСинга, вот его основные принципы:</span></p>
2012-08-08 15:15:13 +00:00
<ul style="text-indent: 30px; margin-left: 0px; list-style-position: inside;">
<li class="rvps10"><span class="rvts22">Эмуляция игры почти всё время стоит на паузе. Пауза отпускается только при просмотре готовых участков.</span></li>
<li class="rvps10"><span class="rvts22">ТАСер последовательно впечатывает </span><span class="rvts22">Ввод</span><span class="rvts22"> в кадры, на которые указывает Курсор Проигрывателя. Он видит результат совершённого </span><span class="rvts22">Ввод</span><span class="rvts22">а на следующий кадр после впечатывания (а иногда через несколько кадров). Опытный ТАСер создаёт новый сэйв после любого </span><span class="rvts31">сложно воспроизводимого действия</span><span class="rvts22">, чтобы иметь возможность быстро возвращаться назад и не переигрывать весь участок с начала.</span></li>
<li class="rvps10"><span class="rvts22">Чтобы исправить ошибку, ТАСер возвращается к предполагаемому месту ошибки и переписывает весь </span><span class="rvts22">Ввод</span><span class="rvts22">, начиная с кадра, требующего изменения. Если на этом кадре был сделан сэйв, можно сразу загрузить этот сэйв в режиме Read+Write и начать впечатывать кнопки. Если же имеются только сэйвы на некотором расстоянии перед этим кадром, существует два варианта. </span><span class="rvts37">Вариант 1:</span><span class="rvts22"> загрузить ближайший сэйв в режиме Read-Only и досмотреть мувик до нужного кадра, затем переключиться обратно в режим Записи и начать исправление, тем самым не затронув Ввод на промежутке между кадром сэйва и кадром ошибки. </span><span class="rvts37">Вариант 2:</span><span class="rvts22"> сразу, не переключаясь из режима Записи, загрузить ближайший сэйв и по памяти повторить старый Ввод, дойдя до кадра ошибки, а затем начать исправление. Второй способ используется чаще, потому что после ближайшего сэйва обычно располагается </span><span class="rvts31">легко воспроизводимый Ввод</span><span class="rvts22"> (например, простое зажатие </span><span class="rvts32">R + B</span><span class="rvts22">). Также, по прибытии на предполагаемый кадр ошибки, опытный ТАСер машинально создаёт сэйв (на всякий случай!), чтобы в следующий раз быстро возвращаться прямо к кадру, не тратя время на навигацию. Такая предусмотрительность имеет смысл, потому что ошибки редко исправляются с первой попытки, обычно требуется многократно переписывать один и тот же кусочек </span><span class="rvts22">Ввод</span><span class="rvts22">а, начиная примерно с одного кадра.</span></li>
<li class="rvps10"><span class="rvts22">Неудобства этого традиционного метода наглядно проявляются, когда нужно увидеть отдалённый результат </span><span class="rvts22">Ввод</span><span class="rvts22">а (например, кнопка выбора была нажата сейчас, а шарик рулетки остановится только через несколько секунд). В таком случае ТАСер делает сэйв перед началом </span><span class="rvts22">Ввода</span><span class="rvts22">, записывает решающий </span><span class="rvts22">Ввод</span><span class="rvts22"> и делает сэйв после него, а затем отпускает паузу и наспех (неоптимально) проходит игру до появления результата. При удовлетворительном результате ТАСер загружает сэйв, идущий после решающего Ввода, и покадрово записывает оптимальное прохождение, уже будучи уверенным в успешном исходе. А при неудовлетворительном результате он загружает начальный сэйв, меняет решающий </span><span class="rvts22">Ввод</span><span class="rvts22"> и повторяет все действия снова (создаёт сэйв после </span><span class="rvts22">Ввод</span><span class="rvts22">а и наспех проходит до результата). И так может продолжаться довольно долго.</span></li>
<li class="rvps10"><span class="rvts22">Чтобы скопировать старый </span><span class="rvts22">Ввод</span><span class="rvts22"> (например, хитроумный разгон Марио в начале каждого уровня), ТАСер либо зазубривает комбинацию кнопок, либо копирует её по частям с помощью нескольких прыжков между местом-источником и местом-приёмником. Игра посылается то на сэйв предыдущего </span><span class="rvts22">Ввод</span><span class="rvts22">а (посмотреть нажатия в режиме Read-Only и запомнить парочку в уме), то на сэйв текущего места записи (переключиться на Read+Write и выложить запомненные нажатия). Если после каждого прыжка пододвигать тот и другой сэйв на пару кадров вперёд, навигация между источником и приёмником </span><span class="rvts22">Ввод</span><span class="rvts22">а будет не очень утомительной. И всё же, когда требуется скопировать длинную последовательность нажатий, используется внешний редактор </span><span class="rvts22">Ввод</span><span class="rvts22">а с функциями копипаста. Но переключение между разными программами сильно отвлекает ТАСера, поэтому зачастую проще скопировать </span><span class="rvts22">Ввод</span><span class="rvts22"> вручную.</span></li>
<li class="rvps23" style="text-indent: 30px"><span class="rvts22">Чтобы осмотреть текущий прогресс, ТАСер сохраняется, отключает Запись и загружает сэйв, оставленный в начале уровня (обычно для этого служит редко используемый слот на клавише </span><span class="rvts27">F10</span><span class="rvts22">). Затем он отпускает паузу и смотрит мувик, словно посторонний зритель. Для продолжения записи он включает режим Read+Write и возвращается точно к последнему записанному кадру, загрузив последний сэйв (обычно это наиболее часто используемый слот, </span><span class="rvts27">F1</span><span class="rvts22">). А если во время просмотра ТАСер принял решение изменить старый Ввод, он делает сэйв на этом месте, переключается на Read+Write и загружает только что созданный сэйв. Предварительно следует убедиться, что последнее актуальное состояние мувика сохранено не только в </span><span class="rvts27">F1</span><span class="rvts22">, но и в другой слот, который вы не будете трогать во время экспериментов со старым Вводом. Это нужно для того, чтобы в случае провала эксперимента можно было восстановить старый мувик, даже если слот </span><span class="rvts27">F1</span><span class="rvts22"> уже затёрт в ходе экспериментов.</span></li>
<li class="rvps10"><span class="rvts22">Таким образом, большинство из имеющихся 10 слотов используется для навигации между различными моментами игры. Используя термины Тасэдитора для навигации Курсором Проигрывателя по мувику. Даже на больших участках десяти слотов должно с лихвой хватить для быстрой телепортации между всеми интересующими местами. Обычно хватает 3-5 слотов, которыми опытный ТАСер жонглирует с поразительной скоростью.</span></li>
<li class="rvps10"><span class="rvts22">Парочка других слотов обычно используется для хранения альтернативных стратегий прохождения. Когда ТАСер заранее не знает, какой подход к прохождению большого участка (например, целого уровня игры) окажется лучше, он сначала отшлифовывает первый подход и сохраняет его в отдельный слот (например, </span><span class="rvts27">F8</span><span class="rvts22">), а затем отшлифовывает второй подход и делает сэйв в соседний слот (например, </span><span class="rvts27">F7</span><span class="rvts22">). Затем попеременно загружает то один, то другой слот (или даже просматривает оба ответвления мувика поочерёдно) и выбирает лучший из них, пересохраняет его в слот </span><span class="rvts27">F1</span><span class="rvts22"> и продолжает работу в этом ответвлении.</span></li>
2012-08-08 15:15:13 +00:00
</ul>
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts22">Как видите, почти всё в традиционном методе ТАСинга делается благодаря сэйвам (Закладкам). </span><span class="rvts22">В Тасэдиторе они частично заменены Гринзоной и Журналом Истории, но и здесь они по-прежнему играют немаловажную роль, в основном для хранения альтернативных ответвлений. Навигацию Курсором Проигрывателя теперь быстрее осуществлять либо перетаскиванием, либо с помощью колеса мыши. </span><span class="rvts22">Более того, при редактировании Ввода теперь вообще не требуется возвращать Курсор Проигрывателя к кадру исправления, достаточно проскроллировать Piano Roll к этому месту и изменить </span><span class="rvts22">Ввод</span><span class="rvts22"> мышкой.</span></p>
<p class="rvps10"><span class="rvts22">Так как вместо Записи в Тасэдиторе эффективнее использовать редактирование, отпадает необходимость постоянно переключать режимы. Теперь эмулятор всё время находится в режиме Read-Only.</span></p>
<p class="rvps10"><span class="rvts22">Игра по-прежнему всё время стоит на паузе, но ТАСер теперь видит результат своего </span><span class="rvts22">Ввод</span><span class="rvts22">а не всегда, а только когда пожелает. Поначалу это может показаться неудобством (отсутствует привычная отдача от совершаемых нажатий), но на самом деле в этом скрывается большой плюс более высокий уровень независимости игрока от игры. Вместо механизма стандартной "вовлечённости в игровой процесс" задействуются другие механизмы передачи информации. Так что вы всё равно получите все необходимые сведения о том, как игра воспринимает ваши изменения </span><span class="rvts22">Ввода, просто этот</span><span class="rvts22"> информационный поток не будет вливаться в вас постоянно, а будет доставляться по команде.</span></p>
<p class="rvps10"><span class="rvts22">Ну а при необходимости можно получить в Тасэдиторе многократно усиленную отдачу. Для этого нужно использовать третий метод ТАСинга.</span></p>
<p class="rvps10"><span class="rvts22">Рассмотрим преимущества и недостатки всех трёх методов по порядку.</span></p>
2012-08-08 15:15:13 +00:00
<p class="rvps10"><span class="rvts22"><br/></span></p>
<div class="rvps10"><table width="100%" border="1" cellpadding="1" cellspacing="2" style="border-color: #000000; border-style: solid;">
<tr valign="top">
<td style="border-color: #000000; border-style: solid; height: 39px;"><p class="rvps10"><span class="rvts23"><br/></span></p>
<p class="rvps10"><span class="rvts23">Три метода ТАСинга в Тасэдиторе:</span></p>
2012-08-08 15:15:13 +00:00
<p class="rvps10"><span class="rvts22"><br/></span></p>
<ul style="text-indent: 0px; margin-left: 50px; list-style-position: outside;">
<li class="rvps14" style="text-indent: 0px"><a class="rvts49" href="TraditionalTASing.html">Традиционный метод</a></li>
2012-08-08 15:15:13 +00:00
</ul>
<ul style="text-indent: 0px; margin-left: 55px; list-style-position: outside;">
<li class="rvps14" style="text-indent: 0px"><span class="rvts22">навигация по Вводу Курсором Проигрывателя через прыжки по Закладкам</span></li>
<li class="rvps14" style="text-indent: 0px"><span class="rvts22">запись последовательностей </span><span class="rvts22">Ввода</span><span class="rvts22"> с клавиатуры/джойстика</span></li>
<li class="rvps14" style="text-indent: 0px"><span class="rvts22">автоматический просмотр промежуточных результатов </span><span class="rvts22">Ввода</span></li>
2012-08-08 15:15:13 +00:00
</ul>
<p class="rvps10"><span class="rvts22"><br/></span></p>
<ul style="text-indent: 0px; margin-left: 50px; list-style-position: outside;">
<li class="rvps14" style="text-indent: 0px"><a class="rvts50" href="NonlinearTASing.html">Нелинейный метод</a></li>
2012-08-08 15:15:13 +00:00
</ul>
<ul style="text-indent: 0px; margin-left: 55px; list-style-position: outside;">
<li class="rvps14" style="text-indent: 0px"><span class="rvts22">навигация </span><span class="rvts22">по Вводу </span><span class="rvts22">мышкой</span></li>
<li class="rvps14" style="text-indent: 0px"><span class="rvts22">редактирование Ввода мышкой/клавиатурой/джойстиком</span></li>
<li class="rvps14" style="text-indent: 0px"><span class="rvts22">по команде пользователя: просмотр промежуточных или итоговых результатов </span><span class="rvts22">Ввода</span></li>
2012-08-08 15:15:13 +00:00
</ul>
<p class="rvps10"><span class="rvts22"><br/></span></p>
<ul style="text-indent: 0px; margin-left: 50px; list-style-position: outside;">
<li class="rvps14" style="text-indent: 0px"><a class="rvts51" href="SemiautomaticTASing.html">Полуавтоматический метод</a></li>
2012-08-08 15:15:13 +00:00
</ul>
<ul style="text-indent: 0px; margin-left: 55px; list-style-position: outside;">
<li class="rvps14" style="text-indent: 0px"><span class="rvts22">навигация </span><span class="rvts22">по Вводу </span><span class="rvts22">мышкой</span></li>
<li class="rvps14" style="text-indent: 0px"><span class="rvts22">редактирование </span><span class="rvts22">Ввода</span><span class="rvts22"> мышкой/клавиатурой/джойстиком</span></li>
<li class="rvps14" style="text-indent: 0px"><span class="rvts22">автоматический просмотр промежуточных или итоговых результатов </span><span class="rvts22">Ввода</span></li>
2012-08-08 15:15:13 +00:00
</ul>
<p class="rvps14"><span class="rvts22"><br/></span></p>
</td>
</tr>
</table>
</div>
2012-08-08 15:15:13 +00:00
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p class="rvps10"><span class="rvts22"><br/></span></p>
<p></p>
<p class="rvps8"><span class="rvts18">Created with the Personal Edition of HelpNDoc: </span><a class="rvts19" href="http://www.helpndoc.com/feature-tour">Easily create Web Help sites</a></p>
</div>
<div id="topic_footer">
<div id="topic_footer_content">
Copyright &copy; 2011-2012 АнС</div>
</div>
</body>
</html>