Случайная подборка модов
Winter Mod
3.9
Sigerous Mod 2.2
4.1
Золотой обоз. Часть первая
3.5
Радар - глухой лес
2.6
Упавшая звезда. Честь наемника
4.2
Путь в Припять
3.8
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
  • Страница 1 из 1
  • 1
Модератор форума: FanG, Аdmin, FantomICW, Overfirst  
Квестостроение [Зов Припяти]
Беларусь  Rietmon
Понедельник, 08.01.2018, 20:39 | Сообщение # 1
Камень Преткновения. Пролог
Статус:
Отмычка:
Сообщений: 110
Награды: 5
Регистрация: 25.07.2017

Хэй, пиплы! Недавно, написали мне, что квестмейкер - одна из самых востребованных частей моддинга.. А почему бы мне тогда не сделать уроки по ней? Читайте:
Что нужно знать?



Что понадобится?


---
Приступим к учению!

ВНИМАНИЕ! Топик закрыт! Больше пополняться не будет в связи с потерей актуальности.









Дополнено 16.01.2018. Добавлено: новый раздел ("Небольшие гайды"), добавлено туда 2 гайда. Пополнен раздел "логика".
Сообщение отредактировал Rietmon - Среда, 28.03.2018, 15:00
  Злобная реклама
Понедельник, 08.01.2018, 20:39
Статус:
Сообщений: 666
Регистрация: 25.07.2017
Украина  _S_k_i_F_
Понедельник, 08.01.2018, 21:23 | Сообщение # 2
Золотой Обоз
Статус:
Опытный:
Сообщений: 1311
Награды: 9
Регистрация: 09.08.2015

Rietmon,
1) "info_jupiter.xml (gamedata\congigs\gameplay) - здесь необходимо зарегистрировать инфопоршень"
В ЗП не нужно регистрировать инфопоршни.
2) "<phrase id="0"> - ID фразы. Начинается с 0. Первая фраза - фраза игрока"
Не всегда - если указывать диалог в теге start_dialog или в параметре meet_dialog схемы meet в логике НПС, то первая фраза будет НПС.
3) "ВНИМАНИЕ! Задание не будет обновляться после нахождения всех колбас!"
В xr_conditions добавь
Код
--// p[2] = кол-во айтемов, p[1] = секция айтема
fucntion has_item_by_count(actor, npc, p)
    if p[1] == nil or p[2] == nil then abort("Error in fucntion has_item_by_count") end
    local need_cnt = tonumber(p[2]) or 1
    local cnt = 0
    local function iter_inv(t, item)
  if item:section() == p[1] then
   cnt = cnt + 1
  end
    end
    actor:iterate_inventory(iter_inv, actor)
return cnt >= need_cnt
end

А потом просто проверяй условие =has_item_by_count(kolbasa:5) для обновления задания.
  Злобная реклама
Понедельник, 08.01.2018, 21:23
Статус:
Сообщений: 666
Регистрация: 09.08.2015
Беларусь  Rietmon
Понедельник, 08.01.2018, 21:28 | Сообщение # 3
Камень Преткновения. Пролог
Статус:
Отмычка:
Сообщений: 110
Награды: 5
Регистрация: 25.07.2017

Цитата _S_k_i_F_ ()

А потом просто проверяй условие =has_item_by_count(kolbasa:5) для обновления задания.

1. Про то, что не надо регистрировать поршни впервые слышу. Даже ПЫСы так делают.
2 и 3. Я знаю про это, но планировал рассказывать уже в след уроках - т.к. этот и так получился очень большим, для такого мелкого квеста. Но спасибо за замечания!
  Злобная реклама
Понедельник, 08.01.2018, 21:28
Статус:
Сообщений: 666
Регистрация: 25.07.2017
Украина  _S_k_i_F_
Понедельник, 08.01.2018, 21:32 | Сообщение # 4
Золотой Обоз
Статус:
Опытный:
Сообщений: 1311
Награды: 9
Регистрация: 09.08.2015

Rietmon, в движке файл InfoPortion.cpp - там закомментировано чтение этих файлов. Все прекрасно работает и без регистрации.
"Я знаю про это, но планировал рассказывать уже в след уроках"
Такие мелкие моменты очень сильно режут глаз. Лучше сразу рассказывай обо всех нюансах.
  Злобная реклама
Понедельник, 08.01.2018, 21:32
Статус:
Сообщений: 666
Регистрация: 09.08.2015
Беларусь  Rietmon
Понедельник, 08.01.2018, 21:35 | Сообщение # 5
Камень Преткновения. Пролог
Статус:
Отмычка:
Сообщений: 110
Награды: 5
Регистрация: 25.07.2017

Цитата _S_k_i_F_ ()
Такие мелкие моменты очень сильно режут глаз. Лучше сразу рассказывай обо всех нюансах.

Первый раз делаю не подумал. Учту!
  Злобная реклама
Понедельник, 08.01.2018, 21:35
Статус:
Сообщений: 666
Регистрация: 25.07.2017
Азербайджан  Hoperise
Вторник, 09.01.2018, 18:24 | Сообщение # 6
Статус:
Опытный:
Сообщений: 1722
Награды: 10
Регистрация: 26.10.2016

Думаю раз тема названа квестостроение, то стоит в шапку накидать всяких уроков, на пример от товарища Geonosis, и другие уроки с sgm форума, имхо. Будет так же полезно добавить отдельно функции диалогов.
Сообщение отредактировал Hoperise - Вторник, 09.01.2018, 18:27
  Злобная реклама
Вторник, 09.01.2018, 18:24
Статус:
Сообщений: 666
Регистрация: 26.10.2016
Беларусь  Rietmon
Вторник, 09.01.2018, 21:00 | Сообщение # 7
Камень Преткновения. Пролог
Статус:
Отмычка:
Сообщений: 110
Награды: 5
Регистрация: 25.07.2017

Цитата Hoperise ()
Будет так же полезно добавить отдельно функции диалогов.

Я планирую пока в WORDе напечатать много уроков, а потом в шапке все раскидать "по полочкам"
  Злобная реклама
Вторник, 09.01.2018, 21:00
Статус:
Сообщений: 666
Регистрация: 25.07.2017
Российская Федерация  SirPavlo
Четверг, 11.01.2018, 16:51 | Сообщение # 8
Статус:
Зевака:
Сообщений: 1
Награды: 1
Регистрация: 06.01.2018

Любопытненько 9
  Злобная реклама
Четверг, 11.01.2018, 16:51
Статус:
Сообщений: 666
Регистрация: 06.01.2018
Российская Федерация  Barin765
Воскресенье, 28.01.2018, 22:04 | Сообщение # 9
Статус:
Зевака:
Сообщений: 3
Награды: 0
Регистрация: 28.01.2018

А что с темой? Пополнение вообще будет?
  Злобная реклама
Воскресенье, 28.01.2018, 22:04
Статус:
Сообщений: 666
Регистрация: 28.01.2018
Беларусь  Rietmon
Понедельник, 29.01.2018, 12:56 | Сообщение # 10
Камень Преткновения. Пролог
Статус:
Отмычка:
Сообщений: 110
Награды: 5
Регистрация: 25.07.2017

Barin765, будет, будет. Все времени нету заняться новыми уроками.
  Злобная реклама
Понедельник, 29.01.2018, 12:56
Статус:
Сообщений: 666
Регистрация: 25.07.2017
  • Страница 1 из 1
  • 1
Поиск: