[CoP] Модострой: вопросница
|
|
|
Overfirst
Воскресенье, 31.12.2017, 13:17 | Сообщение # 1
Статус: |
|
Бывалый: |
|
Сообщений: |
1081 |
Награды: |
19 |
Регистрация: |
11.06.2015 |
|
[CoP] Модострой: вопросница
Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском по разделу, ответ на него, вероятно, уже есть.
Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода.
Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа).
Благодарность выражаем в личке или же ставим плюсик в историю репутации. Подобные посты будут удаляться.
|
|
Воскресенье, 31.12.2017, 13:17
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
11.06.2015 |
|
|
|
|
|
Статус: |
|
Отмычка: |
|
Сообщений: |
125 |
Награды: |
0 |
Регистрация: |
28.03.2020 |
|
denis2000, а куда её вписывать?
|
|
Пятница, 19.06.2020, 11:05
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
28.03.2020 |
|
|
|
|
|
Статус: |
|
Новичок: |
|
Сообщений: |
270 |
Награды: |
5 |
Регистрация: |
30.07.2016 |
|
Как заспавнить предмет вне AI сетки? Если использовать функцию spawn_object для спавна на вейпоинте, то ничего не происходит.
Сообщение отредактировал yobakun - Пятница, 19.06.2020, 20:37
|
|
Пятница, 19.06.2020, 20:19
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
30.07.2016 |
|
|
|
|
|
Статус: |
|
Новичок: |
|
Сообщений: |
290 |
Награды: |
4 |
Регистрация: |
09.01.2017 |
|
Цитата yobakun ( ) Как заспавнить предмет вне AI сетки?
Можно в СДК, если отключить привязку к сетке. Или скриптом типа
alife():create("секция предмета",vector():set(db.actor:position().x+2,db.actor:position().y,db.actor:position().z), db.actor:level_vertex_id(),db.actor:game_vertex_id())
Вместо db.actor:position().x+2 пишете нужные координаты.
Сообщение отредактировал sergej5500 - Пятница, 19.06.2020, 21:08
|
|
Пятница, 19.06.2020, 20:51
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
09.01.2017 |
|
|
|
|
|
Статус: |
|
Бывалый: |
|
Сообщений: |
1081 |
Награды: |
19 |
Регистрация: |
11.06.2015 |
|
Цитата sergej5500 ( ) Можно в СДК, если отключить привязку к сетке. Или скриптом Функция spawn_object - скриптовая функция, которая содержит в себе вызов alife():create(...), так что работает это всё по одной и той же схеме. Как вариант, можно попробовать использовать obj:use_ai_locations(false) при создании объекта. Я использовал это, когда нужно было, чтобы предметы из дроп боксов не привязывались к сетке (провалы предметов с крыш на первый этаж). Мне помогло.
|
|
Пятница, 19.06.2020, 21:50
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
11.06.2015 |
|
|
|
|
|
Статус: |
|
Новичок: |
|
Сообщений: |
290 |
Награды: |
4 |
Регистрация: |
09.01.2017 |
|
Цитата Overfirst ( ) spawn_object - скриптовая функция, которая содержит в себе вызов alife():create(...), так что работает это всё по одной и той же схеме
Это так, но не совсем. Я для интереса проводил тесты. Ставил пойнт вне сетки. Вызывал spawn_object. Ничего не получалось. А вот alife():create с нужными координатами срабатывало. Даже вне сетки.
Пример, СГМ. Там один из тайников на носу Скадовска на верхней палубе. Сетки там точно нет. Применялась функция alife():create.
|
|
Пятница, 19.06.2020, 22:01
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
09.01.2017 |
|
|
|
|
|
Статус: |
|
Бывалый: |
|
Сообщений: |
1081 |
Награды: |
19 |
Регистрация: |
11.06.2015 |
|
Можно попробовать ради интереса в конце spawn_object добавить:
Код se_obj:use_ai_locations(false) upd: лучше это сделать отдельным параметром, а не по умолчанию выключать привязку к сетке. Применять только к тому, для чего это необходимо. А добавить даже лучше не в конец, а в блок для поворота физ. объектов - для сталкеров-то это не будет работать. Стабильность точно гарантировать нельзя будет.
Проверять уже без меня - не до тестов сейчас. Может, поможет. Всяко лучше, чем каждый раз дёргать alife():create(...) и спавнить по координатам.
Цитата sergej5500 ( ) Я для интереса проводил тесты. Ставил пойнт вне сетки. Вызывал spawn_object. Ничего не получалось. Это странно. Никаких предпосылок в функции spawn_object для таких проблем нет. По крайней мере, я пока не вижу.
|
|
Пятница, 19.06.2020, 22:08
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
11.06.2015 |
|
|
|
|
|
Статус: |
|
Отмычка: |
|
Сообщений: |
125 |
Награды: |
0 |
Регистрация: |
28.03.2020 |
|
Цитата denis2000 ( ) ---------------------------------------------------- -- Ведение отдельного лог-файла ----------------------------------------------------
--Инициализация лога function init_log_file() local file=io.open("gamedata//log_file.log","w") file:write("Start loggong on "..os.date(),"\n") file:close() end
--Запись строки в лог function print_log(save_string,script_name) if script_name == nil then script_name = "_g.script" end local file=io.open("gamedata//log_file.log","a") file:write(os.date().."|"..script_name.."|"..save_string,"\n") file:close() end
куда это вписывать или это можно отдельным файлом сделать
|
|
Пятница, 19.06.2020, 22:14
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
28.03.2020 |
|
|
|
|
|
Статус: |
|
Новичок: |
|
Сообщений: |
270 |
Награды: |
5 |
Регистрация: |
30.07.2016 |
|
Код se_obj:use_ai_locations(false) работает.
Цитата sergej5500 ( ) пишете нужные координаты. Это неудобно когда надо заспавнить объект через логику.
Цитата Overfirst ( ) Это странно В этом то и загвоздка. В некоторых моментах функция просто ничего не создает.
|
|
Пятница, 19.06.2020, 22:28
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
30.07.2016 |
|
|
|
|
|
Статус: |
|
Бывалый: |
|
Сообщений: |
1081 |
Награды: |
19 |
Регистрация: |
11.06.2015 |
|
Я там обновил пост свой. Сделай лучше, как там написано в upd.
Цитата yobakun ( ) В некоторых моментах функция просто ничего не создает.
Встречал такое недавно, когда спавнили призрачный поезд с товарищем Policai для его мода. Впервые тогда это увидел. Раньше не сталкивался (ибо редко юзаю spawn_object).
|
|
Пятница, 19.06.2020, 22:31
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
11.06.2015 |
|
|
|
|
|
Статус: |
|
Новичок: |
|
Сообщений: |
270 |
Награды: |
5 |
Регистрация: |
30.07.2016 |
|
Цитата Overfirst ( ) Я там обновил пост свой. Сделай лучше, как там написано в upd. В курсе, уже даже испробовал. При попытке заспавнить сталкера за пределами сетки с se_obj:use_ai_locations(false) сначала все ок, но стоит ему дойти до самой сетки происходит вылет
Сообщение отредактировал yobakun - Пятница, 19.06.2020, 22:37
|
|
Пятница, 19.06.2020, 22:36
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
30.07.2016 |
|
|
|
|
|
Dead City Breakthrough
Статус: |
|
Опытный: |
|
Сообщений: |
2244 |
Награды: |
11 |
Регистрация: |
08.11.2011 |
|
Цитата Overfirst ( ) Встречал такое недавно, когда спавнили призрачный поезд с товарищем Policai для его мода. Впервые тогда это увидел. Раньше не сталкивался (ибо редко юзаю spawn_object).
Добавлю, если ставить обьект в СДК вне сетки, то проблем нету, тот же поезд или вертолёт, всё прекрасно работает. Но если спавнить скриптом то на точке должен быть хотя бы один нод сетки. пусть даже не связанный с общей сеткой. Видимо это особенность движка ЗП. Кстати пысовцы были вкурсе этой особенности, в тех местах где это происходит в оригинале ЗП, стоят отдельные ноды, например в Припяти таких нодов навалом на крышах зданий где спавнятся снайперы...
Сообщение отредактировал Policai - Суббота, 20.06.2020, 03:57
|
|
Суббота, 20.06.2020, 03:55
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
08.11.2011 |
|
|
|
|
|
Статус: |
|
Отмычка: |
|
Сообщений: |
125 |
Награды: |
0 |
Регистрация: |
28.03.2020 |
|
[error]Expression : !m_error_code [error]Function : raii_guard::~raii_guard [error]File : ..\xrServerEntities\script_storage.cpp [error]Line : 748 [error]Description : ...ll of pripyat\gamedata\scripts\level_weathers.script:459: bad argument #1 to 'find' (string expected, got nil)
stack trace:
0023:007575D1 xrCore.dll, xrCriticalSection::raii::~raii() 0023:072DADE1 xrGame.dll, CDialogHolder::operator=() мне понятней не стало
|
|
Суббота, 20.06.2020, 09:07
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
28.03.2020 |
|
|
|
|
|
Winsor
Суббота, 20.06.2020, 09:25 | Сообщение # 7528
Статус: |
|
Отмычка: |
|
Сообщений: |
163 |
Награды: |
0 |
Регистрация: |
22.04.2020 |
|
OP_artovod, Смотри справочник вылетов, и будет более менее понятно. Как я понял, игра не может вызвать функцию find, оно имеет пустое значение либо есть опечатки. Либо ты не записал функцию find. function find (значения) операции.... end В файле level weathers: Пример: fuinction ..(..) .... end if weather == cloudy then find(..) end
Сообщение отредактировал Winsor - Суббота, 20.06.2020, 09:28
|
|
Суббота, 20.06.2020, 09:25
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
22.04.2020 |
|
|
|
|
|
Статус: |
|
Отмычка: |
|
Сообщений: |
125 |
Награды: |
0 |
Регистрация: |
28.03.2020 |
|
! Unknown command: _se_actor:_set_load_marker:_%s ! Unknown command: _se_actor:_LOAD_DIF:_%s ! Unknown command: _actor_binder:_set_load_marker:_%s ! Unknown command: load_game_difficulty_%s из-за этого может может быть краш?
|
|
Суббота, 20.06.2020, 10:20
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
28.03.2020 |
|
|
|
|
|
Статус: |
|
Бывалый: |
|
Сообщений: |
1081 |
Награды: |
19 |
Регистрация: |
11.06.2015 |
|
Цитата Policai ( ) в оригинале ЗП, стоят отдельные ноды, например в Припяти таких нодов навалом на крышах зданий где спавнятся снайперы... Ну для неписей сетка нужна в любом случае в любых местах.
|
|
Суббота, 20.06.2020, 10:22
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
11.06.2015 |
|
|
|
|