[CoP] Модострой: вопросница
|
|
|
Overfirst
Воскресенье, 31.12.2017, 13:17 | Сообщение # 1
Статус: |
 |
Бывалый: |
 |
Сообщений: |
1081 |
Награды: |
19 |
Регистрация: |
11.06.2015 |
|
[CoP] Модострой: вопросница

Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском по разделу, ответ на него, вероятно, уже есть.
Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода.
Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа).
Благодарность выражаем в личке или же ставим плюсик в историю репутации. Подобные посты будут удаляться.
|
|
Воскресенье, 31.12.2017, 13:17
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
11.06.2015 |
|
|
|
|
|
История Кота
Статус: |
 |
Отмычка: |
 |
Сообщений: |
118 |
Награды: |
1 |
Регистрация: |
22.04.2019 |
|
Возник вопрос.
Можно ли сделать, если можно то как: чтобы при выбрасывании предмета в рестриктор, он это определял через логику.
Хотел сделать квест, где надо кинуть артефакт в аномальную зону и надо чтобы рестриктор проверял правильный ли предмет в него кинули, и он это орпределял, удалял этот предмет и выдавал инфу.
Если это можно как-то сделать, то не могли бы мне кратко показать как будет выглядеть эта логика. И если какие-то функции в скрипты надо дописывать, то тоже их укажите.
Заранее спасибо за ответ!
|
|
Четверг, 18.07.2019, 19:30
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
22.04.2019 |
|
|
|
|
|
Время Альянса
Статус: |
 |
Ветеран: |
 |
Сообщений: |
4070 |
Награды: |
16 |
Регистрация: |
19.07.2013 |
|
VOVASIKVAIS,
Код on_info = {=story_obj_in_zone_by_name(стори_ид_объекта:имя_рестриктора)} %реакция%
|
|
Четверг, 18.07.2019, 20:27
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
19.07.2013 |
|
|
|
|
|
Статус: |
 |
Новичок: |
 |
Сообщений: |
316 |
Награды: |
2 |
Регистрация: |
14.07.2019 |
|
Есть animated object дверь, в ней есть 4 стандартные анимации (idle и открытия/закрытия), я добавил ей через Actor Editor еще одну анимацию, которую хочу активировать при определенных событиях.
Какой функцией вызывать эту новую анимацию?
Сообщение отредактировал molodoy_chelovek - Пятница, 19.07.2019, 20:48
|
|
Пятница, 19.07.2019, 20:47
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
14.07.2019 |
|
|
|
|
|
makdm
Пятница, 19.07.2019, 22:03 | Сообщение # 4084
Время Альянса
Статус: |
 |
Опытный: |
 |
Сообщений: |
1787 |
Награды: |
19 |
Регистрация: |
22.11.2012 |
|
molodoy_chelovek, насколько я понимаю, то никакой. Какую анимацию установите в SDK объекту, та и будет проигрываться. Движковые методы run_anim_forward() и run_anim_back() при их вызовах не предусматривают передачу в двигало названия анимации. Двигало берет название анимации из нет-пакета объекта.
Сообщение отредактировал makdm - Пятница, 19.07.2019, 22:04
|
|
Пятница, 19.07.2019, 22:03
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
22.11.2012 |
|
|
|
|
|
Время Альянса
Статус: |
 |
Ветеран: |
 |
Сообщений: |
4070 |
Награды: |
16 |
Регистрация: |
19.07.2013 |
|
molodoy_chelovek, object:play_cycle("anim", true)
|
|
Пятница, 19.07.2019, 22:49
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
19.07.2013 |
|
|
|
|
|
makdm
Пятница, 19.07.2019, 23:03 | Сообщение # 4086
Время Альянса
Статус: |
 |
Опытный: |
 |
Сообщений: |
1787 |
Награды: |
19 |
Регистрация: |
22.11.2012 |
|
denis2000, все конечно здорово. А биндер анимационных дверей об этом как-то поставлен в известность? И что будет после сейв-лоад? Просто интересно...
|
|
Пятница, 19.07.2019, 23:03
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
22.11.2012 |
|
|
|
|
|
Время Альянса
Статус: |
 |
Ветеран: |
 |
Сообщений: |
4070 |
Награды: |
16 |
Регистрация: |
19.07.2013 |
|
makdm, Нет и использовать его смысла нет. В оригинале ЗП такие объекты использовались на логике ph_button. Например двери лифта нв ВНЗ:
Три анимации у объекта, а может быть и гораздо больше. А движковый метод работающий в этом скрипте указан мною выше.
Сообщение отредактировал denis2000 - Суббота, 20.07.2019, 08:51
|
|
Суббота, 20.07.2019, 08:50
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
19.07.2013 |
|
|
|
|
|
makdm
Суббота, 20.07.2019, 13:34 | Сообщение # 4088
Время Альянса
Статус: |
 |
Опытный: |
 |
Сообщений: |
1787 |
Награды: |
19 |
Регистрация: |
22.11.2012 |
|
Цитата denis2000 (  ) оригинале ЗП такие объекты использовались на логике ph_button Хм.. Понятно. Я просто не понял о каком объекте ты пишешь. Ты пишешь про объект, объявленный как physic_object А я писАл про объект, объявленный как door_lab_x8 Естественно они биндятся абсолютно по разному. Вопрос исчерпан.
|
|
Суббота, 20.07.2019, 13:34
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
22.11.2012 |
|
|
|
|
|
Статус: |
 |
Новичок: |
 |
Сообщений: |
270 |
Награды: |
5 |
Регистрация: |
30.07.2016 |
|
Как сделать так, чтобы секция meet принимала инфопоршни? Вместо костылей вида
Код [logic@1] active = walker@1 suitable = true
[walker@1] path_walk = walker_1_walk ... meet =meet@1 on_info = {+info} walker@2 -- переключаемся на другой волкер, чтобы переключиться на другой мит
[meet@1] ...
[walker@2] ... meet = no_meet on_info = {-info} walker@1
Сделать 1 волкер и 2 мита?
Код [logic@1] active = walker@1 suitable = true
[walker@1] ... meet = {+info} meet@1, no_meet -- сразу меняем секцию мита при получении поршня
Пробовал править xr_meet.script
Код function reset_generic_scheme(npc,scheme,section,stype,st) if (st.meet) then local meet_section
if scheme == nil or scheme == "nil" then -- meet_section = st.ini:r_string_ex(st.section_logic,"meet") or "nil" meet_section = xr_logic.parse_condlist(npc, section, "meet", st.ini:r_string_ex(st.section_logic,"meet")) or "nil" else -- meet_section = st.ini:r_string_ex(section,"meet") or "nil" meet_section = xr_logic.parse_condlist(npc, section, "meet", st.ini:r_string_ex(section,"meet")) or "nil" end
init_meet(npc, st.ini, meet_section, st.meet, scheme) end end Вылетает Цитата ! [SCRIPT ERROR]: ...\gamedata\scripts\_g.script:1574: attempt to concatenate local 's' (a table value)
Код local ini_cache = { [system_ini()] = {} } function clear_ini_cache(ini) ini_cache[ini] = empty_table(ini_cache[ini]) end if (USE_INI_MEMOIZE) then -- memoize ini results local function r_memoize(ini,s,k,def,typ) if not (s) then callstack() end if (ini_cache[ini]) then local key = s.."&"..k -- ссылается сюда if (ini_cache[ini][key]) then return ini_cache[ini][key] end end
Сообщение отредактировал yobakun - Суббота, 20.07.2019, 18:46
|
|
Суббота, 20.07.2019, 18:41
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
30.07.2016 |
|
|
|
|
|
Статус: |
 |
Отмычка: |
 |
Сообщений: |
108 |
Награды: |
0 |
Регистрация: |
08.10.2017 |
|
Всем ку, проблема вот в чём: у меня есть локи чн из исходников, мне нужно перекомпилировать спавн и для этого мне нужно сбилдить локу, но на стадии merge lod textures происходит вылет:
что делать?
п.с. 1) размер лодов тут ни при чём, как минимум потому что это оригинальные локи (даже не декомпилы) и как минимум потому что оно бы орало что-то вроде "lod larger than [2048x2048]" (точно не помню) 2) раньше мне помогало пару раз перезапустить сдк, но щас не помогает 3) память, которую он просит (131072 K) он без изменений просил у меня всегда, когда у меня была такая проблема (я надеюсь понятно, что это было как минимум в разные дни?), что, как мне кажется, довольно странно
|
|
Воскресенье, 21.07.2019, 05:13
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
08.10.2017 |
|
|
|
|
|
Neptun
Воскресенье, 21.07.2019, 10:11 | Сообщение # 4091
Связной
Статус: |
 |
Бывалый: |
 |
Сообщений: |
672 |
Награды: |
9 |
Регистрация: |
25.03.2012 |
|
yobakun, обычно я использую внутреннюю функцию meet:
Код use = {+info}true, false meet_on_talking = {+info}true, false НПС не может говорить, пока не получит info
|
|
Воскресенье, 21.07.2019, 10:11
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
25.03.2012 |
|
|
|
|
|
yobakun
Воскресенье, 21.07.2019, 16:32 | Сообщение # 4092
Статус: |
 |
Новичок: |
 |
Сообщений: |
270 |
Награды: |
5 |
Регистрация: |
30.07.2016 |
|
Neptun, тогда придется и остальное переделывать, иначе непись все равно будет поворачиваться в сторону ГГ. Неудобно в общем.
|
|
Воскресенье, 21.07.2019, 16:32
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
30.07.2016 |
|
|
|
|
|
svi
Воскресенье, 21.07.2019, 19:54 | Сообщение # 4093
We Are Not Alone
Статус: |
 |
Неопытный: |
 |
Сообщений: |
482 |
Награды: |
8 |
Регистрация: |
14.01.2015 |
|
Здравствуйте. Подскажите, пожалуйста, есть ли какой-то способ приказать неписю стрелять в опр. точку или другого непися? Понимаю, что вопрос, вероятно, тривиальный, но никаких примерно похожих схем сыскать не сумел. Заранее спасибо.
|
|
Воскресенье, 21.07.2019, 19:54
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
14.01.2015 |
|
|
|
|
|
Статус: |
 |
Бывалый: |
 |
Сообщений: |
1081 |
Награды: |
19 |
Регистрация: |
11.06.2015 |
|
Стрельба в точку way-point'а:
Код [remark@fire_point] anim = threat_fire target = path | point_name, 0 Стрельба в объект со story_id:
Код [remark@fire_story] anim = threat_fire target = story | object_story_id Для стрельбы во враждебного НПС стреляющий должен быть к нему враждебен (их нужно поссорить), иначе он будет просто на него смотреть, а состояния, в которых персонаж стреляет, можно найти в state_lib.script, параметр weapon у них имеет значение fire.
|
|
Воскресенье, 21.07.2019, 20:06
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
11.06.2015 |
|
|
|
|
|
svi
Воскресенье, 21.07.2019, 20:18 | Сообщение # 4095
We Are Not Alone
Статус: |
 |
Неопытный: |
 |
Сообщений: |
482 |
Награды: |
8 |
Регистрация: |
14.01.2015 |
|
Overfirst, я про них осведомлён. Проблема только в том, что стреляет непись только тогда, когда на него смотришь. Не уверен, из-за отсутствия ли это цели или так и должно быть.
|
|
Воскресенье, 21.07.2019, 20:18
|
Статус: |
 |
Сообщений: |
666 |
Регистрация: |
14.01.2015 |
|
|
|
|