Хэй, пиплы! Недавно, написали мне, что квестмейкер - одна из самых востребованных частей моддинга.. А почему бы мне тогда не сделать уроки по ней? Читайте:
Что нужно знать?
1. Квестописание - если не самая, то одна из самых важных частей создания мода, именно поэтому, всегда востребована. 2. По-началу, у всех (я не был исключением) вряд ли будет получатся все так, как было задумано. Но не стоит отчаиваться! Стоит просто получше углубится в тему, спросить у более опытных. 3. Конечно, не обязательно, но намного лучше, если до моддинга у вас уже был опыт программирования на других языках - в таком случае, усвоить материал вам будет несколько лучше.
Что понадобится?
Набор весьма обычен и не имеет в себе супер-пупер-крутых программ, которые за раз напишут весь скрипт - все делается ручками! 1. Notepad ++ - лично я использую именно его. Простой, легкий и с большим функционалом "блокнот". Имеет подсветку синтаксиса. Если вы по каким-то причинам, не хотите скачивать это приложение - можно пользоваться и обычным блокнотом. 2. X-Ray SDK 0.7 - не менее важная программа. Является почти универсальным приложение, для разработки. Рекомендую скачивать не оригинальный, ПЫСовский (ПЫСы - GSC), а репак от DaaGuda v2.0. Его плюс в том, что поверх него не нужно ставить патчи и распакованную Gamedat'у. 3. Photoshop CSS (с плагином от NVidia для открытия .dds) - используется для работа с иконками. Если не хотите покупать Photoshop - можно воспользоваться бесплатным аналогом - Paint.net. Как видите, все до ужаса просто, но тем не менее - без этого никак.
--- Приступим к учению!
ВНИМАНИЕ! Топик закрыт! Больше пополняться не будет в связи с потерей актуальности.
1. Простые скрипты, используют action - скачать документ: ТЫК 2. Сложные скрипты, используют action - скачать документ: скоро... 3. Простые проверки, используют precondition - скачать документ: ТЫК. 4. Сложные проверки, используют precondition - скачать документ: скоро... ...
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) для обновления задания.
А потом просто проверяй условие =has_item_by_count(kolbasa:5) для обновления задания.
1. Про то, что не надо регистрировать поршни впервые слышу. Даже ПЫСы так делают. 2 и 3. Я знаю про это, но планировал рассказывать уже в след уроках - т.к. этот и так получился очень большим, для такого мелкого квеста. Но спасибо за замечания!
Rietmon, в движке файл InfoPortion.cpp - там закомментировано чтение этих файлов. Все прекрасно работает и без регистрации. "Я знаю про это, но планировал рассказывать уже в след уроках" Такие мелкие моменты очень сильно режут глаз. Лучше сразу рассказывай обо всех нюансах.
Думаю раз тема названа квестостроение, то стоит в шапку накидать всяких уроков, на пример от товарища Geonosis, и другие уроки с sgm форума, имхо. Будет так же полезно добавить отдельно функции диалогов.
Сообщение отредактировал Hoperise - Вторник, 09.01.2018, 18:27