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

SWEAW

Пользователи
  • Число публикаций

    34
  • Регистрация

  • Последнее посещение

  • AMKoin

    110 [Подарить AMKoin]

Весь контент пользователя SWEAW

  1. Это сделал, касаемо этого: специально ставил малые значения (игровую минуту и 2 соответственно), чтобы было быстрее проверять, что меняется. Поменял на игровой час и два соответственно, но по итогу с этим кодом: с прошлого раза ничего не изменилось. Ну как, лог теперь перестал бесконечно спамить обновлением tt.update_time 1, потому что она перестала бесконечно изменяться, и tt.resupply_time 1 перестал обновляться вообще, только, как и до этого, после сейв-лоада с торгашом в оффлайне. Но какие бы значения прибавки времени я не выставлял, хоть минута, хоть десять, хоть час - Бороде вообще плевать. Просто стоял около него ждал, пробовал много дней проспать (на случай, если все-таки размерность времени не мс, а больше), ждал и отбегал в оффлайн/прибегал обратно, спал по той же схеме - ноль эмоций, как с последней покупки было товаров, так и осталось, не обновляется. Возвращал реальное время вместо игрового - те же результаты. А реально ли вообще принудительно вызывать функцию npc:buy_supplies(tt.config, str) через on_game_timer в сочетании с инфопоршнями? Условно: Или эти функции исключительно для файлов логики/диалогов работают?
  2. Не знаю, интересны ли эти попытки в "исследования", но считаю нужным подержать в курсе о том, что (не) получается в результате манипуляций. В общем, сделал по совету, это тоже добавил, логи выставил сначала только на конечные значения переменных с "_time", плюс изначально в скрипте были printf на некоторые параметры сохранения\загрузки, еще заменил-таки time_global() на game.time(), потому что эмпирическим путем получилось, что ведут они себя абсолютно одинаково (не работают и ни на что не влияют, по крайней мере исходя из конечных цифр). Потом еще зачем-то выставил логи на buy_supplies и ей подобные, хотя их значения вообще, как оказалось, про другое. По итогу, скриптовая мешанина (цифры в логировании после переменных в логировании задумывались, чтобы разделить "допакетные" изменения от "пакетных", получилось.. что получилось): И примерно спустя часа полтора чистки 50к+ строк лога от лишней инфы, которая не касается Бороды, с которым все и проверялось (троеточия как раз заменяют не относящиеся к делу логи или бесконечные увеличения tt.update_time 1): Ну и после этого я снова уперся в дно своего понимания происходящего, ибо лог-то и значения вижу, а закономерность между ними и кодом скрипта, по крайней мере, сходу, не нахожу, хоть убей. Единственное, что удалось увидеть - это что обновление произошло, когда единственный раз всплыло допакетное значение tt.resuply_time, но куда от этого плясать - не понимаю, ведь оно равно update_time 1, которое постоянно увеличивается.
  3. @WinCap спасибо за очень подробное разжевывание, попробую и это протестить. А за дистанцию перехода в оффлайн\онлайн, насколько я помню, отвечает же радиус а-лайфа, вроде и параметр похоже называется и меняется где-то одной строчкой? Только это, как я слышал, чревато проблемами с производительностью? Но если сугубо теоретически - можно же на относительно небольшой локации разместить торгаша так, чтобы при увеличенном радиусе а-лайфа и нормально работающем скрипте он и не обновлялся на ф5-ф9 в пределах уровня, и игра бы работала удобоваримо?
  4. Спасибо, стало чуть яснее назначение конкретно этих переменных. Но update_time и особенно resuply_time конечно все равно очень напрягают, особенно вторая, название буквально кричит о том, что она должна отвечать как раз за то самое время обновления. Попробую этим самым логированием проверить-таки назначение, поиграюсь еще с разными значениями. Правда, если привязка к сейв-лоаду зашита в движок, то это фиаско, ибо смысл всех манипуляций с временными периодами по сути обнуляется. Я конечно читал поверхностно, что, имея исходники, можно их изменить и в visual studio скомпилить в "измененный" движок, но, во-первых, исходников OpenX-Ray я не нашел (есть репозиторий на гитхабе, но то ли он неполный, то ли его как-то особенно скачивать надо через шаманство), а во-вторых, без хоть каких-то ориентиров на где и что добавлять, тем более, с нулевыми знаниями, лезть туда будет идеей не самой светлой. Пардон за эту простыню ненужной инфы, просто обидно, что такая, по сути, мелочь закрыта там, куда можно соваться только во всеоружии в контексте моддинга. Хотел еще уточнить насчет примера использования логирования, вот, допустим, часть кода пресловутого trade_manager: if tt.update_time ~= nil and tt.update_time < time_global() then return end tt.update_time = time_global() + 3600000 Чтобы залогировать tt.update_time должно быть так: if tt.update_time ~= nil and tt.update_time < time_global() then return end tt.update_time = time_global() + 3600000 to_log("Message: %s", tt.update_time) ? И в каком именно месте скрипта можно это прописать, конкретно вот в таких местах манипуляции с нужными переменными, или в любом месте до последнего end, кроме всяких if и for?
  5. Мне и этот дефолтный ЗПшный скрипт не поддается, потому что ни опыта в скриптинге, ни достаточного времени на изучения LuA, ни энтузиазма/понимания по отношению к любому виду программирования нет. Ресурсов хватает пока лишь на попытки адаптаций того, что уже в шаблонном или похожем виде где-то было или есть, собственно за этим я сюда и обратился, возможно, изначально некорректно обозначив просьбу: я ищу код или файлы скриптов из разных модов, где реализованы описанные механики (отвязка ассортимента торговли от сейв-лоада и его обновление по игровому времени). Скачивать целиком моды по 20-30-40 гигабайт ради поиска нескольких текстовых файлов - времязатратно и нерационально. Если ни у кого таких файлов под рукой нет, то ищу указания на ошибку в коде или его дополнения от тех, кто уже с подобным сталкивался/имеет достаточный опыт в этом деле, ведь, как мне кажется, для них это будет на несколько порядков проще, чем мне еще больше пытаться усложнять (добавлять функции) и так плохо воспринимаемую информацию без гарантии по итогу найти решение самостоятельно. Если такого рода помощь в этой теме не получить и она предназначена для другого, подскажите, пожалуйста, куда можно обратиться.
  6. Всем привет. Подскажите, пожалуйста, как изменить trade_manager.script, чтобы торговцы обновляли ассортимент не раз в реальные сутки, а раз в несколько игровых, и, не менее важно, чтобы обновление ассортимента не вызывалось сейв-лоадом (потому что это по сути своей абуз). Знаю, что то ли в ОП-2.2, то ли в ОГСР, в Аномали и ее производных есть такие фичи, но грамотно их оттуда выдернуть, даже покурив несколько гайдов и уроков, не получается, там несколько другие файлы и их структура. Сам пытался заменить упоминания time_global() в вышеописанном скрипте на game.time(): Cуть и размерность вроде одинаковая, только одна для времени ИРЛ, вторая для игрового. Но в игре обновление перестало происходить вообще, хотя и вылетов не было. Вторая проблема, с отвязкой от сейв-лоада, вообще с мертвой точки не двигается, не могу понять, почему даже оригинальные реальные сутки напрочь игрой игнорируются, сбиваясь сохранением-загрузкой. Два-три дня уже над этим сижу, близких референсов не нашел, сам пока не вывожу.
  7. @warwer А отдельные анимации пришивать онли через 3D Max? Дело в том, что я не особо пока стремлюсь в продвинутое редактирование, аля копаться в СДК, 3ДМаксе, даже оллспаун пересобирать не хочется, пытаюсь пока что разбираться только в конфигах и совсем чуточку в скриптах. Так вот, есть ли где-то в этих категориях файл, отвечающий за запрет доставания слотов с детектором, и можно ли его отредактировать так, чтобы он запрещал еще и какие-то отдельные стволы? Если нет, то так и быть, придется оставить как есть..
  8. Вот как сделать, чтобы было как на четвертой картинке, а не как на второй и третьей?(
  9. @warwer Пришиты только БМ-16 с собственным обрезом, чейзер, спас и сайга, но да, такое происходит с ними всеми.
  10. Здравия желаю. Редачил конфиги OGSM 1.8, наредачил всем дробовикам пистолетный слот, подогнал ячейки, интерфейс, все дела. Но когда достаю детектор, дробовик остается в одной руке, дико кося стволом чуть ли не через весь экран, а сам детектор при этом сильно смещается влево, что тоже смотрится так себе. Выглядит это как-то так: Подскажите пожалуйста, можно ли как-то ограничить список стволов, которые можно доставать с детекторами, или последние тупо к пистолетному слоту привязаны?
  11. Всем снова здравия. Подскажите, где можно (и можно ли вообще) изменить скорость передвижения ГГ в воде?
  12. SWEAW

    БЛОКпост

    Если не можешь дать адекватный ответ на вопрос или хотя бы высказаться ПО САБЖУ - лучше молчи вообще, будь добр.
  13. @UnLoaded Мне просто интересно, можно ли поставить пользовательскую геймдату на стим, но если так нужен смысл, то, допустим, у друга есть стим версия, он заядлый анти-пират, поэтому ни под каким предлогом не хочет качать пиратку, даже при том, что игра у него уже куплена, но в отредаченную мной версию ТЧ он поиграть хочет. Собственно, повторю - можно ли пользовательскую геймдату поставить на стим-версию или вообще никак и никоим образом нельзя?
  14. @BoBaH_671 А шо делал, распаковал геймдату пиратки ТЧ 1.006, играя в нее же постепенно редачил файлы, в основном конфиги и скрипты, добавил пару моделек\текстур\звуков, полноценным модом один фиг не назовешь, но на пиратке все работало прекрасно. Оставил отредаченную геймдату, понес пиратку, поставил ТЧ 1.006 со стима, перенес геймдату в корень: запуск - заставка ТЧК - вылет с прекращением работы XR_3DA. As simple as that. А что еще надо было сделать?
  15. @BoBaH_671 Я бы и рад не переживать, да только я уже попробовал, и при запуске после заставки THQ безлоговый вылет с прекращением работы XR_3DA.exe
  16. Товарищи, подскажите, пожалуйста, возможна ли установка измененной геймдаты на стимовскую версию сталкача? В руководстве к ТЧ в стиме есть список поддерживаемых модов, которые точно можно установить, но насчет других изменений там, к сожалению, ни слова.
  17. @Dennis_Chikin Не могу сказать, нравится она мне или нет, т.к. первый раз вижу такую формулировку. Это из оригинальных файлов? Если да, то моя ошибка, что неправильно понял отвечавшего мне человека и стащил функцию из мода со спальником. Не могли бы уточнить, где эти функции находятся? В любом случае спасибо, при возможности протестирую работоспособность в игре.
  18. @UnLoaded При вызове исходных функций без изменений и по отдельности происходит ровно то же самое, что и при "попытке писать скрипты наугад". Если бы функции из схемы сна работала и с переходом на локации, я бы наверное не лез в специальную тему, чтобы спросить, где эта самая функция находится, потому что она действительно самый очевидный вариант на проверку. Но т.к. она, очевидно, не подошла, и если этого не было понятно из исходной формулировки вопроса, то я перефразирую: есть ли где-то в файлах игры функция НЕ ИЗ СХЕМЫ СНА, мгновенно перематывающая время на нужный отрезок вперед или же сразу устанавливающая желаемое время? Если имелась в виду какая-то другая схема сна, которая есть в файлах, но не использовалась в оригинальной игре, то пожалуйста, уточните, о какой конкретно схеме идет речь, и где она находится. А если таковой в файлах игры нет вообще, то подскажите, где ее можно найти. Заранее спасибо.
  19. Я там уже искал, функция оттуда либо перематывает время до бесконечности при смене локации, либо, если использовать стоппер, останавливает его насовсем, без прибавки. Это функции от спального мешка. Сначала попытался просто подредачить starter: При смене локации время перематывалось бесконечно. Решил объединить с куском dreamer'а: Время остановилось вообще. После оставил от обоих функций только level.set_time или level.set_time_global с заменой переменной time_global() на нее же, но плюс час, но эти функции он не определяет.
  20. Господа, а есть где функция, моментально "перематывающая" игровое время на сколько нужно вперед? Допустим, в диалоге с проводником вызвал функцию смены уровня, но по игровому времени получается, что он доводит меня до места моментально, а это как-то не комильфо.
  21. Иии снова здравия желаю, мелочный вопросик. Где лежит функция, отвечающая за вывод на экран советов в самом начале игры (аля, чтобы достать бинокль нажмите 5 и т.д., текстовый туториал, проще говоря), и от чего она зависит, от времени или от попадания ГГ в определенную зону на локации?
  22. Если дело в этом, то тут я бессилен. Пробовал различные версии компила\декомпила оллспавна, ни одна в упор архив не видит, или видит, но не хочет распаковывать. Все делал по инструкции(ям), так что что-то, скорее всего, с системой. Да и потом решил, что стоит попробовать адаптировать максимум наработок, не использующих оллспавн.
  23. @gam Что с новой игры, что с других сейвов - то же самое. Отображаться бесконечность отображается, но на деле больше 5000 у него нет.
  24. @UnLoaded И в деск_милитари и в деск_свобода прописал <money min="100000" max="100000" infinitive="1"/> после ранга и репутации. В игре в окошке торговли с ним у него в деньгах отображается "--", аля бесконечность, только вот при попытке продать ему что-то дороже 5к пишет "у НПС недостаточно денег".
  25. Ребят, что за жесть вообще. Скряге упорно не желает прописываться бесконечное количество денег, как у остальных торгашей. И в НПСшных параметрах его ковырялся, и в параметрах его, как торгаша - один хрен у него только эти злосчастные 5000 на руках. Баг или все-таки правится как-то?
×
×
  • Создать...