Д'жинни Вики

Эта Вики существует при поддержке сайта «Хроники Каэр Морхена».

ПОДРОБНЕЕ

Д'жинни Вики

Теперь мы переходим к созданию диалога с Юзом. Хочу напомнить, что Юз не является NPC. Он заядлый игрок в покер, и в его диалогах мы добавим возможность сыграть в покер. Это позволит Геральту играть с Юзом в кости. Чтобы создать новый диалог, в меню Файл (File) выберите Создать ‐> Диалог (.dlg) (New ‐> Conversation (.dlg)).

Откроется окно Новый диалог (new conversation). Учтите, что при этом должно быть открыто окно свойств (Properties). Напомню, как его открыть: в меню Вид (View) выберите Окна ‐> Свойства (Utility Windows ‐> Properties).

Создадим стандартный диалог с Юзом. Щелкните правой кнопкой мыши по пункту Новый диалог (new conversation). В контекстном меню выберите пункт Создать стандартную реплику (Create Dialog Node).

Дважды щелкните по пустой реплике, которую мы только что создали, и введите следующий текст: "Сыграем?" (Zagramy?). Затем нажмите клавишу Enter.

Теперь выберите реплику "Сыграем?" (Zagramy?) и щелкните по ней правой кнопкой мыши. В контекстном меню выберите пункт Создать стандартный ответ (Create Dialog Reply).

Снова щелкните по пустой реплике и введите текст "Бывай" (Bywaj). Затем нажмите клавишу Enter.

Затем снова щелкните правой кнопкой мыши по реплике "Сыграем?" (Zagramy?). В меню выберите пункт Создать стандартный ответ (Create Dialog Reply).

Теперь выберите пустую реплику, которую мы только что добавили. Перейдите в окно свойств (Properties). В разделе Текст реплики (Node Text) найдите параметр Тип диалога (Conv Type) и установите его значение на Gameplay.

Появятся несколько новых параметров.

Юз играет в покер, поэтому значение параметра Тип действия (Action Type) установите на DicePoker. Для этого щелкните по правой ячейке параметра и выберите в списке нужное значение.

Пустая реплика в нашем диалоге автоматически изменится на "Сыграем в покер!" (Let’s play poker!).

Теперь во время разговора Геральта с Юзом будет отображаться иконка игры в кости. Обратите внимание, что Параметры действия (Action Param) тоже изменились.

Здесь ничего менять не нужно. Эти параметры имеют следующие функции.

− Параметр действия 1: Тег соперника (Action Param 1: OpponentTag). Здесь указывается тег персонажа, с которым мы будем играть в кости.

− Параметр действия 2: Скрипт при победе (Action Param 2: OnWinScript). Здесь указывается скрипт, который загружается при победе Геральта.

− Параметр действия 3: Скрипт при поражении (Action Param 2: OnLoseScript). Здесь указывается скрипт, который загружается при проигрыше Геральта. Значение Gameplay для параметра Тип диалога (Conv Type) определяет различные виды развлечений, которыми интересуется игрок. В случае Юза это покер. Добавим Юзу возможность участвовать в кулачных боях. Щелкните правой кнопкой мыши по реплике "Сыграем?" (Zagramy?). В меню выберите пункт Создать стандартный ответ (Create Dialog Reply).

Теперь щелкните правой кнопкой мыши по пустой реплике, которую мы только что добавили. Значение параметра Тип диалога (Conv Type) установите на Gameplay.

Параметру Тип действия (Action Type) присвойте значение Fistfight.

Для кулачных боев используются другие Параметры действия (Action Param).

− Параметр действия 1: Мин. ставка (Action Param 1: Min_Gold). Определяет минимальную ставку.

− Параметр действия 2: Макс. ставка (Action Param 2: Max_Gold). Определяет максимальную ставку.

− Параметр действия 3: Префикс области (Action Param 3: Waypoint_Prefix). Определяет префикс области, необходимый для установки маршрута персонажа.

Наш диалог также изменился. Пустая реплика теперь заменилась на реплику "Посмотрим, на что ты способен!" (Show me what you’ve got!).

Поговорив с Юзом, Геральт сможет сыграть с ним в кости. Кроме того, он сможет принять участие в кулачном бое или просто уйти. Прежде, чем мы продолжим, я опишу остальные значения параметра Тип действия (Action Type) и соответствующие Параметры действия (Action Param).

• Bribe, взятка. Геральт может дать взятку персонажу. Например, чтобы получить дополнительную информацию.

− Параметр действия 1: Сумма (Action Param 1: Amount). Минимальная сумма в оренах (валюта игры "Ведьмак"), которую Геральт должен отдать персонажу.

• Dice, кости. Не используется.

• DicePoker, покер с костями. Параметры уже были описаны выше.

• Drink, алкоголь. Геральт может выпить с персонажем.

− Параметр действия 1: Скрипт при опьянении (Action Param 1: Fail_Script). Здесь указывается скрипт, который загрузится, когда Геральт опьянеет и потеряет сознание.

• Fistfight, кулачный бой. Параметры уже были описаны выше.

• Gift, подарок. Геральт может сделать персонажу подарок.

− Параметр действия 1: Тег подарка (Action Param 1: Gift_Tag). Здесь указывается тег подарка, который персонаж хочет получить от Геральта.

− Параметр действия 2: Тег неподходящего подарка (Action Param 2: Bad_Gift_Tag). Здесь указывается тег подарка, от которого персонаж откажется.

− Параметр действия 3: Скрипт неизвестного подарка (Action Param 3: Unknown_Gift_Script). Здесь указывается скрипт, который загрузится, если Геральт предложит персонажу неизвестный подарок.

• Pay, подкуп. Геральт может заплатить персонажу за информацию или просто дать ему взятку.

− Параметр действия 1: Сумма (Action Param 1: Amount). Минимальная сумма в оренах (валюта игры "Ведьмак"), которую Геральт должен отдать персонажу.

• Signet, кольцо. Геральт может отдать персонажу кольцо.

− Параметр действия 1: Тег кольца (Action Param 1: Signet_Tag). Здесь указывается тег кольца, которое должен отдать Геральт.

− Параметр действия 2: Скрипт неизвестного кольца (Action Param 2: Unknown_Signet_Script). Здесь указывается скрипт, который загрузится, если Геральт предложит персонажу неизвестное тому кольцо.

• Sleep, отдых. Геральт может заплатить персонажу за отдых.

− Параметр действия 1: Цена (Action Param 1: Price). Сумма, которую должен заплатить Геральт за отдых.

• Store, хранилище. Хранилище Геральта. Здесь можно хранить ненужные предметы. Более подробно эта тема описана в другой главе руководства.

• SwordUpgrade, улучшение меча. У персонажа есть кузница. Более подробно эта тема описана в другой главе руководства.

• Trade, торговля. У персонажа есть магазин. Более подробно эта тема описана в другой главе руководства.


Теперь вернемся к нашему диалогу с Юзом. Диалог необходимо сохранить. Для этого в меню Файл (File) выберите пункт Сохранить как... (Save as...).

Откроется стандартное окно Windows для сохранения файлов. Диалоги необходимо сохранять в каталоге Dialogues. Перейдите в этот каталог, введите имя файла dialog_yuza (jozek_rozmowa) и нажмите кнопку Сохранить. Учтите, что имя файла должно содержать не более 16 символов. В противном случае редактор D’jinni просто не увидит этот файл. Убедитесь, что сохраняете файл в формате dlg.

Если в окне указан другой тип файла, это, возможно, означает, что вы случайно пытаетесь сохранить содержимое другого открытого окна. Прежде, чем сохранять шаблон персонажа, убедитесь, что у вас активно окно Новый диалог (new conversation). Если оно не активно, его заголовок будет отображаться серым цветом.

Любой другой цвет заголовка означает, что данное окно является активным.

Звездочка перед текстом в заголовке окна означает, что последние изменения в этом файле не были сохранены. Теперь осталось присвоить диалог Юзу. Так как это второстепенный персонаж, а не NPC, присвоить диалог можно в шаблоне Юза. Сделать это можно с помощью окна обзора ресурсов (Resources Explorer). В меню Вид (View) выберите Окна ‐> Обзор ресурсов (Utility Windows ‐> Resources Explorer).

В левой части экрана откроется окно обзора ресурсов (Resources Explorer).


Шаблон Юза мы сохранили в каталоге Data\Templates\Characters\Commoners под именем nash_yuz.utc (nasz_jozek.utc). Чтобы открыть этот файл, раскройте ветвь, щелкнув по знаку плюса рядом с названием каталога.

Затем раскройте ветвь Characters, щелкнув по знаку плюса рядом с ее названием.

И, наконец, раскройте ветвь Commoners, щелкнув по знаку плюса рядом с ее названием.

Теперь дважды щелкните по файлу nash_yuz.utc (nasz_jozek.utc).

В правой части экрана откроется окно nash_yuz.utc (nasz_jozek.utc).

В разделе Статистика (Statistics) щелкните по желтой иконке в правой ячейке параметра Диалог (Conversation).

Откроется стандартное окно Windows для загрузки файлов. Перейдите в каталог Data\Dialogues и откройте файл dialog_yuza.dlg (jozek_rozmowa.dlg). Таким образом, мы указали нужный диалог в шаблоне Юза.

Теперь необходимо дать Юзу несколько оренов. В противном случае, он откажется с нами играть. Откройте снаряжение Юза. Для этого щелкните по синей иконке в правой ячейке параметра Содержимое снаряжения (Inventory Contents).

Откроется окно Содержимое снаряжения (Inventory Contents).

В разделе Доступные предметы (Available Items) раскройте ветвь Ценные предметы (Valuables), щелкнув по знаку плюса рядом с названием ветви.

Выберите орены Orens (it_gold_002.uti).

Удерживая левую кнопку мыши, перетащите объект в раздел Хранилище (Repository).

Отпустите левую кнопку мыши. Можете повторить это действие несколько раз, чтобы дать Юзу больше оренов.

Затем нажмите кнопку OK в окне Содержимое снаряжения (Inventory Contents). Теперь необходимо сохранить обновленную версию файла nash_yuz.utc (nasz_jozek.utc). Звездочка перед именем файла в заголовке окна означает, что последние изменения не были сохранены.

Чтобы сохранить файл под тем же именем, т. е. nash_yuz.utc (nasz_jozek.utc), выберите в меню Файл (File) пункт Сохранить nash_yuz.utc (Save nasz_jozek.utc).

Если в меню нет пункта Сохранить nash_yuz.utc (Save nasz_jozek.utc) или в нем указано другое имя файла, это, возможно, означает, что окно nash_yuz.utc (nasz_jozek.utc) в данный момент не является активным. Чтобы активировать окно, щелкните по его заголовку, а затем выберите в меню Файл (File) пункт Сохранить nash_yuz.utc (Save nasz_jozek.utc). Вот и все. Диалог с Юзом готов.