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

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


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

Привет всем! Тут есть вопросик.

Кароче заспавнил я НПС. Но он спавнится не там где мне нужно.

2d35418026b325623a72b306c10573c65ee80864389622.jpg

А нужно за стойкой.

Но за стойку не пролезть.

Пробовал лететь туда Демо_рекордом и снимать координаты, но спавнится он не точно.

Как можно попасть за стойку?

Shadows,

Ты ж вроде спрашивал... Сделай телепорт. Ему для точки высадки достаточно координат демо_рекордс.

Не кто не знает, как прописать больше звуков например для крика бандита при смерти?.

Создал НПС. Желаю скриптом его удалить.

 

Пишу вот эту функцию (esc_unik_guard - это из character_desc_escape) - и НПС не удаляется.

function delete_unik_guard()

local se_obj = alife():object("esc_unik_guard")

if se_obj then

alife():release(se_obj, true)

end

end

 

Если же написать вместо esc_unik_guard - esc_wolf - Волк исчезает. В чем же проблема?

в том что к именам объекта созданным скриптово (не через аллспавн) добавляется его айдишник.

Т.е. имя будет не esc_unik_guard а чонить типа esc_unik_guard12345,

тебе нужно в цикле перебрать все объекте, и грохнуть тот в имени которого есть esc_unik_guard, но

учти если ты создашь двух и более неписей с этого профиля - грохнуты будут все они.

БоБеР,

Создал НПС. Желаю скриптом его удалить.

Назначь ему story_id, потом по нему и удалишь.

 

Как добавить транспорт в игру?

Сообщение от модератора n6260
Есть несколько модов добавляющих транспорт. Найдите и скачайте. Еще есть моя шпаргалка в шапке, там вроде тоже описано частично сие действо.

Строгое предупреждение от модератора n6260
Учитесь юзать поиск.

PowerMan

 

Плохо искал. Год назад я это дело на вики описал - добавил свой вариант в имевшуюся статью, где описывалось как это делать через allspawn.

техника в игре

 

мой журнал на SP - там есть много интересного

--------------------------------------------------------------------------

Новая игра насколько я помню (давно транспорт не гонял) не трэба :rolleyes:

Скрипты тем и хороши.

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

Изменено пользователем Garry_Galler
Назначь ему story_id, потом по нему и удалишь.

Можно поподробнее, как это сделать (я, какбэ, нуб в скриптах)

Garry_Galler,

На самом деле - даже если вы просто собрали-разобрали алл спавн - 70% того, что секции поменяли номера :)

 

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

PowerMan,

Вот Багги. По-моему от мастеров ОГСЕ. Посмотрите, как сделано.

http://narod.ru/disk/23749012000/%D0%B1%D0...3%D0%B8.7z.html

Arhara

А причем здесь allspawn? В моей части статьи описывается как заспавнить любой транспорт скриптом. Без модификации allsapwn.

PowerMan

Предлагаешь поиграть в битву экстрасенсов?

Ну откуда я знаю где ты накосячил.

 

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

Вопрос к мэтрам и ветеранам моддинга.

-------------------------------------------------------------------------------------------------------

Как вернуть инвентарным ящикам заспавненным через скрипт физическую оболочку?

Дабы их можно было заставить юзать хит каллбек. И чтобы они наконец перестали быть "прозрачными" (через них же же проходить можно - если например сейф инвентарный заспавнить).

 

Вертолеты вроде как физической оболочки не имеют, однако для них предусмотрен какой то свой хитрый callback.helicopter_on_hit.

Получается, что реагировать на хит можно заставить и объекты без физ. оболочки?

--------------------------------------------------------------------------

PowerMan

Только не при спавне транспорта.

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

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

Garry_Galler,

Как вернуть инвентарным ящикам заспавненным через скрипт физическую оболочку?

Попробуй поиграться с флажками визуала.

malandrinus

Мы люди темные в этом вопросе - вот попробовал записать в нетпакет ящика значение которое в allspawn у всех ящиков есть = 0xffffff3f

перевел его так

1111 1111 1111 1111 1111 1111 0011 1111 --двоичный вид

15 15 15 15 15 15 3 15 --десятичный

function SetInvBox(sobj)
local t = this.get_invbox_data(sobj)
t.vsu8u1=(15*16^7)+(15*16^6)+(15*16^5)+(15*16^4)+(15*16^3)+(15*16^2)+(3*16^1)+(15*16^0) -- в общем что-то вроде того  
this.set_invbox_data(t,sobj)
end
ЗЫ:функции чтения\записи из АМК

ящик по-прежнему остался прозрачным.

Что менять то? какие именно биты?

 

Кстати изначальное значение у меня считалось как 0.

Чтобы это значило?

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

Garry_Galler,

попробовал записать в нетпакет ящика значение которое в allspawn у всех ящиков есть = 0xffffff3f ...

ящик по-прежнему остался прозрачным.

значит это не работает.

Есть вероятность, что это как-то прописывается прямо в визуале. Тогда об этом возможно знают комрады, работающие с SDK.

А может это зависит от класса объекта. Например тушки становятся физически прозрачными после смерти, но если тот-же визуал тушки прописать физическому объекту, то он вполне взаимодействует с актором.

Кроме того я обнаружил, что визуалы для тайников из all.spawn почему-то все невидимые. Это наводит на дополнительную мысль, что то, что мы видим в игре, - это просто часть местности, а невидимый визуал в этом случае просто накладывается на сетку местности.

 

Помогите пожалуйста в следующей ситуации :

В оригинале ТЧ есть баг , суть которого заключается в том , что при загрузке сохранения или переходе на локацию происходит потеря содержимого схронов , наводка на которые уже была получена.

Думаю большинство знают о существовании затычки от этого бага :

-------------------------------------------------

--' Из-за какого-то дефекта в xrGame.dll тайник потеряет

--' сгенерированное содержимое в следующей ситуации:

--' 1) получена ссылка на тайник, который находится в online;

--' 2) игрок сохраняется и загружается;

--' 3) между 1 и 2 не было переводов тайника в offline хотя бы раз.

--' Для предотвращения этого создаём вещи у актёра, запоминаем

--' идентификаторы, а в вызове actor_binder:update() переносим их

--' в нужный ящик. и так далее.

-----------------------------------------------

Но если активировать данную затычку с паком локаций от Кости , то при очередном обыске трупа можно словить вылет такого содержания :

FATAL ERROR

 

[error]Expression : assertion failed

[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 : e_parent && e_entity

 

stack trace:

 

Насколько я понимаю , это происходит потому , что на новых локациях есть схроны , но они не рабочие , поэтому при получении наводки на них игра вылетает. Сам тайник есть , но он недоступен.

Прошу знающих людей поделиться советом - как исправить эту проблему , чтобы при обыске трупа можно было получить ссылку на тайник на новой локе , и он был полностью рабочим?

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

Ирбис

как исправить эту проблему

Подождать пока я доделаю свою разработку "новые рандомные тайники" :P

Там нет никаких переводов тайников в онлайн\оффлайн - так как я нашел способ обходиться без этой абсолютно лишней операции и все содержимое хабара никуда не исчезает ни при каких обстоятельствах - разве что скриптово (как часть задуманного плана).

 

 

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

malandrinus

Кроме того я обнаружил, что визуалы для тайников из all.spawn почему-то все невидимые.

Это я тоже знаю - у дефолтных ящиков действительно визуал прописан совсем не тот который мы видим - а невидимый бокс.

Но пока не разобрался зачем это нужно и как это все понимать.

И еще Максим.Р. мне говорил что при удалении всех ящиков из allspawn визуалы видимые остаются на месте - то бишь они получается часть геометрии уровня.

В общем пока неясно куда двигаться в поиске решения указанной проблемы физической "неосязаемости". (В SDK увы ничего не понимаю, но попробую выяснить что-нить у тех, кто работает с ним)

Пришел в голову такой вариант - а что если взять ogf-ку какого-нить невидимого бокса(изменить имя модельке сделав клон) и прописать ей текстуру ящика, а потом эту новую модельку заспавнить? Должен получиться осязаемый и видимый бокс.

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

Привет всем!Вопрос по оригиналу ТЧ,

1.Как убрать стартовый ролик про грузовик смерти?Я точно знаю что это возможно.

2.дверь Сидоровича в начале игры закрыта.я сделал её открытой.вышел из бункера.новички говорят мне:катись отсюда,щас с тобой разговаривать никто не будет.

я хочу вырезать эти диалоги,но не пойму как. в char_desk_escape эти диалоги не значатся.что делать?

Добрый день.

Я сейчас обрисую ситуацию, а кто знает напишите ответ.

 

И так, я скачал карту:

Локация Предбанник ТЧ

http://amk-team.ru/builds/AMK_Team_Predbannik_map_soc.7z

С намерением сделать из нее мультиплеерную.

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

 

Пока файлы эти есть,карта грузиться, а на другие сервера доступа нет.

А когда файлов нет, карта не грузиться зато на другие сервера конектиться.

 

Так вот в этой карте совместимость портят 3 файла :

путь - \textures\act

файлы - act_corp_stalker.dds , act_krovosos_1.dds , act_krovosos_2.dds .

 

А теперь вопрос, где можно править чтобы игра смотрела не на act_corp_stalker , а на act_stalker_corp который есть в оригинале и не рушит "совместимость" ?

Garry_Galler,

Это я тоже знаю - у дефолтных ящиков действительно визуал прописан совсем не тот который мы видим - а невидимый бокс.

Но пока не разобрался зачем это нужно и как это все понимать.

Понять это можно так. Это нужно для тайников. Есть, к примеру, огрызок трубы или обломок дерева. Там может быть тайник, а может и не быть. Хотя в игре тайники не исчезают, но может так было на каком-то этапе задумано. Оттуда и остался прозрачный визуал тайников.

Это в качестве гипотезы.

 

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

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

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

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

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

Войти

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

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

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