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

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


Halford

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

1. Если мне память не изменяет, то всегда отображается именно подзадание, а не само задание.

2. "Схожие" - понятие растяжимое, и эта растяжимость задаёт разные алгоритмы. Судя из твоего кода, во-первых, ты пытаешься передать схожие по названию предметы, во-вторых, ты не знаешь как работает оператор for.

3. В bind_stalker.script есть колбек на взятие предмета из инвентарного ящика - лови свой предмет там.

4. А почему бы не проследить логику дальше в сриптах? Логика Шустрого действительно одна из работ гулага в Деревне Новичков.

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

Поделиться этим сообщением


Ссылка на сообщение


1. Не вижу ничего неподатливого. Вполне логично выводить текущую подзадачу, а не название самого задания.
2. Заранее известно количество "схожих предметов"? Подозреваю, что три? Что касается оператора for, то цифры это не количество циклов, а: первое число, начальное значение счётчика, второе - конечное, а третье - на сколько увеличивать счётчик каждый цикл (по умолчанию - единица); таким образом цикл будет работать до тех пор, пока значение счётчика не превысит максимально возможное значение.
3. Да... почти. Конкретно эта строка - это "регистрация" колбека, т.е. его установка. Если обратишь немного присмотришься, можешь увидеть в ней название функции, а точнее метода, take_item_from_box который и вызывается при взятии предмета из ящика. Сам метод находится по коду ниже. В качестве аргумента принимает как раз тот предмет, который берётся из ящика.
4. Зри в секцию logic@esc_lager_shustryi в файле gulag_escape.ltx.


 

 

читай этот урок

Абсолютно бесполезный в данном случае, ко всему, как видно, совершенно запутавший человека. Если не знаешь что сказать - промолчи.

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

Поделиться этим сообщением


Ссылка на сообщение

@topdog, да вопрос то собственно понятен, только не ясно для чего ты разбираешь сохранение?

По описанию естественно объект не поймать, т.к. одно и тоже описание может быть у всех меток. Кстати, описание можно только изменить, получить строку с подсказкой не получится.

Поделиться этим сообщением


Ссылка на сообщение

@topdog, судя по всему, текст привязан к объекту рестриктора и по тексту ты объект никак не найдёшь ибо просто напросто нет методов. А изгаляться не как - во время игры не получиться разобрать сохранение, для того чтобы пройтись по секциям и найти нужную строку. Так что ... придумай какой нибудь другой способ. Например, когда скриптом ставишь метку (если ставишь конечно скриптом), то можно завести табличку соответствий какой метки присвоен какой текст, что-то наподобие вот такого:

tipsText = {id = text}
где id - это идентификатор метки, а text - разумеется текст метки. Другого варианта лично я не вижу.

Поделиться этим сообщением


Ссылка на сообщение

@riddik121, в случае повторного имени секции получился бы вылет "Duplicate section 'имя_секции' found".

А вот вылет "cannot find section имя_секции" однозначно говорит именно об отсутствии указанной секции.

  • Нравится 1

Поделиться этим сообщением


Ссылка на сообщение

 

 

возможно ли и каким образом менять взаимодействие между например гражданским зомби (класс монстров) и сталкером зомбированным (класс сталкеров), таким образом, что бы они в игре не нападали друг на друга?
Конкретно между этими двумя - нет, во всяком случае, посредством конфигов. Зомбированные сталкеры - это zombied, в табличке communities_relations, а зомби-гражданские - это zombie из monster_relations, таким образом, для гражданских можно установить нейтральные отношения только со всеми НПС (human из monster_relations), включая зомбированных сталкеров.



 

Поделиться этим сообщением


Ссылка на сообщение

@losiara, хотя ко мне закралось подозрение, что @Капрал Хикс всё же прав.

У контролёра в конфиге присутствует строка Friend_Community_Overrides с единственным значением monolith, по всей видимости благодаря которой он не атакует указанную группировку.

Попробуй прописать этот же параметр другому монстру, например слепому псу, и прописать группировку сталкеров, и для теста заспавнить одну собачонку в Лагере новичков. Сам проверить не могу - нет возможности.

 

Поделиться этим сообщением


Ссылка на сообщение

Не совсем понял, что такое "ACS", но связывать аномалию (партиклы) и телепорт (спейсрестриктор) не нужно, достаточно просто поставить их на одном и том же месте, собственно как это сделано на ЧАЭС2.

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

Поделиться этим сообщением


Ссылка на сообщение

@J.A.A., в Деревне новичков в домиках нет аи-сетки, поэтому туда ты никого не отправишь, а на сколько мне изместно, никто этого не правил.

Поделиться этим сообщением


Ссылка на сообщение
@AndreySol, правильно. Как бы очень логично: одна инфопорция - одна метка на карте. Нашёл где ставить метку - перебирать дальше таблицу не имеет смысла.

Поделиться этим сообщением


Ссылка на сообщение

@panzyuza, есть вот такое перечисление:

enum ERestrictorTypes {
    eDefaultRestric torTyp eNone = u8(0),
    eDefaultRestr ictorTyp eOut  = u8(1),
    eDefaultRestr ictor TypeIn  = u8(2),
    eRestrictorTyp eN one = u8(3),
};

Определяющее тип рестриктора:

1 - рестрикторы в которые разрешено входить, запрещено выходить;

2 - рестрикторы в которые запрещено входить, разрешено выходить;

3 - без типа, обычно в таких рестрикторах есть логика.

Изменено пользователем ColR_iT
  • Нравится 1

Поделиться этим сообщением


Ссылка на сообщение

Давайте не будем гадать на кофейной гуще, а заглянем в справочники и туторы, AndrewMor - это тебя в первую очередь касается. В логике в фигурных скобках задаются условия.

Поделиться этим сообщением


Ссылка на сообщение

wallmark_section = explosion_marks - скорее уж это имя не текстуры, а партикла. Хотя, такого партикла в базе нет.

explosion_marks - это имя секции в system.ltx, где задаются параметры wallmark'а. Там есть и другие секции.

 

ammo_elapsed - не знаю, влияет ли значение в конфиге на что-либо, но в движке есть вот такая запись, для класса CWeapon:

int                     iAmmoElapsed;       // ammo in magazine, currently
Возможно это количество уже отстрелянных патронов. Не утверждаю.

 

hand_dependence - про это есть вот такая запись, всё для того же класса CWeapon:

// 0-используется без участия рук, 1-одна рука, 2-две руки
EHandDependence         eHandDependence;
EHandDependence - это вот такое перечисление:
enum   EHandDependence { hdNone = 0, hd1Hand = 1, hd2Hand = 2 }
Про ammo_current ещё вот такое:
//для подсчета в GetAmmoCurrent
mutable int             iAmmoCurrent;
mutable u32             m_dwAmmoCurrentCalcFrame;   //кадр на котором просчитали кол-во патронов
Если мне память не изменяет, то получая значение iAmmoCurrent из движка, с помощью правок движка, мне возвращалось та самое число, что показывает количество оставшихся патронов на худе. Изменено пользователем ColR_iT

Поделиться этим сообщением


Ссылка на сообщение

@VVV32768, что касается недостачи одной спавненной единицы, то с 90% вероятностью могу сказать, что это неправильно составленная функция (спав, ведь происходит в цикле?).

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

  • Нравится 1

Поделиться этим сообщением


Ссылка на сообщение

Проблема в этой строке, если она у тебя выглядит так:

custom_data = <
А ещё удали значение из этой строки:
skeleton_name = open
  • Нравится 1

Поделиться этим сообщением


Ссылка на сообщение

@Fagot., перевести схему в nil можно также, как и любую другую:

on_info = {условия} nil

 

Обездвижить ГГ можно функцией level.disable_input(), потом, когда будет нужно включишь управление функцией level.enable_input().

Поделиться этим сообщением


Ссылка на сообщение

А вылет появляется при сюжетном заходе на Армейские склады по первому разу.

Либо верни родную модель AK-74, либо убери из спавна АрмСкладов "Калашников", который зафиксирован в тисках на базе Свободы.
  • Нравится 1

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

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