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

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


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

Вампир35А что имено показать!Вставил скрипты в паку script.В bind_Stalker.script написал

function actor_binder:on_item_drop (obj)

player_ogg.lose_item(obj)

level_tasks.proceed(self.object)

--game_stats.update_drop_item (obj, self.object)

end

В файле system :

#include "misc\OGG_player.ltx"

Совместил тексуры

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

KD87 Выскакивает ошибка после удаления точки с запятой:

 

FATAL ERROR

 

[error]Expression : fatal error

[error]Function : CInifile::r_section

[error]File : E:\stalker\patch_1_0004\xrCore\Xr_ini.cpp

[error]Line : 342

[error]Description : <no expression>

[error]Arguments : Can't open section 'player_ogg'

 

 

 

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

KD87 Сейчас заново прописал предмет у Сидора и шибки нет и вообще никакой реакции.

 

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

ColR_iT

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

serafim-kr, а к чему ты адаптируешь плеер? Ведь на чистой игре он и сам нормально выдается.

 

Не вводи в заблуждение! В чистой игре его просто нет. Другое дело, что он скриптами выдается при адаптации, если это так...

ColR_iT

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

Всё отлично установил плеер купил у Сидора,но когда нажимаеш использовать выскакивает ошибка:

[error]Expression : fatal error

[error]Function : CRender::texture_load

[error]File : E:\stalker\patch_1_0004\xr_3da\xrRender\Texture.cpp

[error]Line : 295

[error]Description : <no expression>

[error]Arguments : Can't find texture 'ui\vr_flash'

Поскажите пожалуйста что это значит и как исправить?

 

А банально переводчикиком не пробовал воспользоваться? Переведи то, что ты сейчас привёл и попробуй догадаться сам - я уверен у тебя получится.

ColR_iT

 

Добавлено через 46 мин.:

Спасибо за помощь всё получилос!только не играет музыка но я думаю что это уже не проблема.

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

Добрый день.

Давно хотел внести ясность в следующие параметры

min_view_distance - что это простым языком и как влияет значение ?

- коэффициент минимальной видимости (наилучшая), на который видит непись. Множить на eye_range. Например, eye_range = 140, множить на min_view_distance = 0.4 - получим 56 метров. Грубо говоря, это дистанция, на которой нпс заметит сразу.

max_view_distance - что это простым языком и как влияет значение ? - коэффициент максимальной видимости. Множить на eye_range, как и выше. Получается, максимальная дистанция обнаружения.

visibility_threshold - что это простым языком и как влияет значение ?

always_visible_distance - что это простым языком и как влияет значение ?

time_quant - что это простым языком и как влияет значение ? - влияет на время обнаружения. Меньше - быстрее.

decrease_value - что это простым языком и как влияет значение ?

velocity_factor - что это простым языком и как влияет значение ? - насколько я думаю, это фактор скорости движения (т.е., чем быстрее движешься, тем легче заметить). На практике разницы не выявил.

luminocity_factor - что это простым языком и как влияет значение ? - освещенность, при которой видит непись. Больше - непись хуже видит в темноте.

transparency_threshold - что это простым языком и как влияет значение ? - насколько непись хорошо видит через всякие кусты. Больше - хуже замечает.

still_visible_time - что это простым языком и как влияет значение ?

 

Если кто то знает точное описание и значение цифр в этих параметрах - напишите хоть в личку.

Для меня это важно.

 

Ответил на то, что проверял и в чем уверен. Cyclone

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

Возник вопрос.

В файле treasure_manager.ltx есть условия на выдачу тайника найденных на убиенных. Условие это задаётся в строке condlist, сами условия ясны как белый день, но вот что означает цифра после, я недоумеваю.

Пример такой строки:

condlist = {=npc_rank(veteran)} 2

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

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

Просмотрел Shpargalka_AMK_v6 от n6260, прошелся по форумам мододелов но так и не нашел ответа.

Вопрос такой: как изменить параметры ПНВ (например увеличить яркость) и если не трудно описать параметры в файле конфигурации ПНВ.

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

AMD A6-9400 Radeon R5, 4 Гб, GT1030
Stalker ТЧ, Зона поражения, Зона поражения2, История Прибоя, Жесть, АМК, Simbion, Sigerious mod, Народная солянка, DMX mod, LWC, LWR, Тайные тропы2, Долг Философия войны, Апокалипсис, Возвращение Шрама, LWToD, Поиск DIES IRAE, Large Zone, Variant Omega, Alternativa, LWO 

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

Для ПНВ нужно сначала создать эффект. Или же удовольствоватся уже имеющимися.

Сейчас точно можно найти (сделать) пять ПНВ на базе имеющихся:

Два дефолтных (плохой зеленый и синий).

Зеленый улучшенный.

Эдакий светлый ПНВ (визуальный эффект как на Радаре, до отключения мозговыжигателя).

Белый ПНВ (создал один из форумчан) эдакий черно-белый очень яркий.

Все они есть в той же солянке к примеру. Гттовые файлы и эффекты. Бери и пользуйся.

А само создание своего эффекта ПНВ легко гуглится. Даже есть утилита (названия не помню). Поюзай поиск в старых темах "ковыряемся в файлах ТЧ". Там как-то это долго обсуждалось.


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

Здравствуйте.У меня есть вопрос:

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

 

 

Добавлено через 18 мин.:

Сталкер версии 1.0004

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

Здравствуйте у меня появилась идея я хочу у вас спросить можно ли ее реализовать ))))

Как сделать так чтобы при включение двигателя определенной машины включалась музыка ?

Пример: Запорожец --- такси музыка

Нива --- какая нибудь военная музыка

и т д

Пункт 3.

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

shahvkit, luminocity_factor это только для актора написано в коментариях, но непонятно в каком смысле, только на обнаружения актора наверное влияет, но работает или нет, неизвестно, неписи видят и в полной тьме

Slot, врятли иконку можно сменить, только если фейком прикрыть, а визуал зависит напрямую от костюма

S.T.A.L.K.E.R-DOLG, в дмх моде есть радио в машине, возможно это тебя и интересует

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

S.T.A.L.K.E.R 1.004, Народная..Солянка от 19.04.10, дополнение 14.08.10, патч 3.09.10, DMX 1.3.5, Saruman addon 1.1

Vkontakte

Добавление нового транспорта в сталкер

Ссылка на комментарий
Slot, Визуал ГГ может если только переодеть в другой костюм, А вот иконку точно не изменить пока игру не перезапустишь. Если устраивает такое способ изменения, то можно простым батником задействовать.

ЯДиск папка с крутым схроном!

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

Немного усидчивости и шевеления извилинами и вот он - алгоритм выдачи тайника в ТЧ.

Начну с лирики...

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

Цифра в конце стоки condlist, в файле treasure_manager.ltx, задающая условие на выдачу тайника, не какая не вероятность и не колличество выполненых условий, как думал я, а это просто цифра, да-да именно цифра и ничего иначе.

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

condlist = {=npc_rank(novice) =actor_on_level(l01_escape)} 2, {=npc_rank(novice) =actor_on_level(l02_garbage)} 2

Всё что внутри блока расматривается как "and", т.е. должны выполниться все условия: и НПС должен быть новичок, и локация должна быть "Кордон", это что касается первого блока. Сами же блоки расцениваются как "or": либо этот блок, либо тот.

 

Теперь собственно, сам алгоритм выдачи...

Алгорит описан в файле treasure_manager.script, но вот до принципа его работы ещё нужно догадаться.

 

Для большей наглядности картины, рекомендую открыть файлы treasure_manager.ltx и treasure_manager.script , дабы воочию наблюдать ход событий.

Неже в скобках будут указаны строки, для быстрой навигации по файлу treasure_manager.script

 

При обыске трупа вызывается метод use класса CTreasure (93). Метод считывает все параметры убиенного и сравнивает их с параметрами community и condlist, которые уже инициализированы в конструкторе класса (66 и 77 соответственно). В методе есть оператор for (98), который обрабатывает таблицу treasure_info (54), по элементам которой и происходит сравнение.

При переборе этих элементов, загадочная цифра в конце блока condlist, присваивается переменной treasure_prob (100), при условии, что НПС подходит по заданным условиям, если же условия не выполнились, то присваивается 0. Затем идёт сравнение - равно ли её значение стам:

if tonumber(treasure_prob) == 100 then

Отсюда, вытекает два вывода:

1. Данная проверка всегда в оригинале вернёт false, т.к. значения цифры больше 10 просто нет.

2. Если в condlist поставить число 100 после блока, то такой тайник будет выдан в обязательном порядке, с тем требованием, что условие в блоке выполнились и группировка НПС совпала с community и дальнейшего вычисления не произойдёт.

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

 

А дальше и начинается то самае шаманство, которое определяет выдавать нам тайник или нет.

В таблицу avail (113) заносятся данные для каждого тайника подходящего под условия нашего обыскиваемого НПС. Т.е. если condlist вернул true и группировка, та что нужно. Данные заносятся не все, а только имя секции тайника (k) указывается в квадратных скобках в файле treasure_manager.ltx и treasure_prob для этого тайника, т.е. наша непонятная цифра, в таблицу она заносится как prob. По большому счёту, эта таблица хранит в себе имена тех тайников, из которых будет производится выбор, какой именно тайник выдавать.

Далее переменной tr_sum присваивается значение treasure_prob (114) и поскольку всё это происходит в цикле, то данная переменная хранит в себе сумму всех значений treasure_prob для тайников подходящих под условия (нужный НПС, нужное место).

 

Если вы не поняли последнее предложение прочтите его ещё раз и так до тех пор пока не поймёте, потому как это ключевой момент!

 

Дальше, проверка на равенство (120) переменной tr_sum и ноля (такое произойдёт, если за блоком condilst будет стоять значение 100), а также проверяется вернула ли функция math.random значение меньше 65 или нет... вчитайтесь внимательно - функция math.random.

Если что-то одно вернёт true, то тайник выдан не будет.

 

Затем определяется какой именно тайник будет выдан.

Переменной tr_w присваивается случайной число (126) в диапазоне от 1 до значения переменной tr_sum, которая в свою очередь хранит сумму цифр в condlist, тех тайников, которые прошли отбор по community и condlist.

Потом происходит перебор элементов таблицы avail (127), где:

Переменная tr_w уменьшается на значение prob каждого элемента массива. Так происходит до тех пор пока данная переменная не станет отрицательной, как только это произошло, выдаётся тайник, чей prob был вычтен последним.

Всё.

 

Выводы...

Цифра в строке condlist не какая на хрен не вероятность, а просто цифра, и каково её значение особой роли не играет. Вообще GSC вероятно немного не правильно распределили эти цифры, в алгоритме просматривается процентные соотношения, но высчитать их, зная что работает функция random физически не реально.

Можно заметить, что в алгоритме две вероятности: первая определяет будет ли выдан нам тайник вообще (121), вторая определят какай именно тайник будет выдан (126), но опять же таки, просчитать какой именно - крайне трудно, а то и вообще невозможно. Так что, если хотите, чтобы тайники выдавались чаще, измените число 65 в строке 121 на меньшее.

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

Спасибо за внимание.

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

ColR_iT,

Интересный и детальный разбор

Может имеет смысл создать отдельную тему, открытую только модераторам (дабы избежать флуда), и выносить туда такие вот детальные разборы? Ведь есть немало подобных постов от Artos, malandrinus, твоих, и др., но они теряются в море флуда ковырялки а потом уходят в архивы (которые уже вряд-ли когда то будут прочитаны). Когда то для себя делал вырезки подобных разборов в One Note, если нужно, попробую найти в архивах.

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

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

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

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

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

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

Войти

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

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

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