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

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


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

@Akros В ОП стоит античит, любое ковыряние файлов, и твои сейвы будут меченными красным ( возможно ошибаюсь). 

Распаковать файлы sounds.xdb

В папке sound/actors найти не нужные реплики, заменить их, и закинуть в папку с ОП. Я в ОП не гоняю, не факт что все что я написал сработает. 

Загляни в тему ковыряние ОП 2.2 

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

@h0N0r , ни разу не специалист, но там же вроде булев (true/false) ключ добавлен:

function generic_object_binder:__init(obj) super(obj)
...    self.used = false
end
function generic_object_binder:save(packet)
...    packet:w_bool(self.used)
end
function generic_object_binder:load(reader)
 ...   self.used = reader:r_bool()
end

А в самом теле функции уже проверка на предмет "первого раза":

generic_object_binder:use_callback(obj, who):

...    if self.object:alive() or self.used then return end

+ выше там же ещё одна "отсечка".

  • Полезно 1
Ссылка на комментарий

Народ, я снова по теме срезания запчастей с мутантов.

Что здесь нужно изменить, чтобы открывался  инвентарь, только когда нож в руках

  bind_monster.script (Показать)

Звуки не воспроизводятся, не нахожу нужного калбэка

 

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

Забавно, а ведь оно действительно в таком виде не желает работать. По крайней мере, на "классике". Интересно, почему?

 

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

Доброго времени суток Всем! Какой файл отвечает за вывод номера патча в главном меню (навеяно одним вопросом на Ответах mail.ru). Я прошерстил папки scripts, ui и text, но не нашел ничего. 

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

@Ali_Babai_45 , для оригинала:

ui_main_menu.script->

function main_menu:InitControls()
...
    local _ver = xml:InitStatic        ("static_version",self)
    local mm                        = _G.main_menu.get_main_menu()
    _ver:SetText                    ("ver. " .. mm:GetGSVer())   
end

Тут более подробно.

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

@Ali_Babai_45 , а пламенный привет борцунам за всё хорошее против всего плохого. Они весь домен gameru.net в РФ грохнули. Тут есть копипаста.

 

Боюсь ошибиться, вот это вот GetGSVer() движком вычитывается по-моему. Сам формат текста здесь:

ui_mm_main.xml (gamedata\config\ui) ->

<static_version>...</static_version>

Т.е., что-то наподобие такого можно соорудить:

ver:TextControl():SetText  ("ver. "..mm:GetGSVer().." + здесь название и версия"). То, что в "..." можно менять/мучить, а mm:GetGSVer() вряд ли изменить получится.

Изменено пользователем Купер
  • Спасибо 1
  • Нравится 1
  • Согласен 1
Ссылка на комментарий
  02.07.2022 в 22:52, Купер сказал:

 Оно действительно в таком виде не желает работать. По крайней мере, на "классике". Интересно, почему?

 

Разберусь с этим когда получу вывих мозга. Но это не точно. :dash3: 

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

@андрей дронав ,

  off topic (Показать)

 

Ссылка на комментарий
  03.07.2022 в 09:28, Купер сказал:

@андрей дронав ,

  off topic (Показать)

 

Дружище, я никогда не учил язык программирования, для меня этот код "Абракадабра". Я умею пользоваться "WinMerge", и на этом мой навык мододела кончился. Буду пробовать ковырять ссылаясь на прошлые темы, а вдруг узнаю, ПАЧИМУ НЕ РАБОТАЕТ:laugh:

 

Может быть так?

  bind_monster.script (Показать)

 

Изменено пользователем андрей дронав
  • Смешно 1
Ссылка на комментарий
  03.07.2022 в 03:49, Купер сказал:

ui_main_menu.script->

function main_menu:InitControls() ...     local _ver = xml:InitStatic        ("static_version",self)     local mm                        = _G.main_menu.get_main_menu()     _ver:SetText                    ("ver. " .. mm:GetGSVer())    end

function main_menu:InitControls()
...
    local _ver = xml:InitStatic        ("static_version",self)
    local mm                        = _G.main_menu.get_main_menu()
    _ver:SetText                    ("ver. " .. mm:GetGSVer())   
end

 

Еще можно так:      _ver:SetText ("Ж.О.П.А.")

Изменено пользователем macron
  • Согласен 1
  • Смешно 3
Ссылка на комментарий
  30.06.2022 в 14:56, Zander_driver сказал:

Вот просто интересно, каких ответов люди хотят на подобные вопросы... Ты же понимаешь что ответить тебе по существу, невозможно.

.

Пытался адаптировать этот скрипт

  monster_parts.script (Показать)

 

Ссылка на комментарий
  03.07.2022 в 11:09, phalcor сказал:

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

(Платформа ОП, rx_kill_wounded.script). 

Какой из? Их же уже столько, а в каждом по своему! :biggrin: 

По идее, достаточно в rx_ai.script просто откомментировать загрузку и включение ненужной схемы:

function load_schemes()
function enable_schemes(ini,npc)

В оригинале модулей AI, кстати, достаточно просто удалить/переместить нужный/ненужный файл с соответствующим модулем.

 

 

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

@Купер не все так просто может оказаться. Например,если отключить движковую схему добивания раненных, то ничего хорошего не выйдет. В движке эта схема сильно связана с боевкой. Т.е. раненный остаётся в списке врагов и пока есть в памяти хоть один не раненный, то бой идёт с ним(и). Если в памяти остались только раненные враги, то активизируется схема добивания раненных. А если она отключена, будет упс, т.к. движок на такое не рассчитан и не знает, что делать. Враг как бы есть, а что делать - не понятно. Т.ч. насчёт "по идее" отключить, все может оказаться не так просто.

  • Нравится 1
  • Согласен 1
  • Полезно 2
Ссылка на комментарий
  04.07.2022 в 13:18, dsh сказал:

Если в памяти остались только раненные враги, то активизируется схема добивания раненных.

В принципе, добивать раненых не есть хорошо... Было бы хорошо, если бы нпс "добивали" раненых аптечкой, т.е. вербовали в свою группировку, как это делает ГГ

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

Отношения между людьми- главная ценность в человеческом обществе.
Любая полученная информация- это только повод для размышлений, а не побуждение к действию.
Это должен знать каждый: уроки боевой подготовки Дяди Саши https://yadi.sk/d/60Ec2B06goLAE
Накопано и накнопано:https://yadi.sk/d/mzVY5jQEspwpt

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

А где-то можно почитать предметно относительно недоработок оригинальной движковой GSC схемы добивания подранков? В смысле: " подводные камни", что сделано через пень колоду, etc.

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

@Купер в исходниках движка? Мои данные основаны именно на этом. Это узнано в процессе переделки, что бы добиванием занимался тот, кто ближе, а не шли всей толпой.

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

  • Полезно 2
Ссылка на комментарий
  05.07.2022 в 23:44, EGER.OVERKILL WF сказал:

У меня там следующая билеберда: (брал из этого же файла, с другого рестриктора) 

  Настройки шейпа (Показать)

@EGER.OVERKILL WF, давай-ка полную выкладку, как оно сейчас выглядит?

; cse_shape properties
shapes = shape0 <- ??? - кол-во шейпов
shape0:type = sphere - тип (сфера/параллелепипед)
shape0:offset = 0,0,0 - смещение 
shape0:radius = 5 - радиус (для типа "сфера")

; cse_alife_space_restrictor properties
restrictor_type = 0

В логике я бы лично подстраховался (хотя, в принципе, и лишнее, наверное):

[logic]
active = sr_idle

[sr_idle]
on_actor_inside = {-kura} nil %+kura%

{...} - условия для выполнения

%...% - действия

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

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

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

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

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

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

Войти

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

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

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