Автор Тема: Редактирование и хакинг Chip and Dale: Rescue Rangers  (Прочитано 2485 раз)

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

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Таблица соответствия номеров объектам:
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 - невидимый непроходимый блок, конец зоны
« Последнее редактирование: 12 Апрель 2018, 15:34:00 от spiiin »

Оффлайн Roket

  • Пользователь
  • Сообщений: 3270
  • Пол: Мужской
  • Злой Котэ
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #1 : 27 Март 2012, 17:41:30 »
spiiin,evgeny с зонами C , F и H можно чего-нибудь сделать в плане боссов?
А то они скучные в плане того, что проходятся просто, а в остальных арены есть ;).
Нельзя ли в переходах не завершение уровня сделать, а переход на новые арены с боссами? ;)
Пусть это будут даже старые арены, в которых можно поставить боссов из других уровней, но с усложнённым например прохождением? :)


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

Оффлайн evgeny

  • Пользователь
  • Сообщений: 1390
  • Пол: Мужской
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #2 : 27 Март 2012, 17:57:54 »
Roket, босса можно поставить и в конце обычной комнаты. А всех врагов нельзя объеденить в один блок, видиопамять имеет определенный размер, просто на разных уровнях выбираются разные блоки и графика одних врагов замещает других. Иначе нельзя.

Оффлайн Roket

  • Пользователь
  • Сообщений: 3270
  • Пол: Мужской
  • Злой Котэ
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #3 : 27 Март 2012, 18:18:36 »
Цитата
босса можно поставить и в конце обычной комнаты.
Можно попробовать, только для этих зон нет босса, так что если и получится поставить босса, то с бажными пискелями :ohmy:.
Цитата
А всех врагов нельзя объеденить в один блок
Жаль, а так было бы неплохо.  :-\
Цитата
просто на разных уровнях выбираются разные блоки и графика одних врагов замещает других
Да, это можно в редакторе тайлов посмотреть. Если в уровне B объект яблоко, то в уровне E уже будет не яблоко, а бревно.

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

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

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #4 : 27 Март 2012, 19:31:34 »
Чтобы добавить арену с боссом, надо раскодировать записи об уровнях - задание списка комнат, формат дверей, тип скролла и соответствие зоны и набора видео для нее.

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


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

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

Оффлайн Lomax

  • Ушел с форума
  • Сообщений: 3192
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #5 : 27 Март 2012, 19:38:00 »
Сорри, я думал, в редакторе можно редактировать и боссов)

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #6 : 27 Март 2012, 19:43:21 »
Lomax, вообще-то можно (добавить шарики, деталей боссам, арену смоделировать). Если есть скилл подмены блока видеопамяти, то можно потом в редакторе вылепить и совсем нового графически босса. Нельзя только комнаты добавлять, они идут как в оригинальной игре.

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #7 : 30 Март 2012, 21:17:39 »
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

  • Ушел с форума
  • Сообщений: 3192
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #8 : 30 Март 2012, 21:37:45 »
а, находил этот сайт еще давно) там только про яблоки по-моему расписывается) ну врагов несложно будет переучить, главное - иметь их, новых)) начну, пожалуй, с рисовки левелов) твой же редактор понимает новую графику вроде?

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #9 : 30 Март 2012, 21:45:40 »
Lomax, ага, понимает.
« Последнее редактирование: 12 Апрель 2018, 15:46:28 от spiiin »

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #10 : 31 Март 2012, 14:17:14 »
Фишка чипа и дейла, в отличии от игр типа Adventure Island, в использовании уникальных объектов на уровнях (молоток и лодка на уровне E, закручивающиеся краны из B, во второй части - вжик, открывающий воду, катание на тележках и т.п., в каждом почти уровне есть). Набор этих фишек жестко ограничен уже имеющимися, разве что поломать некоторые можно будет для масштабного хака, так что надо при дизайне уровней грамотно их использовать.

Оффлайн evgeny

  • Пользователь
  • Сообщений: 1390
  • Пол: Мужской
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #11 : 31 Март 2012, 14:25:53 »
Кстати, я понял как направление уровня меняется. Нужно определенные данные ставить там где номера комнат идут. Количество комнат на этаже ограничивать в соответствии с таблицей скрола\возврата.
Номера комнат первого уровня идут по адресу 1e2f5. Вроде и там и там нули должы быть для ограничения количества комнат до смены направления.

Оффлайн Lomax

  • Ушел с форума
  • Сообщений: 3192
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #12 : 31 Март 2012, 14:33:04 »
Фишка чипа и дейла, в отличии от игр типа Adventure Island, в использовании уникальных объектов на уровнях (молоток и лодка на уровне E, закручивающиеся краны из B, во второй части - вжик, открывающий воду, катание на тележках и т.п., в каждом почти уровне есть). Набор этих фишек жестко ограничен уже имеющимися, разве что поломать некоторые можно будет для масштабного хака, так что надо при дизайне уровней грамотно их использовать.
Ну можно идеи например оставлять, только видоизменять) ну например катания на тележках заменить на американские горки, молоток - на какую нибудь дрель, краны - на рычаги и двери, ну и т.д. На 0 уровне слава богу никаких фишек еще нет, можно спокойно потренироваться в переделке)

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

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #13 : 31 Март 2012, 14:35:06 »
evgeny я ссылку приводил чуть выше, там это описано, я уже тоже понял :) там тупо геометрически раскладка уровня нарисована.
адреса раскладок по ссылке все есть, надо только мне адреса скроллов еще собрать, и потом сделаю это в редакторе.

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

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

Оффлайн evgeny

  • Пользователь
  • Сообщений: 1390
  • Пол: Мужской
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #14 : 31 Март 2012, 14:45:50 »
Ну я так понял:
для первого уровня по адресу 1e2f6 идут данные  01 02 03 04 05 06 00 3D
а по адресу 1E44F  данные                                 C0 C0 C0 C0 C0 40 00 80
если добавить перед нулями еще данных, то комнат будет больше на этом этаже.
« Последнее редактирование: 31 Март 2012, 14:48:46 от evgeny »

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #15 : 31 Март 2012, 15:02:07 »
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

  • Пользователь
  • Сообщений: 1390
  • Пол: Мужской
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #16 : 31 Март 2012, 15:08:01 »
За счет одного уровня можно расширить другой, наверняка там указатели на начало данных. Изменить их и все. А вобще можно расширить ром и перенести данные в свободное место, что позволит любой размер делать. Вот и пригодились бы настройки смещений адресов.

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #17 : 31 Март 2012, 15:15:53 »
evgeny, ок, все адресозависимые штуки вынесу потом в xml. Их уже немало накопилось

Оффлайн evgeny

  • Пользователь
  • Сообщений: 1390
  • Пол: Мужской
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #18 : 31 Март 2012, 16:59:22 »
Цитата: spiiin
В ром есть указание размеров раскладки уровня, длины  и ширины.
Для первого уровня это адреса 1E22E и 1E21F, для остальных надо искать, но я их и так знаю, поэтому так вбил.
Я не понял зачем их искать, если там все по порядку: 1E22E - ширина в первом уровне, 1E22F - во втором, 1E230 - в третьем и так далее, то же и с высотой.

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

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

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #19 : 31 Март 2012, 17:15:01 »
evgeny, а, да, они подряд идут, не увидел, не надо их искать :lol:
адреса начал тоже можно из рома брать будет, ооок.
 
Цитата
что в роме равно 1E2D3

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

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

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

Оффлайн evgeny

  • Пользователь
  • Сообщений: 1390
  • Пол: Мужской
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #20 : 31 Март 2012, 17:35:19 »

Цитата: spiiin
а вот это как получается? 16 байт заголовка + самый старший байт просто копируется, так?
Заголовок - да, остольное нет. Там система переключаемых банков, в зависимости от банка по разному может быть. Долго все объяснять, но в данном случае адрес C000-FFFF фиксирован и при размере PRG части в 128 кб эти адреса соответствуют адресам в роме 1С010-20010.

Цитата: spiiin
я ща думаю вот над чем - раньше я порядок экранов в игре точно знал и по нему сортировал появление объектов. а теперь не совсем уже ясно будет по раскладке, в каком порядке в игре это будет проходиться.
Ну раньше порядок экранов знал, а теперь из рома этот порядок можно прочитать, какая разница?

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #21 : 31 Март 2012, 17:55:26 »
Цитата
Ну раньше порядок экранов знал, а теперь из рома этот порядок можно прочитать, какая разница?
порядок экранов нигде не хранится. есть только карта экранов и карта скроллов. а список объектов разработчики видимо вручную сортировали в порядке прохождения уровня. я то этот порядок не буду знать заранее, если разрешу в редакторе его настраивать. так что надо либо пользователей заставить следить, чтобы все объекты на уровне по порядку появления экранов шли, либо автоматически этот порядок считать, что я хочу сделать

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

Оффлайн evgeny

  • Пользователь
  • Сообщений: 1390
  • Пол: Мужской
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #22 : 31 Март 2012, 18:04:46 »
Ну есть еще таблицы указателей на адреса каких-то данных, может там что есть.

1E2B5-младший байт адреса
1E2C4 -старший байт адреса


Еще  есть данные по адресам:
1E201
1E210
1E23D
1E34C
1E26A
1E288
1E25B
« Последнее редактирование: 31 Март 2012, 18:13:23 от evgeny »

Оффлайн Lomax

  • Ушел с форума
  • Сообщений: 3192
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #23 : 31 Март 2012, 22:11:07 »
1e26a - номер трека, играемого на уровне
1e25b - используемый набор палитр
1e201 - используемая архитектура уровня
1e210 - указатель на начальный экран
1e23d - начало спрайтов врагов


Добавлено позже:
Roket, графика к первой части уровня полностью готова к использованию) будем ждать новой версии редактора, где можно будет ставить выходы, и, возможно, менять карту уровня)

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #24 : 31 Март 2012, 22:16:42 »
со скроллом так:
в каждом байте старшие 3 бита кодируют возможность пройти в разных направлениях, а младшие 5 указывают на то, куда телепортирует игрока дверь, если она есть на этом экране. Описания дверей по адресу 1E673, формат есть на acmlm.

Цитата
1e23d - начало спрайтов врагов
тогда уже так точнее :) :
1E23D graphics set for enemies/objects (8x=enemy gfx, 9x=tile gfx)
1E24C graphics set for level tiles (8x=enemy gfx, 9x=tile gfx)

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

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

Оффлайн Lomax

  • Ушел с форума
  • Сообщений: 3192
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #25 : 01 Апрель 2012, 00:09:55 »
Добавлено позже:
Lomax, я делаю пока что только форму уровня, двери может быть тока через версию :)
ок) мы не торопимся - лучше день потерять, зато потом за 5 минут долететь))) пока врагов порисую

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

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #26 : 01 Апрель 2012, 02:33:48 »
Lomax, там в одном месте только такая штука на всю игру. Думаю, те кто начал делать хак, смогут вручную это место поправить. Это нехорошо конечно, но самое простое решение :)

Ща на скринах объясню в чем проблема.
Карта уровня 0. слева - поправленная версия. Я по стрелочкам могу алгоритмом однозначно определить, в каком порядке будут проходиться все экраны, считая, что двунаправленная стрелка означает направление вправо. справа - версия из игры. однозначно сказать в каком порядке будут проходиться экраны нельзя :( Почему разработчики поставили там такую стрелку - хз.


Добавлено позже:
Вторая беда в том, что если делать, как просит evgeny, считывая все из ROM, иногда случаются поломки. Например, ошибка разработчиков в уровне D, там случайно перекрываются на 1 байт массив координат объектов и массив самих объектов. Там это прошло незаметно, но если дать возможность в редакторе вписать последний объект, то получится, что он пропадет.
Чтобы избежать таких багов, придется выбирать, либо поддерживать все костыли оригинального рома, либо убрать из него проблемные места, зато дать удобные возможности для редактирования (пока что я хочу вырезать из оригинала вот тот портящий все поворот и убрать сыр в конце первой зоны, потому что там сортировка объектов нарушена разработчиками умышленно, с правильной босс не появляется %)).

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

Добавлено позже:
мда, доделал редактор раскладок, но теперь надо переделать вообще все остальные части (редактор экранов, так как теперь точно нельзя сказать, какой экран какому уровню принадлежит, редактор тайлов, так как тайлы зависят не от моих условных "подуровней", а от уровня (12 штук) или двери (32 штуки), редактор врагов, так как теперь экраны можно переставлять, и их координаты меняются, редактор дверей). Стока всего быстро сделать не выйдет. Так что лучше не ждать новых версий и делать хаки в последней версии (0.4).
пока всё.

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #27 : 02 Апрель 2012, 21:37:39 »
"двери", если что, объект типа 5. ставить можно и нужно на тех экранах, где они в игре были, либо править карту скроллов в хекс-редакторе (там три байта на скролл, пять байт на номер двери)

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #28 : 04 Апрель 2012, 02:28:51 »
Так, помимо скролла бека уровня разобрал способ скроллинга игровых объектов. За списком объектов в уровне лежат n байт, которые определяют для каждой линии высоты уровня, в какую сторону сортируются объекты (00 - слева направо, 03 - справа налево, другие значения не используются). Причем эти байты втиснуты вплотную в описания объектов, так что увеличить высоту уровня тоже не выйдет (тока если передислоцировать их куда-то).



Добавлено позже:
Зато отсюда следует, что сортировку врагов все-таки можно сделать :)

Оффлайн spiiin

  • Модератор
  • Сообщений: 765
    • Просмотр профиля
Редактирование и хакинг Chip and Dale: Rescue Rangers
« Ответ #29 : 06 Апрель 2012, 00:31:56 »
Roket, по количеству врагов ограничение есть, ага  :(
вообще враги описываются по всему уровню, но на момент начала написания редактора я мог сделать только так, разделив их по частям на подуровни. В след. версии я это уберу, но я ее сделаю, тока примерно когда вы к уровню 5-6 подберетесь, не раньше.

пока придется либо довольствоваться этим, либо править список врагов руками в хекс-редакторе %)
список начал кодов объектов [ПЕРЕД списком лежит еще 4 массива с описаниями координат X и Y]
0:0x10388
A:0x10456
B:0x105A1
C:0x106D1
D:0x10890
E:0x10A1D
F:0x10B0E
G:0x10C88
H:0x10DB3
I:0x10EA1
J:0x10FED

       

Добавлено позже:
Да, заодно, собрал в кучу исправленное описание дверей и уровней
Описание дверей (25 записей)
1E673 - индекс экрана в раскладке.
1E68B - Y экрана.
1E6A3 - X экрана.
1E6BB - номер блока графики для фона.
1E6D3 - номер блока графики для объектов.
1E6EB - номер используемой палитры.
1E703 - номер второй палитры (влияет на объекты типа Вжика и Рокки и и используется для блинка).
1E71B - побитовое описание блинка цветов (из первой и второй палитры).
1E734 - позиция появления игроков Y.
1E74C - позиция появления игроков X.

Описание уровней (15 записей).
101B2, 101A3 - указатели на старшие байты координаты X объектов (номера экранов).
101D0, 101C1 - указатели на младшие байты координаты X объектов (позиция на экране).
101EE, 101DF - указатели на старшие байты координаты Y объектов (номера экранов).
1020C, 101FD - указатели на младшие байты координаты Y объектов (позиция на экране).
1022A, 1021B - указатели на тип объектов.
10248, 10239 - указатели на данные о направлении скролла для каждой линии высоты уровня.
1E201  - индекс в описании больших блоков уровня (совпадают для пар уровней).
1E26A - номер трека на уровне.
1E2A6, 1E297 - указатели на раскладку (форма уровня).
1E2C4, 1E2B5 - указатели на описание (направление скролла + номер двери).
1E210 - номер в раскладке стартовой комнаты.
1E23D - номер блока графики для объектов (8x=enemy gfx, 9x=tile gfx).
1E24C - номер блока графики для фона (8x=enemy gfx, 9x=tile gfx).
1E25B - номер палитры, используемой на уровне.
1E279 - номер второй палитры, используемой на уровне.
1E288 - побитовое описание блинка цветов (из первой и второй палитры).
1E22E - размер по высоте раскладки уровня.
1E21F - размер по ширине раскладки уровня.