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

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


Halford

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

Никак. В inventory_sect.ltx осталась возможность это делать (менять true на false и обратно для каждого слота), но её использование приводит к вылету без лога.

Я только что попробовал в файлике system.ltx в секции inventory поменять true на false у ножа и бинокля, зашёл, начал НИ, вылетов нет. В инвентарь они не попадают, т.к. в слоте находятся. Поговорил с Сидоровичем, нажал торговать - вот они, родимые. Продал оба девайса, теперь сижу без бинокля и ножа. Без вылетов. Работает и без фонарика, но ИМХО, смысла нет его выкладывать в инвентарь и продавать. С остальными девайсами не пробовал, но, думаю, что не получится с некоторыми такое провернуть.

 

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

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

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

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


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

Как артефакт сделать прозрачным? Пробовал делать альфа-канал текстуре - не получается.

 

// Надо поменять шейдеры модели артефакта. Министр.

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

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


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

TRAMP14, а width и height получится использовать?

Вот так вот:

<texture width="500" height="500">...</texture>

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

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


Ссылка на сообщение
лнкс, значит всё таки есть :) открой папку weapons с помощью Notepad++, поищи фразу частями или целиком. Обязательно найдёшь.

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


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

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

ammo_7.62x39_ap

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

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

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


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

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

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

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

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

</game_dialogs>

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

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


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

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

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


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

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


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

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

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

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

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

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


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

В общем, вопрос. :)

Хочу повесить на нового НПС типовые задания (Мне нужна работа. Есть что на примете? и т.д.). Зашёл в task_manager.script, внёс своего НПС в две таблицы:

parent_by_story:

    [642] = "stariy",

story_by_parent:

    stariy                        = 642,

Далее, прописал НПС диалоги:

tm_stariy_dialog:

    <dialog id="tm_stariy_dialog" priority="-1">
        <init_func>task_manager.init_stariy_task_dialog</init_func>
    </dialog>

tm_stariy_reward:

<dialog id="tm_stariy_reward" priority="0">
        <init_func>task_manager.init_stariy_reward_dialog</init_func>
        <precondition>task_manager.has_active_vendor_task</precondition>
    </dialog>

К этим диалогам функции:

function init_stariy_task_dialog(dlg)
    get_random_task():init_task_dialog(dlg, "stariy")
end
function init_stariy_reward_dialog(dlg)
    get_random_task():init_reward_dialog(dlg, "stariy")
end

Далее, прописал квест "уничтожить лагерь" в task_manager.ltx:

В list:

stariy_eliminate_lager_1

Ниже:

[stariy_eliminate_lager_1]
type = eliminate_lager
community = actor
text = wolf_eliminate_lager_1_text
description = wolf_eliminate_lager_1_descr
parent = stariy
target = gar_old_boars
reward_money = 1000
reward_reputation = +20
reward_rank = 3
time = 86400
prior = 1

В общем, сделал всё, но вот результат:

70588d4aee919fd9be41969c58016ab1d9764082150211.jpg

 

Почему так? Почему нет работы? Нет же никаких условий там, ничего. Подскажите, пожалуйста, в чём причина?

 

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

И вот почему-то игра не видит именно квеста на работу, будто он вообще не прописан в task_manager.ltx...

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

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


Ссылка на сообщение
_Призрак_, да это ограничение на выдачу награды за квест. Функция проверяет - брал ли я задание у данного НПС или нет. А не высвечивается даже диалог на предложение заданий... Уже не знаю, что делать. А amik, наверное, призрака хочет сделать :)

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


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

Министр, да, смарт существует, вместимость - 12 мутантов, прописаны работы, заспавнено 12 кабанов с логикой, в которой указан смарттеррейн, к которому принадлежит кабан - gar_old_boars.

Функция:

--' Может ли вендор выдать квест
function CRandomTask:parent_can_task(actor, npc, p1, p2, p3)
    local parent = self:get_parent(npc)
    local avail = false
    self:task_avail(actor, npc, nil, nil, nil, "reset")
    for k,v in pairs(self.task_id_by_parent[parent]) do
        if self:task_avail(actor, npc, nil, nil, self.task_info[v].init_phrase_id, true) then
            avail = true
        end
    end
    return avail
end

Проверяет, может ли вендор выдать квест, и, если есть квесты для данного вендора, то функция возвращает true. Если нету, то false и тогда вылезает текст:

На данный момент ничего нет.

Я сам менял переменную avail - вместо false - поставил true. И тогда вылезает:

Есть кое-что:

А в окне, где выбираются задания, только строка:

Эти задания мне не интересны.

То есть заданий не видно. Сделал второе задание по уничтожению лагеря собак - тоже не работает.

Поправочка - проверяет есть ли у игрока активное задание от данного вендора.

Ну да :)

 

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

В общем, покопался в файлах, и понял - что статья по добавлению типовых квестов не совсем полная... Короче, прописал в storyline_info_taskmanager своё задание, далее ещё и прописал в game_tasks_by_vendor задания своего НПСа, и всё равно не появляется. Только что скопировал задание убить сталкера, который даёт Бармен, заместо своего. И задание появилось, я мог взять его. Значит дело всё таки в оформлении моего задания... И скорее всего дело в смарте... Позже ещё покопаюсь, и, если что, отпишусь...

 

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

Да, проверил ещё раз, не работает ни один квест на уничтожение лагеря, хотя квесты на убийство НПС работают. С чем это может быть связано?

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

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


Ссылка на сообщение
Штопр, удалить большинство сюжетных рестрикторов, почистить диалоги с НПС, удалить некоторых сюжетных НПС, если это понадобится, закомментировать теги task, как сказал _Призрак_, в общем, делать всё по порядку. Начал играть - у Сидоровича диалог - удалить. Прошёл тоннель с электрой - стоит рестриктор, удалить, и т.д.

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


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

Здравствуйте! А можно ли запретить использование оружия во время езды на машине в сталкере? Просто камера БТР настроена так, что вид сверху, а пистолет можно достать, и вид, будто Меченый сидит на БТРе и стреляет.

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


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

Всем привет. Знает кто, как отключить это:

! auto-generated bump map: arsenal_mod\upg_sil_762ar_bump#

Ну, и ему подобные записи в лог. Ладно бы если б просто записывал, но ещё игра тормозит на 2-3 секунды. Как-то можно убрать это автогенерирование? Или только засунув этот бамп# в папку? Есть ли для арсенала подобные исправления?

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


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

_Призрак_, а от этого качества в графике не убудет? Игра генерирует такие же бампы-пустышки, да?

 

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

И да, заодно последний вопрос: как вообще убрать начальный ролик про грузовик? Без команды -no_intro.

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


Ссылка на сообщение
Spezer, видмо, проблема в коллбеке. У меня тоже была такая проблема, когда стояло более трёх коллбеков на использование объекта. Скинь сюда свой bind_stalker.script

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


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

Spezer, цитата из ReadMe к ОГСЕ:

Вылеты вида:

 

[error]Expression : e_entity

[error]Function : xrServer::Process_event_reject

[error]File : E:\stalker\sources\trunk\xr_3da\xrGame\xrServer_process_event_reject.cpp

[error]Line : 12

[error]Description : entity not found. id_parent=7540 id_entity=44047 frame=2075050

 

Очень редкие. Возникают иногда произвольно при смерти неписей. Причина – движок отрабатывая лут изредка теряет серверный объект уничтожаемой вещи, в итоге происходит вылет. Лечению не подлежат, сообщать о них бессмысленно. Единственное, если вам попадётся такой вылет, который можно 100% повторить при загрузке с сохранения – обязательно сообщите об этом на форуме и передайте сохранение – причину такого вылета можно будет отследить и устранить.

 

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


Ссылка на сообщение
FANAT, значит, ошибся где-то. Ты точно прописал координаты именно к этой текстуре? И правильно их прописал? Если хочешь, можешь дать сюда свою текстуру, посмотрим...

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


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

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