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

X-Ray extensions


Malandrinus

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

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

Насчёт других версий. Надо бы наверное портировать под все основные версии движка. Помог бы кто =) Там на сайте лежат исходники с комментариями. Если есть желающие разобраться и пособить с переносом под разные версии - будем только рады. Аналогично и с новыми фишками.

Если да, то очень прошу посмотреть параметры боеприпасов k_ap и k_ar.
А что это за параметры и какая с ними проблема?

Я бы еще включил дллки из НЛС 6.
Проект с открытыми исходниками. Включаться будет то, что кто-бы то ни было готов опубликовать в таком виде. Вообще, я несколько отстал от жизни. Что там за правки и кто автор?

Насчёт кнопок - это к Колмогору =)

А как-же делали постэфекты на попадание в гг? Разве не каллбеком?
нет, в апдейте проверяли падение здоровья

А какой файл отвечает за rank?
Для этого там нет отдельного файла. Пара строк в одном файле и одна в другом.

Зделали хекс-редактором или какой-нить подобной прогой
Правки пишутся на демонском языке ассемблера, затем с помощью особенно злого колдунства переносятся в чистую dll =)
  • Полезно 1
 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

_Призрак_,

Кровососа по идее можно замутить и без правки движка. Берем вертолет, приделываем к нему модель кровососа и соответствующую озвучку. Будет все как ты сказал =)

  • Нравится 1
  • Смешно 1
 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

Trapper023,

я не вполне понял вопрос. Менять сопоставление кнопок командам и так можно. Или что-то другое имеется в виду?

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

Trapper023,

м.б. наколдуете переназначение клавиш? Скажем по кнопке "kM" - мини-карту с экрана убирать/вызывать. В ПДА и так можно переключаться по разделам, можно было бы ограничиться только одним вызовом самого ПДА. Или там с этим все мрачно? И Вы только на ЗП будете возможности развивать?

А разве PDA и так не вызывается по кнопке?

 

Но я погляжу, аппетит во время еды приходит: фишки уже россыпью меряют =)

 

Каждое из перечисленного - отдельная работа. Гасить миникарту, реагировать на клавиши - это всё требует отдельного исследования и разных правок в совершенно разных местах. Впрочем, скриптовый колбек на нажатие почти сделал. Скоро будет. С миникартой надо будет подумать.

 

Портирование под разные версии зависит от наличия времени.

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

С функцией main_input_receiver есть проблемы. Сама-то функция в движке как была так и осталась, но для её экспорта нужен код экспорта функции, возвращающей объект диалога. Так вот начиная с ЧН повырезали все скриптовые функции, которые возвращали объекты такого класса.

Т.е. теперь её не из чего сделать. Так что в ближайшей перспективе на это можете не рассчитывать.

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

Собирал сам из исходников или только патчил?

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

Под какую версию собирал?

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

Shoker,

После патча все функции работали, кроме вот save\load.

Мне сейчас заниматься этим некогда. Все заинтересованные могут мне с этим помочь следующим образом. Там есть файл corrections_list.txt. Каждая строка в этом файле включает соответствующую правку или группу правок. Если просто убрать оттуда строки, то соответствующие правки будут отключены. Надо собрать разные варианты и посмотреть, какая именно правка (строка т.е.) вызывает вылет.

 

Может ли изменённый фоу влияет на стабильность?

само по себе маловероятно. Надеюсь, однако, что ты подсовывал dll правильной версии. Хотя скорее всего правильной, иначе вообще бы ничего не вышло.

 

будут ли новые релизы

будут

 

за что отвечает движковый вылет:

001B:06B1C2EE xrGame.dll, CxIOFile::Scanf()

не знаю

 

Это в частности выскакивает в МП при попытке заспавнить монстра

Поверь мне, лучше потратить время на что-нибудь более полезное.

 

Ммм вот ещё что, возможно ли подключить доп. библиотеки в ЗП?

Для Lua есть хорошая вещь, называется Lua Socket и обеспечивает возможность работать в сети.

Есть проект, где один товарищ добавляет в Lua сталкера свои фишки. Вот здесь:

Также можно подключать dll методом внедрения в адресное пространство.

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

По поводу правки Колмогора на предмет добавления своих разделов в ПДА. Инфопорция выдаётся естественно с именем равным атрибуту id тега button, которых соответственно столько, сколько кнопок, и которые расположены внутри тега tab в файле pda.xml. По умолчанию там три кнопки с id: "eptTasks", "eptRanking", "eptLogs". Ничто не мешает добавить свою кнопку.

Ловить инфопорцию можно в колбеке актора actor_binder:info_callback.

 

Один только момент. Текущее содержимое окна при активации свой кнопки не убирается, поэтому придётся закрывать его своим содержимым с помощью помещения диалога поверх окна. К сожалению, получение текущего окна в ЧН и ЗП стало невозможно и пока решения этой проблемы не видно.

 

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

Real Wolf,

Если я где ошибся, прошу поправить. У меня так сделано и все колбеки работают.

Так и задумано, всё правильно сделал. Активный колбек на нажатие клавиш вызывает вылет между загрузками. Разбираться в причинах было лень, потому просто сделал затычку. Ну и в общем полезно иметь функцию отключения. Не все колбеки одинаково полезны =)

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

SkyLoader,

Кто-нибудь разбирал функцию bind_to_dik? Что в итоге она делает?

Обратная dik_to_bind, переводит код клавиши в код назначенной ей команды.

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

Real Wolf,

В r16 при компиляции с правками для получения объекта, на который смотрит камера и дистанции до него, перестала работать ф-ция:

level.get_snd_volume()

Проверяйте последнюю версию, там с этим должно быть в порядке.

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


Ссылка на сообщение
(изменено)

SkyLoader,

У кого-нибудь работает db.actor:actor_body_state()? У меня все время возвращает число 40 с чем-то тысяч.

Возможно мусор остался, не помню уже.

Для этих целей сделана функция получения целого по смещению от начала объекта get_actor_int. Надо только знать смещение, по которому лежит нужный флажок.

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

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

Real Wolf,

В r17 на сайте ведь нету добавленных файлов, только измененные.

Недоглядел в спешке. Добавил.

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

Shadows,

db.actor:set_actor_float() походу не работает...

А ты возьми проверь, не поленись. Вот у тебя по смещению читается то же значение, что в конфиге, так? Запиши по этому смещению новое значение и прочитай заново. Оно? Значит метод работает.

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

Shadows,

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

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

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

Shadows,

P.S. в паке на ТЧ оказывается нет flush1()... А так бы пригодилась.

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

get_console():execute("flush")

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

С точки зрения геймплея ничего в ЗП не вырезали, только добавили. Убрали пару ненужных классов и зачем-то порезали оконную систему. Если точнее, то не столько порезали, сколько типа оптимизировали. Но в процессе под нож попали вращение текстур и получение активного окна. Вращение текстур уже вернули, а вот с main_input_receiver сложнее. Ну и всё собственно, если последняя фишка вам не критична, то ЗП по всем параметрам лучше.

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

SkyLoader,

решил потестить ф-цию alife():teleport_object("", pos, lvx, gvx, parent_id). И не совсем понял, как ее использовать.

Первый аргумент-строка - это заглушка и не используется. Последний - id объекта.

 

что делает ф-ция obj:get/set_actor_shared_str()?

Большая часть строковых свойств объектов в игре хранится в т.н. shared string. Это по сути индекс в глобальном хранилище строк. При измении значения свойства в объекте сперва проверяется, нет ли такой строки в этом хранилище, затем либо добавляется в хранилище новая строка и прописывается её индекс, либо увеличивается счётчик использования строки, которая уже есть в хранилище. Собственно, функция меняет такое свойство. Или пытается... Не помню уже, получилось или нет.

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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


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

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

AMK-Team.ru

×
×
  • Создать...