Последнее на форуме

Бар «100 рентген» v.28 (3140)
Ответил FRIDERICO 20:53:17

Конкурсы - ваши предложения (456)
Ответил ElalkKar 03:05:19

5 лет Stalker-GSC.ru. Обсуждение конкурсов (153)
Ответил ElalkKar 03:04:47

Патефон (3974)
Ответил Explorer 18:16:25

Прохождение Stalker Зов Припяти (3880)
Ответил DavidBox 03:17:20

Люди говорят

empty1021 ответил в P.P.F. Mod 1.3 для Call of Pripyat (18:12:14)
+Этот мод не для слабых видеокарт- Это надо сразу писать,а не в конец пихать,когда все прочитал

Letopisec ответил в Metro: Exodus на E3 2017 (11:01:34)
Это нормально. С метро у них получилось просто шикарно. Как говорят: Хоть долго запрягаешь, да быстро поедешь. Успехов и удачи, 4A Games. Если кто из них, когда нибудь, зайдя на этот фан-сайт, прочитает этот коммент.

TyzLa ответил в Военный корреспондент 2: Зов Донбасса (16:40:31)
[img]/sml/blink.gif[/img] Чё-то не очень.
К Донбасу, насколько я вижу, отношения вообще не имеет.
Но хуже того - это, скорее всего, версия только для мульти-плеер режима, т.к. всего одна единственная локация, не засалена никем, кроме упомянутых 2х новых мутантов, и нет ни схронов с патронами, ни торговцев.
Расстрелял все патроны. Обошёл всё. Нашел дыру в бетонном заборе, дошёл до края и упал в бездну. Вышел, удалил.
Может я чего-то недопонял? И надо ставить что-то еще? В описании это не указано.
И всё же автору - респект, т.к. старался, что-то сделал, но видимо пока не закончил...

asgarant ответил в Metro: Exodus на E3 2017 (22:53:45)
пытался здесь новость выложить, но видать не кому не нужно

karabel ответил в Metro: Exodus на E3 2017 (15:31:50)
Ролик замечательный. Куплю потом лицуху для коллекции.

Страница 1 из 11
Архив - только для чтения
Модератор форума: FAN, [email protected] 
Форум настоящего сталкера » Техническая поддержка » Свалка » Создание разговорного квеста
Создание разговорного квеста
# 1
Суббота, 01.02.2014, 12:04:15

Ранг: Мастер
Сообщений: 706
Награды: 34 Регистрация: 08.11.2012  

Создание квеста типа "разговор" для NPC


Нам понадобятся:
1. stable_dialogs_escape.xml
2. character_desc_escape.xml
3. dialogs_escape.xml
4. game_tasks.xml
5. info_l01escape.xml

Начнем.
1. Набросаем сюжет квеста. Допустим, Сидрыч отправил Меченого сходить к Волку потрясти должок, а Волк сказал Меченому, что денег нет и отправил обратно к Сидрычу. Итак, будем отталкиваться от этого.

2. Открываем character_desc_escape.xml, находим в секции Сидрыча такую строчку: "escape_trader_done_blockpost_box". После нее пишем такие строчки:
Код
  <actor_dialog>trader_dolg_start</actor_dialog>
    <actor_dialog>trader_dolg_done</actor_dialog>


Также в секции Волка ищем эту строчку: "tm_wolf_reward". После нее пишем эту:
Код
<actor_dialog>wolf_dolg_dialog</actor_dialog>


Сохраняем, выходим.

3. Открываем dialogs_escape.xml. В самом конце пишем:

Код
<dialog id="trader_dolg_start" priority="2"> ; id диалога, который мы написали в секции Сидрыча.
<dont_has_info>money_dolg_start</dont_has_info>  ; после получения инфопоршня этот диалог мы не увидим
          <has_info>tutorial_end</has_info> ; диалог будет показываться только после получения этого инфопоршня.
          <phrase_list>
              <phrase id="0">
                  <text>trader_dolg_start_0</text> ; текст диалога
                  <next>1</next>
              </phrase>
              <phrase id="1">
                  <text>trader_dolg_start_1</text>
                  <next>2</next>
                  <next>3</next>
              </phrase>
              <phrase id="2">
                  <text>trader_dolg_start_2</text>
                  <give_info>money_dolg_start</give_info> ; выдача инфопоршня
                  <action>dialogs.break_dialog</action> ; конец диалога   
              </phrase>
              <phrase id="3">
                  <text>trader_dolg_start_3</text>
                  <action>dialogs.break_dialog</action>
              </phrase>
          </phrase_list>
      </dialog>

<dialog id="wolf_dolg_dialog" priority="2">
<dont_has_info>volk_dialog_done</dont_has_info>   
          <has_info>money_dolg_start</has_info>
          <phrase_list>
              <phrase id="0">
                  <text>wolf_dolg_dialog_0</text>
                  <next>1</next>
              </phrase>
              <phrase id="1">
                  <text> wolf_dolg_dialog_1</text>
                  <give_info>volk_dialog_done</give_info>
                  <next>2</next>
              </phrase>
              <phrase id="2">
                  <text> wolf_dolg_dialog_2</text>
                  <action>dialogs.break_dialog</action>
              </phrase>
          </phrase_list>
      </dialog>

<dialog id="trader_dolg_done" priority="2">
<dont_has_info>money_dolg_done</dont_has_info>   
          <has_info>volk_dialog_done</has_info>
          <phrase_list>
              <phrase id="0">
                  <text>trader_dolg_done_0</text>
                  <next>1</next>
              </phrase>
              <phrase id="1">
                  <text>trader_dolg_done_1</text>
                  <next>2</next>
              </phrase>
              <phrase id="2">
                  <text>trader_dolg_done_2</text>
                  <give_info>money_dolg_done</give_info>
                  <next>3</next>
              </phrase>
              <phrase id="3">
                  <text>trader_dolg_done_3</text>
                  <action>dialogs.break_dialog</action>
              </phrase>
          </phrase_list>
      </dialog>


Сохраняем, выходим.
4. В самом конце game_tasks.xml пишем эту секцию:

Код
<game_task id="money_dolg"> ;  id задания из info_l01escape.xml   
   <title>Поговорить с Волком о долге</title>
    <objective>
     <text>Подойти к Волку</text>
     <icon>ui_iconsTotal_artefact</icon> ;  иконка задания в КПК
     <infoportion_complete>volk_dialog_done</infoportion_complete> ;  отметка инфопоршня
    </objective>
    <objective>
     <text>Поговорить с Волком</text>
     <icon>ui_iconsTotal_artefact</icon>
     <infoportion_complete>volk_dialog_done</infoportion_complete>
    </objective>

    <objective>
     <text>Поговорить с Сидоровичем</text>
     <infoportion_complete>money_dolg_done</infoportion_complete>   
    </objective>
</game_task>


Закрываем, сохраняем.

5. В конце файла info_l01escape.xml пишем эту секцию:

Код
<info_portion id="money_dolg_start"> ;  регистрация инфопоршня
   <task>money_dolg</task> ;  ссылка на задание из game_tasks.xml
</info_portion>   
<info_portion id="volk_dialog_done">    
</info_portion>
<info_portion id="money_dolg_done">
</info_portion>


Сохраняем.

6. В конце файла stable_dialogs_escape.xml добавляем эти строчки:

Код
<string id="trader_dolg_start_0">
    <text>Здорово, Сидорович! Есть работенка для меня?</text>
   </string>
   <string id="trader_dolg_start_1">
    <text>Есть тут дельце. Волк как-то деньжат занимал у меня, а до сих пор не вернул. Сходи, потряси его, глядишь совесть-то и проснется.</text>
   </string>
   <string id="trader_dolg_start_2">
    <text>Ну, ладно, схожу.</text>
   </string>
   <string id="trader_dolg_start_3">
    <text>Нет, спасибо, я с Волком еще работать буду.</text>
   </string>
   <string id="wolf_dolg_dialog_0">
    <text>Здорово, Волк. Я от Сидоровича. Он говорит, ты задолжал ему.</text>
   </string>
   <string id="wolf_dolg_dialog_1">
    <text>Слушай, у меня денег нет, и в ближайшее время они не появятся. А если он будет и дальше меня с этими долгами дергать, я весь хабар буду к Бармену таскать. Так ему и передай.</text>
   </string>
   <string id="wolf_dolg_dialog_2">
    <text>Хорошо, передам.</text>
   </string>
   <string id="trader_dolg_done_0">
    <text>Ну что, Сидрыч, поговорил я с твоим должником.</text>
   </string>
   <string id="trader_dolg_done_1">
    <text>Ну и что?</text>
   </string>
   <string id="trader_dolg_done_2">
    <text>Сказал, что денег нет. А еще сказал, что если дальше его дергать будешь по поводу долга, он весь хабар будет таскать к Бармену.</text>
   </string>
   <string id="trader_dolg_done_3">
    <text>Ну, на нет - и суда нет. Правда, Меченый? Ну, ступай я тебя больше не держу...</text>
   </string>


Вот и все, мы создали полноценный квест - трепалку. Нужно начинать новую игру.
Автор: [MarveL]



Форум настоящего сталкера » Техническая поддержка » Свалка » Создание разговорного квеста
Страница 1 из 11
Поиск:
Вверх