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

Внимание. На форуме проводятся технические работы с боковым меню.

_Val_ _Val_

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


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

@Sleepless ну вот что написано в вики движка

-- Методы для запрещения/разрешения вызывать консольные команды. На команды, которые вызываются из скриптов, через get_console():execute(...) данный запрет не действует.

get_console():disable_command("name")

get_console():enable_command("name")

 

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

 

в твоём случае ты можешь сделать, убрать эти команды из меню UI_keybinding, затем при загрузке игры в нет-спавн прописать такой скрипт:

get_console():execute("unbind cam_2")

get_console():execute("unbind cam_3")

для того чтоб если игрок через конфиг юзер прописал себе кнопки, при загрузке игры они бы разбиндились.

 

и потом методом выше для движка ogsr отключить конcольную команду bind, чтоб игрок через консоль не мог назначить кнопку, в принципе и всё, и спрятать скрипт куда подальше или защитить файлы ,архивы от редактирования анти-читом)

 

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

@CiberZold Сделал уже через парамс. именно так 

get_console():execute("unbind cam_2")

get_console():execute("unbind cam_3")

  • Согласен 1
Дополнения:

 

 

@ghost_selector никак.

  • Согласен 1

Нужен 3D-артист для правок геометрии локаций.
Кто может помочь - пишите в ЛС.

всем здравия

 

кто нибудь знает вчём может быть причина данного вылета

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

! Unknown command:  :actor_binder:load(): self.object:name()='single_player'
! Unknown command:  :actor_binder:object_binder.load(): self.object:name()='single_player'
! Unknown command:  single_player
 
FATAL ERROR
 
[error]Expression    : fatal error
[error]Function      : CScriptEngine::lua_error
[error]File          : .\script_engine.cpp
[error]Line          : 73
[error]Description   : <no expression>
[error]Arguments     : LUA error: ...:\s.t.a.l.k.e.r\gamedata\scripts\bind_stalker.script:395: attempt to concatenate field '?' (a nil value)
 

stack trace:

 

ссылается вот на эту строчку в bind_stalker.script: - get_console():execute("g_game_difficulty "..game_difficulty_by_num[game_difficulty])

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

@DarkSnowder лучше пихать мод на огср и смотреть в чём трабла, нежели гадать что могло случиться.

  • Полезно 1

Нужен 3D-артист для правок геометрии локаций.
Кто может помочь - пишите в ЛС.

@DarkSnowder ну ты же явно сломал игру и скрипты, теперь откатывай все изменения назад, по идее чтоб не потерять кучу работы, надо делать пару-тройку изменений, потом всё проверять, тогда в случае ошибки не надо будет откатываться до нуля и в итоге потерять больше времени, что ты пожалел на проверку)

  • Сочувствую 1
21 час назад, DarkSnowder сказал:

Вот с чего такая чехарда могла произойти

Сломана структура сейва.

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

 

  • Полезно 1

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine / Мимокрокодил.

Я понял что моя старая подпись что-то нарушает. Удалил все ссылки.

Здравствуйте. Как научить нпс стрелять из винтореза как из автомата? Лупит по одной пульке, а в ближнем бою переходит на пистолет

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

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

скорее всего, из-за параметра  Винтаря  ef_main_weapon_type   = 3, этот параметр показывает неписю как обращаться с оружием, ноль или нет параметр как с пистолетом, 1- дробовик, 2 -автомат, пп-шки, 3 - винтовки, потому и стреляет одиночными типа винтовка полу-автоматическая, поставь 2 как у ВАЛа , можешь ещё поиграться со значениями  ef_weapon_type, и посмотреть что будет)

  • Спасибо 1
  • Нравится 1
  • Полезно 1

@Sleepless возможно подойдут скрипты из 3.8.2, некоторые из них не правились и на 3.9 работают

 

@Паладин попробуйте в class = WP_VAL прописать (класс оружия от вала) и f_mode/fire_modes = поменять местами 1 и -1

 

 

Изменено пользователем Modz
  • Полезно 1

У меня два вопроса:

Как сделать предмет юзабельным?

И как сделать что бы его можно было использовать бесконечно (то есть что бы не пропадал из инвентаря)?

@pz_3 заменил в конфигах гитары и гармошки:

class                    = II_MEDKI  (было II_ATTCH)

 

Вылет при заходе в игру.

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

Expression    : fatal error
Function      : CInifile::r_string
File          : E:\stalker\sources\trunk\xrCore\Xr_ini.cpp
Line          : 352
Description   : <no expression>
Arguments     : Can't find variable eat_health in [guitar_a]

 

@Купер а за что отвечают эти строки:

 

attach_angle_offset        = 0.000000, -1.204452, -1.262921
attach_position_offset    = 0.081856, -0.035081, 0.011694
attach_bone_name        = bip01_l_hand
auto_attach                = false

@Купер на классе антирада не будут работать?

Если нет то надо делать одну гитару для актора а ориг оставить для НПС

Может быть два предмета с одинаковыми?

 

inv_name               
inv_name_short           

Проверьте пожалуйста правильно ли составлена функция

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

function actor_binder:use_object(obj)
               if obj~=nil then
               my_callbacks.on_use_item(obj)
               items_sounds.use_snd(obj)
               end
end

 

Серьёзно? А сам?

Прастити за оффтоп... Но обычно в игре сначала проверяют.

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

Задай себе вопрос - оно работает?

Оно работает, как планировалось?

Оно делалось по аналогии с чем то? 

Смею предположить, что не наугад. Значит, какое то базовое понимание имеется. Так почему бы не проверить, что получилось, а потом уже сюда? 

И главное. Всегда пытайся сначала сам.

 

Изменено пользователем mole venomous
  • Согласен 2

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

@mole venomous просто я несколько раз конкретно ломал игру, этой функцией (в скриптах не шарю). Практически наугад и делалось а так работает.

 

 

@pz_3 сделал колбеки, все работает. Но использую гитару потом гармошку и вес уменьшается на 0.1, потом снова гитару этот 0.1 веса возвращается обратно. С чем это может быть связано?

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

               if obj~=nil then

В принципе не нужно, если мы какой то объект скушали(а колбек мы ведь выводим именно на поедание предмета) - он явно существует, и делать проверку а был ли мальчик - странная затея.

 

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

function actor_binder:use_object(obj)
               items_sounds.use_snd(obj)
end

Такого будет достаточно. Сам вызов колбека же - обычно цепляется в функцию function actor_binder:reinit() в том же бинд_сталкере, например классический вариант выглядит так:  

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

function actor_binder:reinit()
Бла бла бла куча оригинального и не очень кода
К нему докидывается что нибудь типа
self.object:set_callback(callback.use_object, self.on_use_object, self)
И ниже уже делаем вызов

function actor_binder:on_use_object(obj)

end


 

26 минут назад, Stalk2003 сказал:

использую гитару потом гармошку

Откровенно говоря - я не уверен, что чистый ТЧ на лету(не заркывая инвентори) нормально и оперативно отрабатывает изменения веса при спавне новых вещей в карман колбеком.
т.е. для начала - я бы покопал в эту сторону, не вернется ли "пропавший" вес после закрыть-открыть инвентарь.
И опять таки, построение колбека у тебя странное, я такие конструкции не пользовал, чтобы уверенно что то заявлять. Пример, которым обычно пользуюсь - выше я уже привел.

Изменено пользователем pz_3
  • Нравится 1

Pz_3.gif

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

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

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

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

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

Войти

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

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

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