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

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


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

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
Ссылка на комментарий

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

 

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

Ссылка на комментарий
В 17.11.2017 в 23:07, abramcumner сказал:

открой исходники

Компиляторов? Я Си плохо понимаю...

 

@abramcumner Что то не сходится cbb01a3266b210c9bb2c9f65bc9af082.jpge5d2ba0130e3ed75220b5080f9e1abf5.jpg

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

У тебя все как написано в таблице

Походу мне нужно нормализовывать режим дня, я прочитал, как нужно получить 1537 для 4 и далее версий, т. к. когда читал про level там говорилось о 4 версии.

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

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

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

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

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

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

Войти

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

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

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