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

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

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

@BFG чем тебя варка артефактов не устраивает-то? Создай уникальную аномалию, без спецэффектов, невидимую, да добавь рецепт варки с нужным тебе предметом. По окончании варки пусть твой инфопоршень выдается. Как с Камнем Удачи, который из осколка монолита варится. Вот из старой солянки кусок, из amk_mod.script:

				["mozno_varit"] = {
					komp = {["af_part_monolit2"]=true},
					cel = {["af_kamen_udachy"]=true},
					vremya = {0,0,1},
					not_for_mutator = true,
					info = "spawn_kamen_udachy"
				},

Мне кажется, это самый простой вариант будет.

 

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

@dsh в том то и дело, что ЭТОТ вариант не работает при оживлении Мухи в Госпитале.

Я проверил уже ВСЕ рестры и экшены. Я проверил уже ВСЕ поршни и координаты. на текущей Соли по сравнению с Солью 2010.

Не работает.

Иначе я бы не задавал этого вопроса.

Я не понимаю,  в следствии каких причин вдруг Муха перестала оживлятся. Надо кинуть арт в определённую точку. Но ведь такого никогда не было.

Поэтому надо поменять условия оживления. Надо просто кинуть арт в рестр и выдать поршень. БЕЗ всякой варки. А уж остальное я в экшенах пропишу как надо.

Мне главное отследить чтобы определённый арт упал в определённый рестр и выдался поршень.

 

p.s.  я НЕ понимаю почему так происходит, что у 99% юзеров возникают проблемы с оживлением Мухи. Поэтому надо измениь и условия и действие и сделать всё проще.

Какая-то неведомая мне правка мешает. А поскольку Людмила (lsclon)покинула моддинг навсегда, а кроме неё никто не знает, то я прошу помощи у форума.

"Кругом зомби.....у меня кончаются патроны...."

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

Там две причины:

 

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

2. Неправильно считается радиус аномалии.

Говорю же, лучше всего, если Алексей сам поправит/дополнит.

Добавлено BFG,

Аномалия НЕ удаляется. Она там есть всегда.

Ссылка на комментарий
17 minutes ago, BFG said:

у 99% юзеров возникают проблемы с оживлением Мухи

Я не ничего не могу сказать про новую НС. Я знаю, почему это происходило в старой солянке. В первых, из-за дурацкой реализации варки, когда проверяется расстояние выброшенного артефакта от аномалии, а не актора от аномалии. Мало-ли, куда этот артефакт упадет и отпрыгнет. А во вторых потому, что при сейв-лоаде удаляется та самая аномалия, варка в которой должна оживлять Муху. Нужно блокировать удаление аномалий в Госпитале, если есть поршень начала сцены и еще нет поршня оживления Мухи. Возможно, одна из этих или сразу обе проблемы присутствуют и в новой солянке.

 

А может в новой солянке оживление Мухи вообще по другому принципу построено и я гадаю на кофейной гуще.

 

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

Все именно так. Для начала - просто тупо радиус увеличить. Вариант - аномалию прописать в олспавн с большим радиусом и нулевым effective_radius

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

Короче, предлагаю еще вариант, немного переделанный, очень удобно, если такие вещи за игру надо выполнить несколько раз с разными предметами и рестрикторами. Вставляем таблицу такого вида перед function actor_binder:on_item_drop (obj):

local drop_tbl = {

		{zone = "restrictor_1", item_sect = "item_section_1", info = "infoportion_1"},
		{zone = "restrictor_2", item_sect = "item_section_2", info = "infoportion_2"}
				
		}

После function actor_binder:on_item_drop (obj) вставляем:

for k,v in pairs(drop_tbl) do
	if utils.npc_in_zone(db.actor, db.zone_by_name[v.zone]) and obj:section() == v.item_sect and not has_alife_info(v.info) then
		db.actor:give_info_portion(v.info)
	end
end

Пояснения излишни. Для каждого нового предмета с нужным рестриктором через запятую дописываем в таблицу строки такого вида:

{zone = "имя_рестриктора", item_sect = "секция_предмета", info = "инфопоршень"}

И всё это сделано на оригинале, никаких солей у меня нету, поэтому предлагаю что могу. Работает.

Изменено пользователем BoBaH_671
  • Спасибо 1

Ранее был известен под ником BoBaH_671.

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

Столкнулся с такой проблемой: в сталкере ТЧ  1.0004 при выставлении моего родного разрешения 1366х768 становится очень большой шрифт, надписи в инвентаре, ПДА, ХУДе вылезают за рамки. Раньше я играл в 1.0004 на другом системном блоке, но с тем же монитором, и все было нормально. Как можно данную проблему исправить?

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

2 abramcumner:

А что - есть возможность стандартными средствами, пользуясь только SDK, влиять на порядок апдейта смартов и респавнеров ?

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

2 abramcumner:

А что - есть возможность стандартными средствами, пользуясь только SDK, влиять на порядок апдейта смартов и респавнеров ?

Вроде нельзя, СДК и не для этого нужен. Порядок апдейтов определяется в движке/скриптах.

Но можно добавить объектам в СДК свойство "порядок апдейта" и строить апдейты в движке, основываясь на нем.

 

А еще закладываться на порядок апдейтов плохо. А для 2017 непростительно плохо :)

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

Ага, вот и не закладывались. Простая копипаста того, что когда-то было сотворено в СДК. Совершенно без задних мыслей. Результат - странен.

 

Кстати, чтоб 2 раза не вставать: напомните мне кто-нибудь, что делают info в файлах level.spawn ?

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

что делают info в файлах level.spawn

Это info которые прописаны в кастом дате НПСов. Ну например на Кордоне в трупе бандита на элеваторе. Обыскал труп - выдался поршень.

И файл level.spawn не используется игрой вообще. Он используется только для СДК.

 

  • Полезно 1

"Кругом зомби.....у меня кончаются патроны...."

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

@BFG он используется компилятором, СДК его создаёт. Игрой он используется только на МП картах.

Добавлено BFG,

Это я прекрасно знаю. Вопрос был про иное.

Ранее был известен под ником BoBaH_671.

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

Пытаюсь разобрать level.cform по этим статьям 1, 2. В 1-й статье сказано: "В двоичных файлах байты представлены в обратном порядке. Например, число 0x12345678 в файле будет выглядеть так: 78 56 34 12.", так мне нужно реверсить строки c байтами из хикс редактора (HEX Workshop)? В той же статье написано, что в начале каждого чанка есть 8 байтный заголовок, то мне учитывать этот заголовок абсолютно во всех чанках файла?

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

то мне учитывать этот заголовок абсолютно во всех чанках файла?

Конечно, а как еще. Но в файле level.cform, как и  указано в статье 2, чанков ровно 0 штук.

  • Спасибо 1
Ссылка на комментарий
Только что, abramcumner сказал:

чанков ровно 0 штук

В статье: "Файл состоит из одного блока, который содержит в себе следующее (для версии 4)". Разве не 1 чанк с 3 вложенными?

Ссылка на комментарий
Только что, abramcumner сказал:

level.cform нет чанков

Читать данные друг за другом? В 1 таблице не задан размер для вершин и треугольников, как же я узнаю где кончаются вершины и начинаются треугольники? И с реверсом байт как быть?

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

Количество вершин
-
DWord(4)
Количество треугольников
-
DWord(4)

Вот же у тебя есть количество вершин. Как прочитаешь вершины, так пойдут треугольники. Одна вершина - 12 байт по 4 байта на координату. Один треугольник - 16 байт.

  • Спасибо 1
Ссылка на комментарий
Только что, abramcumner сказал:

Вот же у тебя есть количество вершин.

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

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

Реверсом байт вообще не заморачивайся, читай дворды, ворды и реалы и все будет хорошо.

 

А еще лучше закрой статью и открой исходники. лучше смотреть первоисточник, чем сомнительную интерпритацию.

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

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

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

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

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

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

Войти

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

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

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

AMK-Team.ru

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