Сталкеры online:

Всего на связи: 10
Сталкеры: 0
Бродяги: 10
Администрация online:

Отсутствует

Последние новости
Чат
Комментарии:
Друзья:

First Belarus Stalker Portal
Присоединяйся к нам
Официальная страница stalker.by
Топ Авторов
Топ Комментаторов
Популярные лица..
Статистика
Реклама:


Популярное
Учимся создавать NPC и спавнить
Stalker » Файлы » Модостроение » Учимся создавать NPC и спавнить
автор: realstalker1 | 20-07-2011, 18:42 | Просмотров:
Учимся создавать NPC и спавнить
Итак, для создания своего НПЦ (я буду говорить о уникальных) нам потребуется:
1. Готовим описание НПЦ- В папке gamedata\config\gameplay Создать xml файл, содержащий описание. Назовем его к примеру
Character_unique_by_pereiro.xml (вообще называть как угодно).
В нем пишем:


Ингви-Сталкер
ui_npc_u_stalker_neytral_nauchniy

Ингви – учится делать персонажей.

ing_stal_1
stalker stalker__terrain

476
9

characters_voice\human_02\stalker\
0

actors\neytral\stalker_neytral_nauchniy

[spawn] \n
wpn_pm \n
ammo_9x18_fmj = 1 \n
wpn_ak74u \n
ammo_5.45x39_fmj = 1 \n
#include "gameplay\character_items.xml" \n
#include "gameplay\character_drugs.xml" \n
#include "gameplay\character_food.xml"


#include "gameplay\character_criticals_5.xml"
#include "gameplay\character_dialogs.xml"
hello_dialog



Тут вроде всё ясно. Для примера можно глянуть описания персонажей из файлов
character_desc_*****, где ***** - имя уровня или группировки.
Да, важно: класс НПЦ (а соответственно его иммунитеты, сопротивления и шансы на попадание) будет зависеть от значения .
Секция диалогов может содержать и другие (не только старт_дайлог, но и актор_дайлог – если вдруг квест прикрутить надо будет).
Секция #include может содержать не все инклюды, а только часть. Или вообще ничего.

не забываем заглянуть в файл gamedata\config\gameplay\npc_profile.xml (или создать свой - только не забыть его записать в system.ltx в секцию [profiles] - кому как удобней).
там перед первым описанием вставляем

ing_stal_1
ingvi_stalker

---------------------------------------------
2. Откуда спавним.
В папке gamedata\config\creatures есть замечательный файл (в ресурсах естессно) spawn_sections.ltx
Будем править его.
Дабы не путаться потом, в самое его начало пишем:

[ingvi_stalker_spawn]:stalker
$spawn = "respawn\ ingvi_stalker _spawn"
character_profile = ingvi_stalker
spec_rank = veteran
community = stalker

В общем последние 2 строчки можно и не писать, т.к. ранг и группировка определяются в описании перса в главе 1.
---------------------------------------------
3. Как спавним.Собственно как спавнить – дело вкуса и обстоятельств.

3.1. Если мы хотим использовать перса в каком-то квесте, то логичнее спавнить его вызовом из диалога, дабы не болтался он по карте и приключений на жопу не искал.
То есть:

Создаем в gamedata\scripts файл ну скажем ingvi_spawn.script
И в нем пишем:
function ingvi_sp()
alife():create("ingvi_stalker_spawn",vector():set(44.87,0.92,241.6),218598,359)
end

после чего добавляем вызов функции ingvi_spawn. ingvi_sp в нужную фразу нужного диалога (заспавним Ингви в вагончике Долга на Свалке).

3.2. Можно расставить всех НПЦ сразу в начале игры:

- поместить в bind_stalker.script ф-я net_spawn(data) примерно такую конструкцию:

if xr_logic.pstor_retrieve(db.actor, "first_run", 0)==0 then
alife():create("ingvi_stalker_spawn ",vector():set(44.87,0.92,241.6),218598,359)
xr_logic.pstor_store(db.actor, "first_run", 1)
end

3.3. Или расставлять НПЦ на нужных уровнях по мере захода на них:
поместить в bind_stalker.script в конце ф-ии actor_update(delta).

if not has_alife_info("is_ingvi") and (level.name() == "l02_garbage")
then
self.object:give_info_portion("is_ingvi")
alife():create("ingvi_satlker_spawn",vector():set(44.87,0.92,241.6),2185 98,359)
end

В этом случае не забываем объявить инфопоршен “is_ingvi”. Такой способ мне нравится ещё и тем, что для добавления персонажей не надо начинать игру заново.
---------------------------------------------
4. Итоги.Итак, в результате вышеперечисленных манипуляций с файлами мы создаём персонажа по имени Ингви-Стралкер, класс ing_stal_1 на Свалке в вагончике Долга.
Если надо добавить в игру уже существующих НПЦ , то читайте сразу главу 3.

Да, чуть не забыл… В файл gamedata\config\system.ltx в секцию [profiles] дописать в конец после запятой Character_unique_by_pereiro.








ВНИМАНИЕ!Ваш статус - "гость". В целях соблюдения техники безопасности рекомендуется получить регистрационные данные и пройти процедуру входа.
Ссылки на загрузку:
нету


Сказали спасибо: MbIKOJIA, chernik, Veter

Другие статьи в рубрике:



Регистрация: 23.06.2010
Публикаций: 106
Комментариев: 1898
  • Статус: Пользователь offline
  • 20 июля 2011 19:15 | Репутация: 1 | ICQ: |
    хорошая инормация для начинающих!!! +
           


    Регистрация: 30.10.2009
    Публикаций: 70
    Комментариев: 380
  • Статус: Пользователь offline
  • 20 июля 2011 21:56 | Репутация: 0 | ICQ: |
    И смысл? Тут таких паков 10000.
    И видимо не знаете что такое алл.спаун...Через него быстрее всего спаунить.
    Через скрипт, не выдашь ид персу, нифига. Тупо спаун.



    --------------------
           


    Регистрация: 22.10.2010
    Публикаций: 0
    Комментариев: 81
  • Статус: Пользователь offline
  • 21 июля 2011 01:31 | Репутация: 0 | ICQ: |
    прикольно
           


    Регистрация: 22.09.2010
    Публикаций: 12
    Комментариев: 229
  • Статус: Пользователь offline
  • 21 июля 2011 13:22 | Репутация: 0 | ICQ: |
    Как это всё нудно.
           


    Регистрация: 25.11.2010
    Публикаций: 0
    Комментариев: 161
  • Статус: Пользователь offline
  • 22 июля 2011 14:27 | Репутация: 0 | ICQ: |
    аааааааааа сверху баяном папахивает am
    инфа полезная молодца
           
    #6 weas


    Регистрация: 27.09.2009
    Публикаций: 27
    Комментариев: 150
  • Статус: Пользователь offline
  • 28 июля 2011 23:08 | Репутация: 0 | ICQ: |
    Сто раз во всех паках это выкладывали


    --------------------
           


    Регистрация: 10.10.2011
    Публикаций: 2
    Комментариев: 31
  • Статус: Пользователь offline
  • 6 ноября 2011 09:37 | Репутация: 0 | ICQ: |
    а почему ссылки на загрузку нету
           


    Регистрация: 3.11.2011
    Публикаций: 0
    Комментариев: 15
  • Статус: Пользователь offline
  • 26 марта 2012 11:16 | Репутация: 0 | ICQ: |
    тут копировать нельзя...тоесть нада всё переписывать а это очень очень долго...
           
    Информация
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.