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

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


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

50 минут назад, actual_time сказал:

фотошоп

Я до сих пор пользуюсь Paint NET и никаких проблем. 

  • Согласен 2

Здесь могла быть ваша реклама.

Ссылка на комментарий

Продолжаю избавляться от всяких лишних строк в консоли. Движок огср если что.

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

 

Скрытый текст

[04.08.22 16:52:34.689] ! Version conflict in shader 'models\lightplanes_00'
[04.08.22 16:52:34.689] ! Version conflict in shader 'models\lightplanesself'
[04.08.22 16:52:34.689] ! Version conflict in shader 'models\model_puh'
[04.08.22 16:52:34.690] ! Version conflict in shader 'models\model_refl'
[04.08.22 16:52:34.690] ! Version conflict in shader 'models\xbrainglass'
[04.08.22 16:52:34.690] ! Version conflict in shader 'models\xdistortcolorlinv'
[04.08.22 16:52:34.690] ! Version conflict in shader 'models\xglass'
[04.08.22 16:52:34.690] ! Version conflict in shader 'models\xglass2'
[04.08.22 16:52:34.690] ! Version conflict in shader 'models\xlens'
[04.08.22 16:52:34.690] ! Version conflict in shader 'selflight_static'

Проблема в файле shaders.xr?
Но он прямиком с огср.
Как править это?

Ещё интересно почему могут появляться такие строчки:
 

Скрытый текст

[04.08.22 17:02:11.686] * [CSpaceRestrictionHolder::register_restrictor]: change restrictor_type of dead_zone_witches_galantine_strong to eRestrictorTypeNone because border().empty()
[04.08.22 17:02:12.898] * [CSpaceRestrictionHolder::register_restrictor]: change restrictor_type of zone_radioactive to eRestrictorTypeNone because border().empty()

 

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

ищу человека, который смог бы заняться разработкой погоды на OGSR.
кто может помочь - пишите в ЛС.

Ссылка на комментарий

@Houdini_one С этими вопросами, специфичными для ОГСР лучше на ГитХаб, в ветку движка. Там не сложно, нужно зарегистрироваться на ГитХабе, и в разделе движка будет "Discussions". Думаю, там лучше и быстрее ответят на вопросы.

  • Спасибо 1
  • Согласен 2
Ссылка на комментарий
02.08.2022 в 07:36, Купер сказал:

но в оригинале без правок скриптовой базы из внешнего .ltx можно вычитать только логику

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

@AndreySol А что, по движку ОГСР здесь нет спецов? Вон сколько модов переводят на ОГСР...

 

Не, мне просто любопытно, почему чела отсылают на гитхаб.

 

П.С. И да, человеку, привыкшему общаться здесь (задавать вопросы и получать ответы), как-то не совсем логично региться на гитхабе только для того, чтобы ответили на конкретный вопрос. ИМХО, конечно.

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

Сталкер - наше всё!

Ссылка на комментарий

@AndrewMor ,

вот это из внешнего файла "логики" ящика - .ltx, по-моему, вычитываться по умолчанию не будет. Могу ошибаться, конечно.

Изменено пользователем Купер
Ссылка на комментарий

@Купер Насчет ящика не скажу, логику ящиков с наполнением всегда в олл.спавн прописывал. Я писал про НПС, там я долго реально ковырялся, пока не объяснили, что принадлежность к смарту из внешнего файла логики не читается. Только сама логика. 

 

Т.е., если в скрипте указать путь к файлу логики и прописать там smart_terrain, то прочитается все, кроме секции смарта. Возможно, это пофиксили в ОГСЕ, ОГСР и им подобных...

  • Полезно 1

Сталкер - наше всё!

Ссылка на комментарий

@Купер Перечитал твой изначальный вопрос, что мол из ltx инв. ящика можно прочитать только логику. Вопрос: а что ты еще хочешь прочитать из ltx-файла? Кстати, если говорить грамотно, то из ltx читается не именно логика, а кастомдата, в которой может быть всякое, включая и логику.

@AndrewMor Разговор начинался с инвентарного ящика, ты же уже дошел до прописывания смарта. Зачем ящику смарт??? Для неписей смарты вычитываются без проблем. Или я чего-то не понял?

Ссылка на комментарий
10 минут назад, AndreySol сказал:

Или я чего-то не понял?

Я немного сумбурно написал. Имелось в виду, что не относительно ящика, а относительно НПС в ванильном двигле нельзя было прочитать принадлежность к смарту скриптово. Не в тему, но все-таки.

Сталкер - наше всё!

Ссылка на комментарий
18 минут назад, AndrewMor сказал:

относительно НПС в ванильном двигле нельзя было прочитать принадлежность к смарту скриптово

Опять я не понял... Зачем скриптами вычитывать из кастомдаты непися его смарты? Как это можно использовать реально в игре? Пример пожалуйста...

Ссылка на комментарий
1 hour ago, AndrewMor said:

Возможно, это пофиксили в ОГСЕ, ОГСР и им подобных...

Не пофиксили, т.к. движок этим не занимается. Этим скрипты занимаются.

  • Согласен 1
Ссылка на комментарий
49 минут назад, AndrewMor сказал:

относительно НПС в ванильном двигле нельзя было прочитать принадлежность к смарту скриптово.

Почему нельзя-то прочитать? Можно вроде как, и как раз скриптами:
 получаем через  xr_gulag.get_npc_gulag( obj ), где obj - наш "клиентский" непись.
Это если надо "на лету"  определить. 

А если надо, чтобы из LTX-файла при создании НПС-а ему присваивался гулаг, то надо не в файле логики smart_terrain прописывать, а в файле _кастомдаты_, и через отдельную секцию этого нпс спавнить с сразу с указанной кастомдатой, через custom_data = имя_файла_кастомдаты ( где  указать смарт и, если надо, ссылку на внешний ltx-файл с логикой, чтоб логику менять отдельно от кастомдаты при необходимости )

  • Согласен 1
  • Полезно 1

След от кругов на воде - это тоже след (с)

Ссылка на комментарий
9 часов назад, AndrewMor сказал:

не совсем логично региться на гитхабе только для того, чтобы ответили на конкретный вопрос

Почему же только для этого? На гитхабе к примеру есть Вики к движку, с примерами применения функций и прочего, изменения и нововведения в движке относительно оригинала.

  • Согласен 1
Ссылка на комментарий
04.08.2022 в 23:05, Okichi сказал:

А если надо, чтобы из LTX-файла при создании НПС-а ему присваивался гулаг, то надо не в файле логики smart_terrain прописывать, а в файле _кастомдаты_, и через отдельную секцию этого нпс спавнить с сразу с указанной кастомдатой, через custom_data =

Вот именно. И пока мне это не объяснили, я долго пыхтел...

04.08.2022 в 21:54, dsh сказал:

Не пофиксили, т.к. движок этим не занимается. Этим скрипты занимаются.

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

Сталкер - наше всё!

Ссылка на комментарий

А можно как-то заспавнить определённую вещь для НПС скриптом?

ищу человека, который смог бы заняться разработкой погоды на OGSR.
кто может помочь - пишите в ЛС.

Ссылка на комментарий

@Houdini_one , 

Скрытый текст

alife():create(item,npc:position(),npc:level_vertex_id(),npc:game_vertex_id(),npc:id())   
или

alife():create(item,npc.position,npc.m_level_vertex_id,npc.m_game_vertex_id,npc.id)

 

Изменено пользователем mole venomous
  • Спасибо 1
  • Нравится 1

Здесь могла быть ваша реклама.

Ссылка на комментарий

Добрый вечер всем!:drinks:
Вопрос такой.... Как сделать так, чтобы при клацании на предмет в инвентаре, начался проигрываться какой либо аудиофайл?
И ещё один.. Вот есть у меня waypoint, как сделать так, чтобы непись начал ходить по нему тогда, когда я захочу (например, после какого то диалога)?

Ссылка на комментарий

@mole venomous подскажи, может чего не так сделал, но оружие не появляется у НПС
 

Скрытый текст

function test()
local npc = level_object_by_sid(5504)
   alife():create(wpn_ak74,npc:position(),npc:level_vertex_id(),npc:game_vertex_id(),npc:id())
end

 

23 минуты назад, Hind сказал:

начался проигрываться какой либо аудиофайл?

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

24 минуты назад, Hind сказал:

когда я захочу

Переключай логику с помощью on_info
 

Скрытый текст

[logic]
active = remark

[remark]
target = actor
on_info = {+info} walker

[walker]

path_walk = walk

path_look = look

 

ищу человека, который смог бы заняться разработкой погоды на OGSR.
кто может помочь - пишите в ЛС.

Ссылка на комментарий
1 час назад, Hind сказал:

как сделать так, чтобы непись начал ходить по нему тогда, когда я захочу (например, после какого то диалога)

НПС находится в схеме логики 1, где стоит/ходит по путям 1. В этой схеме возможен переход в схему 2 по условию (выдача инфопоршена в конце диалога, например).

Скрытый текст

[walker@esc_finder] ; схема 1
path_walk = esc_finder_walk 
path_look = esc_finder_look 
on_info = {+esc_trader_can_leave} walker@esc_finder2 ; для перехода на схему 2 нужен инфо "esc_trader_can_leave"

 

[walker@esc_finder2] ; схема 2
path_walk = esc_finder2_walk 
path_look = esc_finder2_look 

В конце диалога выдаём инфопоршень. 

Скрытый текст

<phrase id="32111">
                <text>escape_trader_start_dialog_32111</text>
                <give_info>esc_trader_can_leave</give_info> <!-- выдаём инфо -->
                ...
</phrase>

После запускается схема логики 2, где НПС переходит на вэйпоинты 2

Скрытый текст

[walker@esc_finder2]
path_walk = esc_finder2_walk 
path_look = esc_finder2_look 

 

1 час назад, Houdini_one сказал:

level_object_by_sid(5504)

По sid'у можно так (хотя, тоже самое...)

Скрытый текст

--[[
    Для спавна в инвентарь актёра/НПСа/тайника (только онлайн!) 
    Не указываем второй аргумент - спаун актёру
    Указываем вторым аргументом цифру, это будет sid объекта (НПС или инвентарный ящик)
]]    
function spawn_item_in_inv(item,npc)
    if npc == nil then npc = db.actor end
    
    if npc then
        if type(npc)=='number' then
            npc = level_object_by_sid(npc)
        end
    end
    
    return alife():create(item,npc:position(),npc:level_vertex_id(),npc:game_vertex_id(),npc:id())
end

 

Или получше вариант, дёрнул из одного модуля

Скрытый текст

function AddItemInv(sSection, Box, idBox)
    local sini = system_ini()
    local sim  = alife()
    if not idBox then
        if not Box then Box = db.actor end
        idBox = (type(Box.id) == 'number' and Box.id) or Box:id()
    end
    if type(sSection) == 'string' and sini:section_exist(sSection) then
        return sim:create(sSection, vector(), 0, 0, idBox) --/>
    end
end

 

Пример:

local Box = level_object_by_sid(6)
AddItemInv("wpn_tiger", Box)

 

 

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

Здесь могла быть ваша реклама.

Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

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