Перейти к содержимому
DeidaraNT

Помощь по ромхакингу

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

Спасибо Спот. У меня еще один вопрос. Насколько мне известно, при попытке переконвертировать песню в формат midi из формата mp3 случается так, что песню совершенно не узнать: она становится другой, повляються другие звуки и т.д. Можно ли это как-то заранее определить, если например я хочу так сделать?

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


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

Полноценно переконвертировать mp3 в midi нельзя, и никогда не будет возможно, тем более что после конвертации 100% midi будет с туевой хучей каналов, когда задействовать из них можно только 9. В общем, оставь эту затею и лучше накачай мидюх с vgmusic.

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


Ссылка на сообщение
Какой секрет?

Sonic Team решила сэкономить ~80 байт. Архитектура Z80 позволяет поинтерам ссылаться на места, которые выше этих поинтеров (вот почему в Z80 я не встречал ошибки "Branch is out of range" !). Я это говорю к тому, что часть мелодии LBZ1 позаимствована из LBZ2. Launch Base 2 ESE Music Porter'ом ты сможешь портировать.

 

P.S.: Извини, я не умею объяснять :)

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

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


Ссылка на сообщение
Sonic Team решила сэкономить ~80 байт. Архитектура Z80 позволяет поинтерам ссылаться на места, которые выше этих поинтеров (вот почему в Z80 я не встречал ошибки "Branch is out of range" !). Я это говорю к тому, что часть мелодии LBZ1 позаимствована из LBZ2. Launch Base 2 ESE Music Porter'ом ты сможешь портировать.

 

P.S.: Извини, я не умею объяснять :)

Понятно.

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


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

А какие есть программы для ром-хакинга? ( кроме sonic editor)

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

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


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

S1 Hacking Studio. Я с нее начинал ромхакинг.

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


Ссылка на сообщение
S1 Hacking Studio. Я с нее начинал ромхакинг.

А я с Израиль Соник Эдитора.

Хотя посоветую тебе именно S1 Hscking Studio. Ибо пока ничего удобней нет.

Rouge-X, если будут проблемы с самим ромхакингом, то обращайся к Кул-Споту и Владиккомперу, и мне тоже :)

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


Ссылка на сообщение
А какие есть программы для ром-хакинга? ( кроме sonic editor)

СонМапЭд, ПланЭд (не для новичков), СонЭд, ВинХекс (тоже не для новичков), БлоКнот и Sonic 1 hacking studio =/

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


Ссылка на сообщение
А какие есть программы для ром-хакинга? ( кроме sonic editor)

 

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

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


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

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

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


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

 

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

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


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

А как в соник 2 поменять количество ударов босса и его скорость, а то уже неделю бьюсь и ниче не выходит. _'_'_

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


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

Ну да, с этим я поспорить не могу. Хотя сколько я не пытаюсь освоить АСМ, у меня все туго идет. Может это ввиду того, что я постоянно занят чем-то в последнее время?

И да, если даже вопрос пустяковый, а касается он АСМу, то Влад может какой-нибудь то ли учебник, то ли справочник (который он, например, мне давал).

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


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

Мало просто заучить команды ассемблера, нужно разбираться, долго разбираться в исходном коде, изучать движок, и просто напросто экспериментировать. Однако это мало кому дается в полной мере, так как нужно хорошо шарить в математике и физике, что по определению дается не всем, особенно людям с гуманитарным складом ума. Но хороший хак можно создать, не слишком разбираясь в коде - благо существует огромная куча всевозможных гайдов. Можно делать упор на графику, уровни, музыку (а лучше на все сразу), или другие составляющие игры, а люди оценят :)

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


Ссылка на сообщение
Мало просто заучить команды ассемблера, нужно разбираться, долго разбираться в исходном коде, изучать движок, и просто напросто экспериментировать. Однако это мало кому дается в полной мере, так как нужно хорошо шарить в математике и физике, что по определению дается не всем, особенно людям с гуманитарным складом ума. Но хороший хак можно создать, не слишком разбираясь в коде - благо существует огромная куча всевозможных гайдов. Можно делать упор на графику, уровни, музыку (а лучше на все сразу), или другие составляющие игры, а люди оценят :)

+ 1 СОГЛАС₤Н.

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


Ссылка на сообщение
А как в соник 2 поменять количество ударов босса и его скорость, а то уже неделю бьюсь и ниче не выходит. _'_'_

Посмотри в справочнике - http://info.sonicretro.org/SCHG:Sonic_2/RA...us_Table_Format

Согласно нему, количество ударов босса хранится в байте $21 объекта. В коде босса нужно найти команду, где этому байту задается какое-нибудь значение, она будет выглядеть так:

	move.b  #xx,$21(a0)

Меняя число ХХ ты изменишь количество ударов как тебе угодно.

 

По поводу скорости, она задается в байтах $10 (горизонтальная) и $12 (вертикальная), т.е. если хочешь как-нибудь повлиять на перемещение босса, один из варинатов - искать в коде все, что связано со скоростями, и менять их значение. Но сразу предупрежу: беспорядочное изменение скоростей может "выбить босса из колеи", т.е. он может начать вести себя не корректно, например залететь за экран и не вернуться.

 

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

 

И да, если даже вопрос пустяковый, а касается он АСМу, то Влад может какой-нибудь то ли учебник, то ли справочник (который он, например, мне давал).

Хех, точно. Надо наконец добить учебник, спасибо что напомнил =Р

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

 

Ребята, если кто-то думает что у вас не получится освоить АСМ, если вы не понимаете этот гид, не думайте так! Этот гид очень сложно понять, потому что он написан паршиво. Когда я его писал, и я сам был не силен в АСМе. В результате, многие вещи я показал не в том свете, в некоторых местах досадно ошибся, а объяснения получились смазанными. По сути, этот "гид" является вольной редакцией такого же гида с Ретро, с некоторыми дополнениями, урезаниями и перефразами. Не знаю как сейчас, но в то далекое время гид на Ретро был в таком же мутном и непонятном состоянии. Там были ошибки, неверные изложения и много всего. Но я по нему учился, кстати говоря. Позже, по мере продвижения, я опроверг некоторые факты того гида (и своего) и переосознал многие определения. Очень жаль, что я не исправил своевременно свой гид, а запустил это дело на долгие годы.

 

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

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


Ссылка на сообщение
Вот тут лежит обширный гайд, из которого можно много чего подчерпнуть по сабжу.

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


Ссылка на сообщение
Посмотри в справочнике - http://info.sonicretro.org/SCHG:Sonic_2/RA...us_Table_Format

Согласно нему, количество ударов босса хранится в байте $21 объекта. В коде босса нужно найти команду, где этому байту задается какое-нибудь значение, она будет выглядеть так:

	move.b  #xx,$21(a0)

Меняя число ХХ ты изменишь количество ударов как тебе угодно.

 

По поводу скорости, она задается в байтах $10 (горизонтальная) и $12 (вертикальная), т.е. если хочешь как-нибудь повлиять на перемещение босса, один из варинатов - искать в коде все, что связано со скоростями, и менять их значение. Но сразу предупрежу: беспорядочное изменение скоростей может "выбить босса из колеи", т.е. он может начать вести себя не корректно, например залететь за экран и не вернуться.

 

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

Йзвените, но почему-то я ничего не нашел, ты не прав, потомучто оказывается удары боссов регулируются collision_property(a0), а не байтом $21. Ну а скорость я так и не нашел.

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


Ссылка на сообщение
Йзвените, но почему-то я ничего не нашел, ты не прав, потомучто оказывается удары боссов регулируются collision_property(a0), а не байтом $21. Ну а скорость я так и не нашел.

collision_property и есть тот байт $21. Проверь значение этой константы в начале s2.asm.

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

В таком случае $10(a0) это xvel(a0), а $12(a0) это yvel(a0). А еще советую найти в коде список этих констант и ознакомиться с ним, так будет легче работать с объектами.

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


Ссылка на сообщение
collision_property и есть тот байт $21. Проверь значение этой константы в начале s2.asm.

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

В таком случае $10(a0) это xvel(a0), а $12(a0) это yvel(a0). А еще советую найти в коде список этих констант и ознакомиться с ним, так будет легче работать с объектами.

Сэнк ю помог. А, еще про дабл. Дай ссылгу на эти свободные байты.

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


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

Я вот работаю в s1hackingstudio и как можно изменить палитру титульника?

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


Ссылка на сообщение
Я вот работаю в s1hackingstudio и как можно изменить палитру титульника?

Открыть палитру в SonMapED'е и изменить. Можно использовать другие программы, но так как я привык этой, то посоветую именно её.

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


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

Ладно а как можно сделать чтобы credits показывало после зоны SLz

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


Ссылка на сообщение
Ладно а как можно сделать чтобы credits показывало после зоны SLz

Если не нужна последняя битва, можно просто отключить этот уровень в S1HS2

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


Ссылка на сообщение
Если не нужна последняя битва, можно просто отключить этот уровень в S1HS2

 

А если поточнее, то просто изменить порядок уровней.

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


Ссылка на сообщение
Если не нужна последняя битва, можно просто отключить этот уровень в S1HS2
А если поточнее, то просто изменить порядок уровней.

Я имел ввиду чтоб было после зоны SLz показывало окна с credits

где написано staff и т.д. это после end зоны всегда показывало

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


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

1) Делаешь так:

 

204766d9f8fct.jpg

 

2) В коде идешь к EndingSequence и заменяешь там весь код на это:

 

move.b #$1C,($FFFFF600).w ; go to credits

move.b #$9D,d0

bsr.w PlaySound_Special ; play credits music

move.w #0,($FFFFFFF4).w ; set credits index number to 0

rts

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


Ссылка на сообщение
1) Делаешь так:

 

204766d9f8fct.jpg

 

2) В коде идешь к EndingSequence и заменяешь там весь код на это:

Чтото ни чего не изменилось и ни чего в первом пункте не написано

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


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

Создайте аккаунт или войдите в него для комментирования

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

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

Зарегистрируйтесь для получения аккаунта. Это просто!

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

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

×