<?xml version="1.0"?>
<rss version="2.0"><channel><title>&#x41C;&#x430;&#x441;&#x442;&#x435;&#x440;-&#x43A;&#x43B;&#x430;&#x441;&#x441; &#x43F;&#x43E;&#x441;&#x43B;&#x435;&#x434;&#x43D;&#x438;&#x445; &#x442;&#x435;&#x43C;</title><link>https://www.fullrest.ru/forum/forum/136-master-klass/</link><description>&#x41C;&#x430;&#x441;&#x442;&#x435;&#x440;-&#x43A;&#x43B;&#x430;&#x441;&#x441; &#x43F;&#x43E;&#x441;&#x43B;&#x435;&#x434;&#x43D;&#x438;&#x445; &#x442;&#x435;&#x43C;</description><language/><item><title>&#x423;&#x43F;&#x440;&#x430;&#x432;&#x43B;&#x435;&#x43D;&#x438;&#x435; &#x43E;&#x440;&#x433;&#x430;&#x43D;&#x438;&#x437;&#x430;&#x446;&#x438;&#x435;&#x439; &#x432; &#x41C;&#x43E;&#x440;&#x440;&#x43E;&#x432;&#x438;&#x43D;&#x434;&#x435;</title><link>https://www.fullrest.ru/forum/topic/15825-upravlenie-organizaciej-v-morrovinde/</link><description><![CDATA[<p>На днях мне удалось обобщить полученный на практике опыт работы с созданием новой фракцией в Морровинд с виде <a href="http://sefy.narod.ru/downloaded/FactionTutor.rar" rel="external nofollow">этой небольшой статьи</a>. </p><p>Объем файла 229 кб, формат pdf, бесценная информация, как создать новую организацию, заставить Нереварина вступить в нее, осуществить карьерный рост, плюс еще сведения, как сделать некоторые полезные вещи.  :1anim_aa:</p>]]></description><guid isPermaLink="false">15825</guid><pubDate>Wed, 13 Feb 2008 11:37:00 +0000</pubDate></item><item><title>&#x412;&#x430;&#x43C;&#x43F;&#x438;&#x440; &#x43E;&#x431;&#x44B;&#x43A;&#x43D;&#x43E;&#x432;&#x435;&#x43D;&#x43D;&#x44B;&#x439;</title><link>https://www.fullrest.ru/forum/topic/13038-vampir-obyknovennyj/</link><description><![CDATA[<p>Если вы захотите создать непися-вампира, вы не найдете в  TES Construction Set ни такой расы, ни такого класса, никаких опций, чтобы нажатием клавиш превратить персонажа в порождение ночи. Этого просто нет. </p><p>	За создание вампира-непися отвечают всего 3 скрипта (а по сути всего один): Vampire_Aundae, Vampire_Berne и Vampire_Quarra.  Эти скрипты назначают вампирское личико и все, что с этим связано. Однако есть один недостаток: скрипты очень громоздки. Они насчитывают 88 строк, т.е. почти 2 страницы (по статистике ворда). Они связаны с вампирскими квестами Морровинда, а еще определяют отношение непися, если игрок состоит в одном из кланов. </p><p>Для самого Морровинда это просто превосходно, а вот для создания мода – слишком много лишней информации. Если создавать, скажем, плагин о вампирах, особенно, если там есть вампиры, которые выступают не как враги игрока, то стандартные скрипты могут внести путаницу. </p><p>Предлагаю вариант упрощенного стандартного скрипта:</p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="13038" data-ipsquote-contentclass="forums_Topic"><div>begin L-SimpleVampire<p> </p><p>short done</p><p> </p><p>short nolore</p><p>short nohello</p><p>short noflee</p><p>short noidle</p><p>short nointruder</p><p>short nothief</p><p> </p><p> </p><p> </p><p>if ( OnDeath == 1 )</p><p>	AddItem "ingred_vampire_dust_01" 1</p><p>endif</p><p> </p><p> </p><p>if ( done == 0 )</p><p>	AddSpell, "Vampire Blood Aundae"	</p><p>	AddSpell, "Vampire Attributes"</p><p>	AddSpell, "Vampire Skills"</p><p>	AddSpell, "Vampire Immunities"</p><p>	AddSpell, "Vampire Sun Damage"</p><p>	AddSpell, "Vampire Touch"</p><p>	AddSpell, "Vampire Aundae Specials"</p><p>	ModRestoration 75</p><p>	set done to 1</p><p>endif</p><p> </p><p>end</p></div></blockquote><p>Отсутствие любого из вышеперечисленных спеллов (строки с AddSpell) приведет к тому, что лицо у персонажа будет невампирское. </p><p>Однако если нужно, вместо спеллов для клана Аунда "Vampire Blood Aundae" и "Vampire Aundae Specials", можно вписать названия спеллов для своего клана. </p><p>	Этих строк достаточно, чтобы непись стал вампиром. В скрипт по необходимости вы можете добавлять другие строки, чтобы регулировать его поведение по ходу квеста. </p><p> </p><p><strong>Примечания:</strong></p><p>Этот вампир не будет агрессивен к игроку. Чтобы сделать его агрессивным, зайдите в свойства непися, нажмите на кнопку AI и напишите в параметр Fight цифру 90 и выше. </p><p> </p><p>При назначении этого скрипта новому неписю вы все равно будете видеть в конструкторе стандартное морровиндское лицо. Зато в игре – другое дело. </p><p> </p><p>Крики attack и hit будут, как у обычного непися.</p>]]></description><guid isPermaLink="false">13038</guid><pubDate>Thu, 02 Aug 2007 19:39:40 +0000</pubDate></item><item><title>&#x421;&#x43A;&#x440;&#x438;&#x43F;&#x442; &#x441; disable\enable</title><link>https://www.fullrest.ru/forum/topic/10761-skript-s-disableenable/</link><description><![CDATA[<p><strong>Книга некая ( или существо/непись/любой предмет) внезапно появляется после определенного события, которое зафиксировано в дневнике. </strong> </p><p> </p><p>Это полезно:</p><p>- чтобы создавать эффект внезапности и новизны: «вдруг из столицы приезжает старый дядюшка Нереварина». </p><p>- если не хотите, чтобы игрок преждевременно нашел данный предмет или убил нужного непися. </p><p> </p><p>Итак: </p><p> </p><p>1.Создайте нужный предмет или персонаж с уникальным ИД и разместите его в мире игры. </p><p> </p><p>2. При необходимости создайте новую запись журнала, после которой должен появиться предмет.</p><p> </p><p>3. Повесьте на него следующий скрипт. Смысл скрипта в том, чтобы делать объект, на котором он висит, неактивным, то есть невидимым для игрока: </p><p> </p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="10761" data-ipsquote-contentclass="forums_Topic"><div>begin awake-book<p> </p><p>; скрипт о том, что когда Нереварину во сне начал являться Дагот Ур, в одном доме внезапно появилась некая книжка. </p><p>; автор – LofZ, sefy.narod.ru</p><p> </p><p>short once </p><p> </p><p>if ( MenuMode == 1 )</p><p>return</p><p>endif</p><p> </p><p>if ( once == 1 )</p><p>return</p><p>endif</p><p> </p><p>if (GetJournalIndex "A1_Dreams" &lt; 1 )</p><p>disable</p><p>; Примечание: записи журнала – это только один тип условий. Хотя он и самый распространенный, условия можно ставить какие угодно. </p><p>; Например if ( player -&gt; gethealth &lt; 50 ) – если у игрока здоровье &lt; 50 пунктов</p><p>; if ( GameHour &gt;= 0 ), if ( GameHour &lt; 6 ) – если на дворе ночь от полуночи до 6 утра (до рассвета). </p><p>; не забывайте, что каждый блок if должна закрывать строчка endif. </p><p> </p><p>endif</p><p> </p><p>if ( once == 0 )</p><p>if ( GetJournalIndex "A1_Dreams" &gt;= 1 )</p><p>enable</p><p>set once to 1</p><p> </p><p>; обратите внимание на условие вначале – когда (once == 1), скрипт не выполняется, т.е. «невидимая пелена» с книги спадает.</p><p> </p><p>endif</p><p>endif</p><p> </p><p>end</p></div></blockquote>]]></description><guid isPermaLink="false">10761</guid><pubDate>Fri, 29 Sep 2006 10:14:46 +0000</pubDate></item><item><title>&#x41D;&#x435; &#x432;&#x441;&#x435;&#x445; &#x443;&#x434;&#x430;&#x435;&#x442;&#x441;&#x44F; &#x441;&#x43F;&#x430;&#x441;&#x442;&#x438;...</title><link>https://www.fullrest.ru/forum/topic/12132-ne-vseh-udaetsja-spasti/</link><description><![CDATA[<p>Скрипт внезапно погибшего непися</p><p>для ситуации, когда игрок общался-общался с неписем или с животным, но вернувшись какого-то момента (по журнальному индексу), внезапно нашел только его тело. </p><p> </p><p>Ваше дело, к какой ситуации это приложить и что убило беднягу – покушение, которое игрок не успел предотвратить, несчастный случай в яичной шахте, не успел вылечить и т.д. А технически реализовать такую ситуацию несложно. </p><p> </p><p>1.	Создайте жертву, непися или существо <strong>(aa_victim).</strong></p><p>2.	Создайте  новую журнальную запись <strong>1a_vd</strong>, и напишите фразу для индекса 1, которая</p><p>свидетельствовала бы о неудачном для непися исходе квеста. Например, «Я узнал, что Каммона Тонги собираются убить такого-то», «Такой-то сказал, что дал заболевшей матке квама зелье того странного старика. Зря он это. Я ему не верю. Надо отправиться в шахту и посмотреть, как там матка квама.»</p><p>3. Используйте на жертве следующий скрипт.</p><p> </p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="12132" data-ipsquote-contentclass="forums_Topic"><div>begin VictimScript<p> </p><p>; составитель - lofZ</p><p> </p><p>if ( MenuMode == 1)</p><p>return</p><p>endif</p><p> </p><p>if ( GetDeadCount "aa_victim" &gt; 0 )</p><p>return</p><p>endif</p><p> </p><p>if ( GetJournalIndex "1a_vd" &lt; 1 )</p><p>return</p><p>endif</p><p> </p><p>if ( GetJournalIndex "1a_vd" &gt;= 1 )</p><p>Sethealth 0 </p><p>return</p><p>endif</p><p> </p><p>end</p></div></blockquote><p> </p><p>Теперь когда у игрока появится в журнале запись  "1a_vd" с индексом 1, бедный непись или существо превратится в хладный труп...</p>]]></description><guid isPermaLink="false">12132</guid><pubDate>Sat, 16 Dec 2006 11:34:07 +0000</pubDate></item><item><title>&#x412; &#x437;&#x430;&#x43C;&#x43A;&#x435; &#x437;&#x430;&#x441;&#x442;&#x440;&#x44F;&#x43B; &#x43E;&#x431;&#x43B;&#x43E;&#x43C;&#x43E;&#x43A; &#x43A;&#x43B;&#x44E;&#x447;&#x430;</title><link>https://www.fullrest.ru/forum/topic/13565-v-zamke-zastrjal-oblomok-kljucha/</link><description><![CDATA[<p>С помощью этого скрипта можно воссоздать в Морре  ситуацию, характерную не столько для фэнтезийной РПГ, сколько для игры типа Resident Evil, где нужно проводить разные манипуляции с предметами. </p><p>Итак, в замке застрял обломок ключа, что мешает открыть мощную, тяжелую дверь. Магия тут бесполезна – а что сделаешь? Расплавишь этот обломок файэерволом? Угу, вместе с замком. А попасть внутрь надо.   На помощь приходят обычные клещи, с помощью которых обломок автоматически извлекается. После этого дверью можно спокойно пользоваться. </p><p> </p><p>На техническом уровне у нас, конечно, не будет никакого специального обломка, и сцену, как персонаж ковырялся в двери, мы тоже анимировать не будем. Обойдемся одним скриптом.</p><p> </p><p>Повесьте это на нужную дверь. </p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="13565" data-ipsquote-contentclass="forums_Topic"><div>begin Tel_door<p> </p><p>; Автор скрипта - LofZ</p><p> </p><p> if ( MenuMode == 1 )</p><p>	return </p><p>endif </p><p> </p><p>if (GetJournalIndex "<span style="color:#FF0000;">aaa_tel</span>" &gt;= 10 ) ; ограничителем скрипта выступает новая журнальная запись journal "aaa_tel" с индексом 10. Вам придется создать аналогичную запись, либо объявить в начале локальную переменную типа once и плясать от нее. </p><p>	return</p><p>endif</p><p> </p><p>	if ( OnActivate == 1 )</p><p> </p><p>		if ( player-&gt;GetItemCount "repair_prongs" == 0 )</p><p>			MessageBox "В замке застрял обломок ключа. Кто-то слишком торопился закрыть люк, или пытался заблокировать его?.. Если бы были клещи, можно было попробовать извлечь этот обломок.", "Готово"</p><p>			return</p><p>		endif</p><p> MessageBox "Вам удалось извлечь обломок."</p><p>journal "<span style="color:#FF0000;">aaa_tel</span>" 10  	</p><p>activate</p><p>	endif</p><p>	endif</p><p>endif</p><p>endif</p><p> </p><p>end Tel_door</p></div></blockquote><p> </p><p>Как жаль, тут не хватает комментариев ТиДжея...</p>]]></description><guid isPermaLink="false">13565</guid><pubDate>Mon, 27 Aug 2007 10:23:22 +0000</pubDate></item><item><title>&#x421;&#x43E;&#x437;&#x434;&#x430;&#x43D;&#x438;&#x435; &#x44D;&#x43A;&#x441;&#x442;&#x435;&#x440;&#x44C;&#x435;&#x440;&#x430; &#x432; &#x41C;&#x43E;&#x440;&#x440;&#x43E;&#x432;&#x438;&#x43D;&#x434;</title><link>https://www.fullrest.ru/forum/topic/14167-sozdanie-jeksterera-v-morrovind/</link><description><![CDATA[<p>В-общем, это ведь не такой простой вопрос, как создание интерьера. Сама набила много шишек, пока кое-чему не научилась в этой области. </p><p>В приложенном файле предлагаю урок по созданию нового острова в мире игры. + некоторые советы и наблюдения над строительством новых земель.</p><p><strong>LofZ</strong></p><p>Когда загружаешь файл,плиз,меняй его название на английское или циферками...</p>]]></description><guid isPermaLink="false">14167</guid><pubDate>Sat, 22 Sep 2007 09:03:37 +0000</pubDate></item><item><title>&#x41E;&#x441;&#x442;&#x430;&#x43D;&#x43E;&#x432;&#x43A;&#x430; &#x431;&#x43E;&#x44F;</title><link>https://www.fullrest.ru/forum/topic/10729-ostanovka-boja/</link><description><![CDATA[<p><strong>Я расскажу, как сделать, чтобы во время драки непись останавился и стал просить пощады</strong></p><p>Можно использовать в квестах о том, как игрока вызывают на поединок не до смерти, или о  разбушевавшихся алкоголиках, которых необходимо угомонить.</p><p> </p><p><em>Этот небольшой урок рассчитан на начинающих квестмейкеров. Предполагается, что вы уже знакомы с журналом и умете создавать топики, гритинги и т.д.</em></p><p> </p><p>1. Создайте персонажа и напишите для него диалог ( новая журнальная запись (aaa_draka), в которой особенно важно создать фразу и индекс для нее, где он запросил о пощаде.</p><p> </p><p> И соответственно написать для агрессора гритинги и если нужно - топики). </p><p> </p><p>Грубо говоря: </p><p> </p><p>Создаем запись aaa_draka: «Ой, меня атаковали.». Назначаем ей индекс 1</p><p> </p><p>Пишем для нашего агрессора гритинг: «Сейчас я тебя атакую»</p><p> </p><p>в result диалога: journal “aaa_draka” 1</p><p>                          startcombat, Player</p><p>                          goodbye</p><p> </p><p>2. Используйте следующий скрипт на агрессоре. </p><p> </p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="10729" data-ipsquote-contentclass="forums_Topic"><div>Begin Fight<p> </p><p>short nolore ; большинство стандартных топиков, типа "мое занятие", "небольшой совет" представляют собой благожелательные реплики. Поэтому для злого агрессора мы просто отсекаем мирные топики.</p><p> </p><p> </p><p>if ( MenuMode == 1 )</p><p>Return</p><p>endif</p><p> </p><p>if ( GetJournalIndex "aaa_draka" &gt;= 15 )</p><p>return</p><p>endif</p><p>; скрипт не нужен, если отношения уже выяснены. </p><p> </p><p>if ( GetJournalIndex " aaa_draka " == 1 ) </p><p>if ( GetHealth &lt;= 50 )</p><p>say, "vo\d\m\Fle_DM004.mp3", "Пощади!"</p><p>stopcombat, Player </p><p>forcegreeting </p><p>setdisposition 50</p><p>setfight 30 </p><p>endif</p><p>endif</p><p> </p><p>End</p></div></blockquote><p> </p><p>Здесь условия таковы, что в драке когда у непися здоровье становится 50 и меньше ( причем обязательно в этой drakе, - если вы просто станете его бить, он не запросит о пощаде), он кричит и останавливается. </p><p>Для большей эффектности проигрывается звуковой файл (в данном случае – крик данмера-мужчины. Для своего оригинального агрессора вам придется выбирать другой звуковой файл). </p><p> </p><p> </p><p>Не забудьте создать для aaa_draka индекс 15 следующего содержания: «Он запросил пощады» </p><p>В гритинге обидчика с условием journal aaa_draka 1 фразу: Пощади! </p><p>В результате: “aaa_draka” 15</p><p>                      stopcombat, Player</p><p> ; полезно для надежности. Если все происходит за долю секунды, и удовлетвориться только командой скрипта или диалога, были случаи, когда непись, видимо, в пылу боя, останавливался только на 1 фрейм, а потом продолжал драться. </p><p> </p><p>                      Goodbye</p>]]></description><guid isPermaLink="false">10729</guid><pubDate>Thu, 28 Sep 2006 06:57:02 +0000</pubDate></item><item><title>&#x42D;&#x444;&#x444;&#x435;&#x43A;&#x442; &#x43F;&#x43E;&#x441;&#x442;&#x435;&#x43F;&#x435;&#x43D;&#x43D;&#x43E;&#x433;&#x43E; &#x438;&#x441;&#x447;&#x435;&#x437;&#x43D;&#x43E;&#x432;&#x435;&#x43D;&#x438;&#x44F;</title><link>https://www.fullrest.ru/forum/topic/17251-jeffekt-postepennogo-ischeznovenija/</link><description><![CDATA[<p>Этот очень красивый спецэффект можно использовать в сцене с исчезновением актера в результате диалога. Это альтернативный вариант привычного дисейбла, когда непись или существо внезапно растворяется в воздухе. Последнее порой кажется слишком резким и даже неприятным. Однако есть простой способ сделать исчезновение более плавным.</p><p> </p><p>После разговора персонаж станет полупрозрачным, а через несколько секунд как бы растворяется.</p><p> </p><p>1.	Зайдите в закладку <strong>Spellmaking</strong> и создайте новое заклинание <strong>aa_full_illusion</strong>, с эффектом невидимости. Можно использовать и эффект хамелеон. Настройки на ваш вкус. Но заклинание должно иметь тип «характеристика», должен стоять флажок «Always Succeds». Слишком высокое значение пункта magnitude у хамелеона (например, 100), может привести к тому, что в определенной местности, с определенным освещением, актера просто можно не заметить.</p><p> </p><p>2.	Понадобится новая журнальная запись «new» с индексом 1, в которой должно быть написано что-то вроде <em>«Я поговорил с призраком безумного даэдрота. Он рассказал мне новые факты о своем загадочном убийстве, а потом растворился в воздухе»</em></p><p>3.	Используйте на персонаже, который должен исчезнуть, следующий скрипт:</p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="17251" data-ipsquote-contentclass="forums_Topic"><div>begin hla_az<p> </p><p>float timer</p><p> </p><p>if ( Menumode == 1 )</p><p>return</p><p>endif</p><p> </p><p> </p><p>if ( journal “new” &gt;= 1 )</p><p>Set timer to ( timer + GetSecondsPassed )</p><p>endif</p><p>	if timer &gt;<span style="color:#FF0000;"> 5</span></p><p>	disable</p><p>endif</p><p> </p><p>if ( GetDisabled == 1 )</p><p>setdelete 1 </p><p>return</p><p>endif</p><p> </p><p>end</p></div></blockquote><p>4.	Зайдите в диалоги и создайте диалог с нужным персонажем. В последней фразе, после которой последует исчезновение, напишите в результате: </p><p><strong>addspell "aa_full_illusion"</strong></p><p><strong>journal “new” 1</strong></p><p> </p><p><strong>Примечание:</strong> время таймера (выделено красным) можно ставить разное.</p>]]></description><guid isPermaLink="false">17251</guid><pubDate>Mon, 21 Apr 2008 08:07:11 +0000</pubDate></item><item><title>&#x42D;&#x444;&#x444;&#x435;&#x43A;&#x442; &#x444;&#x435;&#x43D;&#x438;&#x43A;&#x441;&#x430; &#x438;&#x437; Warcraft III</title><link>https://www.fullrest.ru/forum/topic/25009-jeffekt-feniksa-iz-warcraft-iii/</link><description><![CDATA[<p>В Warcraft III: Frozen Trone у харизматичного героя кровавых магов есть способность "феникс". При ее использовании выбрасывается в мир птица-компаньон. У этого феникса большое здоровье, но оно тут же начинает падать, пока не станет совсем низким, и тогда феникс превращается в яйцо, а через несколько мгновений здоровье снова восстанавливается. </p><p>Примерно то же самое можно сделать с игроком, используя глобальный скрипт. Я создала его на основе скрипта от инструментов Кагренака, наносящих Нереварину смертельный удар.  </p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="25009" data-ipsquote-contentclass="forums_Topic"><div>begin aa_dae_curse<p> </p><p>short extraDamage</p><p>float timer</p><p> </p><p>if ( menumode )</p><p>return</p><p>endif</p><p> </p><p>; if ( getjournalindex “такой-сякой” &gt;= 1 )</p><p>; или if ( player-&gt;GetItemCount “пределенный предмет” &gt;= 1 ), или другой ограничитель, например, другая глобальная переменная. </p><p>; stopscript “aa_dae_curse”	</p><p>; return</p><p>; endif</p><p> </p><p> </p><p>if ( Player-&gt;GetHealth &lt;= 15 )</p><p>player-&gt;ModCurrentHealth 500 </p><p>endif</p><p> </p><p>	if ( timer &lt; 1 )</p><p>		set timer to ( timer + GetSecondsPassed )</p><p>		return</p><p>	endif</p><p> </p><p>	set timer to 0</p><p>          Set extraDamage to Random 10</p><p>          Set extraDamage to ( 0 - extraDamage )</p><p>		Set extraDamage to ( extraDamage - 5 )</p><p>          player-&gt;ModCurrentHealth extraDamage</p><p> </p><p>		endif</p><p>     endif</p><p>endif</p><p> </p><p> </p><p>End</p></div></blockquote><p>Сразу после запуска такого скрипта, у игрока начнет медленно падать здоровье, пока не достигнет отметки 15 пунктов. После этого, оно вдруг сразу довольно серьезно повысится, однако тут же начнет падать снова.  Сон, ожидание, заклинания никак не смогут снять этот эффект (хотя, конечно, заклинания и зелья восстановления здоровья на секунды увеличивают здоровье, продлевая время каждого цикла). Идеальное проклятье, правда? </p><p>Чтобы остановить процесс, нужно остановить данный скрипт. В начале я написала варианты, как это можно сделать (по определенной журнальной записи, по получению определенного предмета в инвентарь, можно даже сделать зависимость от времени суток (глобальная переменная GameHour), сделав такое проклятье возможным только ночью. Но в таком случае скрипт понадобится перезапускать заново днем). Остановить скрипт можно и командой <em>stopscript “aa_dae_curse”</em> в диалоге или в другом скрипте. </p><p>Данный скрипт успешно работает с игроком. Но, возможно, можно сделать такой же локальный скрипт для актера. Однако по отношению к локальным скриптам команда stopscript не работает.</p>]]></description><guid isPermaLink="false">25009</guid><pubDate>Thu, 26 Mar 2009 10:30:26 +0000</pubDate></item><item><title>&#x415;&#x441;&#x43B;&#x438; &#x433;&#x434;&#x435;-&#x442;&#x43E; &#x43D;&#x435;&#x442; &#x447;&#x435;&#x433;&#x43E;-&#x442;&#x43E;... &#x418;&#x43B;&#x438; &#x447;&#x442;&#x43E;-&#x442;&#x43E; &#x433;&#x434;&#x435;-&#x442;&#x43E; &#x435;&#x441;&#x442;&#x44C;</title><link>https://www.fullrest.ru/forum/topic/28471-esli-gde-to-net-chego-to-ili-chto-to-gde-to-est/</link><description><![CDATA[<p>Данный скрипт вешается на контейнеры и помогает определить, был ли изъят какой-то предмет из контейнера:</p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="28471" data-ipsquote-contentclass="forums_Topic"><div>begin aa_L_int<p> </p><p>short once </p><p> </p><p>if ( menumode )</p><p>return</p><p>endif</p><p> </p><p>if ( once == 0 )</p><p>if ( GetitemCount "<span style="color:#FF0000;">ID_предмета</span>" == 0 )</p><p><span style="color:#FF00FF;">MessageBox "Ой, артефакт украли."</span></p><p>set once to 1</p><p>endif</p><p>endif</p><p> </p><p>end</p></div></blockquote><p> </p><p>А такой скрипт выводит сообщение, если в контейнере внезапно обнаруживается определенный объект:</p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="28471" data-ipsquote-contentclass="forums_Topic"><div>begin aa_L_int2<p> </p><p>short once </p><p> </p><p>if ( menumode )</p><p>return</p><p>endif</p><p> </p><p>if ( once == 0 )</p><p>if ( GetitemCount "<span style="color:#FF0000;">ID_предмета</span>" &gt; 0 )</p><p><span style="color:#FF00FF;">MessageBox "Ой, артефакт вернули."</span></p><p>set once to 1</p><p>endif</p><p>endif</p><p> </p><p>end</p></div></blockquote><p> </p><p>Оба скрипта однократного действия. Вместо MessageBox вы можете добавить другую команду, например, можно добавить появление журнальной записи или непися-стражника, или какой-нибудь страшный звуковой эффект.</p>]]></description><guid isPermaLink="false">28471</guid><pubDate>Wed, 02 Dec 2009 16:16:42 +0000</pubDate></item><item><title>&#x41E;&#x442;&#x441;&#x447;&#x435;&#x442; &#x434;&#x43D;&#x435;&#x439;</title><link>https://www.fullrest.ru/forum/topic/25272-otschet-dnej/</link><description><![CDATA[<p>Когда мы делаем квест, порой бывает так, что некое событие должно произойти через какой-то промежуток времени, причем независимо от действий игрока... Для того чтобы отсчитать некое количество дней до события можно использовать любую из двух глобальных переменных. Первая, используемая <strong>Морровиндом</strong> называется <strong>Day</strong> - она обозначает номер дня в текущем месяце. (Пример ее использовани можно посмотреть в  <a href="http://forum.fullrest.ru/index.php?showtopic=11466" rel="external nofollow"><strong>этой</strong></a> теме) Вторая была введена <strong>Трибуналом</strong> и называется <strong>DaysPassed</strong>. Она обозначает количество дней, прошедших с начала игры. </p><p>Однако, преимущество глобальной переменной <strong>DaysPassed</strong> перед <strong>Day</strong> состоит в следующем. Поскольку после 1го числа месяца идет 2е, а после 30го идет 1е, Day сегодня не всегда будет точно больше или точно меньше, чем Day завтра. из-за этого проверки if ( FirstDay &gt; Day ) или  if ( FirstDay <strong>этой</strong> теме).</p><p><strong>DaysPassed</strong> упрощает задачу, потомучто завтра количество дней, прошедших с начала игры будет точно больше, чем сегодня. И вам не нужно ломать гоову над тем как точно определить количество дней между двумя событиями.</p><p> </p><p><strong>1)</strong> Скрипт из Лайтвинд. У Алесии есть бабушка-эшлендерка. По умолчанию она сидит в своей юрте в Молаг Амуре. Однако, сразу после того, как Игрок начнет квест, бабушка уйдет на охоту и вернется только спустя два с половиной есяца, а если быть точным, то через 80 дней, при дополнительном условии, что Игрок завершит квест:</p><p> </p><p></p><pre class="ipsCode">begin aa_LW_GrandmaScript

short once
Short FirstDay
Short currentDay

if ( once == 0 )
if ( getjournalindex "1a_LW" &gt;= 21 )
	set FirstDay to DaysPassed
	set once to 1
	disable
endif
elseif ( once == 1 )
if ( getjournalindex "1a_LW" &gt;= 90 )
	set currentDay to ( DaysPassed - FirstDay )
		if ( currentDay &gt; 80 )
			set once to 2
			enable
		endif
endif
endif

end</pre><div></div><p></p><p> </p><p><strong>2)</strong> В разговоре с Игроком НПС назначил первому встречу, причем сказал, что придти нужно "завтра, после полудня" в это же место. Когда Игрок придет и осмотрится, в журнал добавится запись либо о том, что НПС не пришел, либо о том, что НПС пришел на встречу (в зависимости от вашей ситуации).</p><p> </p><p></p><pre class="ipsCode">Begin aa_LW_LeavingScript

Short currentDay
Short FirstDay
float timer
short once


if ( once == 0 )
if ( getjournalindex "1a_LW" == 105 )
	set FirstDay to DaysPassed;запоминаем тот день, когда НПС назначил Игроку встречу
	set once to 1
endif
elseif ( once == 1 )
	set currentDay to ( DaysPassed - FirstDay )
	if ( currentDay == 1 )
		if ( GameHour &gt;= 12 )
			set once to 2; Игрок пришел в нужный день
		endif
	elseif ( currentDay &gt; 1 )
		set once to 3; Игрок опоздал
	endif
elseif ( once == 2 )
	set timer to ( timer + GetSecondsPassed )
		if ( timer &gt; 5 )
			journal "1a_LW" 107; после этой записи Игрока можно похвалить за пунктуальность
			set once to 4
		endif
elseif ( once == 3 )
	set timer to ( timer + GetSecondsPassed )
		if ( timer &gt; 5 )
			journal "1a_LW" 108; после этой записи Игрока можно поругать за медлительноть (или же НПС мог не дождатся и уйти)
			set once to 4
		endif
endif

end</pre><div></div><p></p><p> </p><p>если же НПС по-любому не придет на встречу ,скрипт будет проще:</p><p></p><pre class="ipsCode">Begin aa_LW_LeavingScript

Short currentDay
Short FirstDay
float timer
short once


if ( once == 0 )
if ( getjournalindex "1a_LW" == 105 )
	set FirstDay to DaysPassed
	set once to 1
endif
elseif ( once == 1 )
	set currentDay to ( DaysPassed - FirstDay )
	if ( currentDay == 1 )
		if ( GameHour &gt;= 12 )
			set once to 2
		endif
	elseif ( currentDay &gt; 1 )
		set once to 2
	endif
elseif ( once == 2 )
	set timer to ( timer + GetSecondsPassed )
		if ( timer &gt; 5 )
			journal "1a_LW" 107; запись типа: Я на месте, а НПС нигде нет
			set once to 3
		endif
endif

end</pre><div></div><p></p>]]></description><guid isPermaLink="false">25272</guid><pubDate>Sun, 12 Apr 2009 09:39:06 +0000</pubDate></item><item><title>&#x421;&#x43E;&#x437;&#x434;&#x430;&#x43D;&#x438;&#x435; &#x43D;&#x43E;&#x432;&#x44B;&#x445; &#x43B;&#x438;&#x446; &#x434;&#x43B;&#x44F; &#x43F;&#x435;&#x440;&#x441;&#x43E;&#x43D;&#x430;&#x436;&#x435;&#x439;</title><link>https://www.fullrest.ru/forum/topic/25207-sozdanie-novyh-lic-dlja-personazhej/</link><description><![CDATA[<p>Найти для своего плагина оригинальные и красивые лица - наверное, желание каждого разработчика. Возможным выходом из этой проблемы является попытка научиться этому самому, а точнее перетекстурить стандартную модель - об этом и статья-урок (см. приложенный файл).</p><p> </p><p>UPD. Не прошло и года, - дополнила урок информацией об английских названиях инструментов. Еще раз спасибо за помощь отписавшимся.</p><p><a href="https://www.fullrest.ru/forum/applications/core/interface/file/attachment.php?id=9351" data-fileid="9351" data-fileext="pdf" rel="">NewFacesForNPC.pdf</a></p>]]></description><guid isPermaLink="false">25207</guid><pubDate>Mon, 06 Apr 2009 08:11:59 +0000</pubDate></item><item><title>&#x422;&#x440;&#x435;&#x43D;&#x438;&#x440;&#x43E;&#x432;&#x43E;&#x447;&#x43D;&#x44B;&#x439; &#x43C;&#x430;&#x43D;&#x435;&#x43A;&#x435;&#x43D;</title><link>https://www.fullrest.ru/forum/topic/17177-trenirovochnyj-maneken/</link><description><![CDATA[<p><strong>Урок по созданию манекена </strong></p><p> </p><p>Это манекен, на котором действительно можно тренироваться. По нему можно бить оружием и, если часто это делать, у игрока будет расти навык. </p><p> </p><p>Идея подсмотрена в плагине<strong> Japanese House</strong>.</p><p> </p><p>Урок рассчитан на людей, имеющих опыт работы с КС.</p><p> </p><p>Идея заключается в том, чтобы создать нового неуязвимого персонажа новой расы. </p><p>Но для начала создадим модель нового манекена. </p><p> </p><p>1.	Распакуйте архив <strong>morrowind.bsa </strong>(как распаковываются bsa – отдельная тема, она подробно изложена <a href="http://forum.fullrest.ru/index.php?showtopic=3676" rel="external nofollow">здесь</a>) и извлеките оттуда файл <strong>furn_practice_dummy.nif</strong>. Он находится в папке (Meshes\f). Либо скачайте этот файл – он присоединен к данной теме. </p><p>2.	Создайте в директории игры, внутри папки <strong>Meshes </strong>папку под названием <strong>f </strong>и скопируйте туда <strong>furn_practice_dummy.nif</strong>. Этот файл – сама модель чучелка на столбе. Конечно, на нее наложены текстуры, но нам не нужно извлекать их дополнительно. Когда файл будет отправлен в мир игры, они автоматически подгрузятся из bsa-архива игры.  </p><p> </p><p>Теперь предстоит работа в КС:</p><p>1.	Создайте новую расу (Character -&gt; Race -&gt; New) с ID, скажем, <strong>1a_model</strong> под именем <strong>Манекен</strong>. В <strong>base attributes</strong> выставите нули. Описание, скиллы бонуса не требуются, но при желании можно написать. Введите рост (height)  и вес (weight) для обоих полов 1.0. Никакие флажки тоже не нужно ставить.</p><p>2.	Чтобы использовать манекен по назначению и чтобы он служил долго, ему нужна неуязвимость. Ее можно добиться с помощью специального заклинания. Отправляйтесь в закладку <strong>Spellmaking</strong>. Создайте новое заклинание с эффектом восстановить здоровье, на себя, area – 0, duration - 1. Значения: от 2000 до 2500. Выберете тип – характеристика. Поставьте флажок <strong>Always Succeeds</strong>. Привяжите заклинание к новой расе (делается путем перетаскивания мышью из Spellmaking в свойства новой расы).</p><p>3.	Теперь нужно указать, из каких моделей – частей тела состоит новая раса. Отправляйтесь в закладку <strong>body part</strong>. Создайте бодипарт с новым ИД для новой расы. Параметры такие: Part -&gt; Groin; Part Type -&gt; Skin; Type -&gt; Normal. Не ставьте значок напротив female (манекен у нас будет мужского рода). Нажмите на кнопочку <strong>Add Art File</strong> и укажите путь к модели <strong>furn_practice_dummy.nif</strong>, т.е. примерно <strong>C:\Program Files\Bethesda Softworks\Morrowind\Data Files\Meshes\f.</strong></p><p>4.	Теперь приступим к созданию нашего манекена. Зайдите в закладку <strong>NPC</strong> и создайте нового персонажа новой расы <strong>1a_model</strong> с новым ИД и по имени <strong>Тренировочный Манекен</strong>. Класс и уровень выберете по желанию, но проще оставить по умолчанию Acrobat и 1. Поставьте ему все <strong>Attributes</strong> в 0 (у манекена не может быть никакой силы воли, интеллекта или удачи в конце концов). А вот здоровье лучше дать побольше,- 2500. Цвет крови (Blood Textures) должен быть белым (Skeleton (White)), точнее это будет как бы пыль, которую можно выбить из манекена при ударе. </p><p>На скиллы (skills) не обращайте внимания, ему все равно не придется их использовать. Зайдите в параметры <strong>AI</strong>. Проверьте, чтобы значения Fight, Flee, Alarm и Hello были 0,  дистанция также 0, и чтобы в закладке Service не стояло никаких флажков, а то манекен, чего доброго, начнет торговать. Можно выпускать новый персонаж в мир игры. </p><p>5.	Теперь чтобы регулировать его поведение используйте на нем скрипт. В плагине <strong>Japanese House</strong> применяется такой скрипт: </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="17177" data-ipsquote-contentclass="forums_Topic"><div>begin scr_archer_dummy<p> </p><p>short nolore</p><p>skipanim</p><p> </p><p>if (menumode == 1)</p><p>	return</p><p>endif</p><p> </p><p>if (OnActivate == 1)</p><p>	return</p><p>endif</p><p> </p><p>stopcombat, player</p><p> </p><p>end scr_archer_dummy</p></div></blockquote><p> </p><p>Он позволяет манекену не контактировать с игроком и не атаковать его. </p><p> </p><p>6.	Последний штрих: закройте КС, отправьтесь в <strong>C:\Program Files\Bethesda Softworks\Morrowind\Data Files\Meshes\f </strong>и удалите файл <strong>furn_practice_dummy.nif</strong>. Поскольку он повторял стандартное расположение файлов в bsa-архиве (папка Meshes\f), Морровинд будет без проблем загружать его оттуда и не понадобится вкладывать в архив с новым плагином эту модель.</p><p> </p><p><em>Напоследок небольшой совет:</em> ставьте манекен в таком месте, чтобы другие неписи находились подальше. Они вполне могут принять тренировку с манекеном за нападение на другого непися и поднять тревогу. </p><p> </p><p>В целом же этот манекен – весьма оригинальная фишка, которая украсит любой плагин!</p>]]></description><guid isPermaLink="false">17177</guid><pubDate>Thu, 17 Apr 2008 07:27:42 +0000</pubDate></item><item><title>&#x423;&#x440;&#x43E;&#x43A; &#x43F;&#x43E; &#x441;&#x43E;&#x437;&#x434;&#x430;&#x43D;&#x438;&#x44E; splash</title><link>https://www.fullrest.ru/forum/topic/10727-urok-po-sozdaniju-splash/</link><description><![CDATA[<p>Предлагаю вашему вниманию небольшой урок, рассчитанный на пользователей-любителей. Здесь вы увидите не только алгоритм работы при создании заставки и ее импорте в игру, но также советы, как сделать стилизацию под "Старый Свиток".</p><p> </p><p><a href="http://sefy.narod.ru/downloaded/Splash.rar" rel="external nofollow">http://sefy.narod.ru/downloaded/Splash.rar</a> - сам урок находится здесь. Файл в формате .pdf. Объем в архиве 373 кб. </p><p> </p><p><a href="http://sefy.narod.ru/downloaded/Splash_new.rar" rel="external nofollow">http://sefy.narod.ru/downloaded/Splash_new.rar</a> - полученный в результате работы сплэш. Вес - 1, 17 мб.</p>]]></description><guid isPermaLink="false">10727</guid><pubDate>Thu, 28 Sep 2006 06:14:07 +0000</pubDate></item><item><title>&#x417;&#x430;&#x43C;&#x435;&#x442;&#x43A;&#x438; &#x432;&#x43E;&#x43B;&#x44C;&#x43D;&#x43E;&#x433;&#x43E; &#x43C;&#x43E;&#x434;&#x43C;&#x435;&#x439;&#x43A;&#x435;&#x440;&#x430;</title><link>https://www.fullrest.ru/forum/topic/12941-zametki-volnogo-modmejkera/</link><description><![CDATA[<p>Эта тема - копилка полезной информации о плагиностроительстве.</p><p>Здесь вы можете высказывать свои мысли о разработке плагинов. </p><p> </p><p>Модмейкеры! </p><p>Давайте соберем солянку из ответов и готовых решений, наблюдений и заметок о нюансах КС, секретах, способных упростить работу, можно даже шире - размышления о том, как делать квесты, плагины, как строить работу над проектом-плагигом в команде и т.д. </p><p><em>Только не поленитесь иногда уточнить, про КС TES III: Morrowind вы говорите или про TES IV: Oblivion. </em></p><p> </p><p>---</p><p>1. В КС TES III, в левом окне, там где списки объектов по категориям (статики, активаторы и т.д.) действует "поиск по буквам". Если выделить в любой категории объект и нажать на клавиатуре букву, то выделение тут же переместится к объекту, ИД которого начинается с этой буквы. </p><p>очень облегчает работу, не приходится перелистывать весь список туда-сюда!</p>]]></description><guid isPermaLink="false">12941</guid><pubDate>Wed, 28 Feb 2007 11:39:59 +0000</pubDate></item><item><title>&#x410; &#x43F;&#x43E; &#x43D;&#x43E;&#x447;&#x430;&#x43C; &#x435;&#x433;&#x43E; &#x43D;&#x435;&#x442;...</title><link>https://www.fullrest.ru/forum/topic/13566-a-po-nocham-ego-net/</link><description><![CDATA[<p>Объект, на который повешен этот скрипт, днем выглядит как обычно, а по ночам исчезает (дисейблится). </p><p> </p><p></p><pre class="ipsCode">begin L-BrineDisable

;  автор – LofZ

if ( menumode == 1 )
return
endif

if ( Gamehour &gt;= 0 )
if ( Gamehour  &lt; 6 )
	if ( "ID_объекта"-&gt;getdisabled == 0 ); чтобы disable выпонилось только 1 раз
		"ID_объекта"-&gt;disable
	endif
else
if ( "ID_объекта"-&gt;getdisabled == 1 ); чтобы enable выпонилось только 1 раз, а не каждый фрейм
	"ID_объекта"-&gt;enable
endif
endif
endif

end</pre><div></div><p></p><p> </p><p>Введите в кавычки ИД вашего объекта. </p><p>У нас этот скрипт использовался в последнем плагине про не очень сообразительного оборотня на парне, которого звали Брайн (aa_brine). Этот товарищ по ночам уходил из города, а днем был на месте. Соответственно, строчки с командами выглядели так: "aa_brine"-&gt;disable и т.д. Отсюда, кстати, и название этого скрипта.</p>]]></description><guid isPermaLink="false">13566</guid><pubDate>Mon, 27 Aug 2007 10:29:36 +0000</pubDate></item><item><title>&#x41A;&#x430;&#x43A; &#x432;&#x44B;&#x440;&#x443;&#x431;&#x438;&#x442;&#x44C; &#x438;&#x433;&#x440;&#x43E;&#x43A;&#x430;</title><link>https://www.fullrest.ru/forum/topic/13564-kak-vyrubit-igroka/</link><description><![CDATA[<p><strong>Предлагаю вариант скрипта для ситуации, когда нужно вырубить игрока. Скрипт вешается на какой-то предмет. При активации беднягу Нереварина швыряет в другую ячейку, при этом как бы проходит ровно день. Т.е. после некоторых манипуляций с неким предметом (который, впрочем, нельзя сунуть в инвентарь), он очухивается в неизвестном месте через какое-то время.</strong>  </p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="13564" data-ipsquote-contentclass="forums_Topic"><div>begin Lo_xaos<p>; Автор - LofZ</p><p>short once</p><p> </p><p>if ( menumode == 1 )</p><p>	return</p><p>endif</p><p> </p><p>	if ( OnActivate == 1 )</p><p>fadeout 2</p><p>FadeIn 2</p><p> </p><p>set Day to (Day + 1)</p><p>		<span style="color:#FF0000;">journal "aaa_ujos" 10</span></p><p>			Player -&gt; PositionCell <span style="color:#FF0000;">583, -386, -1529 0 "Pelagiad, South Wall"</span></p><p> </p><p> </p><p>		set once to 1</p><p> </p><p>	endif</p><p>endif</p><p> </p><p>if ( once == 1)</p><p>	disable ; надо удалить объект, чтобы эти пробелы в памяти не произошли еще пару раз</p><p>endif</p><p>if ( GetDisabled == 1 )</p><p>	setdelete 1</p><p>	return</p><p>endIf	</p><p> </p><p>end</p></div></blockquote><p><em>Примечания: </em> Строчка journal "aaa_ujos" не обязательна. Это журнальная запись, фиксируюящая эмоции игрока.</p>]]></description><guid isPermaLink="false">13564</guid><pubDate>Mon, 27 Aug 2007 10:21:20 +0000</pubDate></item><item><title>&#x420;&#x430;&#x441;&#x43A;&#x43B;&#x430;&#x434;&#x44B;&#x432;&#x430;&#x435;&#x43C; &#x432;&#x435;&#x449;&#x438;, &#x43E;&#x431;&#x43D;&#x43E;&#x432;&#x43B;&#x44F;&#x435;&#x43C; &#x438;&#x43D;&#x432;&#x435;&#x43D;&#x442;&#x430;&#x440;&#x44C; &#x442;&#x43E;&#x440;&#x433;&#x43E;&#x432;&#x446;&#x435;&#x432;</title><link>https://www.fullrest.ru/forum/topic/13563-raskladyvaem-veshhi-obnovljaem-inventar-torgovcev/</link><description><![CDATA[<p>Этот глобальный скрипт через 3 дня после старта добавляет в мир Морра новый объект, а также добавляет его в инвентарь некоторым товарищам. Этот скрипт был использован для плагина "Дар Ноктюрналь": он делает так, что в Морровинде выходит свежий номер газеты "Длинный язык" ("a_bk_Dl-f"), где есть интервью с Нереварином. </p><p>А вообще скрипт представляет широкие возможности для использования. Видоизменяя его, можно  добавлять можно все, что угодно, и куда угодно. Например, можно изменять ассортимент вещей торговцев в глобальном масштабе. </p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="13563" data-ipsquote-contentclass="forums_Topic"><div>begin L-DF<p> </p><p>short daysPassed</p><p>short myDay</p><p>short state</p><p> </p><p> </p><p>if ( daysPassed == 0 )</p><p>	set myDay to Day</p><p>	set daysPassed to 1</p><p>endif</p><p> </p><p>if ( myDay != Day )</p><p>	set daysPassed to daysPassed + 1</p><p>	set myDay to Day</p><p>endif</p><p> </p><p> </p><p>if ( state == 1 )</p><p>stopscript  "L-DF"</p><p>return</p><p>endif</p><p> </p><p>if ( state == 0 )</p><p>		if ( daysPassed &gt;= 3 )</p><p>PlaceItemCell "a_bk_Dl-f" "Vivec, Black Shalk Cornerclub" 454, -142, 2 0  </p><p>PlaceItemCell "a_bk_Dl-f" "Vivec, Elven Nations Cornerclub" 6, -332, -190 0</p><p>PlaceItemCell "a_bk_Dl-f" "Vivec, The Flowers of Gold" -54, 99, -62 0</p><p>PlaceItemCell "a_bk_Dl-f" "Vivec, The Lizard's Head" 346, -70, -63 0</p><p>"jeanne"-&gt;additem "a_bk_Dl-f" 1</p><p>"jobasha"-&gt;additem "a_bk_Dl-f" 2 ; а Джобаше сразу 2 экземпляра. </p><p>"simine fralinie"-&gt;additem "a_bk_Dl-f" 1</p><p>"tervur braven"-&gt;additem "a_bk_Dl-f" 1</p><p> </p><p>			     set state to 1</p><p>endif</p><p>endif</p><p>endif</p><p> </p><p>end</p></div></blockquote><p> </p><p>Чтобы ваш новый объект не оказался где-нибудь под полом или зависшим в воздухе, лучше предварительно скинуть копию этого объекта в ячейку, записать координаты, а затем удалить и почистить ячейку в TESAMe.</p>]]></description><guid isPermaLink="false">13563</guid><pubDate>Mon, 27 Aug 2007 09:42:54 +0000</pubDate></item><item><title>&#x420;&#x430;&#x431;&#x43E;&#x442;&#x430; &#x441;&#x43E; &#x437;&#x432;&#x443;&#x43A;&#x430;&#x43C;&#x438; &#x432; TES III</title><link>https://www.fullrest.ru/forum/topic/13369-rabota-so-zvukami-v-tes-iii/</link><description><![CDATA[<p>Представляю вашему вниманию новую, исправленную и дополненную версию статьи из которой каждый может узнать об основных возможностях работы со звуками в TES III.  Думаю, будет полезно любому модмейкеру. =)</p><p> </p><p>Статью в формате .doc можно скачать <a href="http://www.fullrest.ru/load/WorkWithSoundsTESIII.html" rel="external nofollow"><strong>отсюда</strong></a></p><p>Статья на RumorWIKI  с картинками - <a href="http://www.wiki.rumor.ru/index.php?title=Morrowind:Working_with_sound" rel="external nofollow"><strong>здесь</strong></a></p>]]></description><guid isPermaLink="false">13369</guid><pubDate>Sat, 18 Aug 2007 11:24:04 +0000</pubDate></item><item><title>&#x411;&#x43E;&#x439; &#x441; &#x43D;&#x435;&#x43F;&#x438;&#x441;&#x435;&#x43C;. &#x410;&#x43B;&#x44C;&#x442;&#x435;&#x440;&#x43D;&#x430;&#x442;&#x438;&#x432;&#x43D;&#x44B;&#x439; &#x444;&#x438;&#x43D;&#x430;&#x43B;</title><link>https://www.fullrest.ru/forum/topic/11315-boj-s-nepisem-alternativnyj-final/</link><description><![CDATA[<p>В Морровинде довольно часто приходится сталкиваться в турнирных поединках с неписями. Исход таких боев однообразен: как только здоровье у непися достигает определенной отметки, он начинает просить о пощаде. </p><p>Однако привычную ситуацию можно разнообразить, причем это довольно просто. Я расскажу, как помимо привычного создать альтернативный вариант, когда <strong>в бою не только израненный оппонент просит пощады, но и в случае серьезного ранения игрока непись начинает глумиться над ним и требовать, чтобы он просил прощения. </strong> </p><p> </p><p>1. Итак, создайте врага с запасом здоровья больше 50 и поместите его в игре. У меня это нордлинг-задира по имени aa_mantas. Товарищ не очень сообразительный, но не лишенный своеобразного очарования. Назван в честь надоедливых монстров из Fallout, ведет себя соответствующе </p><p> </p><p>2. Создайте новую журнальную запись "aaa_zadira" и запишите для нее примерно такие фразы со следующими индексами: </p><p> </p><p>Вначале ячейка диалога с флажком Questname «Задира»</p><p><strong>20</strong> – я был атакован незнакомым нордлингом </p><p><strong>89</strong> – я проиграл этот бой</p><p><strong>30</strong> – отношения выяснены – я побил задиру</p><p><strong>95</strong> – я убил обидчика</p><p><strong>90</strong> – обидчик не стал меня убивать</p><p>В этим трех последних записях поставьте галочку Finished.</p><p> </p><p>3. Используйте на обидчике следующий скрипт: </p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="11315" data-ipsquote-contentclass="forums_Topic"><div>begin neuvazhay-koryto<p>; автор - LofZ</p><p>short once </p><p> </p><p>if ( Menumode == 1 )</p><p>return</p><p>endif</p><p> </p><p>if ( GetJournalIndex "aaa_zadira" &gt;= 30 )</p><p>return</p><p>endif</p><p> </p><p>if ( GetHealth &lt;= 0 )</p><p>journal "aaa_zadira" 95</p><p>endif</p><p> </p><p>if ( once == 0 )</p><p>if ( GetDistance, Player &lt;= 350 )</p><p>forcegreeting</p><p>set once to 1</p><p>endif</p><p>endif</p><p> </p><p>if ( once == 1 )</p><p>if ( GetHealth, "aa_mantas" &lt; 50 )</p><p>say, "vo\n\m\Hit_NM005.mp3", "стон" ; голос нордлинга</p><p>stopcombat </p><p>forcegreeting</p><p>SetFight 30</p><p>set once to 2</p><p>endif</p><p>endif</p><p> </p><p>if ( once == 1 )</p><p>if ( Player -&gt; GetFatigue &lt;= 0 )</p><p>if ( Player -&gt; getHealth &lt;= 20 )</p><p>say, "vo\n\m\Fle_NM004.mp3", "Конец драки, я ухожу" ; а что ему еще остается сказать?</p><p>journal "aaa_zadira" 89</p><p>stopcombat </p><p>SetFight 30</p><p>forcegreeting</p><p>set once to 2</p><p>endif</p><p>endif</p><p>endif</p><p> </p><p>end</p></div></blockquote><p> </p><p> </p><p>Обратите внимание на строчки: <em>if ( Player -&gt; GetFatigue &lt;= 0 )</em></p><p><em>if ( Player -&gt; getHealth &lt;= 20 )</em></p><p>Во-первых, вы можете регулировать цифры, задавая сколько пунктов должна быть усталость и здоровье игрока (20 – это, конечно, очень мало. Игрок почти при смерти. Если противник слишком силен, он может все-таки прибить Нери и диалог не состоится). </p><p>Во-вторых, в самый главных, - уже прокачанного игрока сложно повалить на землю, условие if ( Player -&gt; GetFatigue &lt;= 0 ) для него может не сработать никогда. Если ваш квест рассчитан на опытного игрока, поставьте для «усталости» другое значение или вовсе уберите это условие. </p><p> </p><p>3. Напишите для агрессора гритинг с условием <strong>journal “aaa_zadira” &lt; 20 </strong> примерно следующего содержания: </p><p>«Сейчас я устрою тебе драку, %PCRace! Я не стану убивать тебя, но окуну пару раз в лужи на улице и посмотрю, какого цвета у тебя кровь!»</p><p>В результате пишем: </p><p><strong>journal "aaa_zadira" 20</strong></p><p><strong>startcombat, player</strong></p><p><strong>goodbye</strong></p><p> </p><p>4. Создаем следующий гритинг повыше с условием <strong>journal “aaa_zadira” == 20</strong>: описываем ситуацию, когда наш громила проигрывает: </p><p>«Остановись! Я признаю свое поражение. Вот тебе даже пара монет. Купи себе выпивку и не злись»</p><p>В результате: <strong>player -&gt; additem "gold_001" 50</strong></p><p><strong>journal "aaa_zadira" 30</strong></p><p><strong>stopcombat </strong></p><p><strong>goodbye </strong> </p><p>5. Создаем еще выше гритинг с условием <strong>journal “aaa_zadira” == 89</strong>. Описываем самый интересный момент – проигрыш игрока: «Достаточно, %PCRAce? Я победил тебя, все честно! Иди теперь зализывай раны и помни, что я мог даже убить тебя, но не сделал этого! Не каждый из противников, которых ты найдешь в этом мире, способен на такое!»</p><p>В результате: <strong>journal "aaa_zadira" 90</strong></p><p><strong>goodbye</strong></p><p>6. Реакция программы, если непись, несмотря ни на что, был убит в этой драке происходит автоматически – возникает журнальная запись с индексом 95.</p><p> </p><p>Готово. При желании создайте для задиры диалог с новыми темами. </p><p>Сохраняйте плагин и наслаждайтесь игрой.</p>]]></description><guid isPermaLink="false">11315</guid><pubDate>Fri, 03 Nov 2006 22:42:38 +0000</pubDate></item><item><title>&#x42F;&#x434;&#x43E;&#x432;&#x438;&#x442;&#x44B;&#x435; &#x441;&#x432;&#x435;&#x447;&#x438;</title><link>https://www.fullrest.ru/forum/topic/13131-jadovitye-svechi/</link><description><![CDATA[<p><strong><em>При недавнем сбое форума пострадал и этот подфорум. Некоторые примеры скриптов и уроки были удалены. К счастью, у нас сохранились копии утраченных тем на </em></strong><a href="http://tesforum.jino-net.ru/index.php" rel="external nofollow"><strong><em>http://tesforum.jino-net.ru/index.php</em></strong></a><strong><em> </em></strong></p><p><strong><em>Было бы хорошо, если их перенести сюда вновь.. Но я смогу заняться этим не раньше конца августа.. </em></strong><strong> </strong></p><p> </p><p>Этот скрипт создает своего рода ловушку для игрока-вампира. </p><p>Попав в интерьер, где находится объект с таким скриптом, игрок (если он вампир) начинает получать повреждения.</p><p>Данный скрипт используется в нашем новом плагине о вампирах «Предрассветные тени». Там было магическое освещение с эффектом вредного для вампиров дневного света, и поэтому игроку-вампиру пришлось бы несладко. Однако скрипт открывает широкие возможности: можно создавать ловушки для лабиринтов и т.д.</p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="13131" data-ipsquote-contentclass="forums_Topic"><div>begin L-candle<p> </p><p>short once</p><p>float timer</p><p>float damage</p><p>; автор – LofZ</p><p>If ( menumode == 1 )</p><p>Return</p><p>Endif</p><p> </p><p>if ( PCVampire != 1 )</p><p>	return</p><p>endif</p><p> </p><p> </p><p>if ( PCVampire == 1 )</p><p>if ( once == 0 )</p><p>set once to 1</p><p>endif</p><p>endif</p><p> </p><p>if ( once == 1 )</p><p>set damage to -10</p><p>	set damage to ( damage * GetSecondsPassed )</p><p>messagebox "От этих свечей исходит слишком яркий свет. Он обжигает вашу кожу."</p><p>Player-&gt;ModCurrentHealth, Damage</p><p>set once to 2 </p><p>endif</p><p> </p><p>if ( once == 2 )</p><p>set timer to ( timer + GetSecondsPassed )</p><p>endif</p><p>if ( timer &gt;= 3 )</p><p>set once to 0 </p><p>endif</p><p>end</p></div></blockquote>]]></description><guid isPermaLink="false">13131</guid><pubDate>Tue, 07 Aug 2007 16:44:37 +0000</pubDate></item><item><title>Forcegreeting</title><link>https://www.fullrest.ru/forum/topic/12664-forcegreeting/</link><description><![CDATA[<p><strong>Forcegreeting</strong> означает «срочный диалог», это команда в скрипте, которая заставляет говорящего первым начать диалог с игроком. </p><p> </p><p>	В-основном, эта команда используется</p><p> </p><p>1.	Чтобы создать экстремальную ситуацию. Если говорящий очень спешит что-то сказать, не дожидаясь, пока игрок до него доберется,- значит произошло (или происходит) что-то важное. </p><p>2.	Чтобы защитить говорящего, если есть риск, что игрок убьет его. </p><p> </p><p><em>Например, в подводном гроте среди множества дреугов отыскивается древний дреуг, умеющий разговаривать телепатически. Он должен  дать игроку квест. Но ведь игрок не знает, что дреуг не опасен. Скорее Нереварин замахнется оружием, чем решит проверить диалог. Поэтому используется форсгритинг: он сразу дает понять, что дреуг не простой. </em> </p><p> </p><p>Форсгритинг хорошо использовать в сочетании с проигрыванием звуков или командой <strong>say</strong>. </p><p> </p><p>Команда Форсгритинг зачастую назначается в связи с дистанцией, т.е. с расстоянием от говорящего до игрока или до другого объекта.  </p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="12664" data-ipsquote-contentclass="forums_Topic"><div>if ( GetDistance, Player &lt; 700 )<p>forcegreeting</p><p>endif</p></div></blockquote><p> </p><p>И самая распространенная ошибка в подобном случае -  скрипт зацикливается. Условия выполняются каждый фрейм (игрок находится вблизи говорящего), каждую секунду выпрыгивает окно диалога. Это приводит к зависанию игры. </p><p>Поэтому лучше назначать новую локальную переменную типа short. См. ниже</p><p> </p><p><a href="http://tesforum.jino-net.ru/index.php?showtopic=70" rel="external nofollow">Самый простой пример скрипта с forcegreeting</a></p><p> </p><p> </p><p>Но расстояние от говорящего до игрока также играет роль, когда у разных говорящих должен сработать форсгритинг. Вернее модмейкером планируется, что в экстремальной ситуации скрипты сработают последовательно: сначала один непись что-то скажет игроку, а потом другой… </p><p> </p><p>Однако, планируемый эффект возможен только если первый говорящий стоит ближе, а второй – дальше, причем очень далеко. </p><p> </p><p>Но ведь, если не встраивать разные дополнительные элементы, непросто предугадать, на каком расстоянии от игрока в такой-то окажутся ситуации неписи. </p><p> </p><p>И чаще всего при двух командах форсгритинга, они сработают одновременно. Т.е. возникнет очень неприглядный эффект: обе реплики в одном окне. Это выглядит очень скомкано и портит впечатление. </p><p> </p><p>Поэтому, если хотите последовательно запустить несколько срочных диалогов, используйте на одном из них скрипт с таймером. </p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="12664" data-ipsquote-contentclass="forums_Topic"><div>begin lofZ-at<p> </p><p>; составитель – LofZ</p><p> </p><p>float timer</p><p> </p><p>if ( MenuMode == 1 )</p><p>	Return</p><p>endif</p><p> </p><p>if ( once == 1 )</p><p>return</p><p>endif</p><p> </p><p> </p><p>if ( once == 0 )</p><p>if ( GetDistance, Player &lt; 1000 ) ; или другое условие, по которому команды могут совпасть</p><p> </p><p>set timer to timer + GetSecondsPassed</p><p>endif</p><p>           if ( timer &gt; <span style="color:#FF0000;">2</span> ) ; время можно менять</p><p>forcegreeting</p><p> </p><p>	set once to 1</p><p>endif</p><p>endif</p><p> </p><p>end</p></div></blockquote><p> </p><p>Между прочим, здесь таймер продолжает отсчитывать время, даже когда открыто окно диалога. </p><p>Это значит, что если поставить в таймере второй диалог не через 2 секунды, а через 20, второе окно все равно может открыться сразу после закрытия первого, при условии что игрок будет долго держать открытым первое. Т.к. отчет времени продолжается. </p><p> </p><p>И все-таки даже если первое окно открыто долго и время для второго уже истекло, перекрытия все равно не произойдет, - окна будут открываться по очереди. </p><p>И даже такого маленького промежутка времени как 2 секунды достаточно, чтобы диалог открылся не в одном окне, а последовательно.</p>]]></description><guid isPermaLink="false">12664</guid><pubDate>Tue, 06 Feb 2007 07:33:57 +0000</pubDate></item><item><title>&#x410; &#x43F;&#x43E;&#x443;&#x442;&#x440;&#x443; &#x43E;&#x43D;&#x438; &#x43F;&#x440;&#x43E;&#x441;&#x43D;&#x443;&#x43B;&#x438;&#x441;&#x44C;</title><link>https://www.fullrest.ru/forum/topic/12580-a-poutru-oni-prosnulis/</link><description><![CDATA[<p><strong>Предлагаю вариант скрипта для ситуации, когда нужно вырубить игрока. Скрипт вешается на какой-то предмет. При активации беднягу Нереварина швыряет в другую ячейку, при этом как бы проходит ровно день. Т.е. после некоторых манипуляций с неким предметом, он очухивается в неизвестном месте через какое-то время.</strong>  :1anim_ae: </p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="12580" data-ipsquote-contentclass="forums_Topic"><div>begin Lo_xaos<p>; Автор - LofZ</p><p>short once</p><p> </p><p>if ( menumode == 1 )</p><p>	return</p><p>endif</p><p> </p><p>	if ( OnActivate == 1 )</p><p>fadeout 2</p><p>FadeIn 2</p><p> </p><p>set Day to (Day + 1)</p><p>		<span style="color:#FF0000;">journal "aaa_ujos" 10</span></p><p>			Player -&gt; PositionCell <span style="color:#FF0000;">583, -386, -1529 0 "Pelagiad, South Wall"</span></p><p> </p><p> </p><p>		set once to 1</p><p> </p><p>	endif</p><p>endif</p><p> </p><p>if ( once == 1)</p><p>	disable ; надо удалить объект, чтобы эти пробелы в памяти не произошли еще пару раз</p><p>endif</p><p>if ( GetDisabled == 1 )</p><p>	setdelete 1</p><p>	return</p><p>endIf	</p><p> </p><p>end</p></div></blockquote><p><em>Примечания: </em> Строчка journal "aaa_ujos" не обязательна. Это журнальная запись, фиксируюящая эмоции игрока. Если нужно, создайте ее. У записи с индексом 10, может быть примерно следующее содержание: "Я взял в таверне стакан и что дальше было не помню..."  :1anim_as:</p>]]></description><guid isPermaLink="false">12580</guid><pubDate>Wed, 31 Jan 2007 10:43:24 +0000</pubDate></item><item><title>&#x421;&#x43A;&#x440;&#x438;&#x43F;&#x442; &#x434;&#x43E;&#x43F;&#x43E;&#x43B;&#x43D;&#x435;&#x43D;&#x438;&#x44F; &#x436;&#x443;&#x440;&#x43D;&#x430;&#x43B;&#x430;</title><link>https://www.fullrest.ru/forum/topic/12607-skript-dopolnenija-zhurnala/</link><description><![CDATA[<p><strong>Скрипт вешается на предмет.</strong></p><p><strong>При активации предмета, один раз дополняется журнал. В дальнейшем предмет можно также использовать (активация все еще возможна). </strong> </p><p> </p><p>1. Создайте новую журнальную запись, которая должна добавиться с нужным индексом (journal "1a_map" 12)</p><p> </p><p>2. Используйте скрипт</p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="12607" data-ipsquote-contentclass="forums_Topic"><div>begin L_forMap<p> </p><p>short once </p><p> </p><p> </p><p>if ( once == 0 )</p><p>if ( OnActivate == 1 )</p><p>journal "1a_map" 12</p><p>activate</p><p>set once to 1</p><p>endif</p><p>endif</p><p> </p><p>if ( once == 1 )</p><p>if ( onActivate == 1 )</p><p>activate</p><p>endif</p><p>endif</p><p> </p><p>end</p></div></blockquote>]]></description><guid isPermaLink="false">12607</guid><pubDate>Sat, 03 Feb 2007 07:13:52 +0000</pubDate></item><item><title>&#x41E;&#x433;&#x440;&#x430;&#x43D;&#x438;&#x447;&#x435;&#x43D;&#x438;&#x44F; &#x43D;&#x430; &#x43F;&#x435;&#x440;&#x435;&#x43C;&#x435;&#x449;&#x435;&#x43D;&#x438;&#x44F; &#x438;&#x433;&#x440;&#x43E;&#x43A;&#x430;</title><link>https://www.fullrest.ru/forum/topic/12358-ogranichenija-na-peremeshhenija-igroka/</link><description><![CDATA[<p>Скрипт - результат проклятья Лорда Даэдры Мефалы - накладывает ограничения на нахождение игрока в какой-либо ячейке. Если он появится в указанной ниже ячейке, его жлет смерть. </p><p> </p><p> </p><p>1. Создайте новую журнальную запись "1a_end"  с индексом 10, который должен остановить скрипт ("Мне удалось снять проклятье Мефалы. Теперь я могу бродить по Морровинду, где вздумается"). </p><p> </p><p>2. Запустите глобальный скрипт. Как это сделать, см. <a href="http://tesforum.jino-net.ru/index.php?showtopic=178" rel="external nofollow">здесь</a></p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="12358" data-ipsquote-contentclass="forums_Topic"><div>begin LofZ-TerribleDeath<p> </p><p>short once</p><p> </p><p>if ( menumode == 1 )</p><p>return</p><p>endif</p><p> </p><p>if ( GetJournalIndex "1a_end" &gt;= 10 )</p><p>stopscript "LofZ-TerribleDeath"</p><p>return</p><p>endif</p><p> </p><p>if ( once == 0 )</p><p>if ( getPCCell "Molag Mar" == 1 )</p><p>player-&gt;sethealth 0 </p><p>MessageBox "Чары Мефалы были не настолько сильными, чтобы убить вас если вы покинете шахту. Ее магия действовала по-другому. Она убивала вас, если вы оказывались в определенном городе. Теперь вы это узнали. Но поздно..."</p><p>set once to 1</p><p>endif</p><p>endif</p><p>if ( once == 0 )</p><p>if ( getPCCell "Sadrith Mora" == 1 )</p><p>player-&gt;sethealth 0 </p><p>MessageBox "Чары Мефалы были не настолько сильными, чтобы убить вас если вы покинете шахту. Ее магия действовала по-другому. Она убивала вас, если вы оказывались в определенном городе. Теперь вы это узнали. Но поздно..."</p><p>set once to 1</p><p>endif</p><p>endif</p><p>if ( once == 0 )</p><p>if ( getPCCell "Balmora" == 1 )</p><p>player-&gt;sethealth 0 </p><p>MessageBox "Чары Мефалы были не настолько сильными, чтобы убить вас если вы покинете шахту. Ее магия действовала по-другому. Она убивала вас, если вы оказывались в определенном городе. Теперь вы это узнали. Но поздно..."</p><p>set once to 1</p><p>endif</p><p>endif</p><p> </p><p>if ( once == 0 )</p><p>if ( getPCCell "Vivec" == 1 )</p><p>player-&gt;sethealth 0 </p><p>MessageBox "Чары Мефалы были не настолько сильными, чтобы убить вас если вы покинете шахту. Ее магия действовала по-другому. Она убивала вас, если вы оказывались в определенном городе. Теперь вы это узнали. Но поздно..."</p><p>set once to 1</p><p>endif</p><p>endif</p><p>if ( once == 0 )</p><p>if ( getPCCell "Ald-ruhn" == 1 )</p><p>player-&gt;sethealth 0 </p><p>MessageBox "Чары Мефалы были не настолько сильными, чтобы убить вас если вы покинете шахту. Ее магия действовала по-другому. Она убивала вас, если вы оказывались в определенном городе. Теперь вы это узнали. Но поздно..."</p><p>set once to 1</p><p>endif</p><p>endif</p><p> </p><p>end</p></div></blockquote><strong>Примечания:</strong><p>1. Скрипт не сразу скомпилируется. Дело в том, что он пока отсутствует в реестре. Редактор считает, что ему нечего останавливать. </p><p> </p><p>Выделите кусочек</p><p> </p><blockquote data-ipsquote="" class="ipsQuote" data-ipsquote-contentapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentid="12358" data-ipsquote-contentclass="forums_Topic"><div>if ( GetJournalIndex "1a_end" &gt;= 10 )<p>stopscript "LofZ-TerribleDeath"</p><p>return</p><p>endif</p></div></blockquote><p> </p><p>и вырежьте его (клавиши alt-x). </p><p>Сохраните скрипт. </p><p>Затем вставьте все как было через клавиши ctrl-V и пересохраните. </p><p> </p><p><em> Вы можете добавлять или удалять названия ячеек по своему усмотрению. Таким образом, можно запретить игроку посещать какие-то города или даже комнаты (интерьеры). </em> </p><p> </p><p>3. Не забудьте развивать квест и в итоге запустить журнальную запись "1a_end"  10, чтобы остановить скрипт, иначе Нереварин не сможет вообще путешествовать по миру игры.</p>]]></description><guid isPermaLink="false">12358</guid><pubDate>Thu, 11 Jan 2007 10:40:05 +0000</pubDate></item></channel></rss>
