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

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


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

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

В общем-то ничего сложного в этом нет, именно по такому принципу работают смарты (работы задаются динамическими ltx, смотрите gulag_general.script). Вопрос в том, не придётся ли респавнить объекты для применения параметров? Хотя, если сделать это в виде переключения режимов огня, то это и не нужно, по идее можно даже класс менять. Надо будет попробовать проделать такое с вертолётом, чтобы, к примеру, он мог бросить что-нибудь типа бомбы (сменить класс на G_FAKE с G_RPG7).

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

Народ, помогите адаптировать файл bind_stalker от Солянки 3.09 (Прошу ногами не пинайте, на форуме солянки подходящей темы не нашел ( ) для использования озвучки предметов по инструкции с этого сайта

вот сам файл:

bind_stalker - копия.script

 

Пытался адаптировать сам, но оказывается уже существует подобный кэллбэк и он указывает на скрипт mecenit_outfit.script. Поэтому если делать по инструкции с викисталкера то никакого звука при юзаньи предметов у меня нет ( Помогите пожалуйста.

 

Сообщение от модератора Куфзук
Ну давай начнем с того, что колбэки не подобные, они разные! Посмотри внимательно. И вот тебе на всякий случай адаптированая версия: >>Click Me<<

P.S. И лучше, сначала попробовать сделать. Просто ради опыта, а вот если не получиться - всегда пожалуйста! :)

Изменено пользователем Куфзук

Ничто не вечно под луной.

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

Garry_Galler, да мы уже по ЛС поговорили, нашли ошбику. В чарактер_дес_симуляшион вконце секции

ammo_7.62x39_ap

Не было поставлено \n. Вот так было:

...\n
ammo_7.62x39_ap
ammo_vog-25p\n...

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

Добрый день!

Есть среди прочих и такая вот анимация НПС: eat_vodka

Так вот, при назначении такой анимки какому-либо НПС,

очень часто оказывается, что собственно анимация отыгрывается, но бутылки в руке нет,

хотя в профиль этому НПС прописана водка, а также вписана (на всякий случай) строка:

#include "gameplay\character_food.xml", в котором вероятность появления водки увеличил до 100%.

И всё равно, в большинстве случаев, водка в руке не появляется - отыгрывается "пустая" анимация.

Тоже самое происходит и с гитарой и с гармошкой при их анимациях. В чём может быть причина?

И ещё, есть две секции водки: [vodka] и [vodka_a]. Я так понимаю, что для анимации как раз используется вторая?

Пробовал с обоими, результат прежний.

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

Делал диалог поймал на нём такой вылет:

Expression    : start_node && path
Function      : CXml::NavigateToNode
File          : E:\stalker\patch_1_0004\xrXMLParser\xrXMLParser.cpp
Line          : 97
Description   : NavigateToNode failed in XML file 
Arguments     : gameplay\dialogs_escape.xml

Скажите пожалуйста что он значит?

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

Ошибка синтаксиса в файле dialogs_escape. Могу посоветовать программу, она примерно укажет место где ошибка:

XML Validator

Проверяет XML документы на ошибки, недочеты.

_http://ifolder.ru/18269454

 

Весит копейки, а иногда она просто незаменима

Freedom

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

И для XML такая есть? Я думал тока луа чекер и всё, помощники закончились. Ан нет спасибо Призрак

Проверил - ошибок не наёдено. Но вылет есть

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

Тогда остался только один вариант. Нудный, но все же действенный вариант. Забекапь свой диалог_эскейп и потихоньку удаляй свои диалоги. Тогда ты сможешь примерно определить в какой диалоге ошибка

 

З.Ы. А ты точно весь файл скопировал в программу?

Изменено пользователем _Призрак_

Freedom

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

TRAMP14, хочешь - выложи сюда свой файл, попробуем найти.

З.Ы. Файл должен начинаться с :

<?xml version="1.0" encoding="windows-1251" ?>
<game_dialogs>

и заканчиваться:

</game_dialogs>

Может, где то диалог не закрыл, всё может быть...

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

Я вот подумал - может проблема не в XML как в языке а в XML сталкера? Я там запускаю пару скриптов и удаляю 1 поршень. Вот диалог в котором ошибка:

<?xml version="1.0" encoding="windows-1251" ?>
<game_dialogs>
    <dialog id="perevod">
        <phrase_list>
            <phrase id="1">
                <text>Привет! Ты же проводник? Куда ты меня ожешь перевести?</text>
                <next>2</next>
            </phrase>
            <phrase id="2">
                <text>Могу перевести тебя в обход этих стервятников под мостом. </text>
                <next>3</next>
            </phrase>
            <phrase id="3">
                <text>И сколько мне это будет стоить?</text>
                <next>4</next>
            </phrase>
            <phrase id="4">
                <text>Дешевле чем у этих стервятников. Бутылка водки и ты на той стороне</text>
                <next>5</next>
                <next>6</next>
                <action>escape_dialog.est_vodka</action>
            </phrase>
            <phrase id="5">
                <has_info>estb</has_info>
                <text>Согласен</text>
                <next>7</next>
                <disable_info_portion>estb</disable_info_portion>
                <action>escape_dialog.vooodka</action>
            </phrase>
            <phrase id="6">
                <text>Извини у меня нет водки</text>
                <next>8</next>
            </phrase>
            <phrase id="7">
                <text>Ну пошли</text>
                <action>escape_dialog.ter_perexod</action>
            </phrase>
            <phrase id="8">
                <text>Тогда приходи в другой раз</text>
            </phrase>
        </phrase_list>
    </dialog>
</game_dialogs>

 

Я подозреваю:

<action>escape_dialog.est_vodka</action>

,

<disable_info_portion>estb</disable_info_portion>

и

<action>escape_dialog.ter_perexod</action>

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

TRAMP14, диалоги должны начинаться с идентификатора 0 + ещё куча ошибок в структуре диалога. Советую почитать статьи на Wiki ;)

Вот так правильно:

<?xml version="1.0" encoding="windows-1251" ?>
<game_dialogs>
    <dialog id="perevod">
        <phrase_list>
            <phrase id="0">
                <text>Привет! Ты же проводник? Куда ты меня можешь перевести?</text>
                <next>1</next>
            </phrase>
            <phrase id="1">
                <text>Могу перевести тебя в обход этих стервятников под мостом.</text>
                <next>2</next>
            </phrase>
            <phrase id="2">
                <text>И сколько мне это будет стоить?</text>
                <next>3</next>
            </phrase>
            <phrase id="3">
                <text>Дешевле, чем у этих стервятников. Бутылка водки - и ты на той стороне.</text>
                <next>41</next>
                <next>42</next>
            </phrase>
            <phrase id="41">
                <precondition>escape_dialog.est_vodka</precondition> - это - условие, есть ли водка в инвентаре. Если есть, значит ветка диалога появится.
                <text>Согласен.</text>
                <action>escape_dialog.vooodka</action> - это - функция взятия из вашего инвентаря и передачи водки в инвентарь НПС. 
                <next>51</next>
            </phrase>
            <phrase id="42">
                <text>Извини, у меня нет водки.</text>
                <next>52</next>
            </phrase>
            <phrase id="51">
                <text>Ну пошли.</text>
                <action>escape_dialog.ter_perexod</action> - это - функция для перехода в нужное тебе место.
            </phrase>
            <phrase id="52">
                <text>Тогда приходи в другой раз.</text>
            </phrase>
        </phrase_list>
    </dialog>
</game_dialogs>

 

Не забудь удалить мои комментарии ;)

Также советую тебе текст выносить в отдельный файл. Например, в stable_dialogs.xml в папке:

gamedata\config\text\rus

Добавляешь в самый конец так:

    <string id="идентификатор_строчки_текста">
        <text>Привет! Ты же проводник? Куда ты меня можешь перевести?</text>
    </string>

А в диалоге:

    <text>идентификатор_строчки_текста</text>

Иначе, если так не сделать, текст может не появится, или не появится полностью.

Изменено пользователем Disord
Ссылка на комментарий
Иначе, если так не сделать, текст может не появится, или не появится полностью.

Наглые враки, я сам никогда не выношу текст в другой файл и у меня все нормально работает на всех 3-х играх. Да и нужно это только для облегчения локализации.

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

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

 

----

И всё равно, в большинстве случаев, водка в руке не появляется - отыгрывается "пустая" анимация.

Проверьте в m_stalker.ltx строку attachable_items. Если водки там нет, то это и есть причина, надо дописать. У меня такая же байда с биноклем - везде заменил binocular_a на wpn_binoc, а он так не работает - идёт пустая анимация.

Изменено пользователем Полтергейст
Ссылка на комментарий
Министр, не знаю, когда учил диалоги, писали именно это :) Сам не пробовал вот так вот текст писать в диалоге, мне удобней выносить его в отдельный файл - потом только его надо будет открыть, и поправить любые тексты, если понадобится. Изменено пользователем Disord
Ссылка на комментарий

Доброго времени суток, ответьте пожалуйста на такой глупый вопрос: Как выдается инфопоршень с трупа, тайника, короче при обыске?

アレクセイ 高い
Arekusei takai
Ссылка на комментарий

Леня Баньши, пример можешь глянуть на мёртвом новичке-проводнике, который должен провести через тоннель с электрой, после квеста с флешкой. Вот его логика:

custom_data = <<END
[dont_spawn_character_supplies] - эта строчка отвечает за "неспавн" предметов, прописанных в его профиле

[known_info] - это нужная тебе секция, ниже перечисляешь поршни, без знаков эффектов.
esc_tutorial_dead_novice
esc_find_railroad_passage_find_stalker
END

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

Подскажите, что именно значит такая ошибка:

 

[error]Expression    : fatal error
[error]Function      : CScriptEngine::lua_error
[error]File          : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp
[error]Line          : 73
[error]Description   : <no expression>
[error]Arguments     : LUA error: d:\games\stalker\gamedata\scripts\move_mgr.script:250: attempt to call field 'get_anomaly_list_for_pos' (a nil value)

Что именно это значит? Он не видит функцию или же она возвращает nil? Если что, функция на месте (скрипт amk_anoms). Может ли какая-то ошибка в синтаксисе LUA до этой функции вызвать такое безобразие?

 

И ещё один вопрос: я сделал так, что вместо аномалий amk_zone* спавнятся просто zone_* (динамические аномалии), так вот, во втором случае из них появляются артефакты. Как-то так само собой получилось, что их появляется много, и в такой ситуации почему-то очень косячат диалоги (просто не отображаются некоторые фразы для ответа, например "До встречи". Как только менаю обратно на amk_zone* - глюк исчезает вместе с большим количеством артов. Как это может быть связано между собой?

 

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

И ещё одно наблюдение: динамические рестрикторы у меня снова заработали, правда, только для монстров (людей до этого перевёл на схему anomaly_evader). Теперь я понял, почему они слетают. Похоже, что это первый признак перегрузки стека - функции add_restrictions() и remove_restrictions() из-за этого просто перестают работать.

 

Нашёл в скриптах немало функций, которые попусту перебирают все объекты и тратят на это время. Выглядят они так:

for i = 0,65534 do
  if level_object_by_id(i)~= nil then
--' Какое-то действие
  end
end

Для этих целей есть таблица db.creatures, было бы логичнее использовать её, т.к. там только онлайн-объекты.

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

Привет всем. Кто подскажет, как заставить один гулаг напасть на другой?

________

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

________

Ну, например, есть нападения на гулаги в ЧН. Как там это сделано?

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

SkyLoader, боюся для ТЧ придется делать именно так, как тебе не подходит. На ЧН, мне кажеться, смарт_каверы реализуют такую возможность, хотя ...

Вобщем в помощь тебе ситуация с Черепом на Армейских Складах, атака долга на свободу или наоборот. ;)

 

_Призрак_, у них, у кого?

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

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

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

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

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

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

Войти

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

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

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