Перейти в начало страницы

Здравствуйте, гость ( Авторизация | Регистрация )

Gameru.net останавливает работу в связи с вторжением армии РФ в Украину. Следите за дальнейшими анонсами.
Support Gameru!

> Помощь по разделу

Сайт 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 библиотеки ядра и двига игры - можно сделать прорыв в модостроении.. например вернув хотя бы возможность открывать двери/капоты/багажники в машинах smile.gif И еще много чего, без необходимости издеваться в скриптах. Так же интересует - возможно ли сделать к сталкеру некий расширитель скриптового/с++ языка, как например к Обливиону OBSE?

p.s. если кого интересует утилита для декомпила - велкам в личку.


--------------------
нарушение правил п. 7.2
Перейти в начало страницы
 
242 страниц V   1 2 3 > »   
Начать новую тему
Ответов (1 - 19)
FL!NT
сообщение 11.04.2009, 18:44
Сообщение #2


Почти Мастер
***********

Репутация:   487  
Группа: Участник
Сообщений: 1165
Награды: 5
Регистрация: 18.12.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


Бесполезное занятие.
Цитата(Орион @ 11.04.2009, 19:42) *
e"\stalker\patch_1_000*\xr_3da\xrgame\cardoors.cpp

Это всего лишь ссылка на какой то файл не известно каким образом попавшая в ресурсы, а за оригиналом добро пожаловать к разрабам. biggrin.gif Максимум что можно сделать поглядеть какие функции в DLLях, но даже параметры передаваемые им определить хз сомнительно в лучшем случае их количество. И чего с ними делать? А полностью дезить и разбирать миллионы строк машинного кода жизни не хватит. biggrin.gif Даже имея полностью сишные исподники и то уйдут месяцы на осмысление, зачастую простче написать заново чем разбирать чужое. Если бы это было возможно все бы так и делали, а так кроме как поправить ресурсы или крякнуть ни кто еще не чего не сделал.
Перейти в начало страницы
 
Орион
сообщение 11.04.2009, 19:21
Сообщение #3


Навий черны у ношьти
***************

Репутация:   377  
Группа: Забанен
Сообщений: 2210
Награды: 2
Регистрация: 11.03.2009




Вставить ник Цитировать выделенное в форуму быстрого ответа


FL!NT,
Возможно.. но сами файлы .cpp - не просто строки, они вшиты в библиотеку .dll но декомпилить их, по ходу, крайне сложно sad.gif


--------------------
нарушение правил п. 7.2
Перейти в начало страницы
 
FL!NT
сообщение 11.04.2009, 19:32
Сообщение #4


Почти Мастер
***********

Репутация:   487  
Группа: Участник
Сообщений: 1165
Награды: 5
Регистрация: 18.12.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


Орион
Раз уж ты их вытащил кинь в личку ели не сложно, на досуге посмотрю. z_crazy.gif
Перейти в начало страницы
 
sergy172
сообщение 11.04.2009, 19:45
Сообщение #5


Босс
********************

Репутация:   447  
Группа: Участник
Сообщений: 4295
Награды: 6
Регистрация: 07.06.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


А как дело обстоит с изменением допустимых значений?
Например, что бы траву сделать более густой (как в старом билде игры №1935) надо у r__detail_density (от 0.200 до 0.600) увеличить допустимое значение до (от 0.060 до 0.600)


--------------------
...Где каждый в душе великий Кобзон,
А на деле банальный Сид Вишес...
Моя Музыка Наша Музыка
Самый последний Косметик мод
В контакте ЛаЖа Facebook
Я плюс... Потому что я плюс. (с) Дрянь Тань Ян из провинции Гас Коу Ань.
Никакой справедливости нет, все законы работают не правильно, месть разрушительна и бесперспективна, правда у каждого своя, разум вообще больной. Остаётся жить любовью? Это был риторический вопрос.
Перейти в начало страницы
 
Орион
сообщение 11.04.2009, 20:40
Сообщение #6


Навий черны у ношьти
***************

Репутация:   377  
Группа: Забанен
Сообщений: 2210
Награды: 2
Регистрация: 11.03.2009




Вставить ник Цитировать выделенное в форуму быстрого ответа


FL!NT, В том то и дело, что вытащить их наружу мне не удалось.. мне удалось дизассемблить .dll и увидеть весь машинный код в них, где и есть записи на обращение к .cpp файлам, находящиеся в самом .dll
Если смогу вытянуть .сpp файлы - скину на форум.

Кстати, при запуске игры - ядро и двиг распаковывает .cpp и .ini файлы в область рам-памяти, если я правильно понял багтрэп логи, в которых значится ошибка обработки кода одним из .cpp элементов движка/ядра. Если это так, то можно поискать утилиты, позволяющие получить доступ к секции рам-памяти, будто к харду smile.gif Тогда файлики можно будет изъять без декомпила.. но что-то уж больно "притянуто за уши" это выглядит laugh.gif

sergy172, Для этого надо разблокировать допустимые лимиты.. но где именно, я не знаю. Проверил сейчас xrRender_r1 и xrRender_r2 - там значаться эти параметры. Если параметр r__detail зашит в саму библиотеку рендера - это надо профи изучать и смотреть..
В библиотеках рендера этот параметр значится в двух местах. Но я лично ичего не понимаю в том коде, кроме инглиша z_crazy.gif
Если очень надо - в личку\аську могу скинуть программку и сам посмотришь. Может сумеешь чего-то сварганить)


--------------------
нарушение правил п. 7.2
Перейти в начало страницы
 
centrino
сообщение 11.04.2009, 20:56
Сообщение #7


не шалю, никого не трогаю, починяю примус
***************

Репутация:   230  
Группа: Забанен
Сообщений: 2277
Награды: 1
Регистрация: 15.05.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


Цитата(Орион @ 11.04.2009, 21:40) *
мне удалось дизассемблить .dll и увидеть весь машинный код в них, где и есть записи на обращение к .cpp файлам, находящиеся в самом .dll

это не то, что ты подумал, это всего лишь строковые литералы. в коде предусмотрены проверки ошибок
Код
  sprintf( szErrorMessage, "Assertion failed in %s, line %s\n", _FILE_, _LINE_ );
  pD3D9 = Direct3DCreate9( D3D_SDK_VERSION );
  AssertMsg( pD3D9, szErrorMessage );

вот тут компилятор (на самом деле препроцессор, но это не важно biggrin.gif) и вставит вместо _FILE_ строку с именем исходного файла

Сообщение отредактировал centrino - 11.04.2009, 21:05


--------------------
i know where you live
Перейти в начало страницы
 
FL!NT
сообщение 11.04.2009, 20:58
Сообщение #8


Почти Мастер
***********

Репутация:   487  
Группа: Участник
Сообщений: 1165
Награды: 5
Регистрация: 18.12.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


Орион
Тогда ты нашел не сишник, а не удаленные хвосты отладчика и ссылки на обработки исключений. Именно они прописываются в логии. biggrin.gif
Перейти в начало страницы
 
Орион
сообщение 11.04.2009, 21:50
Сообщение #9


Навий черны у ношьти
***************

Репутация:   377  
Группа: Забанен
Сообщений: 2210
Награды: 2
Регистрация: 11.03.2009




Вставить ник Цитировать выделенное в форуму быстрого ответа


centrino, FL!NT, Значит ничего в .dll нету)) А жаль.. было бы неплохо, иметь возможность редактить фишки движка sad.gif


--------------------
нарушение правил п. 7.2
Перейти в начало страницы
 
FL!NT
сообщение 11.04.2009, 22:03
Сообщение #10


Почти Мастер
***********

Репутация:   487  
Группа: Участник
Сообщений: 1165
Награды: 5
Регистрация: 18.12.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


Да неплохо бы было что бы к каждой проге прикладывались исподники желательно с детальным разжевыванием всех деталей. biggrin.gif biggrin.gif biggrin.gif
Перейти в начало страницы
 
Da Man
сообщение 11.04.2009, 22:06
Сообщение #11


Архимагистр Игры
*****************

Репутация:   364  
Группа: Забанен
Сообщений: 2765
Награды: 1
Регистрация: 06.06.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


есть) скомпиленый код wink.gif


--------------------
Играть в шутеры на консолях - все равно, что заниматься сексом с резиновой женщиной
Перейти в начало страницы
 
Орион
сообщение 11.04.2009, 22:09
Сообщение #12


Навий черны у ношьти
***************

Репутация:   377  
Группа: Забанен
Сообщений: 2210
Награды: 2
Регистрация: 11.03.2009




Вставить ник Цитировать выделенное в форуму быстрого ответа


Da Man, Ну.. скажем, в нём можно отладить систему поиска артов (до уровня ЧН) и запустить считывание статистики собраных артов? smile.gif мелочь, а приятно.. было бы laugh.gif


--------------------
нарушение правил п. 7.2
Перейти в начало страницы
 
GREMLIN
сообщение 12.04.2009, 01:30
Сообщение #13


Игрок
***

Репутация:   4  
Группа: Участник
Сообщений: 32
Регистрация: 27.09.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


Тему в топку, бельё от ПЫСов всё равно не дождёмся..
Перейти в начало страницы
 
Сахаров
сообщение 12.04.2009, 07:11
Сообщение #14


Игроман
**********

Репутация:   184  
Группа: Участник
Сообщений: 989
Награды: 3
Регистрация: 12.08.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


Цитата(sergy172 @ 11.04.2009, 20:45) *
А как дело обстоит с изменением допустимых значений?
Например, что бы траву сделать более густой (как в старом билде игры №1935) надо у r__detail_density (от 0.200 до 0.600) увеличить допустимое значение до (от 0.060 до 0.600)

скачай артмани и играйся на здоровье


--------------------
have a nice day bitches
Перейти в начало страницы
 
Woland
сообщение 12.04.2009, 11:10
Сообщение #15


Продвинутый геймер
********

Репутация:   36  
Группа: Участник
Сообщений: 278
Награды: 3
Регистрация: 10.12.2006




Вставить ник Цитировать выделенное в форуму быстрого ответа


Цитата(Орион @ 11.04.2009, 21:09) *
Da Man, Ну.. скажем, в нём можно отладить систему поиска артов (до уровня ЧН) и запустить считывание статистики собраных артов? smile.gif мелочь, а приятно.. было бы laugh.gif

ИМХО это и заскриптовать можно.


--------------------
Oderint, dum metuant.
Перейти в начало страницы
 
7.9
сообщение 12.04.2009, 15:04
Сообщение #16


Продвинутый геймер
********

Репутация:   33  
Группа: Участник
Сообщений: 339
Награды: 4
Регистрация: 11.09.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


А ещё, неплохо-бы "откопать" возможность для полноценного создания новых интерфейсов, в роде "торгового менеджера" и "инвентаря".

Сообщение отредактировал 7.9 - 12.04.2009, 15:06


--------------------
Всё легко, но все хлюпики.
Перейти в начало страницы
 
7.9
сообщение 12.04.2009, 15:27
Сообщение #17


Продвинутый геймер
********

Репутация:   33  
Группа: Участник
Сообщений: 339
Награды: 4
Регистрация: 11.09.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


... и ситуацию с несовместимостью сохранений разрулить... хотя это наверное "из области фантастики".


--------------------
Всё легко, но все хлюпики.
Перейти в начало страницы
 
sergy172
сообщение 12.04.2009, 15:48
Сообщение #18


Босс
********************

Репутация:   447  
Группа: Участник
Сообщений: 4295
Награды: 6
Регистрация: 07.06.2008




Вставить ник Цитировать выделенное в форуму быстрого ответа


Цитата(Сахаров @ 12.04.2009, 08:11) *
скачай артмани и играйся на здоровье

Уже.
Нашел довольно легко.
r__detail_density
01F6276C динамика
01F461E8 статика
Верно для билда 3120.
Вот только как узнать из какого файла и процесса берутся данные, я пока не понял.

Сообщение отредактировал sergy172 - 12.04.2009, 16:08


--------------------
...Где каждый в душе великий Кобзон,
А на деле банальный Сид Вишес...
Моя Музыка Наша Музыка
Самый последний Косметик мод
В контакте ЛаЖа Facebook
Я плюс... Потому что я плюс. (с) Дрянь Тань Ян из провинции Гас Коу Ань.
Никакой справедливости нет, все законы работают не правильно, месть разрушительна и бесперспективна, правда у каждого своя, разум вообще больной. Остаётся жить любовью? Это был риторический вопрос.
Перейти в начало страницы
 
Jesh
сообщение 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 @ 12.04.2009, 15:48) *
Вот только как узнать из какого файла и процесса берутся данные, я пока не понял.

sergy172, Данные - из файла xrRender_r1.dll и/или xrRender_r2.dll


--------------------
нарушение правил п. 7.2
Перейти в начало страницы
 

242 страниц V   1 2 3 > » 
Ответить в данную темуНачать новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 23.05.2024, 13:34