straj 0 Опубликовано 31 Мая 2010 Вот решил заспавнить НПС в ЗП. Почтитал поиск, нашёл урок, всё сделал... А в конце написано: "- И последнее- регестрация скрипта в \scripts\db.script" Так вот вопрос: У меня нет бд скрипта. Для ТЧ есть, а для ЗП нет! Просьба: выложите пожалуйста этот файлик для ЗП, пожалуйста! Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 31 Мая 2010 (изменено) Нет, не пользуюсь, так-как создаю аддон к Сигероусу и не хотел бы его переустонавливать! Можешь выложить? Спасибо, VlaDOS ! Изменено 31 Мая 2010 пользователем straj Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 31 Мая 2010 Подскажите, как сделать чтобы НПС ы бежали за тобой, плииз! К примеру как телохранители в сигероусе! Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 31 Мая 2010 (изменено) Larry76, Это значит что без неё непись мотается по локе? Если да- то ты не знаешь как ты мне помог! Помогите! Я заспавнил НПСа, а он не говорит! Чё делать! Изменено 31 Мая 2010 пользователем straj Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 31 Мая 2010 nuklia, вот этим способом: Нам нужны следующие файлы: - \configs\creatures\spawn_sections_zaton.ltx - \configs\gameplay\npc_profile.ltx - \Configs\gameplay\charecter_desc_zaton.ltx - \scripts\db.script И создадим сами файлы - \scripts\npc.script - \configs\sripts\snaiper_lg.ltx - Для начала создадим нашему неписю логику(( после мы её сможем часто пользоваться). - Для этого заходим в \configs\sripts\snaiper_lg.ltx И там вбиваем следующие строки: [logic] active = remark1 danger = danger_ignore anim = desk_idle [danger_ignore] ignore_distance = 5 [remark1] invulnerable = true no_move = true meet = meet_guide [meet_guide] close_anim = nil close_victim = nil far_anim = nil far_victim = nil close_distance = 0 far_distance = 0 close_snd_distance = 3 abuse = false use = {=actor_enemy} false, true allow_break = false meet_on_talking = false meet_on_talking = false Теперь всё по порядку: [logic] – обозночает, что это функция логи active = remark1- функция его действий danger = danger_ignore – можно ли рядом достать оружие anim = desk_idle- анимка, но вроде не влияет [danger_ignore] ignore_distance = 5 – на сколько близко можно махать стволом [remark1] invulnerable = true - бессмерте. True-бессмертный, false- смертный no_move = true (будет стоять на месте) или false что б ходил meet = meet_guide название функции [meet_guide] сама функция close_anim = nil- анимка при прощании close_victim = nil- вроде анимка при встречи far_anim = nil far_victim = nil close_distance = 0 far_distance = 0 close_snd_distance = 3- на каком расстоянии будет слышен звук приветствия abuse = false- вроде разрешение говорить use = {=actor_enemy} false, true- ? allow_break = false- ? meet_on_talking = false –говорить можно(диалог) meet_on_talking = false- говорить можно(диалог) Теперь заходим в \configs\creatures\spawn_sections_zaton.ltx После [test_body_5]:stalker $spawn = "respawn\test_body_5" ;character_profile = zat_a2_stalker_mechanic community = stalker ;story_id = test_body_5 custom_data = scripts\test_cfg5.ltx прописываем это: [snaiper]:stalker $spawn = "respawn\snaiper" character_profile = snaiper spec_rank = master community = stalker custom_data = scripts\snaiper_lg.ltx story_id = stalker_snaiper где [snaiper]:stalker название функции $spawn = "respawn\snaiper"- респавн character_profile = snaiper spec_rank = master ранг community = stalker группировка( здесь роли не играет custom_data = scripts\snaiper_lg.ltx Логика, которую мы создали story_id = stalker_snaiper - уникальный ID , не знаю но вроде что-то про квесты Тепрь заходим в - \configs\gameplay\npc_profile.ltx И в самый конец ( перед хмл)пишем <character id="snaiper"> <class>snaiper</class> <specific_character>snaiper</specific_character> </character> Должно получиться примерно так: <character id="conrack_selo_stalker"> <class>jup_b6_freedom_stalker_1</class> </character> <character id="snaiper"> <class>snaiper</class> <specific_character>snaiper</specific_character> </character> </xml> Теперь по порядку: <character id="snaiper"> ID <class>snaiper</class> - сласс , это типа метки <specific_character>snaiper</specific_character>- ID </character>- массив закрыт Теперь создадим профиль для нашего непися. Заходим в - \Configs\gameplay\charecter_desc_zaton.ltx И в самый конец (перед <xml>) прописываем <specific_character id="snaiper" team_default="1"> <name>Дрюня</name> <icon>ui_inGame2_merc_4</icon> <map_icon x="1" y="0"> </map_icon> <bio>Опытный сталкер. Детальная информация отсутствует.</bio> <class>snaiper</class> <community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect> <snd_config>characters_voice\human_01\bandit\</snd_config> <rank>40</rank> <money min="1500" max="3500" infinitive="1"/> <reputation>0</reputation> <visual>actors\stalker_soldier\stalker_soldier_1</visual> <supplies> [spawn] \n wpn_svd \n ammo_9x39_ap = 1 \n wpn_beretta \n ammo_9x19_fmj = 1 \n grenade_rgd5 = 2 \n #include "gameplay\character_items.xml" #include "gameplay\character_food.xml" #include "gameplay\character_drugs.xml" </supplies> #include "gameplay\character_criticals_4.xml" <start_dialog>zat_b215_stalker_guide_start</start_dialog> <actor_dialog>zat_b215_stalker_guide_leave_zone</actor_dialog> <actor_dialog>zat_b215_stalker_guide_maps</actor_dialog> <actor_dialog>zat_b215_stalker_guide_to_pripyat_no_way</actor_dialog> <actor_dialog>zat_b215_stalker_guide_to_pripyat</actor_dialog> <actor_dialog>zat_b215_stalker_guide_to_jupiter</actor_dialog> <actor_dialog>zat_b215_stalker_guide_to_zaton</actor_dialog> <actor_dialog>zat_b215_stalker_guide_where_to</actor_dialog> <actor_dialog>zat_b215_stalker_guide_about_himself</actor_dialog> <actor_dialog>zat_b215_stalker_guide_about_anomalies</actor_dialog> <actor_dialog>zat_b215_stalker_guide_about_surge</actor_dialog> <actor_dialog>actor_break_dialog</actor_dialog> </specific_character> Где: <specific_character id="snaiper" team_default="1"> - ID <name>Дрюня</name> -имя <icon>ui_inGame2_merc_4</icon>- иконка <map_icon x="1" y="0">- иконка на карте </map_icon>-? <bio>Опытный сталкер. Детальная информация отсутствует.</bio> в игре не используется <class>snaiper</class> сласс типа метка <community>stalker</community> группировка <terrain_sect>stalker_terrain</terrain_sect> - ? <snd_config>characters_voice\human_01\bandit\</snd_config> -голос <rank>40</rank> - ранг( не используется в игре) <money min="1500" max="3500" infinitive="1"/> Колличество денег. infinitive="1"- бесконечные, infinitive="0"- заканчивающиеся <reputation>0</reputation> репутация <visual>actors\stalker_soldier\stalker_soldier_1</visual> модель непися <supplies> [spawn] \n- вещи в рюкзаке wpn_svd \n ammo_9x39_ap = 1 \n wpn_beretta \n ammo_9x19_fmj = 1 \n grenade_rgd5 = 2 \n #include "gameplay\character_items.xml"- случайный спавн вещей в рюкзаке #include "gameplay\character_food.xml" #include "gameplay\character_drugs.xml" </supplies> #include "gameplay\character_criticals_4.xml" <start_dialog>zat_b215_stalker_guide_start</start_dialog>- диалоги. В нашем случае диалоги лоцмана <actor_dialog>zat_b215_stalker_guide_leave_zone</actor_dialog> <actor_dialog>zat_b215_stalker_guide_maps</actor_dialog> <actor_dialog>zat_b215_stalker_guide_to_pripyat_no_way</actor_dialog> <actor_dialog>zat_b215_stalker_guide_to_pripyat</actor_dialog> <actor_dialog>zat_b215_stalker_guide_to_jupiter</actor_dialog> <actor_dialog>zat_b215_stalker_guide_to_zaton</actor_dialog> <actor_dialog>zat_b215_stalker_guide_where_to</actor_dialog> <actor_dialog>zat_b215_stalker_guide_about_himself</actor_dialog> <actor_dialog>zat_b215_stalker_guide_about_anomalies</actor_dialog> <actor_dialog>zat_b215_stalker_guide_about_surge</actor_dialog> <actor_dialog>actor_break_dialog</actor_dialog> </specific_character> Теперь создаём скрипт спавна - \scripts\npc.script Вбиваем в него function snaiper () if not db.actor:has_info("spawn_snaiper") then alife():create("snaiper",vector():set(116.238,2.250,183.199),1165999,316) db.actor:give_info_portion("spawn_snaiper") end end Строчка alife():create("snaiper",vector():set(116.238,2.250,183.199),1165999,316) отвечает за координаты, на которых спавнится объект. В нашем случае- непись. Подробнее о них: Pos- 116.238,2.250,183.199 Ivid- 1165999 Gvid- 316 Чтобы их получить качаем позишн информер ]]>Отсюда]]> - И последнее- регестрация скрипта в \scripts\db.script Открываем дБ скрипт. Находим строки function add_actor( obj ) actor = obj actor_proxy:net_spawn( obj ) add_obj( obj ) end И меняем на такие function add_actor( obj ) actor = obj actor_proxy:net_spawn( obj ) add_obj( obj ) npc.snaiper() end Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 31 Мая 2010 И ешё: он у меня тоже идёт куда глаза гледят, а веть я припысывал как Larry! ( даже приписывать не пришлось! Оно там уже было!) Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 31 Мая 2010 Larry76, теперь есть, но он всё равно кудато идёт. И ещё вопрос: Дело в том, что мой Страж не хочет со мной базарить (ссылается на какогото бугра, которому надо по ушам катать, говорить что его не казённые!). Где ему надо править, чтобы они были казёнными? Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 31 Мая 2010 Нет, не идёт. Вылетает при загрузки или начале НИ с пустым логом! Чё за 3 вариант? Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 31 Мая 2010 (изменено) alexwew, спасибо! Но как это "Он для ТЧ"? Не знал что в ТЧ есть затон... Слушай, а попроше что нибудь есть? А то нифига не понимаю... Изменено 31 Мая 2010 пользователем straj Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 31 Мая 2010 alexwew, тогда ещё такой вопрос: Где находится эти файлы? И не мог бы ты мне их передать? Желательно без изменений! Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 1 Июня 2010 Всё сделал но он нехочет со мной говорить! И стоять не хочит! Кому надо- могу дать ссыль на мою геймдату. И ещё: где прописывается логика? Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 1 Июня 2010 nuklia, можешь выложить файл "zat_a1" Пользуюсь геймдатой которая наверху, а там половины файлов нет! Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 1 Июня 2010 Larry76, когда делаю как написал nuklia - получаю вылет! Лог: Expression : fatal error Function : CInifile::Load File : D:\prog_repository\sources\trunk\xrCore\Xr_ini.cpp Line : 274 Description : <no expression> Arguments : Duplicate section 'start_position_zaton' found. Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 1 Июня 2010 Larry76, спасибо. а он будет бессмертный? Я там базу свободы хочу сделать... Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 2 Июня 2010 nuklia, Larry76, а если таким же способом заспавнить несколко человек, они будут так ходить туды-суды? Мне надо чтобы они стояли на своём месте. И места должны быть разные в пределах 25 метров от той точки. Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 2 Июня 2010 (изменено) Larry76, у меня он бессмертным почемуто не стал... Ну и пофигу! Будут сразу псевдогига мочить! А ты не подскажешь темку с описанием как делать диалоги в ЗП? А то поиск юзал- не нашёл! И про квесты не понятно! Делаю как в теме "Квесты ЗП" (Типо так) и получаю вылет без лога! Изменено 2 Июня 2010 пользователем straj Поделиться этим сообщением Ссылка на сообщение
straj 0 Опубликовано 18 Июня 2010 nuklia, у меня вопрос по девушке. Как называется текстура? Всмысле что мне писать, если я хочу её заспавнить? Поделиться этим сообщением Ссылка на сообщение