Автор Тема: Зацените хак Disney's Aladdin [SMD]  (Прочитано 8499 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Зацените хак Disney's Aladdin [SMD]
« : 21 Июнь 2009, 22:46:27 »
Вот мой хак http://romhacking.net.ru/load/20-1-0-66 игры Disney's Aladdin [SMD]. Изменения в игре:
Теперь в бонус левели  у вас есть возможность поиграть за главного персонажа этой игры Аладдина. Теперь в бонус левели он кидает яблоки в отличии от Абу. Теперь у вас полная лампа жизней, и что самое интересное вы должны пройти бонус до конца. Так что просто умереть теперь не выйдет!
P.S. Объясните пожалуйста кто знает, с какой целью разработчики разбросали тайлы в хаотичном порядке?


Оффлайн lupus

  • Пользователь
  • Сообщений: 3828
  • Пол: Мужской
  • man with no face
    • ВКонтакте
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #1 : 21 Июнь 2009, 23:26:48 »
P.S. Объясните пожалуйста кто знает, с какой целью разработчики разбросали тайлы в хаотичном порядке?
хакерам на зло

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #2 : 21 Июнь 2009, 23:35:09 »
хакерам на зло
Я кстати тоже об этом думал)
Но из-за этого же по ходу усложняется чтения данных, да и код сам стаёт более массивным.

Оффлайн Zephyr

  • Пользователь
  • Сообщений: 544
  • Пол: Мужской
  • coder
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #3 : 21 Июнь 2009, 23:52:46 »
cari,
Неплохо. У меня вопрос по технике. Если не затруднит...
При помощи какого инструментария производилась отладка образа игры?
ТЕ при помощи каких программ (отладчиков, дизасемблеров) ты изучаешь и анализируешь код?

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #4 : 22 Июнь 2009, 00:03:20 »
Как это не прискорбно моего ума ещё недостаточно, что бы изучать целый код. Весь хак основан на небольших знаниях архитектуры консоли и ещё меньших познаний асма. Всё делалась ручками в хекс редакторе.
P.S. Все инструменты какие я использовал это эмуль, хекс и тайловый редактор.

Оффлайн Zephyr

  • Пользователь
  • Сообщений: 544
  • Пол: Мужской
  • coder
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #5 : 22 Июнь 2009, 00:10:42 »
Ну значит все еще впереди :)
Помниццо мне, что автор соник мегамикса тоже начинал с "программирования в хекс кодах".
Просто это нужно же было так попасть???  :)
Высчитать место которое отвечало за персонажа?
В любом случае хак достаточно интересный.
Спасибо.

Оффлайн Марат

  • Пользователь
  • Сообщений: 556
  • Пол: Мужской
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #6 : 23 Июнь 2009, 00:27:31 »
Объясните пожалуйста кто знает, с какой целью разработчики разбросали тайлы в хаотичном порядке?

Где это они разбросали? По мне, так все пучком. К тому же, порядок не критичен, так как все равно все выстраивается по карте тайлов.

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #7 : 23 Июнь 2009, 00:33:49 »
Где это они разбросали? По мне, так все пучком. К тому же, порядок не критичен, так как все равно все выстраивается по карте тайлов.
Ну, тогда собери анимации всех персов, что бы они шли подряд, и дай мне адреса на каждый тайл, буду тебе при много благодарен.
Завтра выложу скрины более интересного хака как и обещал.

Оффлайн Марат

  • Пользователь
  • Сообщений: 556
  • Пол: Мужской
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #8 : 23 Июнь 2009, 02:05:25 »
Да проще паренной репы.
Вот скрин с настройками.

Открываешь ром в кристал тайл2, ставишь режим tile view (F5), далее идешь на вкладку palette>import и выбираешь палитру, которую я приложил, в загруженной палитре выбираешь 4 набор. Переходишь на смещение $10000. Далее в атрибутах ставишь tile format - nd64/md, ширина тайла - 8, высота - 32. В общем, по скрину поймешь.
Палитра

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #9 : 23 Июнь 2009, 10:04:39 »
Марат спасибо позже проверю, отпишусь.
А вот и обещанные скриншоты, будущего хака.


Оффлайн sergi

  • Пользователь
  • Сообщений: 1651
    • ВКонтакте
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #10 : 23 Июнь 2009, 10:23:04 »
Выбор персонажа это круто - еще прицессу пририсовать тогда надо :lol

Оффлайн DeaDHeaD

  • Пользователь
  • Сообщений: 269
  • Пол: Мужской
    • Steam
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #11 : 23 Июнь 2009, 13:23:44 »
Не забудь поменять иконки рядом с количеством жизней  ^_^

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #12 : 23 Июнь 2009, 14:19:21 »
DeaDHeaD Обязательно сделаю, сам хотел но сейчас и так работы много.
Марат скажи пожалуйста, можно ли в этом редакторе ChristalTile 2 как то собрать сбоку из кусков тайлов, как это можно сделать в TilEd2002???
Sergi выбора персонажа пока не будет, будет просто игра за мартышку, если кто ещё не понял)) 

Оффлайн Марат

  • Пользователь
  • Сообщений: 556
  • Пол: Мужской
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #13 : 23 Июнь 2009, 16:01:44 »
Я не знаю. Я с этим редактором не работаю, так как предпочитаю yy-chr. Обычно я открываю два редактора и копирую тайлы с одного на другой. В CrystalTile2 можно открыть несколько файлов. Попробуй копировать тайлы с одного на другой.

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #14 : 23 Июнь 2009, 19:10:26 »
Где это они разбросали? По мне, так все пучком. К тому же, порядок не критичен, так как все равно все выстраивается по карте тайлов.
А как найти эту таблицу (карту) тайлов?

Оффлайн Про Игрок

  • Пользователь
  • Сообщений: 1873
  • "А ты...знаешь что такое Red Sky Project!?"
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #15 : 23 Июнь 2009, 19:35:11 »
cari:
Весьма интересный хак, побегать мартышкой абу вместо Аладдина. Но в бонусах так и не удалось походить Аладдином, только обезьянкой.
Хоть в хаке и тьма багов, но эти баги ведь из-за хаотичности тайтлов верно? И телепорт при потере мартышкенного меча на следующий уровень.
В общем - желаю успехов в завершении работы.  ;)

Оффлайн Марат

  • Пользователь
  • Сообщений: 556
  • Пол: Мужской
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #16 : 23 Июнь 2009, 20:44:52 »
А как найти эту таблицу (карту) тайлов?
А зачем тебе карта тайлов?
Ты же только персов собирался менять. А карты тайлов, по-моему, пожаты RNC.

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #17 : 23 Июнь 2009, 20:56:46 »
Там есть такие анимации персонажей, какие нуждаются в перерисовки. Например, когда Аладдин ползёт вверх по канату. Её нужно перерисовать. А в том редакторе, какой ты мне порекомендовал некоторые части лежат не пойми где. Так бы если бы была таблица тайлов на этого персонажа, было бы легче.

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #18 : 24 Июнь 2009, 17:50:21 »
Поясните что это за поентеры такие или что это вообще такое:
В роме встречаются такие штуки 61 00 E9 12 ;
61 00 E9 0E ;
 6100CAF2 – как я думаю это указатель на какой то банк графы, но почему когда меняешь поентер и перемешаешь это значение на то место куда указывает поентер в роме приходится переписывать это значение AF2 на какое то другое????

Оффлайн sergi

  • Пользователь
  • Сообщений: 1651
    • ВКонтакте
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #19 : 24 Июнь 2009, 18:19:34 »
Это условие если False то перемещается в другой исполняемый код причем вверх в данном случае т.к. больше 7FFF цифра - либо вверх на 32 килобайта либо вниз на 32 килобайта перемещение возможно :-\

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #20 : 25 Июнь 2009, 00:17:40 »
sergi, Спасибо, а поподробнее можешь о них рассказать.

Добавлено позже:
А зачем тебе карта тайлов?
Ты же только персов собирался менять. А карты тайлов, по-моему, пожаты RNC.
Мне нужны кары тайлов на персов. Как на нес. Кто поможет их найти??? В РНЦ их вроде бы нет((

Оффлайн sergi

  • Пользователь
  • Сообщений: 1651
    • ВКонтакте
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #21 : 25 Июнь 2009, 00:46:37 »
Что там подробнее говорить - учи асм и все поймешь, это условный переход с ним разветвления делаются в программе - оператор if считай

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #22 : 25 Июнь 2009, 11:59:05 »
Карту тайлов на перса найти пока не удалось(( Но нашёл что то интересное, кто может объяснить что это. По Адресу $1FB4 и ниже и выше если коверкать код то тайлы перса будут разбрасываться в хаотичном порядке. Но в врам (VRAM) расположение тайлов не изменяется. Что это туту такое?

Оффлайн Smoke

  • Пользователь
  • Сообщений: 3430
  • Пол: Мужской
  • Get Serious!
    • Steam
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #23 : 25 Июнь 2009, 12:22:49 »
Цитата: cari
Но в врам (VRAM) расположение тайлов не изменяется. Что это туту такое?
cari, в видеопамяти расположение тайлов не должно меняться, оно там может быть любым. Порядок построения(карта) врам не трогает, там просто набор байтов, которые указывают порядковый номер тайла в враме.

Оффлайн Марат

  • Пользователь
  • Сообщений: 556
  • Пол: Мужской
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #24 : 25 Июнь 2009, 15:58:39 »
2cari
Нет никакой карты тайлов на перса, есть таблица атрибутов спрайтов. Надо дебагером искать. Почитай доки Griever'a, там есть описание, что относится к атрибутам спрайта.

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #25 : 25 Июнь 2009, 19:03:33 »
Полистал я доку Griever'a и вот что меня насторожило
Цитата
Из последнего в тайловом редакторе легко увидеть какая именно букве соответствует спрайт.
Ведь это кажется то, что мне именно надо, ведь мне надо знать где именно находится тот или иной спрайт (таил) в роме.
И ещё вопрос по доке
Цитата
Итак, первая буква это 'A', которая выводится спрайтом номер 13. Если учесть, что начало атрибутов спрайтов в видеопамяти по адресу 0xF400 и каждый спрайт занимает 4х2 байта, то 13 спрайт будет занимать 0xF468-0xf46F в видеопамяти, а word, который нас интересует (номер тайла 0xA316) будет находиться по адресам 0xf46c-0xf46d.
Это как нужно считать, что р=62С0 Мы как то преобразовываем в 0xF468-0xf46F. Поясните пожалуйста.
 

Оффлайн sergi

  • Пользователь
  • Сообщений: 1651
    • ВКонтакте
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #26 : 25 Июнь 2009, 19:30:56 »
Лучше бы уж тогда новую часть аладдина сделали на базе этой - хоть реально польза какаято будет

а то макаку менять на аладдина какой смысл :-\

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #27 : 25 Июнь 2009, 20:01:29 »
Кому как, весь смысл я изложил в этой теме http://romhacking.net.ru/forum/8-32-1#246
P.S. Лучше бы по делу чего сказал.

Оффлайн Марат

  • Пользователь
  • Сообщений: 556
  • Пол: Мужской
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #28 : 25 Июнь 2009, 22:44:34 »
И ещё вопрос по доке Это как нужно считать, что р=62С0 Мы как то преобразовываем в 0xF468-0xf46F. Поясните пожалуйста.
$62C0 - это адрес в видеопамяти, где находится спрайт. А $F468-$F46F - это область в видеопамяти, где находятся атрибуты спрайта. 
[/quote]

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Re: Зацените хак Disney's Aladdin [SMD]
« Ответ #29 : 25 Июнь 2009, 23:41:12 »
Я так и думал, но мне непонятно какая между ними связь. Как мы из этого адреса $62C0 перешли к этому $F468-$F46F?
P.S. Мне нужно найти адрес тайлов (спрайтов) Аладдина, что бы в тайловом редакторе найти, сложить и перерисовать.