Перейти к содержанию
Авторизация  
IncognitaGames

Как создавать эти долбаные квесты!!!

Рекомендуемые сообщения

 

Народ, не смейтесь, но я сегодня с 9.00 утра и до 20.45 вечера пытаюсь создать один обычный квест - найти и принести. И ничего не выходит. КАК СОЗДАВАТЬ ЭТИ ГРЕБАНЫЕ КВЕСТЫ???!!! Я уже готов полностью отказаться от модинга и снести все нафиг, но пока удерживает меня то, что довольно таки долго делал локацию, и она неплохо получилась. Жалко))) Я ведь никогда не занимался квестостроением, только 3Д. Но вот эти квесты... Едва клаву не разбил) Все, блин делаю по урокам, и ничего, диалоги разветвленные я делать умею, но вот скриптовые функции, типа отбирания у актера предмета, денег, давания актеру денег, предметов, проверки на наличие того или иного... да и вообще, сам квест не выдается. Прописал что нужно в tm_локация, создал файл локация.script, прописал там по урокам, и фигушки... Решил написать сюда, потому что терпение уже на исходе - чувствую, либо клаву с моником расшибу, либо все же снесу все нафиг и буду играть в сталкер 2))) Но жалко...))

  • Мастер! 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Ну в файлы который находится в creatures находишь quest_items создаешь квестовый предмет который нужно если есть у тебя модель к нему то в сдк куда удобно ставишь и проверку в скриптах на него пишешь (лично я так делаю, т.к других вариантов не вижу). А если тебе нужен квестовый предмет в трупе то модельку не стоит в quest_items создавать можно просто расположение иконки вписать и понадобится файл в папке creatures файл dead_generating (вроде так называется) и там где квестовые предметы к примеру pda = true копируешь и делаешь свою строку только вместо pda свое название квестового предмета и также в скриптах проверку на него, далее в character_desc_локация в секцию нпс где спавн его предметов добавляешь строку со своим квестовым предметом

Кидаю для тебя примеры как делать такое:

 

 

Изменено пользователем FacingSlave
  • Мастер! 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Модингопроблемы. :u1F602:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Это то я все знаю. Я не понимаю как ВООБЩЕ создавать квесты через Диалог Едитор. Куда нужно прописывать precondition и action. Точнее, знаю, но вот как это сделать что бы заработало? К примеру, я создал простой типа "привет, есть работа? НПС отвечает - есть. Какая? Принеси пистолет. Берусь или не берусь." Если берусь то должно выдаться задание через tm_локация. А так создал файл локация.script и в нем прописал что нужно по уроку Бориса Шепелева. И ничего. Вылета нет. Подхожу к НПС, говорю с ним беру задание и ничего, ни звука, ни описания задания, ничего. Повторное обращение к НПС - "я принес пистолет" - и все. Никаких "задание выпонено" нет. Вообще ничего нет. Только диалог, который я принудительно закрывал после сдачи задания.


Дополнено 4 минуты спустя

Вот файл квеста из tm_локация

;============================
;                 ПРЕДЗОННИК
;============================

[toolkit_quest]   ; Задание Эдельвейса - Принести два набора инструментов
icon = ui_inGame2_Instrumenti
prior = 115
storyline = false
title = toolkit_quest_name
descr = toolkit_quest_name_text
target = pred_sim_7_edem
condlist_0 = {+pred_edem_dialog_toolkit_quest_end} complete

Вот файл этого же квеста из dialogs_локация.script

function toolkit_quest_edem()
task_manager.get_task_manager():give_task("toolkit_quest")

end

function toolkit_1_has(first_speaker, second_speaker)
    return db.actor:object("toolkit_1") ~= nil

function reward_money_toolkit(first_speaker, second_speaker)
dialogs.relocate_money_to_actor(first_speaker, second_speaker, 1500)

function toolkit_1_has(first_speaker, second_speaker)
    return db.actor:object("toolkit_1") ~= nil
end

===============================

Что не так? Какой то блин простенький квест, и тот не могу создать. А замахиваюсь на целый мод!) 

 

Да, кстати, платформа ЗП

Изменено пользователем IncognitaGames

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

IncognitaGames инфопоршень регаешь к примеру start_kvest и туда нужно свой таск вписать который выдает задания

А насчет как выполнить квест к примеру принести пистолет в таск заходишь и ищешь свое первое подзадание и через <function_complete указываешь свою проверку на предмет в скрите и к примеру второе подзадание как выполнить решаешь поршень к примеру pistolet_otdal и во в таске где второе подзадание через infoportion_complete вставляешь этот поршень НО чтобы завершить задание вот этот поршень отдал pistolet тоже через infoportion_complete в таске  пишешь в самом начале т.е у тебя должно выглядеть так: В таск локация заходишь где у тебя название квеста пишешь инфопоршень выполнен дальше после названия первого названия пишешь функция выполнена и после второго подзадания также инфопоршень выполнен. а сами поршни в диалоге вызывай куда тебе удобно через give_info. На зп не знаю как ноя работаю так на тч, может люди в сто раз опытней меня помогут тебе

Изменено пользователем FacingSlave

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
2 минуты назад, FacingSlave сказал:

IncognitaGames инфопоршень регаешь к примеру start_kvest и туда нужно свой таск вписать который выдает задания

А насчет как выполнить квест к примеру принести пистолет в таск заходишь и ищешь свое первое подзадание и через <function_complete указываешь свою проверку на предмет в скрите и к примеру второе подзадание как выполнить решаешь поршень к примеру pistolet_otdal и во в таске где второе подзадание через infoportion_complete вставляешь этот поршень НО чтобы завершить задание вот этот поршень отдал pistolet тоже через infoportion_complete в таске  пишешь в самом начале т.е у тебя должно выглядеть так: В таск локация заходишь где у тебя название квеста пишешь инфопоршень выполнен дальше после названия первого названия пишешь функция выполнена и после второго подзадания также инфопоршень выполнен. а сами поршни в диалоге вызывай куда тебе удобно через give_info

Это все я сделал - квест как бы принялся, и при повторном обращении к нпс, открывается второй диалог - Вот принес пистолет. Но сам квест, когда я жму - Хорошо, принесу - не появляется, ни метки, ни звукового сигнала, ни описания в пда, ничего. А когда я жму - Вот принес пистолет - диалог закрывается как положено, но опять же таки, ни чего нет, просто диалог не повторяется, и все. Поршни я прописал где нужно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

IncognitaGames через give_info вызывай инфопоршень в строчку где у тебя хорошо принесу и через give_info в строчку где у тебя Вот принес

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

В общем все получилось, задание берется, все нормально. Только вот здать задания я МОГУ сдать, даже не имея в инвентаре нужный предмет. Чего то проверка не срабатывает. Вот код скрипта, что здесь не так?

function toolkit_quest_edem()
task_manager.get_task_manager():give_task("toolkit_quest")

end

function toolkit_1_has(first_speaker, second_speaker) -- функция имеет ли актер в инвентаре 1 бутылку водки
return first_speaker:object("toolkit_1") ~= nil
end

function relocate_toolkit(first_speaker, second_speaker) -- функция передаем предмет персонажу
dialogs.relocate_item_section(second_speaker, "toolkit_1", "out")
end

function reward_money_toolkit(first_speaker, second_speaker)  -- функция получения денег
    dialogs.relocate_money(second_speaker, 1500, "in")
end

Изменено пользователем IncognitaGames

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
2 часа назад, IncognitaGames сказал:

function toolkit_1_has(first_speaker, second_speaker) -- функция имеет ли актер в инвентаре 1 бутылку водки
return first_speaker:object("toolkit_1") ~= nil
end

Ну по идее это должно сработать. В диалоге перед <phrase_list> стоит <precondition>dialogs_локация.toolkit_1_has</precondition>? (вместо dialogs_локация название скрипта вашего, естественно)


Дополнено 4 минуты спустя

Короче, нужно найти нужный диалог в файле, и там прописать проверку вручную, как тут по аналогии, но с вашими скриптами и функциями:

Screenshot_10.jpg.ac0e97fba7a03e18936f645be6be38e2.jpg

Диалог Эдитор понятия не имею как работает (васянская программа), но вот это решит все проблемы.

Изменено пользователем Mawrak

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу