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

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

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

20 часов назад, Hind сказал:

где то видел модуль wait(nое время), он рабочий?

Знать бы точно, что за модуль...

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

"Если не требуется". Действия с короткой отсрочкой, которые после бесполезны после смерти ГГ (основная причина загрузки), вполне можно обрабатывать и так.

В таком случае - да, согласен

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

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

Всем привет. Хочу убрать выдачу тайников с трупов. В каких файлах нужно ковырять? Или может у кого есть уже готовый пример?

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

В каких файлах нужно ковырять

treasure_manager.script

Что бы всё не "ломать", думаю, править только осмотр трупа CTreasure:use(npc)

  • Спасибо 1
  • Согласен 1

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

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

Здравствуйте. Подскажите функцию:
ГГ получает инфопоршень, после чего у него опускается уровень ПСИ-здоровья до 50% и больше может подняться выше (останавливается так же по инфопоршню).

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

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

Любителям ковырять алл.спаун - мой батник на запаковку.

echo off
cls

set _my_datetime=%date%_%time%
set _my_datetime=%_my_datetime: =_%
set _my_datetime=%_my_datetime::=%
set _my_datetime=%_my_datetime:/=_%
set _my_datetime=%_my_datetime:.=_%
set _my_datetime=%_my_datetime:,=_%

rename all.spawn %_my_datetime%.spawn

acdc_soc.pl -c all.ltx -o ./all.spawn
pause

3 часа назад, Colder сказал:

Всем привет. Хочу убрать выдачу тайников с трупов. В каких файлах нужно ковырять? Или может у кого есть уже готовый пример?

treasure_manager.ltx

Имхо, всё, что ниже


ros_secret_0023
ros_secret_0024
ros_secret_0025

 

удалить.

Проверить не могу, локи ещё чистые. Трупов нет.

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

@Houdini_one  Я бы сделал что-то типо:

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

Выдаеться инфопорция ГГ. Срабатывает финкция

 

local timer1 = 0

function функция()
    if has_alife_info("инфопорция") then
    local timer2 = time_global()
        if timer1 < timer2 then
        db.actor.psy_health = - 0.05
            timer1 = timer2 + 1000
        end
    end
end

 

Удаляем инфопорцию когда нужно.

 

 

Изменено пользователем Colder
Ссылка на комментарий
18 часов назад, mole venomous сказал:

Что бы всё не "ломать", думаю, править только осмотр трупа CTreasure:use(npc)

Можно в treasure_manager.ltx прописать каждому тайнику заведомо невыполнимое условие для выдачи.

  • Полезно 1

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

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

Можно в treasure_manager.ltx

Для классических тайников. Для случайных и редких, по типу АМК-шных, генерация содержимого, вроде, не зависит от этого кондлиста (если ручками не добавлять). :unknw: А вообще, если нужно полностью исключить возможность получать тайники с трупов, думаю, стоит сразу обрубить это в самом начале, при обыске жмурика, что бы ничего не обрабатывать зря.

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

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

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

Где-то здесь: xr_motivator:

Скрытый текст
function motivator_binder:use_callback(obj, who)
	if self.object:alive() then
		xr_use.notify_on_use(obj, who)
		if self.st.active_section then
			xr_logic.issue_event(self.object, self.st[self.st.active_scheme], "use_callback", obj, who)
		end
--* если мы трупик и тайник ещё не выдавали
  else
		if self.treasure_processed == false then
			treasure_manager:get_treasure_manager():use(self.object)
			self.treasure_processed = true
		end
	end
end

 

И посмотреть, где оно сохраняется, загружается. Чтобы зазря не мучить.

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

Не уверен, что есть что-то подобное, но, подскажите такой скрипт, если он есть:
Оцениваем стоимость инвентаря главного героя (исключения это ПДА, болт), удаляем его и взамен выдаём деньги.

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

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

@Houdini_one 

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

function get_cost()
	local t_cost = 0
	local objects = {}
	db.actor:iterate_inventory(function(d, o)
		local sect = o:section()
		if sect ~= "bolt" and sect ~= "device_pda" then
			t_cost = t_cost + o:cost()
			table.insert(objects, o)
		end
	end)
	for _, obj in pairs(objects) do
		local sobj = alife():object(obj:id())
		if sobj then
			alife():release(sobj, true)
		end
	end
	dialogs.relocate_money(db.actor, t_cost, "in")
end

 

 

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

@Colder к сожалению не силён в скриптах, но проверив функцию хочу сообщить, что данная функция уменьшает пси-хп игроку вплоть до его гибели.

@Houdini_one возможно я выразился неправильно:
Нужно чтобы ПСИ-хп убавилось до 50% и не могло подняться ни выше, ни ниже.

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

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

Ссылка на комментарий
21.08.2022 в 15:40, mole venomous сказал:

А вообще, если нужно полностью исключить возможность получать тайники с трупов, думаю, стоит сразу обрубить это в самом начале, при обыске жмурика

Если так ставить вопрос - то да, согласен на все 100. Но если человек не силен в скриптах, то редактирование конфига тайников - самое оно.

 

Кстати, для случайных и редких тайников - ванильный скрипт наверняка переписан.

Изменено пользователем AndrewMor
  • Согласен 1

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

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

@Hind ,

character_desc_ABC.xml,

АВС - соответствующий файл профилей NPC.


Вариант 1, непосредственно в профиле:

Скрытый текст
    <specific_character id="esc_wolf" team_default = "1">
...
        <start_dialog>escape_lager_volk_talk</start_dialog>
        <start_dialog>dm_hello_dialog</start_dialog>
        <actor_dialog>dm_cool_info_dialog</actor_dialog><!-- вот это оно -->
        <actor_dialog>dm_help_wounded_medkit_dialog</actor_dialog>
        <actor_dialog>tm_wolf_dialog</actor_dialog>
        <actor_dialog>tm_wolf_reward</actor_dialog>
    </specific_character>

 

 

Вариант 2, подключается через инклуды:

Скрытый текст
    <specific_character id="esc_stalker_novice_default1" team_default = "1">
...
        <start_dialog>hello_dialog</start_dialog>
#include "gameplay\character_dialogs.xml"<!-- вот здесь оно подключается -->
    </specific_character>

И вот так выглядит, character_dialogs.xml:

<start_dialog>dm_hello_dialog</start_dialog>
<actor_dialog>dm_cool_info_dialog</actor_dialog><!-- вот это оно -->
<actor_dialog>dm_help_wounded_medkit_dialog</actor_dialog>

 

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

Товарищи, подскажите, почему НПС при стрельбе зажимом (или же длинными очередями) стреляют выше головы ГГ?
Как фиксить?

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

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

@Houdini_one у оружия сильное задирание ствола от отдачи настроено? Есть какой-то параметр для секции оружия, который отключает влияние отдачи на неписей. Только я забыл, как называется этот параметр. Поройся в справочнике, может там есть.

 

А, не, все перепутал, наоборот. Добавь для каждого оружия

cam_relax_speed_ai = 360

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

 

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

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

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

@Hind
в секции логики:

meet = meet

[meet]

use = self

use_wpn = self

Схема meet

 

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

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

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

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

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

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

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

Войти

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

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

AMK-Team.ru

×
×
  • Создать...