Редактирование движка |
Здравствуйте, гость ( Авторизация | Регистрация )
Сайт S.T.A.L.K.E.R. Inside / [ЗП] Параметры командной строки / Распаковщик ресурсов
Редактирование движка |
11.04.2009, 17:42
Сообщение
#1
|
|
Навий черны у ношьти Репутация: 377 Группа: Забанен Сообщений: 2210 Награды: 2 Регистрация: 11.03.2009 |
Интересует конкретные идеи/возможности, как декомпилить двиг игры и .dll библиотеки, с вшитыми .cpp файлами, через которые можно было бы восстановить множество отключённых фич. Например, открытие дверей в машине перед "усаживанием" за руль. Хекседикальные вьюверы - фигня. Кроме правки байтов и возможности зануливания от них проку мало, в отношении сталкера. Нашёл оч полезную утилиту и смог дизассемблить xrGame.dll нашёл в нём e"\stalker\patch_1_000*\xr_3da\xrgame\cardoors.cpp и все строки в библиотеке, но, увы, не смог сам файл вытащить из библиотеки. Полагаю, если научиться декомпилить и, собственно, компилить обратно .exe и .dll библиотеки ядра и двига игры - можно сделать прорыв в модостроении.. например вернув хотя бы возможность открывать двери/капоты/багажники в машинах И еще много чего, без необходимости издеваться в скриптах. Так же интересует - возможно ли сделать к сталкеру некий расширитель скриптового/с++ языка, как например к Обливиону OBSE?
p.s. если кого интересует утилита для декомпила - велкам в личку. -------------------- нарушение правил п. 7.2
|
 
|
|
|
|
11.04.2009, 18:44
Сообщение
#2
|
|
Почти Мастер Репутация: 487 Группа: Участник Сообщений: 1165 Награды: 5 Регистрация: 18.12.2008 |
Бесполезное занятие.
e"\stalker\patch_1_000*\xr_3da\xrgame\cardoors.cpp Это всего лишь ссылка на какой то файл не известно каким образом попавшая в ресурсы, а за оригиналом добро пожаловать к разрабам. Максимум что можно сделать поглядеть какие функции в DLLях, но даже параметры передаваемые им определить хз сомнительно в лучшем случае их количество. И чего с ними делать? А полностью дезить и разбирать миллионы строк машинного кода жизни не хватит. Даже имея полностью сишные исподники и то уйдут месяцы на осмысление, зачастую простче написать заново чем разбирать чужое. Если бы это было возможно все бы так и делали, а так кроме как поправить ресурсы или крякнуть ни кто еще не чего не сделал. |
 
|
|
11.04.2009, 19:21
Сообщение
#3
|
|
Навий черны у ношьти Репутация: 377 Группа: Забанен Сообщений: 2210 Награды: 2 Регистрация: 11.03.2009 |
FL!NT,
Возможно.. но сами файлы .cpp - не просто строки, они вшиты в библиотеку .dll но декомпилить их, по ходу, крайне сложно -------------------- нарушение правил п. 7.2
|
 
|
|
11.04.2009, 19:32
Сообщение
#4
|
|
Почти Мастер Репутация: 487 Группа: Участник Сообщений: 1165 Награды: 5 Регистрация: 18.12.2008 |
Орион
Раз уж ты их вытащил кинь в личку ели не сложно, на досуге посмотрю. |
 
|
|
11.04.2009, 19:45
Сообщение
#5
|
|
Босс Репутация: 447 Группа: Участник Сообщений: 4295 Награды: 6 Регистрация: 07.06.2008 |
А как дело обстоит с изменением допустимых значений?
Например, что бы траву сделать более густой (как в старом билде игры №1935) надо у r__detail_density (от 0.200 до 0.600) увеличить допустимое значение до (от 0.060 до 0.600) -------------------- ...Где каждый в душе великий Кобзон,
А на деле банальный Сид Вишес... Я плюс... Потому что я плюс. (с) Дрянь Тань Ян из провинции Гас Коу Ань. Никакой справедливости нет, все законы работают не правильно, месть разрушительна и бесперспективна, правда у каждого своя, разум вообще больной. Остаётся жить любовью? Это был риторический вопрос. |
 
|
|
11.04.2009, 20:40
Сообщение
#6
|
|
Навий черны у ношьти Репутация: 377 Группа: Забанен Сообщений: 2210 Награды: 2 Регистрация: 11.03.2009 |
FL!NT, В том то и дело, что вытащить их наружу мне не удалось.. мне удалось дизассемблить .dll и увидеть весь машинный код в них, где и есть записи на обращение к .cpp файлам, находящиеся в самом .dll
Если смогу вытянуть .сpp файлы - скину на форум. Кстати, при запуске игры - ядро и двиг распаковывает .cpp и .ini файлы в область рам-памяти, если я правильно понял багтрэп логи, в которых значится ошибка обработки кода одним из .cpp элементов движка/ядра. Если это так, то можно поискать утилиты, позволяющие получить доступ к секции рам-памяти, будто к харду Тогда файлики можно будет изъять без декомпила.. но что-то уж больно "притянуто за уши" это выглядит sergy172, Для этого надо разблокировать допустимые лимиты.. но где именно, я не знаю. Проверил сейчас xrRender_r1 и xrRender_r2 - там значаться эти параметры. Если параметр r__detail зашит в саму библиотеку рендера - это надо профи изучать и смотреть.. В библиотеках рендера этот параметр значится в двух местах. Но я лично ичего не понимаю в том коде, кроме инглиша Если очень надо - в личку\аську могу скинуть программку и сам посмотришь. Может сумеешь чего-то сварганить) -------------------- нарушение правил п. 7.2
|
 
|
|
11.04.2009, 20:56
Сообщение
#7
|
|
не шалю, никого не трогаю, починяю примус Репутация: 230 Группа: Забанен Сообщений: 2277 Награды: 1 Регистрация: 15.05.2007 |
мне удалось дизассемблить .dll и увидеть весь машинный код в них, где и есть записи на обращение к .cpp файлам, находящиеся в самом .dll это не то, что ты подумал, это всего лишь строковые литералы. в коде предусмотрены проверки ошибок Код sprintf( szErrorMessage, "Assertion failed in %s, line %s\n", _FILE_, _LINE_ ); pD3D9 = Direct3DCreate9( D3D_SDK_VERSION ); AssertMsg( pD3D9, szErrorMessage ); вот тут компилятор (на самом деле препроцессор, но это не важно ) и вставит вместо _FILE_ строку с именем исходного файла Сообщение отредактировал centrino - 11.04.2009, 21:05 -------------------- i know where you live
|
 
|
|
11.04.2009, 20:58
Сообщение
#8
|
|
Почти Мастер Репутация: 487 Группа: Участник Сообщений: 1165 Награды: 5 Регистрация: 18.12.2008 |
Орион
Тогда ты нашел не сишник, а не удаленные хвосты отладчика и ссылки на обработки исключений. Именно они прописываются в логии. |
 
|
|
11.04.2009, 21:50
Сообщение
#9
|
|
Навий черны у ношьти Репутация: 377 Группа: Забанен Сообщений: 2210 Награды: 2 Регистрация: 11.03.2009 |
centrino, FL!NT, Значит ничего в .dll нету)) А жаль.. было бы неплохо, иметь возможность редактить фишки движка
-------------------- нарушение правил п. 7.2
|
 
|
|
11.04.2009, 22:03
Сообщение
#10
|
|
Почти Мастер Репутация: 487 Группа: Участник Сообщений: 1165 Награды: 5 Регистрация: 18.12.2008 |
Да неплохо бы было что бы к каждой проге прикладывались исподники желательно с детальным разжевыванием всех деталей.
|
 
|
|
11.04.2009, 22:06
Сообщение
#11
|
|
Архимагистр Игры Репутация: 364 Группа: Забанен Сообщений: 2765 Награды: 1 Регистрация: 06.06.2008 |
есть) скомпиленый код
-------------------- Играть в шутеры на консолях - все равно, что заниматься сексом с резиновой женщиной
|
 
|
|
11.04.2009, 22:09
Сообщение
#12
|
|
Навий черны у ношьти Репутация: 377 Группа: Забанен Сообщений: 2210 Награды: 2 Регистрация: 11.03.2009 |
Da Man, Ну.. скажем, в нём можно отладить систему поиска артов (до уровня ЧН) и запустить считывание статистики собраных артов? мелочь, а приятно.. было бы
-------------------- нарушение правил п. 7.2
|
 
|
|
12.04.2009, 01:30
Сообщение
#13
|
|
Игрок Репутация: 4 Группа: Участник Сообщений: 32 Регистрация: 27.09.2008 |
Тему в топку, бельё от ПЫСов всё равно не дождёмся..
|
 
|
|
12.04.2009, 07:11
Сообщение
#14
|
|
Игроман Репутация: 184 Группа: Участник Сообщений: 989 Награды: 3 Регистрация: 12.08.2007 |
А как дело обстоит с изменением допустимых значений? Например, что бы траву сделать более густой (как в старом билде игры №1935) надо у r__detail_density (от 0.200 до 0.600) увеличить допустимое значение до (от 0.060 до 0.600) скачай артмани и играйся на здоровье -------------------- have a nice day bitches
|
 
|
|
12.04.2009, 11:10
Сообщение
#15
|
|
Продвинутый геймер Репутация: 36 Группа: Участник Сообщений: 278 Награды: 3 Регистрация: 10.12.2006 |
Da Man, Ну.. скажем, в нём можно отладить систему поиска артов (до уровня ЧН) и запустить считывание статистики собраных артов? мелочь, а приятно.. было бы ИМХО это и заскриптовать можно. -------------------- Oderint, dum metuant.
|
 
|
|
12.04.2009, 15:04
Сообщение
#16
|
|
Продвинутый геймер Репутация: 33 Группа: Участник Сообщений: 339 Награды: 4 Регистрация: 11.09.2008 |
А ещё, неплохо-бы "откопать" возможность для полноценного создания новых интерфейсов, в роде "торгового менеджера" и "инвентаря".
Сообщение отредактировал 7.9 - 12.04.2009, 15:06 -------------------- Всё легко, но все хлюпики.
|
 
|
|
12.04.2009, 15:27
Сообщение
#17
|
|
Продвинутый геймер Репутация: 33 Группа: Участник Сообщений: 339 Награды: 4 Регистрация: 11.09.2008 |
... и ситуацию с несовместимостью сохранений разрулить... хотя это наверное "из области фантастики".
-------------------- Всё легко, но все хлюпики.
|
 
|
|
12.04.2009, 15:48
Сообщение
#18
|
|
Босс Репутация: 447 Группа: Участник Сообщений: 4295 Награды: 6 Регистрация: 07.06.2008 |
скачай артмани и играйся на здоровье Уже. Нашел довольно легко. r__detail_density 01F6276C динамика 01F461E8 статика Верно для билда 3120. Вот только как узнать из какого файла и процесса берутся данные, я пока не понял. Сообщение отредактировал sergy172 - 12.04.2009, 16:08 -------------------- ...Где каждый в душе великий Кобзон,
А на деле банальный Сид Вишес... Я плюс... Потому что я плюс. (с) Дрянь Тань Ян из провинции Гас Коу Ань. Никакой справедливости нет, все законы работают не правильно, месть разрушительна и бесперспективна, правда у каждого своя, разум вообще больной. Остаётся жить любовью? Это был риторический вопрос. |
 
|
|
12.04.2009, 16:12
Сообщение
#19
|
|
Грандмастер Репутация: 430 Группа: Участник Сообщений: 1951 Награды: 6 Регистрация: 22.07.2008 |
как на меня, то самая главная возможность движка(как и всего Сталкера) - это держать в напряжении комьюнити, которое постоянно что то в нём исчет, вместо того что бы занятся моддингом на более простом в освоении движке(Cry Engeene с его SandBox например), но увы -) всё также X-ray затягивает не хуже(а то и лучше) Зоны...)))
-------------------- Хунтуй пока молодой
|
 
|
|
12.04.2009, 16:18
Сообщение
#20
|
|
Навий черны у ношьти Репутация: 377 Группа: Забанен Сообщений: 2210 Награды: 2 Регистрация: 11.03.2009 |
Вот только как узнать из какого файла и процесса берутся данные, я пока не понял. sergy172, Данные - из файла xrRender_r1.dll и/или xrRender_r2.dll -------------------- нарушение правил п. 7.2
|
 
|
|
Текстовая версия | Сейчас: 23.05.2024, 13:34 |