| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
| Форум сталкер S.T.A.L.K.E.R.: Школа моддинга Создание квестов и сценарий Создание сложных квестов в сталкер (Создание квестов в игре сталкер) |
| Создание сложных квестов в сталкер |
|
Создание оригинальной миссии для S.T.A.L.K.E.R.: с чего начать? Итак, решили вы написать оригинальную миссию для игры. С чего начать? Бросаться писать скрипты? Приниматься за конструирование разветвлённых диалогов? Или вообще всё это отложить в сторону и сделать кое-какие наброски на бумаге. Первым делом, разумеется, нужно сделать кое-какие выкладки — подобрать действующих лиц, придумать действительно интересный и захватывающий сюжет, продумать, как будут выглядеть диалоги между NPC и будут ли они вообще фигурировать в игре. И только после этого можно приступать к чисто технической части — реализации задуманного. Если кто-то подумал, что работать мы будем в редакторе уровней и по неосторожности его запустил — смело закрывайте программу. Сегодня он нам не понадобится. Писать миссии и диалоги для S.T.A.L.K.E.R. мы будем исключительно в «Блокноте». Не потому, что официальный инструментарий плох, а потому что он пока не позволяет править одиночные карты и квесты. Краткий брифинг проведён. Время действовать. Шаг 1. Подготовка диалога Начнём с написания разветвлённых диалогов. • Запустите «Блокнот» • Откройте файл: gamedata\config\gameplay\character_desc_escape.xml (примечание: архивы игры должны быть распакованы) Этот файл содержит ссылки на диалоговые ветки и служит для их инициализации. Найдите строку: Код \escape_trader_done_blockpost_box Сразу после неё добавьте: Код \escape_trader_stalkerworld Где escape_trader_stalkerworld — название будущего диалога. Инициализация произведена. Шаг 2. Внедрение диалога Откройте файл: gamedata\config\gameplay\dialogs_escape.xml Перед закрывающим тегом вставьте: Код <dialog> <id>escape_trader_stalkerworld</id> <precondition>escape_dialog.trader_alredy_give_job</precondition> <info>tutorial_end</info> <phrase id="0"> <text>escape_trader_stalkerworld0</text> <next>1</next> </phrase> <phrase id="1"> <text>escape_trader_stalkerworld1</text> <next>2</next> </phrase> <phrase id="2"> <text>escape_trader_stalkerworld2</text> <next>3</next> </phrase> <phrase id="3"> <text>escape_trader_stalkerworld3</text> </phrase> </dialog> • phrase id — номер реплики (нумерация с 0) • text — ключ строки • next — номер следующей реплики Шаг 3. Тексты диалога Файл: gamedata\config\text\rus\stable_dialogs_escape.xml Код <string id="escape_trader_stalkerworld0"> Слушай, Сидорович, есть у тебя какая-нибудь интересная работёнка? </string> <string id="escape_trader_stalkerworld1"> Ну, Меченый, повеселил ты меня… </string> <string id="escape_trader_stalkerworld2"> Ктулху, говоришь? А может, и правда существует… </string> <string id="escape_trader_stalkerworld3"> Ладно, иди. Только не забудь прихватить что-нибудь ценное. </string> Квестострой Диалог готов — пора переходить к созданию задания. Файл: gamedata\config\gameplay\tasks_escape.xml Код <game_task id="stalkerworld_quest"> <title>Типично сталкерский квест</title> <objective> <text>Поговорить с Ктулху</text> <icon>ui_iconsTotal_storyline_eliminate_gunslinger</icon> <info>stalkerworld_quest_done</info> </objective> <objective> <text>Раздобыть артефакты</text> <icon>green_location</icon> <info>Escape_Tutorial_Artefact</info> </objective> <objective> <text>Встретиться со снежным человеком</text> <icon>blue_location</icon> <info>Escape_stalker_from_raid</info> </objective> </game_task> Шаг 4. Условия выполнения Файл: gamedata\config\gameplay\info_l01escape.xml Код <info_portion id="stalkerworld_quest"> <action>start</action> </info_portion> Шаг 5. Экранные подсказки Файл: gamedata\config\text\rus\string_table_tasks_escape.xml Код <string id="stalkerworld_hint_1"> Поговори с Ктулху </string> <string id="stalkerworld_hint_2"> Найди полезные предметы и артефакты </string> <string id="stalkerworld_hint_3"> Встреться со снежным человеком </string> Итог ✔ Диалог создан ✔ Квест работает ✔ Цели и подсказки прописаны ✔ Осталось протестировать задание в игре
|
| |||
| |||