Разработка и ромхакинг > Редакторы для консольных игр

Редактирование и хакинг Chip and Dale: Rescue Rangers

(1/4) > >>

spiiin:
Таблица соответствия номеров объектам:
00 - механическая собака
01 - механический мышь
02 - пчела
03 - гусеница
04 - белка-летяга вправо
05 - белка-летяга влево
06 - "кидальщик 3 штучек и убегальщик":)
07 - хамелеон
08 - муха
09 - яблоко
0A - скрытая звезда
0B - цветок
0C - звезда
0D - желудь
0E - светящийся желудь
0F - светящаяся звезда

10 - ящик с баночкой
11 - ящик с сыром для Рокки
12 - ящик со светящейся звездой
13 - ящик со светящимся желудем
14 - ящик с вжиком
15 - ящик с вжиком (другие тайлы вжика)
16 - бомба (тайлы уровня B)
17 - ящик с лодкой
18 - ящик с молотком
19 - бомба (тайлы уровня E)
1A - скрытая святящаяся звезда
1B - неоткрывающийся ящик
1C - козлик с коврами
1D - птица-качок
1E - прыгающий ящик
1F - кенгуру с ракеткой

20 - птица с железным шаром
21 - игрушечная боевая юла
22 - клоун
23 - куколка бабочки
24 - жук в засаде
25 - рогатый жук
26 - крокодил в шляпе
27 - прыгающий крокодил в шляпе
28 - носорог-качок
29 - краб
2A - пеликан
2B - стрелок с присосками
2C - искра длинный
2D - искра средний
2E - искра короткий
2F - огонь под кастрюлей. безвреден.

30 - падающий насвозь металлический шар
31 - выдвижная платформа
32 - вентиль для блокировки потока
33 - катящийся металлический шар
34 - катящийся металлический шар
35 - резалка
36 - выключатель резалки
37 - падающие стены
38 - быстрый катящийся металлический шар
39 - "спихивалка" с игровых автоматов
3A - топор
3B - выключатель падающих шаров
3C - катящийся металлический шар
3D - вентилятор влево
3E - вентилятор вправо
3F - движущийся кусок?

40 - босс 1 (голова)
41 - босс 1 (левая рука)
42 - босс 1 (правая рука)
43 - босс 2 (сова)
44 - босс 3 (летающая ракета)
45 - босс 4 (сердце и метатель)
46 - босс 4 (заводной ключ)
47 - босс 4 (шины)
48 - катящийся металлический шар
49 - босс 6 (кролик в автомате)
4A - босс 5 (сом)
4B - босс 7 (сороконожка)
4C - босс 7 (часть сороконожки)
4D - босс 7 (часть сороконожки)
4E - босс 7 (часть сороконожки)
4F - босс 7 (часть сороконожки)

50 - босс 8 (толстопуз, рука с сигарой)
51 - босс 8 (толстопуз, морда)
52 - гнилая доска
53 - красный шарик
FF - невидимый непроходимый блок, конец зоны

Roket:
spiiin,evgeny с зонами C , F и H можно чего-нибудь сделать в плане боссов?
А то они скучные в плане того, что проходятся просто, а в остальных арены есть ;).
Нельзя ли в переходах не завершение уровня сделать, а переход на новые арены с боссами? ;)
Пусть это будут даже старые арены, в которых можно поставить боссов из других уровней, но с усложнённым например прохождением? :)


Добавлено позже:
spiiin, кста. Может попробуешь объединить всех врагов в один блок, чтобы их можно было использовать во всех уровнях, а не только в одном. :)

evgeny:
Roket, босса можно поставить и в конце обычной комнаты. А всех врагов нельзя объеденить в один блок, видиопамять имеет определенный размер, просто на разных уровнях выбираются разные блоки и графика одних врагов замещает других. Иначе нельзя.

Roket:

--- Цитата ---босса можно поставить и в конце обычной комнаты.
--- Конец цитаты ---
Можно попробовать, только для этих зон нет босса, так что если и получится поставить босса, то с бажными пискелями :ohmy:.

--- Цитата ---А всех врагов нельзя объеденить в один блок
--- Конец цитаты ---
Жаль, а так было бы неплохо.  :-\

--- Цитата ---просто на разных уровнях выбираются разные блоки и графика одних врагов замещает других
--- Конец цитаты ---
Да, это можно в редакторе тайлов посмотреть. Если в уровне B объект яблоко, то в уровне E уже будет не яблоко, а бревно.

Ну а арены добавить не получится после тех уровней, которых я говорил, прописать туда определённых боссов?

Добавлено позже:
Вообще хотя бы прописать боссов в зону C, F, H.
Например:
в зону C - босса уровня 0, в зону F - босса зоны A, в зону H - босса уровня E.

spiiin:
Чтобы добавить арену с боссом, надо раскодировать записи об уровнях - задание списка комнат, формат дверей, тип скролла и соответствие зоны и набора видео для нее.

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

Пока этого нет :( и мне уже перерыв нужен для другой работы.

Добавлено позже:

--- Цитата ---Уменьшить время восстановления босса после удара , чтобы впустую не тратить собственное и увеличить энергию босса для затяжной битвы
--- Конец цитаты ---
:thumbup:, никто же не мешает помимо редактора еще потом доработать напильником хак :D

Lomax:
Сорри, я думал, в редакторе можно редактировать и боссов)

spiiin:
Lomax, вообще-то можно (добавить шарики, деталей боссам, арену смоделировать). Если есть скилл подмены блока видеопамяти, то можно потом в редакторе вылепить и совсем нового графически босса. Нельзя только комнаты добавлять, они идут как в оригинальной игре.

spiiin:
http://acmlm.no-ip.org/board/thread.php?id=5821
Вот что нашел :)
Со временем разберу эти шифровки )

Lomax, там пример, как поведение объекта поменять есть, пригодится, если врагов переделывать
1105C do apples scroll with screen
1105D how apples act
1105E how apples behave

Lomax:
а, находил этот сайт еще давно) там только про яблоки по-моему расписывается) ну врагов несложно будет переучить, главное - иметь их, новых)) начну, пожалуй, с рисовки левелов) твой же редактор понимает новую графику вроде?

spiiin:
Lomax, ага, понимает.

spiiin:
Фишка чипа и дейла, в отличии от игр типа Adventure Island, в использовании уникальных объектов на уровнях (молоток и лодка на уровне E, закручивающиеся краны из B, во второй части - вжик, открывающий воду, катание на тележках и т.п., в каждом почти уровне есть). Набор этих фишек жестко ограничен уже имеющимися, разве что поломать некоторые можно будет для масштабного хака, так что надо при дизайне уровней грамотно их использовать.

evgeny:
Кстати, я понял как направление уровня меняется. Нужно определенные данные ставить там где номера комнат идут. Количество комнат на этаже ограничивать в соответствии с таблицей скрола\возврата.
Номера комнат первого уровня идут по адресу 1e2f5. Вроде и там и там нули должы быть для ограничения количества комнат до смены направления.

Lomax:

--- Цитата: spiiin от 31 Март 2012, 14:17:14 ---Фишка чипа и дейла, в отличии от игр типа Adventure Island, в использовании уникальных объектов на уровнях (молоток и лодка на уровне E, закручивающиеся краны из B, во второй части - вжик, открывающий воду, катание на тележках и т.п., в каждом почти уровне есть). Набор этих фишек жестко ограничен уже имеющимися, разве что поломать некоторые можно будет для масштабного хака, так что надо при дизайне уровней грамотно их использовать.

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


--- Цитата: evgeny от 31 Март 2012, 14:25:53 ---Кстати, я понял как направление уровня меняется. Нужно определенные данные ставить там где номера комнат идут. Количество комнат на этаже ограничивать в соответствии с таблицей скрола\возврата.
Номера комнат первого уровня идут по адресу 1e2f5. Вроде и там и там нули должы быть для ограничения количества комнат до смены направления.

--- Конец цитаты ---
А вот это ооочень полезная инфа, я вообще собирался изменить направление первого левела, чтобы его нельзя было узнать) в идеале - сделать ход прямо, а затем вниз, в подземелье.

spiiin:
evgeny я ссылку приводил чуть выше, там это описано, я уже тоже понял :) там тупо геометрически раскладка уровня нарисована.
адреса раскладок по ссылке все есть, надо только мне адреса скроллов еще собрать, и потом сделаю это в редакторе.

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

Добавлено позже:
Lomax, скролл вниз движком кажется не поддерживается вообще :) и развилки тоже нельзя делать

evgeny:
Ну я так понял:
для первого уровня по адресу 1e2f6 идут данные  01 02 03 04 05 06 00 3D
а по адресу 1E44F  данные                                 C0 C0 C0 C0 C0 40 00 80
если добавить перед нулями еще данных, то комнат будет больше на этом этаже.

spiiin:
evgeny, так, нельзя, сломается. В ром есть указание размеров раскладки уровня, длины  и ширины.
Для первого уровня это адреса 1E22E и 1E21F, для остальных надо искать, но я их и так знаю, поэтому так вбил.

Дальше есть описание прямоугольника с раскладкой:
layout @ 1E2D3: (level 1)

1E2D3:
16 17 18 19 1A 1B 00 <- inside area 00
0F 10 11 12 13 14 15
0E 00 00 00 1D 00 1C <- boss entrance 12
08 09 0A 0B 0C 0D 00
00 00 00 00 00 07 00
01 02 03 04 05 06 00
на скрине это же описание, но с готовыми экранами

Тупо геометрически описан весь уровень (размером 7x6, номера комнат соотвестствуют тому, как они описаны в игре - комната X описана по адресу 0x10 + 0x40 * X). Дальше еще есть такая же раскладка из 42 байт для скроллов и дверей (в одном байте описано и то и то).

Если надо изменить раскладку, достаточно номера комнат поисправлять и скроллы. Если изменить форму - то найти записи о размерах, изменить их, только чтобы общая площадь не больше была, и переописать геометрически весь уровень. (например, под размеры 5 на 5).

Добавлено позже:
все размеры уровней :
0:(7,6), A:(3,8), B:(8,3), C:(8,3), D:(8,4), E:(8,3), F:(8,5), G:(8,4), H:(8,5), I:(8,3), J:(8,4)
если кто-то решится их править, сохраните адреса, я тогда в редактор вместо констант пробью их, чтобы они из ром читались.

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

spiiin:
evgeny, ок, все адресозависимые штуки вынесу потом в xml. Их уже немало накопилось

evgeny:

--- Цитата: spiiin ---В ром есть указание размеров раскладки уровня, длины  и ширины.
Для первого уровня это адреса 1E22E и 1E21F, для остальных надо искать, но я их и так знаю, поэтому так вбил.
--- Конец цитаты ---
Я не понял зачем их искать, если там все по порядку: 1E22E - ширина в первом уровне, 1E22F - во втором, 1E230 - в третьем и так далее, то же и с высотой.

Есть еще указатили на начало данных порядка комнат
1E297-мадший байт адреса
1E2A6 -старший байт адреса

допустим по адресу 1E297 у нас С3, а по адресу 1E2A6 у нас E2 - получаем адрес E2C3 что в роме равно
1E2D3. Где как раз описание прямоугольника с раскладкой. Дальше по той же схеме второй указатель итд. Т.е. можно использовать эти указатели в редакторе, для большей свободы действий.

spiiin:
evgeny, а, да, они подряд идут, не увидел, не надо их искать :lol:
адреса начал тоже можно из рома брать будет, ооок.
 
--- Цитата ---что в роме равно 1E2D3
--- Конец цитаты ---

а вот это как получается? 16 байт заголовка + самый старший байт просто копируется, так?

ок, уже лучше =)

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

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Перейти к полной версии