Помощь - Поиск - Пользователи - Календарь
Полная версия: Декомпиляция клиента
UoKit.com Форумы > Ultima Online : Dev > Работа с клиентом UO
Alastar
Собственно, как и чем декомпилить клиент Ультимы? Мне ведь не просто поменять там картинки и анимации надо, а ведь еще и в коде покопаться хочется.
PS Или я чего-то не понимаю? unsure.gif
StaticZ
Цитата(Alastar @ 10.2.2013, 20:36) *

Собственно, как и чем декомпилить клиент Ультимы? Мне ведь не просто поменять там картинки и анимации надо, а ведь еще и в коде покопаться хочется.
PS Или я чего-то не понимаю? unsure.gif

Скорее всего. Декомпелировать любым дизассемблером, например IDA Pro, но читабельного кода вы не получаете - куча низкоуровневого ассемблерного кода, которой при желании может быть интерпретирован в более высокоуровневый Си, однако намного читабельнее от этого он не станет - тоны непонятных переменных, замысловатые ветления и конструкции а порой и прямые ссылки и обращения куда-то туда по каким-то адресам. Конечно и речи не может быть чтобы это потом скомпелировать обратно - подобные вещи используются как правило для ознакомительных целей, чтобы найти и проанализировать алгоритм например чтения какого-то специфичного формата, или подменить возвращаемое функцией значение или значение какой-то константы. Впрочем это удобнее и проще делать через хуки, как например это делается в uo-ext или EssenceUCS.
Что касается ресурсов то тема уже достаточно старая и вполне хорошо изучена - есть много хорошего софта , серверов и тд. Лучший вариант - UoFiddler(просмотрщик) и RunUO (сервер). - оба на C# с открытым исходным кодом, в первом можно посмотреть реализацию работы с мулами во втором с сетью. (ну по жизни еще полезен редактор карт - CentrEd+)....

А вообще вы лучше скажите что именно вы хотите, тогда можно будет уже что-то конкретное посоветовать, порекомендовать. А то так чувствую вы начнете копать не с той стороны )))
Alastar
Что такое обфускация я знаю(Её что-ли до сих пор не сломали?oO). Мне просто хотелось бы попрактиковаться добавлять новых(Абсолютно новых) мобов, или свои вещи. Сервер я не собираюсь делать, мне так, для практики.
PS EssenceUCS вроде тольео по заявкам распространяется?
PSS У нас просто ОСИ лайк сервер, и мне уже хотелось бы стать скриптером, а не просто заполнителем вики biggrin.gif
Nickname
Для добавления мобов, предметов и, вообще, любых предметов в игру клиент трогать не надо. Воспользуйтесь UOFiddler'ом или другой программой (их предостаточно), которые работают с файлами клиента и позволяют редактировать\добавлять\удалять содержимое.
Alastar
Спасибо. Я просто еще не до конца вник во все эти подробности.
Warstone
Цитата(Alastar @ 10.2.2013, 22:34) *

Что такое обфускация я знаю(Её что-ли до сих пор не сломали?oO). Мне просто хотелось бы попрактиковаться добавлять новых(Абсолютно новых) мобов, или свои вещи. Сервер я не собираюсь делать, мне так, для практики.
PS EssenceUCS вроде тольео по заявкам распространяется?
PSS У нас просто ОСИ лайк сервер, и мне уже хотелось бы стать скриптером, а не просто заполнителем вики biggrin.gif
Вы путаете обфускацию с декомпиляцией. Первое в .Net, второе - язык процессора, записанный в человеческих мнемониках (не совсем так, но в первом приближении).
StaticZ
Цитата(Alastar @ 10.2.2013, 22:34) *
Что такое обфускация я знаю(Её что-ли до сих пор не сломали?oO).
Судя по всему не очень, обфускация это вообще из .Net и служит как раз для запутывания кода, для усложнения его декомпиляции (или как это еще называется в .Net - рефлексии), ломать там нечего по определению, вся разница только в том что при декомпиляции обфусцировнного кода вы будите получать кашу из букв вместо названий методов и переменных (а при хорошем обфускаторе еще и кашу вместо XAML'а и строк). Но .Net это управляемый язык а клиент написан на неуправляемом, т.е. чистый машинный код...


Цитата(Alastar @ 10.2.2013, 22:34) *
Что такое обфускация я знаю(Её что-ли до сих пор не сломали?oO). Мне просто хотелось бы попрактиковаться добавлять новых(Абсолютно новых) мобов, или свои вещи. Сервер я не собираюсь делать, мне так, для практики.
Если вы подразумеваете новые с точки зрения игровой логики, то вам надо смотреть в сторону программирования сервера (настоятельно советую RunUO, если это не противоречит вашим религиозным убеждениями). Если вы хотите просто заменить зеленых орков на красных гремлинов, то как сказали смотрите UOFidler и для редактирования/просмотра карты CentrEd+. Но как правило одно порождает другое, так что скорее всего вам придется заняться и тем и другим.


Цитата(Alastar @ 10.2.2013, 22:34) *
Мне просто хотелось бы попрактиковаться добавлять новых(Абсолютно новых) мобов, или свои вещи. Сервер я не собираюсь делать, мне так, для практики.
Честно говоря, по мне пустая трата времени, добавить шаблонных мобов/предметов отличающихся названием, цветом и цифрами урона заслуга не велика, но даже она потребует от новичка огромных усилий. Чего уж тут говорить про реальные изменения... По своему опыту скажу что сейчас программирование скриптов, редактирование клиента и тд и тп у меня давно уже сжирает все время, т.е. если этим заниматься даже уже разобравшись сил и времени требуется куча. Так что я бы вам советовал объединится с кем-то над работой над каким-то сервером, во первых труды не будут напрасны и кого-то (и думаю вас самих тоже) порадуют, ну а во вторых реальные задачи и цели, если их нет то подобная практика как правило всегда заканчивается какой-то ересью как с технической точки зрения так и с логической, ну а в третьих от других участников наберетесь опыта и знаний (ну это зависит от того к кому попадете конечно, есть и такие которые и сами даже писать не умеют )))) ).


Цитата(Alastar @ 10.2.2013, 22:34) *
PS EssenceUCS вроде тольео по заявкам распространяется?
да это готовый закрытый проект, так как помимо прочего служит защитой от читерства и нежелательных действий со стороны пользователей. Если нужно для кодинга\изучения то есть уо-екст, он с открытым кодом и нацелен на работу с плагинами...


Цитата(Alastar @ 10.2.2013, 22:34) *
PSS У нас просто ОСИ лайк сервер, и мне уже хотелось бы стать скриптером, а не просто заполнителем вики biggrin.gif
Смысл заполнять вики ОСИ стайл сервера? уо гайда и стратикса мало? Не думаю что 1-4 человека могут оперативнее и качественее заполнять чем мировое комьюнити )
Alastar
Цитата(StaticZ @ 11.2.2013, 0:28) *

Судя по всему не очень, обфускация это вообще из .Net и служит как раз для запутывания кода, для усложнения его декомпиляции (или как это еще называется в .Net - рефлексии), ломать там нечего по определению, вся разница только в том что при декомпиляции обфусцировнного кода вы будите получать кашу из букв вместо названий методов и переменных (а при хорошем обфускаторе еще и кашу вместо XAML'а и строк). Но .Net это управляемый язык а клиент написан на неуправляемом, т.е. чистый машинный код...
Если вы подразумеваете новые с точки зрения игровой логики, то вам надо смотреть в сторону программирования сервера (настоятельно советую RunUO, если это не противоречит вашим религиозным убеждениями). Если вы хотите просто заменить зеленых орков на красных гремлинов, то как сказали смотрите UOFidler и для редактирования/просмотра карты CentrEd+. Но как правило одно порождает другое, так что скорее всего вам придется заняться и тем и другим.
Честно говоря, по мне пустая трата времени, добавить шаблонных мобов/предметов отличающихся названием, цветом и цифрами урона заслуга не велика, но даже она потребует от новичка огромных усилий. Чего уж тут говорить про реальные изменения... По своему опыту скажу что сейчас программирование скриптов, редактирование клиента и тд и тп у меня давно уже сжирает все время, т.е. если этим заниматься даже уже разобравшись сил и времени требуется куча. Так что я бы вам советовал объединится с кем-то над работой над каким-то сервером, во первых труды не будут напрасны и кого-то (и думаю вас самих тоже) порадуют, ну а во вторых реальные задачи и цели, если их нет то подобная практика как правило всегда заканчивается какой-то ересью как с технической точки зрения так и с логической, ну а в третьих от других участников наберетесь опыта и знаний (ну это зависит от того к кому попадете конечно, есть и такие которые и сами даже писать не умеют )))) ).
да это готовый закрытый проект, так как помимо прочего служит защитой от читерства и нежелательных действий со стороны пользователей. Если нужно для кодинга\изучения то есть уо-екст, он с открытым кодом и нацелен на работу с плагинами...
Смысл заполнять вики ОСИ стайл сервера? уо гайда и стратикса мало? Не думаю что 1-4 человека могут оперативнее и качественее заполнять чем мировое комьюнити )

Смысл? В России полно игроков не знающих английский язык.
Ну надо же с чего-то начинать, создание мобиков, это даже не программирование, это несерьезно. Но я думаю помочь своему проекту, если вдруг понадобится добавить очень много простеньких мобов или итемов. И да, я ничего нового не изобретаю, я просто создаю таких же как в СА или ХС.
PS Мне просто хочется немного освоиться, а заодно и аддоны к Рануошке написать biggrin.gif
StaticZ
Цитата(Alastar @ 11.2.2013, 17:40) *
Смысл? В России полно игроков не знающих английский язык.
Ну да но это же не книга, даже те кто не знает английского уже наизусть выучили основные слова: gold, attack, mana, и тд

Цитата(Alastar @ 11.2.2013, 17:40) *
Ну надо же с чего-то начинать, создание мобиков, это даже не программирование, это несерьезно. Но я думаю помочь своему проекту, если вдруг понадобится добавить очень много простеньких мобов или итемов. И да, я ничего нового не изобретаю, я просто создаю таких же как в СА или ХС.
Ну все зависит от качества, если тупо болванчики для битья то да посути это кат-копи, а если у них какая-то изюминка, свои абилки, аи то очень даже серьезно )


Цитата(Alastar @ 11.2.2013, 17:40) *
PS Мне просто хочется немного освоиться, а заодно и аддоны к Рануошке написать biggrin.gif
Успехов в ваших начинаниях, но я бы вам советовал начинать с изучения языка C# на чем нибудь по попроще чем ранка )
pelican
Если декомпилировать в ИДА, то она показываешь интересные блоксхемы.

А в Российскоих школах не учат английскому??? Из-заче проблема с английским в России у вас?
Warstone
В Российских школах уже года 3 как 11 часов обязаловки, остальное за деньги. У нас уже ничему не учат. Реформа, мать его. В обязаловки вроде даже русского нету. Математики точно нету.
StaticZ
Цитата(Warstone @ 12.2.2013, 10:15) *

В Российских школах уже года 3 как 11 часов обязаловки, остальное за деньги. У нас уже ничему не учат. Реформа, мать его. В обязаловки вроде даже русского нету. Математики точно нету.
шутишь? общее образование без математики????
Warstone
Цитата(StaticZ @ 12.2.2013, 12:45) *

шутишь? общее образование без математики????
Нет, к сожалению. Реформа.
Alastar
Я вообще слышал, что обучение скоро полностью платным будет, мать их.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2024 Invision Power Services, Inc.