Перейти к контенту

[SoC] Ковыряемся в файлах


Halford

Рекомендуемые сообщения

Не знаю, о каком неудобстве ты говоришь. Я никогда звуки в СДК не прогонял

Раз не знаешь, так правильнее\логичнее было-бы спросить: "А что за неудобство такое ?"

 

а как это движок узнал, что ему надо так себя вести? 

Ты похоже совсем не читал, то, на что пытаешься ответить. Еще раз:

Для управления параметрами слышимости звуков(громкость, расстояние затухания звука и т.д.) использованы ogg-комментарии(теги)

Изменено пользователем UnLoaded

Поделиться этим сообщением


Ссылка на сообщение

Такой вот вопрос: в скрипте гулага, в назначении работ можно задать in и out-рестрикторы. А в собственно логике непися,  как-то можно задавать\менять ему рестрикторы ? Или это только через правку нет-пакета ?


 

 

Хочу чтобы при поиске он искал реальное имя нпс

А разве npc:character_name() не возвращает это самое реальное имя ? К примеру для Волка эта ф-ция вернет "Волк". И что тут искать ?

Изменено пользователем UnLoaded

Поделиться этим сообщением


Ссылка на сообщение

 

 

Ну и при чем здесь нетпакет/логика ?

Согласен, не причем. Из головы вылетело, что есть в game_object методы для работы с рестрикторами...

Поделиться этим сообщением


Ссылка на сообщение

Для ламп(секция конфига "lights_hanging_lamp") есть возможность включать\выключать их. Вот только установленное состояние не сохраняется при сэйв\лоад. Как исправить это ? Биндер и его соответствующие ф-ции ? Посмотрел тот биндер, который прописан в конфиге для ламп - bind_physic_object.init, но судя по самой ф-ции инита

-- Биндить предмет нет смысла, если у него нет секции logic
if not ini or not ini:section_exist("logic") then
     -- Прожектор нужно биндить даже без секции logic
     if ini and not ini:section_exist("drop_box") then
          if obj:clsid() ~= clsid.projector then
                return
          end
     end
end

он к лампам не подцепляется ?

Поделиться этим сообщением


Ссылка на сообщение

@_Val_

Ну раз умеешь готовить всё как полагается - так может поделишься рецептом ? Всяко лучше, чем дули друг-другу крутить...

Поделиться этим сообщением


Ссылка на сообщение

Поясните, пожалуйста, что означает\для чего нужен этот фрагмент в generic_physics_binder:update(delta)(файл bind_physic_object.script):

--' Дизаблим ассоциированный с объектом граф
local graph_point_marker = utils.cfg_get_string(self.st.ini, self.st.section_logic, "graph_point_marker", self.object, false, "", nil)
if graph_point_marker ~= nil then
     self.disable_graph_point = patrol(graph_point_marker):game_vertex_id(0)
     game_graph():accessible(self.disable_graph_point, false)
     printf("GRAPH POINT DISABLED")
end
Изменено пользователем UnLoaded

Поделиться этим сообщением


Ссылка на сообщение

 

 

начали бежать на месте

Ну так это то самое и есть - in-рестриктор их не пускает к тебе. Ты лучше вместо указания типов рестриктору в СДК попробуй по другому: верни рестриктору тип по умолчанию "None default restrictor"(как-то так, извиняй, СДК не запущен чтоб точнее посмотреть), а затем задай этот рестриктор мобу\ам через ф-цию add_restrictions(string <out_restrictions_names>, string <in_restrictions_names>).

Поделиться этим сообщением


Ссылка на сообщение

@Lagos

По первому скрину: у тебя один и тот же рестриктор задан и как in и как out. Так нельзя - получается, что мобу запрещено одновременно и входить в него и выходить из него же. Оставь что-то одно.

 

@FonSwong

Я чет не пойму тебя: ты знаешь ID непися. Затем пытаешься получить по этому ID'у юзердату, чтоб затем из нее опять получить ID. А сразу этот ID использовать в чем проблема ? Или я не так понял, что-же тебе надобно ?

Поделиться этим сообщением


Ссылка на сообщение
делаем нпс компаньоном

Однако, оригинальный подход - делать компаньоном непися, который может быть и офф-лайн ! Ты в курсе, что в офф-лайне логика для мобов не работает ? Да и сама строка, в используемой тобой ф-ции

local st = db.storage[npc:id()]

однозначно намекает, что непись, которого назначаем компаньоном, должен быть в он-лайне.

 

ID от серверного объекта получают так: ser_obj.id

Изменено пользователем UnLoaded

Поделиться этим сообщением


Ссылка на сообщение

 

 

допустим, он выходит из напарников, и вот в этот момент мы можем быть в машине, а если мы в машине, все компаньоны автоматом выходят в оффлайн..

Ни чего не понял ! Что ты вообще пытаешься сделать ? Пытаюсь по-ванговать: есть НПС-напарник, актер едет в машине и в это время происходит исключение НПСа из напарников ? И проблема в том, что при нахождении актера в машине, все его напарники находятся в офф-лайне ?

 

 

 

можно ли заспавнить бармена раненым

Проверь...

Поделиться этим сообщением


Ссылка на сообщение

 

 

не успеваю получить клиентскую юзердату

На кой она тебе ? Ошибка где происходит ?

function companion_start_folowing(npc, actor)
local st = db.storage[npc:id()] -- ТУТ ?

 

Если да, то просто доработай ф-цию, к примеру так:

function companion_start_folowing(npc, actor)
     local st
     if type(npc) == "number" then
          st = db.storage[npc]
     else
          st = db.storage[npc:id()]
     end

и соответственно передавай в ф-цию тот самый npc_id, который ты из таблицы получаешь.

Поделиться этим сообщением


Ссылка на сообщение

@editor46

4-й параметр в ф-ции give_game_news - задержка показа сообщения на худ(экран). Соответственно, у тебя сначала отыграет звук, для которого не задана задержка, а затем через 3 секунды выводится сообщение. Если тебе надо чтоб сообщение выводилось одновременно со звуком, измени этот параметр на 0, как-то так:

....,"ui\\ui_npc_unique",Frect():set(335,329,154,103),0,5000)

Если надо чтоб и сообщение и звук выводились с какой-то задержкой, то установи ее и для сообщения и для звука, как-то так:

function message_wolf()
local sactor = alife():actor()
local cactor = level.object_by_id(sactor.id)
local time_out = 3000

cactor:give_game_news("%c[255,160,160,160]Сообщение:\\n%c[default]Это Волк,надо встретится.",
"ui\\ui_npc_unique",Frect():set(335,329,154,103),time_out,5000)

local snd_obj = xr_sound.get_safe_sound_object([[device\decoder]])
snd_obj:play_at_pos(db.actor, vector():set(0,0,0), time_out, sound_object.s2d)
end

И еще, вот это - math.random(3000, 3000) будет глупость, т.к. данная ф-ция должна сгенерировать случайное число в интервале от значения первого параметра до значения второго параметра, а раз у тебя они равны то и результат всегда будет один - 3000.

Изменено пользователем UnLoaded

Поделиться этим сообщением


Ссылка на сообщение

smart_terrain.script:893 - что у тебя в этой строке скрипта. Смотри там, по смыслу ф-ции, в которой ошибка, поймешь как устранить.

 

P.S. У себя смотреть эту строку не буду - скрипт уже правленный, совпадать не будет с твоим...

Изменено пользователем UnLoaded

Поделиться этим сообщением


Ссылка на сообщение

 

 

что можно "сломать" в конфиге, после чего мутант отказывается атаковать ГГ?
Ну в конфиге можно только community сломать, хотя не очень верится, что ты додумался монстрику прописать группировку "Долг" или "Сталкер". Скорее всего, у тебя где-то в логике, имеется combat_ignore с игнором актера.

Насчет боязни мутантов к ГГ - тебе надо что-то типа: ГГ нацепил какой-то арт или иную шнягу, и монстры начинают от него драпать ? Тогда только новая схема.

Поделиться этим сообщением


Ссылка на сообщение

 

 

child registered but not found [1394]

"дочерний объект зарегистрирован, но не найден" и в кавычках(если я не ошибаюсь) - идентификатор(ID) объекта. Если у тебя есть рабочее сохранение, более раннее, чем те что не загружаются - загрузится с него, и любым способом узнать что это за объект - к примеру, скриптом поставить на него метку или вывести куда-нить его имя и секцию.

 

 

 

В принципе у меня есть идеи как это сделать без артефактов и прочего, правкой пары цифр

Ну если поможет - поделись, интересно, что за цифры такие...

Поделиться этим сообщением


Ссылка на сообщение

 

 

животина должна быть слабая, чтобы не атаковала, а просто бегала. Это первое, что надо подкрутить. Затем делаем ее врагом к ГГ и все, она будет носиться как угорелая по радиусу гулага

Ну такой расклад, похоже, проканает только для слепых собачек, тушканов и плотей. А вот насчет химеры, или псевдопсины, я что-то сильно сомневаюсь...

Поделиться этим сообщением


Ссылка на сообщение

 

 

Из логики - НЕ РАБОТАЕТ, по тому как ошибка в скриптах, просто не читается

Не подскажете, в каком именно скрипте ошибка ?

 

Такой вопрос: в чистом ТЧ частенько бывает, что после лечения раненного НПСа, он встает и уходит, не подбирая выроненного оружия. Подскажите, в какой схеме это можно полечить ? Или это движковое ?

Поделиться этим сообщением


Ссылка на сообщение

 

 

Требуется между двумя сообщениями на ПДА ГГ сделать интервал, в 5 сек. реального времен

Все просто(добавлю к сообщению Marafon6540): из одной ф-ции выдаешь подряд оба сообщения, только второе с задержкой в нужное кол-во секунд. Где ее указывать - уже подсказано...

Поделиться этим сообщением


Ссылка на сообщение

 

 

Сйчас логика у него такая

Ну и при чем тут логика, если черным по белому об отсутствии анимации ? Сам ведь пишешь про новую модель - вот и причина.

Поделиться этим сообщением


Ссылка на сообщение

 

 

При добавлении в алл.спавн переходов они не появляются в назначенном месте.

Уже сто раз говорено на эту тему - пользуйтесь СДК ! И будет Вам счастье...

 

 

 

Возможно, проблема в вертексах?

Если можно перейти на локацию - сними координаты(о том как - куча всяких плюшек, найдешь без труда) и используй их для алл-спавна. Но все-же - СДК рулит.

  • Спасибо 1

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...