NonGrande 16 Опубликовано 10 Августа 2015 Добрый вечер. Не подскажете, как можно заспавнить оружие через alife():create, но только без патронов? P.s ковыряю чистый ТЧ Поделиться этим сообщением Ссылка на сообщение
NonGrande 16 Опубликовано 11 Августа 2015 local unload_magazine = function(id, obj) obj:unload_magazine() end local sobj = alife():create("секция_оружия", vector(), 0, 0, db.actor:id()) if sobj then level.client_spawn_manager():add(sobj.id, db.actor:id(), unload_magazine) end Если не составит труда, можете помочь с пониманием? Я так понимаю: obj:unload_magazine() - то, что заставляет оружие появиться без патронов. if sobj then - если идет спавн оружия, то далее идет функция: level.client_spawn_manager():add(sobj.id, db.actor:id(), unload_magazine) с ссылкой на unload_magazine, которая обезоруживает? Поправьте, если я не так понимаю :-) Поделиться этим сообщением Ссылка на сообщение
NonGrande 16 Опубликовано 21 Августа 2015 (изменено) Ребята, поможете? Какой код надо написать, чтобы при поднятии предмета сработал любой скрипт? http://www.amk-team.ru/forum/index.php?showtopic=13054 - не кошерно ? dc Изменено 21 Августа 2015 пользователем Dennis_Chikin 1 Поделиться этим сообщением Ссылка на сообщение
NonGrande 16 Опубликовано 12 Сентября 2015 @BFG, А совместить спавнер и логику не вариант? А потом прописать путь к ней. Поделиться этим сообщением Ссылка на сообщение
NonGrande 16 Опубликовано 18 Сентября 2015 (изменено) Добрый вечер. Помогите пожалуйста разобраться с вылетом: Распаковываю all.spawn с помощью acdc, открываю файл way_|01_escape и прописываю путь: [esc2_leshiy_stay] points = p0 p0:name = name00 p0:position = -211.379180908203,-19.945894241333,-140.205642700195 p0:game_vertex_id = 61 p0:level_vertex_id = 41941 Сворачиваю обратно, помещаю в папку spawns Далее прописываю этот путь в логику сталкера, который должен тупо стоять на 1 месте: [smart_terrains] none = true [logic] active = camper danger = danger_ignore [camper] path_walk = esc2_leshiy_stay radius = 10 [danger_ignore] ignore_distance = 5 Вызываю функцию его спавна из диалога и получаю вылет Expression : fatal error Function : CScriptEngine::lua_errorFile : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cppLine : 73Description :Arguments : LUA error: ....r. - shadow of chernobyl\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value) Ковыряю ТЧ на патче 1.0004. В _g.script функция, включая 20 строчку, имеет такой вид: function printf(fmt,...) log(string.format(fmt,...)) end Скажите, в чём ошибка? Изменено 18 Сентября 2015 пользователем NonGrande Поделиться этим сообщением Ссылка на сообщение
NonGrande 16 Опубликовано 19 Сентября 2015 @UnLoaded, Убрал. Без логики он спавнится нормально, только уходит сразу же. @Fagot., Не помогло. Вылетает с тем же логом. Может что в all.spawn наворотил не так? Поделиться этим сообщением Ссылка на сообщение
NonGrande 16 Опубликовано 19 Сентября 2015 @Хемуль36рус, Все нормально, спасибо) Я просто look не прописал, поэтому не могло переварить логику. Поставил через ремарку no_move = true, и сработало: НПС заспавнился, и при этом стоял на месте. Оффтоп, удалите потом пожалуйста. Поделиться этим сообщением Ссылка на сообщение
NonGrande 16 Опубликовано 27 Сентября 2015 Ребята, а как узнать координаты, куда будет смотреть НПС? Поделиться этим сообщением Ссылка на сообщение
NonGrande 16 Опубликовано 3 Октября 2015 (изменено) Он скорее всего имеет ввиду, чтобы ноги были видны, когда поворачиваешь камеру вниз как в Lost Alpha. @Forser, Это не мне надо объяснять, а человеку, постом ранее) Изменено 3 Октября 2015 пользователем NonGrande Поделиться этим сообщением Ссылка на сообщение
NonGrande 16 Опубликовано 3 Октября 2015 Добрый день. Хочу сделать НПС кемпером, и чтобы он стоял на 1 месте и никуда не бегал: [logic] active = camper [camper] no_move = true danger = danger_ignore path_walk = esc2_leshiy_stay path_look = esc2_leshiy_look [danger_ignore] ignore_distance = 5 [smart_terrains] none = true path & look прописываю в all.spawn в файле way_|01_escape: [esc2_leshiy_stay] points = p0 p0:name = name00 p0:position = -211.379180908203,-19.945894241333,-140.205642700195 p0:game_vertex_id = 61 p0:level_vertex_id = 41941 [esc2_leshiy_look] points = p0 p0:name = name00 p0:position = -208.577209472656,-19.9769744873047,-140.117828369141 p0:game_vertex_id = 61 p0:level_vertex_id = 44624 Сворачиваю обратно, прописываю вызов НПС через скрипт в диалог. Запускаю игру, начинаю разговор и тут: Загрузка детальных объектов... * [DETAILS] VertexConsts(256), Batch(61)* [DETAILS] 40687 v(20), 26352 p* [DETAILS] Batch(61), VB(794K), IB(154K)* phase time: 178 ms* phase cmem: 269884 KЗагрузка секторов и порталов...* Loading HOM: d:\topsecretfiles\games\s.t.a.l.k.e.r. - shadow of chernobyl\gamedata\levels\l01_escape\level.hom* phase time: 29 ms* phase cmem: 270073 KЗагрузка ИИ объектов...- Loading music tracks from 'l01_escape_musics'...* phase time: 180 ms* phase cmem: 270129 KКлиент: Создание...- Game configuring : Started- Game configuring : Finished* phase time: 1017 ms* phase cmem: 278398 KЗагрузка текстур...* t-report - base: 865, 88304 K* t-report - lmap: 10, 10241 K***FATAL***: Too many lmap-textures (limit: 8 textures or 32M).Reduce pixel density (worse) or use more vertex lighting (better).* phase time: 4943 ms* phase cmem: 278398 KКлиент: Синхронизация...* phase time: 68 ms* phase cmem: 278398 K* [win32]: free[1300304 K], reserved[65180 K], committed[731604 K]* [ D3D ]: textures[98546 K]* [x-ray]: crt heap[278398 K], process heap[30905 K], game lua[21945 K], engine lua[231 K], render[0 K]* [x-ray]: economy: strings[3227 K], smem[28221 K]* MEMORY USAGE: 299715 KFATAL ERROR[error]Expression : fatal error[error]Function : CScriptEngine::lua_error[error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp[error]Line : 73[error]Description : [error]Arguments : LUA error: ....r. - shadow of chernobyl\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value)stack trace: Когда спавню НПС без логики, то он нормально появляется. Ковыряю чистый ТЧ 1.0004 в _g.script 20 строка имеет вид: function printf(fmt,...) log(string.format(fmt,...)) -- вот 20 строка end Подскажите пожалуйста, в чем проблема. Поделиться этим сообщением Ссылка на сообщение
NonGrande 16 Опубликовано 3 Октября 2015 (изменено) @Fagot., Все тоже самое: Expression : fatal errorFunction : CScriptEngine::lua_errorFile : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cppLine : 73Description :Arguments : LUA error: ....r. - shadow of chernobyl\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value) Может это из-за all.spawn? До распаковки он весил 4370 кб. а сейчас 4347. Может быть что-нибудь затерлось? p.s Немного поковырялся в интернете, нашел способ отладки вылета, проверил 1 раз. Вылетало от того, что флаг не прописал в путь. Прописал флаг, зашел 2 раз, но теперь опять вылетает с другим логом: ! Unknown command: _bp:_reset_generic_schemes_on_scheme_switch:_npc:name()='%s'! Unknown command: WOUNDED_SECTION_[%s][%s]! Unknown command: THRESHOLD_SECTION_[%s]! Unknown command: STALKER_SPOT_SECTION_[%s]! Unknown command: _bp:_calling_module('%s')! Unknown command: _bp:_path_parse_waypoints:_pathname='%s'! Unknown command: _bp:_path_parse_waypoints:_pathname='%s'! Unknown command: ERROR:_object_'esc_leshiy19456':_path_walk_'walk_esc2_leshiy',_index_0:_cannot_find_corresponding_point(s)_on_path_look_'look_esc2_leshiy'! Unknown command: %sFATAL ERROR[error]Expression : fatal error[error]Function : CScriptEngine::lua_error[error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp[error]Line : 73[error]Description : [error]Arguments : LUA error: ....r. - shadow of chernobyl\gamedata\scripts\_g.script:21: bad argument #2 to 'format' (string expected, got no value)stack trace: Изменено 3 Октября 2015 пользователем NonGrande Поделиться этим сообщением Ссылка на сообщение
NonGrande 16 Опубликовано 3 Октября 2015 (изменено) @_Val_, Смотрю. Интересно то, что ничего не менялось, но размер файла не мог же сам по себе измениться в сторону уменьшения? Я убрал логику и запустил игру. По идее, если в файле что-нибудь затерлось, сталкер бы вообще не запустился. @Fagot., Первый раз распаковываю и запаковываю) И именно этот первый раз сбоит. Ну, вернее уже несколько раз распаковываю и запаковываю один и тот же файл, изменяя добавленное. Конечно не забыл: [walk_esc2_leshiy] points = p0 p0:name = name00 p0:flags = 0x1 p0:position = -211.379180908203,-19.945894241333,-140.205642700195 p0:game_vertex_id = 61 p0:level_vertex_id = 41941 [look_esc2_leshiy] points = p0 p0:name = name00 p0:position = -208.577209472656,-19.9769744873047,-140.117828369141 p0:game_vertex_id = 61 p0:level_vertex_id = 44624 Изменено 3 Октября 2015 пользователем NonGrande Поделиться этим сообщением Ссылка на сообщение
NonGrande 16 Опубликовано 3 Октября 2015 Компилятор: universal_acdc.pl -compile all -out new.spawn pause Декомпилятор: universal_acdc.pl -d all.spawn -out all -sort complex -nofatal pause @Fagot., Все, решил. Прописал флаг и в walk и в look - заработало. Спасибо за помощь! 2 Поделиться этим сообщением Ссылка на сообщение
NonGrande 16 Опубликовано 24 Октября 2015 (изменено) Добрый вечер. Скажите пожалуйста: можно ли заспавнить бармена раненым, чтобы он лежал и просил аптечку при заходе в бар? Изменено 24 Октября 2015 пользователем NonGrande Поделиться этим сообщением Ссылка на сообщение
NonGrande 16 Опубликовано 6 Января 2016 (изменено) Добрый вечер. Подскажите пожалуйста, а можно ли как-нибудь по ходу игры поменять имя ГГ? ТЧ 1.0004 Изменено 6 Января 2016 пользователем NonGrande Поделиться этим сообщением Ссылка на сообщение