Модостроение. Общие вопросы и ответы
|
|
denis2000 | Дата: Сб, 15.06.2013, 11:51 | Сообщение # 1 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| Помощь тем кто хочет знать больше о игре и модах Если у вас появились вопросы по модостроению в игре S.T.A.L.K.E.R. Задавайте их в этой теме - умные головы, модосторители и просто разбирающиеся в программировании люди вам ответят.
Много интересного материала здесь (wiki), Lua_help.script, Help из SDK 0.7
Сборник модостроения ЗП v10.10.11 (автор: XOBAH): *.CHM, *.HTML [cut noguest=Если у вас не открывается файл CHM]Если у вас не открывается файл: 1. Запустите [Пуск]=>[Выполнить] (либо хот-кей [WIN]+[R]) 2. Введите команду (без кавычек) "regsvr32 %windir%\system32\hhctrl.ocx" 3. Если вылезло окно об успешном завершении вы все сделали правильно и можете перезагружать компьютер (а может и не надо) Также: файлы МОГУТ не открываться если в пути к файлу есть: символы кириллицы, "_", "#" Также: есть не стандартные программы-просмоторщики CHM файлов. Например: FBReader[/cut] [cut=Где найти лог игры после вылета]Что такое LOG ошибки, и как мне его найти? Это система отладки происходивших вылетов, которая подается игрой в форме текста, хотя не всегда. Для того чтоб найти LOG необходимо зайти вот сюда:
В Win хр лог находится:
C:\Documents and Settings\All Users\Документы\S.T.A.L.K.E.R. - Зов Припяти\logs
Затем открываете первый файл в формате TXT, и в нем отбираете с низу 25 строчек. После кидаете эти 25 строчек в сообщение на форум.
В Win7 лог находится C:\Users\Public\Documents\S.T.A.L.K.E.R. - Зов Припяти\logs
Путь к папке с логом можно найти открыв файл fsgame.ltx который находится в корневой директории ЗП, за это отвечает строка: ... $app_data_root$ = true | false| $fs_root$| users\(тут мы указываем что папка пользователя, будет хранится рядом с Fsgame.ltx) ... $logs$ = true| false| $app_data_root$| logs\(а тут мы указываем что в папке пользователя, в подпапке Logs будут храниться наши логи) ... [/cut][cut=Получение более подробной информации о вылете (ХОВАН)] Открываем файл _g.script и ищем такую функцию: function abort(fmt, ...) Там есть заккомментированная строчка "--error_log(reason)", ее и надо расскомментировать, должно получиться вот так: Код function abort(fmt, ...) local reason = string.format(fmt, ...) error_log(reason) end Вот для примера два одинаковых вылета, первый с функцией по умолчанию, второй - с поправленной функцией
Первый: Код Expression : !m_error_code Function : raii_guard::~raii_guard File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp Line : 748 Description : ....a.l.k.e.r. - Зов Припяти\gamedata\scripts\_g.script:478: bad argument #2 to 'format' (string expected, got nil) Второй: Код Expression : 0 Function : ErrorLog File : D:\prog_repository\sources\trunk\xrServerEntities\script_engine_script.cpp Line : 49 Description : 'Attempt to read a non-existant string field 'path_walk' in section 'walker@mechanic' [/cut]
Перед тем, как задать вопрос в этой теме, прочтите все предыдущие страницы, статьи в wiki по ссылке из шапки и соседнюю тему "Курс молодого бойца", возможно Ваш вопрос уже рассматривался.
Если произошел вылет - выкладываем лог! Вопрос ставим четко, не забываем указывать версию игры, установленные моды их версии, установленные фиксы модов и подробно ваши правки. Помните чем подробнее вопрос, тем точнее ответ.
Посты, для которых есть свои категории, из этой темы будут удаляться или перемещаться в соответсвующую тему. Персональных извещений в ЛС о переносе\удалении поста не будет, ищите сами. Учитывайте, что в системах Ucoz тема не обновляется в статистике при переносе поста. Посты, написанные здесь-же после переноса, будут расцениваться как кросспостинг, со всеми вытекающими
[cut noguest=Первый юбилей нашей темы] Здравствуйте господа модостроители, и все так или иначе причастные к этому. Нашей теме исполнился 1 год. От души поздравляю Всех Вас дорогие друзья, творческих успехов. Хочу так же выразить отдельную благодарность denis2000 и ХОВАН. tracker 23.06.11
[/cut]
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
denis2000 | Дата: Пт, 10.04.2020, 12:28 | Сообщение # 2971 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| Rembo-2, Скорее всего ошибка в имени смарта на котором спавниться сквад.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
336968975 | Дата: Пт, 10.04.2020, 16:04 | Сообщение # 2972 |
Гражданский
Пользователи
Сообщений: 3
| Не загружаются сохранения. Иногда не срабатывают скрипты в задания, в начале например, беру взрывчатку для взрыва дверей, но задание не обновляется и по прежнему весит найти взрывчатку. Решается это перепрохождением миссии. Но вот большая часть сохранений почему-то не работает. Это может быть связано с те .что установлены дополнения [ AI Additions ]
[ Absolute Structures Pack ]
[ Absolute Nature 3 Lite, for SGM 2.2 ]
[ Dinamic News 1.02 ]
|
|
|
Эти 0 пользователя(ей) поблагодарили 336968975 за это полезное сообщение: |
|
|
asd123 | Дата: Ср, 15.04.2020, 03:01 | Сообщение # 2973 |
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
| Здравствуйте! Подскажите, можно ли бинд анимаций/бинд анимации или функции из xr_effects моста в Рыжем лесу использовать для перевода вертолёта из анимации idle на анимацию die и наоборот? Вообще, будет ли работать данный функционал на вертолёты?
p.s. Вот его функционал(вроде весь. Скачал локацию, в описании говорилось что есть мост и он в рабочем состоянии)
[cut=bind_red_forest_bridge.script] --'****************************************************** --'* Биндер объекта моста . --'******************************************************
function bind(obj) obj:bind_object(bridge_binder(obj)) db.storage[obj:id()] = { } end
class "bridge_binder" (object_binder) function bridge_binder:__init(obj) super(obj) self.bridge = obj local se_koleso = alife():story_object(516) self.se_koleso_id = se_koleso and se_koleso.id -- printf("koleso = [%s]", tostring(self.se_koleso_id)) end function bridge_binder:net_spawn(server_object) if not object_binder.net_spawn(self, server_object) then return false end db.add_bridge(self.bridge, self) printf("callback!!!!bridge!!!!") self.object:set_callback(callback.script_animation, self.animation_end_callback, self) self.bridge:get_physics_object():stop_anim() if self.koleso ~= nil then self.koleso:get_physics_object():stop_anim() end db.add_bridge(self.bridge, self) self.idle_snd = sound_object("device\\bridge\\bridge_move") self.down_snd = sound_object("device\\bridge\\bridge_down") self.start_snd = sound_object("device\\bridge\\bridge_start") self.stop_snd = sound_object("device\\bridge\\bridge_stop") self.idle = 50000 return true end
function bridge_binder:net_destroy() self.idle_snd:stop() self.down_snd:stop() self.start_snd:stop() self.stop_snd:stop() object_binder.net_destroy(self) end
function bridge_binder:anim_forward() self.idle_snd:stop() self.bridge:get_physics_object():stop_anim() if self.koleso ~= nil then self.koleso:get_physics_object():run_anim_forward() end self.idle_end = self.idle + game.time() self.start_snd:play_at_pos( self.object, self.object:position(), 0, sound_object.s3d) self.idle_snd:play_at_pos( self.object, self.object:position(), 5, sound_object.s3d + sound_object.looped) self.bridge_idle = true self.bridge_anim_fwd = true end
function bridge_binder:anim_backward() self.idle_snd:stop() self.bridge:get_physics_object():stop_anim() if self.koleso ~= nil then self.koleso:get_physics_object():run_anim_back() end self.idle_end = self.idle + game.time() self.start_snd:play_at_pos( self.object, self.object:position(), 0, sound_object.s3d) self.idle_snd:play_at_pos( self.object, self.object:position(), 5, sound_object.s3d + sound_object.looped) self.bridge_idle = true self.bridge_anim_fwd = false end
function bridge_binder:anim_stop() self.bridge:get_physics_object():stop_anim() if self.koleso ~= nil then self.koleso:get_physics_object():stop_anim() end self.bridge_idle = false self.stop_snd:play_at_pos( self.object, self.object:position(), 0, sound_object.s3d) end
function bridge_binder:update(delta) object_binder.update(self, delta) if self.se_koleso_id ~= nil and (self.koleso == nil) and (db.storage[self.se_koleso_id] ~= nil) and (db.storage[self.se_koleso_id].object ~= nil) then self.koleso = db.storage[self.se_koleso_id].object printf("koleso est'") self.koleso:get_physics_object():stop_anim() end if self.anim_time then self.bridge:get_physics_object():anim_time_set(self.anim_time) self.anim_time = nil end if self.bridge_idle == true then if self.idle_end <= game.time() then if self.bridge_anim_fwd == true then self.bridge:get_physics_object():run_anim_forward() else self.bridge:get_physics_object():run_anim_back() end end else self.object:get_physics_object():stop_anim() if self.idle_snd ~= nil then self.idle_snd:stop() end end end
function bridge_binder:animation_end_callback( is_end ) printf("animation_callback!!!!!!bridge!!!!") if is_end then db.actor:give_info_portion("red_bridge_down_done") self.down_snd:play_at_pos( self.object, self.object:position(), 0, sound_object.s3d) self.bridge_idle = false if self.koleso ~= nil then self.koleso:get_physics_object():stop_anim() end else db.actor:give_info_portion("red_bridge_actor_out") self.down_snd:play_at_pos( self.object, self.object:position(), 0, sound_object.s3d) self.bridge_idle = false if self.koleso ~= nil then self.koleso:get_physics_object():stop_anim() end end end -- Standart function for save function bridge_binder:net_save_relevant() return true end -- Saving crow function bridge_binder:save(packet) set_save_marker(packet, "save", false, "bridge_binder") object_binder.save(self, packet) xr_logic.save_obj(self.object, packet)
packet:w_bool(self.bridge_idle==true) packet:w_bool(self.bridge_anim_fwd==true) if self.idle_end then packet:w_u32(self.idle_end) else packet:w_u32(0) end if self.object and self.object:get_physics_object() and self.object:get_physics_object():anim_time_get() then packet:w_float(self.object:get_physics_object():anim_time_get()) else packet:w_float(0) end set_save_marker(packet, "save", true, "bridge_binder") end -- Loading crow function bridge_binder:load(packet) set_save_marker(packet, "load", false, "bridge_binder") object_binder.load(self, packet) xr_logic.load_obj(self.object, packet) self.bridge_idle = packet:r_bool() self.bridge_anim_fwd = packet:r_bool() self.idle_end = packet:r_u32() self.anim_time = packet:r_float() set_save_marker(packet, "load", true, "bridge_binder") end[/cut] [cut=xr_effects.script] -- Функции для управления мостом.
function bridge_down() db.bridge_by_name["red_bridge"]:anim_forward() end function bridge_up() db.bridge_by_name["red_bridge"]:anim_backward() end function bridge_stop() db.bridge_by_name["red_bridge"]:anim_stop() end
function anim_obj_down(actor, npc, p) if p[1] ~= nil then db.anim_obj_by_name[p[1]]:anim_forward() end end function anim_obj_up(actor, npc, p) if p[1] ~= nil then db.anim_obj_by_name[p[1]]:anim_backward() end end[/cut] [cut=Сама секция отсека моста, использующая анимации] ; cse_abstract properties section_name = red_forest_bridge name = red_bridge position = -144.884460449219, 10.0784387588501, -270.569519042969 direction = 0, 0, 0 id = 65535 version = 124 script_version = 8 spawn_id = 5686
; cse_alife_object properties game_vertex_id = 961 level_vertex_id = 27072 object_flags = 0xffffff3a custom_data = <<END [collide] ignore_static [animated_object] END
; cse_visual properties visual_name = dynamics\scene_objects\red_forest\red_forest_bridge_01_dynamic
; cse_ph_skeleton properties skeleton_name = bridge_down skeleton_flags = 1
; cse_alife_object_physic properties physic_type = 0x3 mass = 10[/cut]
Добавлено (15.04.2020, 03:56) --------------------------------------------- И ещё вопрос. С чем связана проблема с забором возле моста в Лиманск в Рыжем лесу? И можно ли её как-то исправить? [cut=Забор сил тьмы][/cut]
У мутантов тоже есть группировки. © Движок X-Ray
Сообщение отредактировал asd123 - Ср, 15.04.2020, 03:56 |
|
|
Эти 0 пользователя(ей) поблагодарили asd123 за это полезное сообщение: |
|
|
denis2000 | Дата: Ср, 15.04.2020, 09:16 | Сообщение # 2974 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| Цитата asd123 ( ) Вообще, будет ли работать данный функционал на вертолёты? Нет. Вертолет и мост объекты разного движкового класса с разными биндерами. Поясните что вам конкретно требуется и возможно найдутся способы реализации вашего плана.
Цитата asd123 ( ) С чем связана проблема с забором возле моста в Лиманск в Рыжем лесу? Какая проблема? Прозрачность решетки? Вероятно некорректно настроен материал в части шейдера.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
asd123 | Дата: Ср, 15.04.2020, 13:11 | Сообщение # 2975 |
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
| denis2000, понял) Жаль, очень жаль... Чего я хочу? Хочу реализовать анимацию die из моделей вертолётов. Сцена такая: летит вертолёт, по нему попадают из гаусски(например), и он вместо плавного спуска начинает опускаться вращаясь.
Цитата denis2000 ( ) Какая проблема? Прозрачность решетки? Да, она. Когда отходишь от забора, то он темнеет. Спасибо за наводку, поищу модельку забора и поменяю настройку
Добавлено (17.04.2020, 08:49) --------------------------------------------- Здравствуйте. Вопрос по логике вертушек. В общем, добавил я для теста вертолёт с 11-ю точками path_move и path_look, только почему-то он не обрабатывает 10 точек из path_look. В 11 точке(которая обновляет патруль и выводит на первую) он уже разворачивается на первую точку обзора, и снова продолжает летать, смотря только в неё. В чем проблема? Я недоглядел, или кривые настройки логики/скрипта heli_move?
Логика такая:
Код [logic] active = heli_move@lime_fly
[heli_move@lime_fly] path_move = red_lime_heli_move path_look = red_lime_heli_look max_velocity = 60 engine_sound = true invulnerable = true min_mgun_attack_dist = 1 max_mgun_attack_dist = 150 min_rocket_attack_dist = 50 max_rocket_attack_dist = 180 use_rocket = true use_mgun = true enemy = all upd_vis = 3
У мутантов тоже есть группировки. © Движок X-Ray
Сообщение отредактировал asd123 - Пт, 17.04.2020, 08:58 |
|
|
Эти 0 пользователя(ей) поблагодарили asd123 за это полезное сообщение: |
|
|
denis2000 | Дата: Пт, 17.04.2020, 09:12 | Сообщение # 2976 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| asd123, Возможные проблемы: 1. Проблема в настройках путей или точек пути (неверно настроены переходы между точками или флаги точек). 2. Проблема в расположении точек: из-за специфики движения вертолета по маршруту он не может достигать некоторых точек (например если точки слишком близко расположены достичь их помешают иннерционно-скростные характеристики объекта).
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
asd123 | Дата: Пт, 17.04.2020, 10:14 | Сообщение # 2977 |
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
| Цитата denis2000 ( ) 1. Проблема в настройках путей или точек пути (неверно настроены переходы между точками или флаги точек). Хмм... Вроде переходы нормальные(логика то не бьётся, после 11-ой точки он снова начинает смотреть в первую, хотя в предыдущие 10 не смотрит), единственное что меня смущает - это flags = 0x1. Можно поподробнее, на что вообще влияет этот параметр и нужно ли здесь ставить разные значения? А то на руках логика ТЧшных вертолётов, и там например на Янтаре, у точек путей разные flags. Вот waypoint одного из вертолётов с Янтаря ТЧ
Код [heli_look_1] points = p0,p1,p2,p3,p4 p0:name = wp00|e|w=1 p0:flags = 0x1 p0:position = 60.161979675293,0.035919189453125,-51.474308013916 p0:game_vertex_id = 1443 p0:level_vertex_id = 70896 p0:links = p1(1)
p1:name = wp01 p1:flags = 0x2 p1:position = 68.5319290161133,0.0297470092773438,-29.8421039581299 p1:game_vertex_id = 1508 p1:level_vertex_id = 75687 p1:links = p2(1)
p2:name = wp02 p2:flags = 0x4 p2:position = 61.4718818664551,-0.845855712890625,-10.8075866699219 p2:game_vertex_id = 1508 p2:level_vertex_id = 71781 p2:links = p3(1)
p3:name = wp03 p3:flags = 0x8 p3:position = 58.6818428039551,-0.845855712890625,22.6934432983398 p3:game_vertex_id = 1509 p3:level_vertex_id = 70154 p3:links = p4(1)
p4:name = wp04 p4:flags = 0x10 p4:position = 91.0716552734375,0.0314712524414063,12.4605712890625 p4:game_vertex_id = 1513 p4:level_vertex_id = 87195
У мутантов тоже есть группировки. © Движок X-Ray
Сообщение отредактировал asd123 - Пт, 17.04.2020, 10:15 |
|
|
Эти 0 пользователя(ей) поблагодарили asd123 за это полезное сообщение: |
|
|
denis2000 | Дата: Пт, 17.04.2020, 10:46 | Сообщение # 2978 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| asd123, Флаг - это очень важный параметр в настройках пути/точек. Флаг связывает точку пути move и точку пути look (или набор точек) куда будет "смотреть" НПС/МОБ/Вертолет. Иными словами если вы указали в точке пути move флаг №1, то в качестве точки пути look куда будет "смотреть" вертолет будет выбрана одна из точек пути с таким же флагом.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
asd123 | Дата: Пт, 17.04.2020, 11:06 | Сообщение # 2979 |
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
| denis2000, так... А числа после 0x1 можно выставлять любые? Я на стороннем ресурсе нашёл вот что:
Код Флажок всегда начинается со значения 0x1 Флажки в move и look должны совпадать. Т.е флажок в точке, где задали параметр |e, должен совпадать с флажком в точке look, иначе получим вылет. Флажок ВСЕГДА начинается со значения 0x1. Известные значения мне: (0x1, 0x2, 0x4, 0x8, 0x10, 0x20, 0x40, 0x80,...), однако всречал примеры, где заданы значения 0x400, 0x800 и т.д Откуда значение берется и четкие его рамки, кроме четности (почему тогда не используется 0x6 ?) мне не известны.
Код Сегодня(делал логику и пути вертолетов) столкнулся с таким явлением: При установке флажка flags = 0x6 по прибытии вертолета в точку с этим флагом - ловил стабильный вылет "бад_аргумент3"... При замене этого флага на flags = 0x8 вылет прекратился. Вот поэтому наверное и не используются флаги с таким значением. Хотя почему именно "06" - мне неизвестно.
У мутантов тоже есть группировки. © Движок X-Ray
Сообщение отредактировал asd123 - Пт, 17.04.2020, 11:07 |
|
|
Эти 0 пользователя(ей) поблагодарили asd123 за это полезное сообщение: |
|
|
denis2000 | Дата: Пт, 17.04.2020, 11:30 | Сообщение # 2980 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| asd123, Набор флагов представлен как 32 разрядное двоичное число, то есть всего существует 32 флага. Если флаг установлен то соотвествующий бит этого числа равен 1, если нет то 0. Вот пример такого числа: 00000000000000000000000000001000 В нем установлен флаг №3 (счет с нуля). Но записывать такое число крайне не удобно, поэтому в ACDC было принято решение кодировать его в HEX формате (шестнадцатеричный формат): BIN: 00000000000000000000000000001000 == HEX: 0x8
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
asd123 | Дата: Вт, 21.04.2020, 20:23 | Сообщение # 2981 |
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
| Доброго времени суток. Подскажите пожалуйста, на что влияет параметр distance в alife файлах?
И ещё. Я поставил анимпоинт, но почему-то при спавне НПС, который по логике должен сразу же идти в точку анимпоинта и садиться(animpoint_sit_high), он уходит куда-то к краю локации, а потом телепортируется в анимпоинт и садится в анимацию. Это как-то связано с AI сеткой? upd: Слегка сместил анимпоинт на сетку, теперь сразу идёт к нему. Но теперь проблема, что НПС садится неправильно - висит в воздухе. Можно как-то настроить анимпоинт, чтобы и работал хорошо, и НПС не уходил? Может, телепортация на точку анимпоинта/спавн на точке анимпоинта помогут?
У мутантов тоже есть группировки. © Движок X-Ray
Сообщение отредактировал asd123 - Вт, 21.04.2020, 20:31 |
|
|
Эти 0 пользователя(ей) поблагодарили asd123 за это полезное сообщение: |
|
|
denis2000 | Дата: Ср, 22.04.2020, 09:28 | Сообщение # 2982 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| Цитата asd123 ( ) Подскажите пожалуйста, на что влияет параметр distance в alife файлах? Ни на что не влияет.
Цитата asd123 ( ) Можно как-то настроить анимпоинт, чтобы и работал хорошо, и НПС не уходил? Создайте новый смартковер с новыми анимациями на нужной высоте и используйте. Смартковер должен стоять строго на АИ-сетке (иначе он будет просто недоступен для НПС или НПС будет занимать его с различными глюками), положение НПС в нем регламентируется анимациями в нем.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
Rembo-2 | Дата: Вс, 26.04.2020, 21:25 | Сообщение # 2983 |
Гражданский
Пользователи
Сообщений: 10
| У меня вопрос появился. По заданию необходимо из ТД проследовать на Затон, чтобы попасть на Агропром. Но точка перехода на Затоне находится очень в неудачном месте. Появляешься и спереди отряды Альфы, а слева, враждебные бандиты, очень трудно выбраться оттуда. Я пытался переместить переход на Затоне в allspawnе, переместиться в новых координатах можно, но метка на карте остается на прежнем месте, а в новом, просто, без всяких вопросов перекидывает на ТД. А обратно появляешься снова на прежнем переходе. Т.е. на Затоне получается две точки перехода на ТД.
Сообщение отредактировал Rembo-2 - Вс, 26.04.2020, 21:28 |
|
|
Эти 0 пользователя(ей) поблагодарили Rembo-2 за это полезное сообщение: |
|
|
sergej5500 | Дата: Пн, 27.04.2020, 11:31 | Сообщение # 2984 |
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
| Rembo-2,
После правки алл.спавн нужно начать новую игру. То есть проходить мод с самого начала.
|
|
|
Эти 0 пользователя(ей) поблагодарили sergej5500 за это полезное сообщение: |
|
|
term2t | Дата: Пн, 27.04.2020, 22:03 | Сообщение # 2985 |
Гражданский
Пользователи
Сообщений: 12
| Доброго времени суток. Вопрос состоит в том, как одевать сталкеров? оружие подбирают или кидаю на них. но броню кинуть не получается и не подбирают. SGM 2.2 Конкретно нужно для защитников склада Долга. Гавриленко и так в Экзике. Чтоб во фриплее не умирали. Одного оружия мало(((. Спасибо БОЛЬШОЕ заранее.
|
|
|
Эти 0 пользователя(ей) поблагодарили term2t за это полезное сообщение: |
|
|
|