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

SWEAW

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

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

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

  • AMKoin

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

Баланс оценок

-2

Недавние посетители профиля

Блок недавних посетителей отключен и не доступен другим пользователям для просмотра.

  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
×
×
  • Создать...