Страница 1 из 212»
Форум настоящего сталкера » S.T.A.L.K.E.R. Shadow of Chernobyl » Теория модостроения » создаем НОВОГО торговца (сейчас мы научимся соз давать нового торговца...)
создаем НОВОГО торговца
qwerty111 Дата: Вторник, 24.06.2008, 18:52:50 | Сообщение # 1

Ранг: Новичок
Группа: Сталкер
Сообщений: 67
Должность : Поставщик
Награды: 6
Регистрация: 30.05.2008
Статус: Offline
Пол: Мужчина
Город: Нижний Тагил  


Сейчас мы научимся создавать нового торговца - Петровича:
1.Для начала создадим нового NPC, к которому и привяжем функцию торговли.
Cоздадим описание нашего NPC, для этого в папке gamedata\config\gameplay создадим xml файл, содержащий описание нашего торговца. Назовем его к примеру
Character_unique_by_qwerty111.xml (вообще называть можно как угодно).
В нем пишем:
<?xml version='1.0' encoding="windows-1251"?>

<xml>
<specific_character id="petrovich_trader" team_default = "1">
<name>Петрович</name>
<icon>ui_npc_u_stalker_sv_balon_1</icon>
<map_icon x="1" y="4"></map_icon>
<bio>petrovich_trader</bio>

<class>petrovich_trader</class>
<community>stalker</community>
<money min="100000" max="110000" infinitive="1"></money>
<terrain_sect>stalker_terrain</terrain_sect>

<rank>730</rank>
<reputation>96</reputation>
<visual>actors\svoboda\stalker_sv_balon_1</visual>
<snd_config>characters_voice\human_02\freedom\</snd_config>
<crouch_type>-1</crouch_type>

<supplies>
[spawn] \n
wpn_sig220 \n
ammo_11.43x23_hydro = 1 \n
wpn_sig550 \n
ammo_5.56x45_ap = 1 \n
</supplies>

<start_dialog>hello_dialog</start_dialog>
</specific_character>

</xml>

Если вы хотите поменять эти конфиги, то смотрите статью V@dik008 "Редактирование NPC".
За тем прописываем его в npc_profile.xml(gamedata\config\gameplay), т.е под строчкой Новые Профиля пишем:
<character id="petrovich_trader">
<class>petrovich_trader</class>
<specific_character>petrovich_trader</specific_character>
</character>
После этого регистрируем описание нашего торговца в файле gamedata\config\system.ltx
В секцию [profiles] дописываем в конец после запятой Character_unique_by_qwerty111.
3.Чтобы персонаж появился, нужно его заспавнить, для этого:
В папке gamedata\config\creatures есть замечательный файл spawn_sections.ltx
Будем править его.
Дабы не путаться потом, в самое его начало пишем:

[petrovich_trader_spawn]:stalker_trader
character_profile = petrovich_trader
spec_rank = veteran
community = stalker
use_single_item_rule = off
can_select_items = off
custom_data = scripts\petrovich_trader.ltx
Далее создаем скрипт с названием, например my_spawns.script в папке gamedata\scripts\
Прописываем в него функцию:

function petrovich_trader_spwn1()
local obj
local a = vector() -- Задаем тип переменной
local dir = db.actor:direction()

a.x = -246.51 -- координата X
a.y = -19.52 -- высота Y
a.z = -144.60 -- координата Z

obj = alife():create("petrovich_trader_spawn",a,13193,8,65535)
alife():create_ammo("ammo_9x18_fmj",
obj.position,
obj.m_level_vertex_id,
obj.m _game_vertex_id,
obj.id,
20) -- число патронов, которые будут спавнится при убиистве Петровича
end

Открываем блокнотом escape_dialog.script(gamedata\scripts\) и там в диалоге с Сидоровичем, например, после квеста с флешкой Шустрого,
функция: "function give_wounded_flash(first_speaker,second_speaker)"
(Можно впринципе в любой диалог)
вставляем:

my_spawns.petrovich_trader_spwn1()

вот так будет выглядеть разговор с Сидером:

function give_wounded_flash(first_speaker, second_speaker)
dialogs.relocate_item_section(second_speaker, "esc_wounded_flash", "out")
dialogs.relocate_money(second_speaker, 1500, "in" )
my_spawns.petrovich_trader_spwn1() -- Вызов Петровича
end
Т.е наш персонаж появится только после выполнения задания с флешкой Шустрого, и когда Сидорович выдаст вам деньги за это задание, а торговец появляется по нашим координатам рядом с лагерем новичков.
4.Теперь в папке \gamedata\config\scripts создаем файл petrovich_trader.ltx
Этот файл является проводником к файлу торговли и логикой персонажа.
И в нем пишем:
[logic]
trade = misc\trade_petrovich.ltx
active = remark

[remark]
anim = wait

5.Теперь создаем в папке \gamedata\config\misc файл trade_petrovich.ltx
Это и есть файл торговли.
И в начале пишем:
[trader]
buy_condition = petrovich_generic_buy
sell_condition = petrovich_start_sell
buy_supplies = supplies_start

и потом как у других торговцев,т.е у бармена например [barman_generic_buy], а у нас будет [petrovich_generic_buy]
Если кому то не понятно можете посмотреть мой файл торговли: http://ifolder.ru/7099016

Все, торговец создан.
Спасибо за материал по созданию NPC - Pereiro
За все остальное - участникам форума http://sdk.stalker-game.com/
И лично мне smile

 
V@Dik008 Дата: Среда, 25.06.2008, 03:17:36 | Сообщение # 2

всегда где-то там...

Ранг: Охотник
Группа: Тени Зоны
Сообщений: 593
Должность : Зам. лидера ДОЛГа
Награды: 14
Регистрация: 29.03.2008
Статус: Offline
Пол: Мужчина
Город: Пенза  


Поясню некоторые нюансы:
1.
<specific_character id="petrovich_trader" team_default = "1">
<name>Петрович</name>
<icon>ui_npc_u_stalker_sv_balon_1</icon>
<map_icon x="1" y="4"></map_icon>
<bio>petrovich_trader</bio>

<class>petrovich_trader</class>
<community>stalker</community> -- группировка, которая будет указана при разговоре с ним
<money min="100000" max="110000" infinitive="1"></money> -- деньги, на которые он покупает оружие и все, что принесет на продажу сам игрок
<terrain_sect>stalker_terrain</terrain_sect>

<rank>730</rank>
<reputation>96</reputation>
<visual>actors\svoboda\stalker_sv_balon_1</visual> --модель героя, можно поменять, указав путь другой модели
<snd_config>characters_voice\human_02\freedom\</snd_config> -- озвучка, тоже можно заменить на другую
<crouch_type>-1</crouch_type> --оставлять также, не трогать

<supplies>
[spawn] \n
wpn_sig220 \n
ammo_11.43x23_hydro = 1 \n
wpn_sig550 \n
ammo_5.56x45_ap = 1 \n
</supplies>

<start_dialog>hello_dialog</start_dialog>
</specific_character>

2.
<character id="petrovich_trader"> --id указывайте тот, который указан в созданном файле описания торговца (предыдущий пункт), т.е. можно назвать как угодно торговца, но id сохранять в каждом файле
<class>petrovich_trader</class>
<specific_character>petrovich_trader</specific_character>
</character>

Quote
В секцию [profiles] дописываем в конец после запятой Character_unique_by_qwerty111

Т.е. дописываем название файла описания торговца (см. в 1 пункте)

3.
[petrovich_trader_spawn]:stalker_trader
character_profile = petrovich_trader -- это наш id, который будет использоваться в файлах как ссылка на нашего персонажа, типа, связки
spec_rank = veteran
community = stalker
use_single_item_rule = off
can_select_items = off
custom_data = scripts\petrovich_trader.ltx

Quote (qwerty111)
Далее создаем скрипт с названием, например my_spawns.script в папке gamedata\scripts\

Называйте как угодно, главное потом в файле escape_dialog.script(gamedata\scripts\) укажите в функции function give_wounded_flash(first_speaker,second_speaker) ссылку на ваш скрипт. Например, в указанном здесь my_spawns.petrovich_trader_spwn1() , где my_spawns. - наш созданный скрипт, а petrovich_trader_spwn1() - выполнение функции в этом скрипте.

4.
[logic]
trade = misc\trade_petrovich.ltx --указываем на созданный файл торговца (где и будет находится ассортимент оружия)
active = remark

[remark]
anim = wait

5. Здесь объяснять ничего не нужно, и так все ясно уже давно wink





Правила форума S.T.A.L.K.E.R. GSC
 
FAN Дата: Пятница, 27.06.2008, 13:46:21 | Сообщение # 3

Ветеран "Свободы"

Ранг: Прибывший
Группа: Сталкер
Сообщений: 1631
Награды: 84
Регистрация: 30.03.2008
Статус: Offline
Пол: Мужчина
Город: Евпатория  


блин... не могу найти
function give_wounded_flash(first_speaker,second_speaker)
в escape_dialog.script(gamedata\scripts\)
Подскажите, он в начале или в середине файла?


Администратор сказал "НАДО", модер ответил "ЕСТЬ"
Новости Чернобыльской Зоны Отчуждения [url=http://stalker-gsc.ru/forum/37-351-1]здесь[/url]
Новости спорта на сайте [url=http://stalker-gsc.ru/forum/25-251-1]здесь[/url]
Мальдини - в наших сердцах!!!
 
qwerty111 Дата: Пятница, 27.06.2008, 17:28:35 | Сообщение # 4

Ранг: Новичок
Группа: Сталкер
Сообщений: 67
Должность : Поставщик
Награды: 6
Регистрация: 30.05.2008
Статус: Offline
Пол: Мужчина
Город: Нижний Тагил  


FAN, введи просто give_wounded в поиске, тогда найдешь
 
FAN Дата: Понедельник, 30.06.2008, 20:17:53 | Сообщение # 5

Ветеран "Свободы"

Ранг: Прибывший
Группа: Сталкер
Сообщений: 1631
Награды: 84
Регистрация: 30.03.2008
Статус: Offline
Пол: Мужчина
Город: Евпатория  


Полный писец. Ароде зделал всё как есть, так игра вообще перестала запускаться!. Пришлось геймдату сносить


Администратор сказал "НАДО", модер ответил "ЕСТЬ"
Новости Чернобыльской Зоны Отчуждения [url=http://stalker-gsc.ru/forum/37-351-1]здесь[/url]
Новости спорта на сайте [url=http://stalker-gsc.ru/forum/25-251-1]здесь[/url]
Мальдини - в наших сердцах!!!
 
V@Dik008 Дата: Вторник, 01.07.2008, 02:28:22 | Сообщение # 6

всегда где-то там...

Ранг: Охотник
Группа: Тени Зоны
Сообщений: 593
Должность : Зам. лидера ДОЛГа
Награды: 14
Регистрация: 29.03.2008
Статус: Offline
Пол: Мужчина
Город: Пенза  


FAN, надо делать на чистой версии сначала, а потом под моды подгонять. Скачай торговца готового, глянь ,что да как.




Правила форума S.T.A.L.K.E.R. GSC
 
FAN Дата: Вторник, 01.07.2008, 19:55:05 | Сообщение # 7

Ветеран "Свободы"

Ранг: Прибывший
Группа: Сталкер
Сообщений: 1631
Награды: 84
Регистрация: 30.03.2008
Статус: Offline
Пол: Мужчина
Город: Евпатория  


V@Dik008, Ни одного мода не было. перед этим распаковал Геймдату через андпакер.


Администратор сказал "НАДО", модер ответил "ЕСТЬ"
Новости Чернобыльской Зоны Отчуждения [url=http://stalker-gsc.ru/forum/37-351-1]здесь[/url]
Новости спорта на сайте [url=http://stalker-gsc.ru/forum/25-251-1]здесь[/url]
Мальдини - в наших сердцах!!!
 
Слон Дата: Вторник, 01.07.2008, 20:29:01 | Сообщение # 8

Ранг: Сталкер
Группа: Сталкер
Сообщений: 289
Награды: 17
Регистрация: 14.06.2008
Статус: Offline
Пол: Мужчина
Город: Москва  


1? а внешний вид можно изменить?
 
V@Dik008 Дата: Вторник, 01.07.2008, 23:37:24 | Сообщение # 9

всегда где-то там...

Ранг: Охотник
Группа: Тени Зоны
Сообщений: 593
Должность : Зам. лидера ДОЛГа
Награды: 14
Регистрация: 29.03.2008
Статус: Offline
Пол: Мужчина
Город: Пенза  


Quote (V@Dik008)
<visual>actors\svoboda\stalker_sv_balon_1</visual> --модель героя, можно поменять, указав путь другой модели

Ну написано же, можно менять модель, следовательно, визуал.




Правила форума S.T.A.L.K.E.R. GSC
 
Burvis Дата: Пятница, 22.08.2008, 20:22:29 | Сообщение # 10

Ранг: Прибывший
Группа: Сталкер
Сообщений: 1
Награды: 0
Регистрация: 22.08.2008
Статус: Offline
Пол: Мужчина
Город: Каменка  


У меня чё-то,, когда отдаю флешку Сидрычу, сразу вылетает... Чё я сделал нетак???
 
BlackJack Дата: Понедельник, 25.08.2008, 18:02:47 | Сообщение # 11

Ранг: Разведчик
Группа: Сталкер
Сообщений: 160
Должность : Страж Свободы
Награды: 1
Регистрация: 06.07.2008
Статус: Offline
Пол: Мужчина
Город: Кривой Рог  


а ЭТ ЧТО получаеться если я тупо скопирую все што написал qwerty111,
то у мну получиться торговец новый да?
И где он будет тусить


Жизнь-это игра,плохо продуманая,но графика офигеная....
 
Green Дата: Вторник, 30.09.2008, 19:58:59 | Сообщение # 12

Ранг: Прибывший
Группа: Сталкер
Сообщений: 10
Должность : Снайпер
Награды: 1
Регистрация: 15.09.2008
Статус: Offline
Пол: Мужчина
Город: Омск  


Ща буду мастерить biggrin Спасибо за статью tongue


 
SHRAM Дата: Понедельник, 10.11.2008, 21:16:00 | Сообщение # 13

Ранг: Прибывший
Группа: Сталкер
Сообщений: 1
Награды: 0
Регистрация: 10.11.2008
Статус: Offline
Пол: Мужчина
Город: Бобруйск  


Полезная инфа!СПС! B)


 
Уатто Дата: Вторник, 23.12.2008, 11:37:47 | Сообщение # 14

Ранг: Мастер
Группа: Сталкер
Сообщений: 2548
Награды: 304
Регистрация: 11.12.2008
Статус: Offline
Пол: Мужчина
Город: Заполярье  


Полезная инфа. Спасибо модетаторам
 
Bless Дата: Воскресенье, 04.01.2009, 12:12:27 | Сообщение # 15

Ранг: Прибывший
Группа: Сталкер
Должность : Снайпер ДОЛГА
Награды: 2
Регистрация: 25.11.2008
Статус: Offline
Пол: Мужчина
Город: Купянск  


У меня тоже когда отдаешь флешку игра вылетает. Чё делать?


Багатого хабара вам сталкеры!!!

Н2О дивиз не наш
Наш С2Н5ОН!!!!!!!

 
vasek655 Дата: Среда, 07.01.2009, 21:46:28 | Сообщение # 16

Ранг: Прибывший
Группа: Сталкер
Сообщений: 7
Должность : Группа прикрытия
Награды: 0
Регистрация: 16.12.2008
Статус: Offline
Пол: Мужчина
Город: Moskau  


Кто создал,выложите скринов)Интересненько) :D


Служу ДОЛГу!Отдаю ДОЛГ!Умру за ДОЛГ!
 
Бoлoтник Дата: Среда, 18.02.2009, 20:14:22 | Сообщение # 17

Ранг: Новичок
Группа: Сталкер
Сообщений: 40
Награды: 3
Регистрация: 06.02.2009
Статус: Offline
Пол: Мужчина
Город: Дейд-Сити  


У меня не получилось :( :( :'( :'(
 
Уатто Дата: Вторник, 03.03.2009, 10:45:26 | Сообщение # 18

Ранг: Мастер
Группа: Сталкер
Сообщений: 2548
Награды: 304
Регистрация: 11.12.2008
Статус: Offline
Пол: Мужчина
Город: Заполярье  


:D Да-а-а я его создал......поместил в тоннель на Агропроме........и знаете ничего не вылетало........он у меня артефактами промышлял........ ;) вообщем круть скажу.........полезный материал ;)
 
MaZaHaKeR Дата: Суббота, 07.03.2009, 15:06:59 | Сообщение # 19

Ранг: Новичок
Группа: Сталкер
Сообщений: 27
Должность : Ефрейтор
Награды: 0
Регистрация: 19.01.2009
Статус: Offline
Пол: Мужчина
Город:   


winter stalker что ты написал в escape dialog, или как ты это сделал???

Добавлено (07.03.2009, 15:06:59)
---------------------------------------------
ВНИМАНИЕ, УСТРАНЕНИЕ ВЫЛЕТА!!!
У[size=12] кого игра вылетает при разговоре с сидоровичем (когда пытаешься отдать флешку) перепишите my_spawns.script. После переписывания должно выглядеть так:
function petrovich_trader_spwn1()
local obj
local a = vector() -- Задаем тип переменной
local dir = db.actor:direction()

a.x = -246.51 -- координата X
a.y = -19.52 -- высота Y
a.z = -144.60 -- координата Z

obj = alife():create("petrovich_trader_spawn",a,13193,8,65535)
alife():create_ammo("ammo_9x18_fmj",
obj.position,
obj.m_level_vertex_id,
obj.m _game_vertex_id,
obj.id,
20) -- число патронов, которые будут спавнится при убиистве Петровича
end
И тогда у вас будет новый торговец, стоящий возле выхода из бункера Сидоровича!!![color=red]



 
Vanteros Дата: Среда, 25.03.2009, 06:07:58 | Сообщение # 20

Tech E. Coyote

Loonatics Unleashed

Ранг: Разведчик
Группа: Сталкер
Сообщений: 426
Должность : Анархист-Лейтенант
Награды: 14
Регистрация: 07.06.2008
Статус: Offline
Пол: Мужчина
Город: Рекьяквик  


Кстати, FAN, некоторые распаковщики(у меня даже оффициальный) файлы неккоректно распаковавают, поэтому и вылет происходит... Советую - сохранить в отдельном месте измененные файлы и папки с ними и снести геймдату и поставить те файлы(посмотри в модах типа АМК, там же не вся геймдата запакована а только часть, вот также и поступай - оставляй изменненные файлы в геймдате, неизмененные удаляй)


 
Форум настоящего сталкера » S.T.A.L.K.E.R. Shadow of Chernobyl » Теория модостроения » создаем НОВОГО торговца (сейчас мы научимся соз давать нового торговца...)
Страница 1 из 212»
Поиск:







Вверх >