PavelSnork 3 Опубликовано 16 Мая 2010 Поделиться Опубликовано 16 Мая 2010 nuklia, вот лог вылета, посмотри, я все еще пытаюсь адаптировать твой тест-мод... * Loading spawn registry... ! Cannot find saved game ~~~dbg:_se_smart_terrain:_set_load_marker:_%s ! Cannot find saved game ~~~dbg:_se_smart_terrain:_set_load_marker:_171 ! Cannot find saved game ~~~dbg:abort!!! ! Cannot find saved game ~~~dbg:incorrect_load_[%s].[%s][%s] ! Cannot find saved game ~~~dbg:incorrect_load_[_se_smart_terrain].[1536][5] FATAL ERROR [error]Expression : !m_error_code [error]Function : raii_guard::~raii_guard [error]File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp [error]Line : 748 [error]Description : ....a.l.k.e.r. - Зов Припяти\gamedata\scripts\_g.script:486: bad argument #2 to 'format' (string expected, got no value) stack trace: Жду ли я Сталкер 2? Хм... Ссылка на комментарий
Rolan 22 Опубликовано 17 Мая 2010 Поделиться Опубликовано 17 Мая 2010 Народ выручайте,чем декомпиолировать xrGame.dll? Пробовал много компиляторов и всё в пустую. Или скажите на чем он написан Ссылка на комментарий
Malandrinus 615 Опубликовано 17 Мая 2010 Поделиться Опубликовано 17 Мая 2010 SDR-team, на С++ написан. Для разборки сгодится любой дизассемблер. Впрочем, если ты этого не знал, то пожалуй тебе и браться за подобные дела не стоит. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
nuklia 0 Опубликовано 17 Мая 2010 Поделиться Опубликовано 17 Мая 2010 А не посоветуете-ли сайты и литературу, чтобы научиться разбираться в дизассемблированном ? Ссылка на комментарий
alexwew 0 Опубликовано 17 Мая 2010 Поделиться Опубликовано 17 Мая 2010 nuklia вот тут http://asm.shadrinsk.net/ и лучше начать с книг (посоветую Пирогова Учебный курс и Ассемблер для Windows). Но если честно это дебри для здравомыслящего человека(хотя все програмисты не нормальные). Ну а с вопросами и ошибками на http://forum.sources.ru . Ах чуть не забыл http://netcode.ru/ тут тож много полезного. я изменился. пью, курю, употребляя наркотические средства. Жизнь-говно. Бабы -консервы. Забьюсь под стол, чтоб никто не трогал. Ссылка на комментарий
PavelSnork 3 Опубликовано 18 Мая 2010 Поделиться Опубликовано 18 Мая 2010 (изменено) Здраствуйте, у меня в Зове Припяти в алл.спавне есть секция НПС: [5896] ; cse_abstract properties section_name = stalker name = bar_drunk_dolg position = 134.305435180664,-4.83976221084595,26.5520305633545 direction = -0.00560344057157636,3.05430865287781,-0.000491185463033617 ; cse_alife_trader_abstract properties money = 5000 character_profile = bar_drunk_dolg ; cse_alife_object properties game_vertex_id = 2721 distance = 12.5999994277954 level_vertex_id = 36606 object_flags = 0xffffffff custom_data = <<END [logic] cfg = scripts\l05_bar\bar_drunk_dolg.ltx [game_info] END ; cse_visual properties visual_name = amk\mar_yej ; cse_alife_creature_abstract properties g_team = 0 g_squad = 0 g_group = 0 health = 0 dynamic_out_restrictions = dynamic_in_restrictions = upd:health = 1 upd:timestamp = 0 upd:creature_flags = 0 upd:position = 134.305435180664,-4.83976221084595,26.5520305633545 upd:o_model = 0 upd:o_torso = 3.05430865287781,-0.00560344057157636,0 upd:g_team = 0 upd:g_squad = 0 upd:g_group = 0 ; cse_alife_monster_abstract properties upd:next_game_vertex_id = 65535 upd:prev_game_vertex_id = 65535 upd:distance_from_point = 0 upd:distance_to_point = 0 ; cse_alife_human_abstract properties predicate5 = 0,0,1,1,2 predicate4 = 0,0,2,0 ; cse_ph_skeleton properties upd:start_dialog = ; se_stalker properties Ну и логика к моему НПС: [logic] active = animpoint@motion1 suitable = {=check_npc_name(bar_drunk_dolg)} ;trade = misc\trade\trade_zat_a2_barmen.ltx can_select_weapon = true can_select_item = true ;level_spot = trader [animpoint@motion1] cover_name = bar_drunk1 avail_animations = animpoint_stay_table on_game_timer = 5000 | animpoint@motion2 meet = meet danger = danger_ignore use_camp = false [animpoint@motion2] cover_name = bar_drunk1 avail_animations = animpoint_stay_table_weapon on_game_timer = 5000 | animpoint@motion3 meet = meet danger = danger_ignore use_camp = false [animpoint@motion3] cover_name = bar_drunk1 avail_animations = animpoint_stay_table_eat_bread on_game_timer = 300 | animpoint@motion4 meet = no_meet combat_ignore_cond = true combat_ignore_keep_when_attacked = true invulnerable = true gather_items_enabled = false help_wounded_enabled = false corpse_detection_enabled = false [animpoint@motion4] cover_name = bar_drunk1 avail_animations = animpoint_stay_table_guitar on_game_timer = 300 | animpoint@motion5 meet = meet danger = danger_ignore use_camp = false [animpoint@motion5] cover_name = bar_drunk1 avail_animations = animpoint_stay_table_drink_vodka on_game_timer = 300 | animpoint@motion1 meet = no_meet combat_ignore_cond = true combat_ignore_keep_when_attacked = true invulnerable = true gather_items_enabled = false help_wounded_enabled = false corpse_detection_enabled = false [meet] close_snd_hello = zat_a2_stalker_barmen_greeting close_snd_bye = zat_a2_stalker_barmen_farewell 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 Как ему прописать сквад, чтоб он на карте отображался звездочкой(главарь сквада)? Изменено 19 Мая 2010 пользователем PavelSnork Жду ли я Сталкер 2? Хм... Ссылка на комментарий
Mira 0 Опубликовано 19 Мая 2010 Поделиться Опубликовано 19 Мая 2010 Подскажите какую логику прописать нпс чтобы он стоял....а если на него нападут он вставал в тоже место где и должен стоять ??? Ссылка на комментарий
alexwew 0 Опубликовано 19 Мая 2010 Поделиться Опубликовано 19 Мая 2010 PavelSnork, если нпц со своим профилем, то просто пропиши сквад из одного нпц(вот имеенно этого) в squad_descr.ltx и спавни сквад на месте спавна сталкера, через смарт террейн или чпейс рестриктор. Может и другой способ есть, но я не знаю. Добавлено через 2 мин.: mira попробуй следующее [logic] active = remark1 danger = danger_ignore anim = desk_idle [danger_ignore] ignore_distance = 5 [remark1] no_move = true meet = 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 я изменился. пью, курю, употребляя наркотические средства. Жизнь-говно. Бабы -консервы. Забьюсь под стол, чтоб никто не трогал. Ссылка на комментарий
PavelSnork 3 Опубликовано 19 Мая 2010 Поделиться Опубликовано 19 Мая 2010 alexwew, eсли спaвнить чeрeз сквaд, то нпс нe появляeтся. Жду ли я Сталкер 2? Хм... Ссылка на комментарий
alexwew 0 Опубликовано 19 Мая 2010 Поделиться Опубликовано 19 Мая 2010 А как ты спавнишь через сквад? Я вот так в алайф локи [106] ; cse_abstract properties section_name = smart_terrain name = pri_depot position = -98.9999237060547,-2.22980952262878,-3.57069754600525 direction = 0,0,0 ; cse_alife_object properties game_vertex_id = 1068 distance = 6.29999971389771 level_vertex_id = 17711 object_flags = 0xffffff3e custom_data = <<END [smart_terrain] cfg=scripts\marsh\smart\mar_sim_1.ltx END ; cse_shape properties shapes = shape0 shape0:type = box shape0:axis_x = 1.27540004253387,0,0 shape0:axis_y = 0,1.74879992008209,0 shape0:axis_z = 0,0,1.27540004253387 shape0:offset = 0,0,0 ; cse_alife_space_restrictor properties restrictor_type = 3 ; se_smart_terrain properties в mar_sim_1.ltx [smart_terrain] squad_id = 27 max_population = 1 respawn_params = respawn@1 arrive_dist=65 [respawn@1] spawn_stalker@master spawn_stalker@advanced spawn_stalker@veteran [spawn_stalker@master] spawn_squads = greh_sim_squad_novice,greh_sim_squad_advanced spawn_num = 1 [spawn_stalker@advanced] spawn_squads = greh_sim_squad_veteran, greh_sim_squad_advanced, greh_sim_squad_novice spawn_num = 2 [spawn_stalker@veteran] spawn_squads = greh_sim_squad_veteran, greh_sim_squad_veteran, greh_sim_squad_veteran spawn_num = 3 в вей можешь создать им анимпоинты. А и еще! ТЫ сквад то создал из одного пнц? я изменился. пью, курю, употребляя наркотические средства. Жизнь-говно. Бабы -консервы. Забьюсь под стол, чтоб никто не трогал. Ссылка на комментарий
Mira 0 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 alexwew, маленько не такая логика..Я имел ввиду что если на него нападают и он куда то одбегает...А потом как всех замочит то шёл на тоже место где стоял раньше.....? Ссылка на комментарий
alexwew 0 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 mira ну тогда без вей путей тебе не обойтись, теоретически-одна точка(со своим анимпоинтом) там где нпц стоит, и сделай проверку если не на этой точке стоит, то вернуться в эту точку. Добавлено через 3 мин.: Посмотри в амк Narodnaya Solanka 2009, там болотный доктор убегал при опасности(потом это пофиксили), но как всех убивали врагов, он возращался в подвал. я изменился. пью, курю, употребляя наркотические средства. Жизнь-говно. Бабы -консервы. Забьюсь под стол, чтоб никто не трогал. Ссылка на комментарий
PavelSnork 3 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 Я пытаюсь создать ексклюзивного НПС, и прописать ему сквад, но он не появляется. Вот файлы для НПС, что не так? [5923] ; cse_abstract properties section_name = smart_terrain name = bar_100rentgen position = 134.305435180664,-4.83976221084595,26.5520305633545 direction = 0,0,0 ; cse_alife_object properties game_vertex_id = 2721 distance = 17.5 level_vertex_id = 36606 object_flags = 0xffffff3e custom_data = <<END [smart_terrain] cfg = scripts\l05_bar\smart\bar_100rentgen.ltx END ; cse_shape properties shapes = shape0 shape0:type = sphere shape0:offset = 0,0,0 shape0:radius = 2 ; cse_alife_space_restrictor properties restrictor_type = 3 ; se_smart_terrain properties Вот его логика: [logic@bar_drunk_dolg] active = animpoint@motion1 suitable = {=check_npc_name(bar_drunk_dolg)} ;trade = misc\trade\trade_zat_a2_barmen.ltx prior = 200 can_select_weapon = true can_select_item = true [animpoint@motion1] cover_name = bar_drunk1 avail_animations = animpoint_stay_table on_game_timer = 5000 | animpoint@motion2 meet = meet danger = danger_ignore use_camp = false [animpoint@motion2] cover_name = bar_drunk1 avail_animations = animpoint_stay_table_weapon on_game_timer = 5000 | animpoint@motion3 meet = meet danger = danger_ignore use_camp = false [animpoint@motion3] cover_name = bar_drunk1 avail_animations = animpoint_stay_table_eat_bread on_game_timer = 300 | animpoint@motion4 meet = no_meet combat_ignore_cond = true combat_ignore_keep_when_attacked = true invulnerable = true gather_items_enabled = false help_wounded_enabled = false corpse_detection_enabled = false [animpoint@motion4] cover_name = bar_drunk1 avail_animations = animpoint_stay_table_guitar on_game_timer = 300 | animpoint@motion5 meet = meet danger = danger_ignore use_camp = false [animpoint@motion5] cover_name = bar_drunk1 avail_animations = animpoint_stay_table_drink_vodka on_game_timer = 300 | animpoint@motion1 meet = no_meet combat_ignore_cond = true combat_ignore_keep_when_attacked = true invulnerable = true gather_items_enabled = false help_wounded_enabled = false corpse_detection_enabled = false [meet] close_snd_hello = zat_a2_stalker_barmen_greeting close_snd_bye = zat_a2_stalker_barmen_farewell 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 Вот описание для сквада: [bar_drunk_dolg_squad]:online_offline_group faction = stalker npc = bar_drunk_dolg target_smart = bar_100rentgen spawn_point = bar_100rentgen_spawn_point story_id = bar_drunk_dolg_squad И чуть не забыл, вот сам смарт террейн: [smart_terrain];bar_100rentgen squad_id = 1 respawn_radius = 10 max_population = 3 arrive_dist = 15 spawn_point = bar_100rentgen_spawn_point [exclusive] ;uniq bar_drunk_dolg = l05_bar\bar_drunk_dolg.ltx ;+surge Там еще файлы для смарт террейна и для сквада НПС, но я выложил все основное. Жду ли я Сталкер 2? Хм... Ссылка на комментарий
KD87 718 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 (изменено) PavelSnork, А прописать сквад в simulation.ltx? А где у тебя спавн непися? Где его профиль, класс? PavelSnork, отлично, так где прописан спавн непися? и что за непонятное - у тебя уровень l05_marsh, а в конфигах он l05_bar. Это опечатка или у тебя так и есть? Вот тут - [start_position_l05_bar] - нужно прописывать название локи. Если у тебя alife_l05_marsh, то и писать надо [start_position_l05_marsh] Ну а откуда игра узнает, кого тебе спавнить в отряд? ты дал ссылку npc = bar_drunk_dolg, а куда придет скрипт по этой ссылке? тебе надо твоего уникального непися прописать в spawn_sections_bar, его профиль в character_desc_bar и npc_profile. Там по аналогии все легко получается. Не забудь только подключить spawn_sections_bar в spawn_sections, а character_desc_bar - в system.ltx Изменено 20 Мая 2010 пользователем KD87 Ссылка на комментарий
PavelSnork 3 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 Вот дополнение к моему предидущему посту: ;;;;;;;;;;;;;;;;;;;;;; FINAL BAR;;;;;;;;;;;;;;;;;;;;;;;;; [start_position_l05_bar] bar_drunk_dolg_squad = bar_100rentgen ;-----------BAR-------------------------- ;--------- BAR UNIQUE SQUADS -------- [bar_drunk_dolg_squad]:default_squad sim_avail = false В файлах smart_names, smart_terrain_masks, game_graphs также все прописал по инструкции от nikulia. Локацию также зарегестрировал в скриптах, way файлы также имеются. Добавлено через 20 мин.: KD87, Какой спавн непися? Можешь написать? И там у меня опечатка, там должно быть alife_l05_bar. Жду ли я Сталкер 2? Хм... Ссылка на комментарий
alexwew 0 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 Вообщем так сделай(попробуй, я тебя не заставляю делать так как я) в алайф локи [116] ; cse_abstract properties section_name = smart_terrain name = pri_monolith position = 9.49155235290527,0.315742492675781,119.389312744141 direction = -2.35785728364135e-006,1.30893598182524e-008,-3.69004169442633e-007 ; cse_alife_object properties game_vertex_id = 964 distance = 63.7000007629395 level_vertex_id = 113787 object_flags = 0xffffff3e custom_data = <<END [smart_terrain] cfg=scripts\marsh\smart\mar_sim_1.ltx END ; cse_shape properties shapes = shape0 shape0:type = box shape0:axis_x = 1.80637753009796,0,0 shape0:axis_y = 0,3.14440083503723,0 shape0:axis_z = 0,0,2.03072786331177 shape0:offset = 0,0,0 ; cse_alife_space_restrictor properties restrictor_type = 3 ; se_smart_terrain properties в вей файл локи [pri_monolith_camper_n_look_1] points = p0 p0:name = name00 p0:flags = 0x1 p0:position = 112.711151123047,-2.39083909988403,70.7033309936523 p0:game_vertex_id = 960 p0:level_vertex_id = 223370 [pri_monolith_camper_n_look_2] points = p0 p0:name = name00 p0:flags = 0x1 p0:position = 107.967597961426,-6.58138847351074,43.8503875732422 p0:game_vertex_id = 960 p0:level_vertex_id = 218780 [pri_monolith_camper_n_walk_1] points = p0 p0:name = name00 p0:flags = 0x1 p0:position = 107.812072753906,-0.680063724517822,102.212394714355 p0:game_vertex_id = 997 p0:level_vertex_id = 218851 [pri_monolith_camper_n_walk_2] points = p0 p0:name = name00 p0:flags = 0x1 p0:position = 107.107414245605,-2.39083194732666,70.6450805664063 p0:game_vertex_id = 960 p0:level_vertex_id = 218100 в squad_descr.ltx ;--------------- greh simulation squads ---------------------- [greh_sim_squad_veteran]:online_offline_group faction = greh npc_random = sim_default_greh_2 npc_in_squad = 1, 1 в squad_behaviours.ltx регистрируешь группировку как сквад [default_behaviour] actor = 1 resource = 2 surge = 1 base = 1 territory = 1 lair = 0 squad = 0 [ecolog]:default_behaviour [stalker]:default_behaviour [freedom]:default_behaviour [dolg]:default_behaviour [bandit]:default_behaviour [killer]:default_behaviour [greh]:default_behaviour [army]:default_behaviour [monolith]:default_behaviour surge = 1 и логика которая прописана смарту [smart_terrain] squad_id = 27 max_population = 1 respawn_params = respawn@1 arrive_dist=65 [respawn@1] spawn_stalker@master spawn_stalker@advanced spawn_stalker@veteran [spawn_stalker@master] spawn_squads = greh_sim_squad_veteran spawn_num = 1 [spawn_stalker@advanced] spawn_squads = greh_sim_squad_veteran spawn_num = 2 [spawn_stalker@veteran] spawn_squads = greh_sim_squad_veteran spawn_num = 3 я изменился. пью, курю, употребляя наркотические средства. Жизнь-говно. Бабы -консервы. Забьюсь под стол, чтоб никто не трогал. Ссылка на комментарий
KD87 718 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 (изменено) alexwew, он хочет эксклюзива. Ты же респавнишь стандартных болванчиков. А зачем группировку как сквад регистрить? PavelSnork, покажи, если ты прописывал, может ошибся где. А ты локу в sim_board.script не забыл прописать? иначе и не будет спавниться Изменено 20 Мая 2010 пользователем KD87 Ссылка на комментарий
PavelSnork 3 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 (изменено) KD87, а, понял, мой НПС в спавн секции, и в остальных файлах прописан. И в system.ltx и в spawn_sections тоже все прописано. Но мой НПС все равно не появляется... alexwew, а так можно спавнить уникальных НПС? и в каком файле у тебя находится ссылка на вей файлы? [bar_drunk_dolg]:stalker $spawn = "respawn\bar_drunk_dolg" character_profile = bar_drunk_dolg spec_rank = master community = stalker spawn_point = bar_100rentgen_spawn_point story_id = bar_drunk_dolg <!----------------------------------------------bar_drunk_dolg------------------------> <specific_character id="bar_drunk_dolg" team_default="1"> <name>Исстребитель</name> <icon>ui_inGame2_bar_barman</icon> <map_icon x="1" y="0"> </map_icon> <bio>Опытный сталкер. Детальная информация отсутствует.</bio> <class>bar_drunk_dolg</class> <community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect> <snd_config>characters_voice\human_01\stalker\</snd_config> <rank>50</rank> <reputation>0</reputation> <money min="480000" max="480000" infinitive="1" /> <visual>actors\stalker_neutral\stalker_neutral_7</visual> <supplies> [spawn] \n wpn_ak74u \n ammo_5.45x39_fmj = 1 \n wpn_beretta \n ammo_9x19_fmj = 1 \n grenade_rgd5 = 1 \n #include "gameplay\character_items.xml" #include "gameplay\character_food.xml" #include "gameplay\character_drugs.xml" </supplies> #include "gameplay\character_criticals_4.xml" #include "gameplay\character_dialogs.xml" </specific_character> <character id="bar_drunk_dolg"> <class>bar_drunk_dolg</class> </character> Про sim_board.script также НЕ забыл Изменено 20 Мая 2010 пользователем PavelSnork Жду ли я Сталкер 2? Хм... Ссылка на комментарий
alexwew 0 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 мм, просто у меня он из новой группировки. И хочет он чтоб стоял нпц и отмечался звездочкой! для этого просто создай новый профиль нпц и заригистрируй сквад из него. И все. Не понимаю зачем голову ломать если можно просто сделать как я написал. я изменился. пью, курю, употребляя наркотические средства. Жизнь-говно. Бабы -консервы. Забьюсь под стол, чтоб никто не трогал. Ссылка на комментарий
KD87 718 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 (изменено) alexwew, группировку можно и прописать группировкой, а не сквадом. Он и создал профиль и сквад создал. А если сделать так, как ты сделал, то как минимум, этот чел будет респавниться после убийства. Добавлено через 4 мин.: PavelSnork, в squad_descr у тебя не хватает такого npc_in_squad = 1,1. И попробуй в конфиге террейна убрать arrive_dist. Зачем это, если он за столом просто стоит? alexwew, в squad_behaviour - не надо. У него сталкер, эта группировка прописана. Изменено 20 Мая 2010 пользователем KD87 Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти