Голосование

Как лучше упростить написание конфигов для любых игр?

Добавить возможность писать их на любом языке
4 (11.4%)
Сделать программу для генерации конфига
14 (40%)
Написать документацию, как делать конфиги
17 (48.6%)

Проголосовало пользователей: 26

Голосование закончилось: 23 Декабрь 2018, 01:24:45

Автор Тема: [NES] Редактор уровней Capcom и других NES игр + их хаки.  (Прочитано 421139 раз)

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

Оффлайн spiiin

  • Модератор
  • Сообщений: 760
    • Просмотр профиля
-----------------------------------------------------------------------------------------------------------------------------
Редактор уровней CadEditor
Редактор уровней для игр NES и SMD.
Версия 5.3
--------------------------------------------------------------------------------------------------------------------------------------------------------------
Поддерживаемые игры:
https://github.com/spiiin/CadEditor/blob/master/CadEditor/cad_editor_supported_games.txt
Также возможно подключение практически любых игр для платформ Nes, Snes или Sega Mega Drive.
-----------------------------------------------------------------------------------------------------------------------------
Хаки, сделанные с помощью редактора:

Darkwing Duck New Levels          http://www.romhacking.net/hacks/1382/
Darkwing Duck New Levels 2        http://www.emu-land.net/forum/index.php/topic,60286.msg1089366.html#msg1089366
Duck Tales Hardcore Revision      http://www.romhacking.net/hacks/1671/
Chip & Dale Lomax Attack (v2)     http://www.romhacking.net/hacks/1374/
Darkwing Duck In Edoropolis       https://www.emu-land.net/forum/index.php/topic,60286.msg1355612.html#msg1355612
Chip & Dale Alternative           http://www.emu-land.net/forum/index.php/topic,66546.0.html
Chip & Dale by VZIP               http://www.emu-land.net/forum/index.php?action=dlattach;topic=60286.0;attach=71489
Chip & Dale 3 by Lomax & Roket    https://www.emu-land.net/forum/index.php/topic,60286.msg1355378.html#msg1355378/52e7c89d%2F16fb8491bcf6a886b507abbee10ff4076da9c98c%2FChip+%27n+Dale+Rescue+Rangers+%28U%29+%5B%21%5D.zip?t=1344959250
Chip & Dale: Tale Spin Levels     https://www.romhacking.net/hacks/4287/
Duck Tales 2 No Gyro Без Винта    http://romhacking.net.ru/load/duck_tales_2/2-1-0-251
Duck Tales New Impressions        http://romhacking.ru/load/duck_tales_2_new_impressions/2-1-0-252
Duck Tales 2 by Dendymask         https://romhacking.ru/load/khak_prikol_duck_tales_2_na_nes_ot_dendymask/2-1-0-268
TaleSpin: Another shitty day      http://www.emu-land.net/forum/index.php?topic=73748.0
Remix of Tiny Toon Adventures     http://www.romhacking.net/hacks/2511/
Contra Super Hard Corps [SMD]     https://www.emu-land.net/forum/index.php/topic,79007.0.html

-----------------------------------------------------------------------------------------------------------------------------
Последняя на данный момент версия здесь:
https://www.emu-land.net/forum/index.php/topic,60286.msg1390753.html#msg1390753
Или здесь:
https://github.com/spiiin/CadEditor/releases/latest
https://spiiin.itch.io/cadeditor

-----------------------------------------------------------------------------------------------------------------------------
Документация по редактору:
http://spiiin.github.io/CadEditor/
Видеопример использования
https://www.youtube.com/watch?v=NfIWeDwu68w
-----------------------------------------------------------------------------------------------------------------------------
Если вы желаете поддержать развитие проекта (и бонусом предложить любую игру для добавления :) ):
WebMoney R122299008919
Bitcoin 12a26G6BxzYqx1D82ZNQvVJuzGSPETnd9r
Patreon https://www.patreon.com/CadEditor
« Последнее редактирование: 30 Январь 2019, 14:56:01 от spiiin »

Оффлайн spiiin

  • Модератор
  • Сообщений: 760
    • Просмотр профиля
В CadEditor'е есть возможность весь уровень картинкой отрисовать.
Открываешь ром, заходишь в Layout Editor, там жмёшь выбираешь нужные параметры Video Block, Big Block, Block и Pallete - их для каждого уровня можно посмотреть в редакторе экранов (выбираешь в OR GROUP имя уровня и смотришь номера этих параметров).
Дальше жмёшь кнопку export, и выбираешь имя файла (надо только разрешение с bin поменять на png, это ошибка редактора маленькая).

Добавлено позже:
можешь уже готовые тут взять:
http://vgmaps.com/Atlas/NES/

Оффлайн gress

  • Пользователь
  • Сообщений: 2
    • Просмотр профиля
В CadEditor'е есть возможность весь уровень картинкой отрисовать.
Открываешь ром, заходишь в Layout Editor, там жмёшь выбираешь нужные параметры Video Block, Big Block, Block и Pallete - их для каждого уровня можно посмотреть в редакторе экранов (выбираешь в OR GROUP имя уровня и смотришь номера этих параметров).
Дальше жмёшь кнопку export, и выбираешь имя файла (надо только разрешение с bin поменять на png, это ошибка редактора маленькая).

Добавлено позже:
можешь уже готовые тут взять:
http://vgmaps.com/Atlas/NES/

За готовые атласы отдельное спасибо! Неделю искал)))

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Хотелось бы  чтобы в Blocks Editor отображался номер активного тайла.

Оффлайн Ermac_oo

  • Пользователь
  • Сообщений: 259
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Roket и spiiin, а можете сделать видеообзор этой программы, то есть как ей пользоваться и как правильно редактировать например горы в Дюне? Было бы актуальное и полезное видео для начинающих, как я.

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Походу в редакторе перепутаны blocks и big blocks.
В Duck Tales 2 нельзя выставить настройки для египта? 2-1-2-4  выдает неправильную графику.
При редактировании и сохранении с этими настройками big blocks=2, они сохраняются в big blocks=1. вместо 2.
 Также big blocks должно быть 5 разных, а blocks 3 разных, в редакторе наоборот.

Версия CadEditor_v33.

Оффлайн spiiin

  • Модератор
  • Сообщений: 760
    • Просмотр профиля
Цитата
В Duck Tales 2 нельзя выставить настройки для египта? 2-1-2-4  выдает неправильную графику.
походу чуть неправильно память распаковалась для египта. редактор берёт дамп памяти из файла VideoBack_DT2.bin , в нём просто 6 распакованных архивов для беков лежат, можно дамп туда вручную подкинуть при желании, или свой скрипт распаковки из рома написать (там rle обычный), дампить можно с адреса 0x1000 видеопамяти, для египта в файл VideoBack_DT2.bin по адресу 0x2000 втыкать полученный дамп.
Цитата
При редактировании и сохранении с этими настройками big blocks=2, они сохраняются в big blocks=1. вместо 2.
 Также big blocks должно быть 5 разных, а blocks 3 разных, в редакторе наоборот.
Да, перепутано понятие big blocks и blocks при сохранении в Редакторе Макроблоков (и в текстовых подписях в редакторе экранов), в архиве поправленная версия редактора. В чп всегда номер блока и номер макроблока совпадал, вот и вышла путаница ещё с первых версий редактора  :-\
Цитата
Хотелось бы  чтобы в Blocks Editor отображался номер активного тайла.
И это тоже добавил.

Добавлено позже:
Ermac_oo когда-нибудь руки дойдут может.
« Последнее редактирование: 30 Май 2015, 12:42:46 от spiiin »

Оффлайн Roket

  • Пользователь
  • Сообщений: 3324
  • Пол: Мужской
  • Злой Котэ
    • Просмотр профиля
spiiin, в дак тейлс 2 ещё нельзя врагов сохранять через редактор объектов. Также Edit layout не работает. :-\

Оффлайн spiiin

  • Модератор
  • Сообщений: 760
    • Просмотр профиля
Пофиксенный плагин для редактора раскладок во вложении.

Функции сохранения для редактора объектов в dt 2 нету, там же написано read only.
Для мелкого хака можете и редактор объектов Ti_ использовать, если для чего-то масштабного нужно, пишите в личку, может помогу сделать.

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Пофиксенный плагин для редактора раскладок во вложении.

Функции сохранения для редактора объектов в dt 2 нету, там же написано read only.
Для мелкого хака можете и редактор объектов Ti_ использовать, если для чего-то масштабного нужно, пишите в личку, может помогу сделать.
Дело в том, что мы изменяем графику (тайлы, блоки и макроблоки) - а мой редактор по картинкам. Поэтому не очень понятно будет.  Если не сложно можешь сделать, пока вообще текстовиком справляемся.

Добавлено позже:
Да, перепутано понятие big blocks и blocks при сохранении в Редакторе Макроблоков (и в текстовых подписях в редакторе экранов), в архиве поправленная версия редактора. В чп всегда номер блока и номер макроблока совпадал, вот и вышла путаница ещё с первых версий редактора
В меню blocks - стало 5, при том что реально их всего 3.
В главном меню big blocks так и осталось 3, а blocks 5. Но, там походу сам текст надо поменять местам.


Добавлено позже:
Ещё баг - импорт больших блоков завист от того, что выставлено в главном меню, а не в меню больших блоков.
« Последнее редактирование: 13 Май 2015, 19:29:38 от Ti_ »

Оффлайн spiiin

  • Модератор
  • Сообщений: 760
    • Просмотр профиля
Цитата
Ещё баг - импорт больших блоков завист от того, что выставлено в главном меню, а не в меню больших блоков.
проверю.

Цитата
Дело в том, что мы изменяем графику (тайлы, блоки и макроблоки) - а мой редактор по картинкам
Так экспортируйте готовые макроблоки из КадЭдитора в png и подсуньте в твой редактор (в редакторе макроблоков нажать Export, выбрать имя файла и формат Picture вместо binary).
Как будет время, я и сохранение врагов сделаю, но есть вероятность, что пока это случится, вам уже не надо оно будет :)


Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Так экспортируйте готовые макроблоки из КадЭдитора в png и подсуньте в твой редактор (в редакторе макроблоков нажать Export, выбрать имя файла и формат Picture вместо binary).

Как будет время, я и сохранение врагов сделаю, но есть вероятность, что пока это случится, вам уже не надо оно будет :)
А, спс. Я не знал что так можно.

Да тоже думаю, но сейчас нашли другую проблему у Рокета не пашет версия 3.3 даже без фикса. Редактор не запускается.

Оффлайн Roket

  • Пользователь
  • Сообщений: 3324
  • Пол: Мужской
  • Злой Котэ
    • Просмотр профиля
Ошибка в общем такая СS0115 не найден метод, пригодный для переопределения. Версия редактора Cad 3.3

Оффлайн spiiin

  • Модератор
  • Сообщений: 760
    • Просмотр профиля
Roket
эта ошибка означает, что у тебя либо скрипт-конфиг битый, либо плагин редактора
возьми чистую версию 3.3 и распакуй в отдельную папку - там нормальный конфиг и плагины, всё работает

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
При эскпорте больших блоков в картинку, они растянулись в 2 раза, с замыливанием. Нужны были блоки оригинальные.
В macro blocks editor - не отображет номер текущего выбранного блока.

Оффлайн spiiin

  • Модератор
  • Сообщений: 760
    • Просмотр профиля
При эскпорте больших блоков в картинку, они растянулись в 2 раза, с замыливанием. Нужны были блоки оригинальные.
В macro blocks editor - не отображет номер текущего выбранного блока.

fixed:
размер картинки при экспорте зависит от масштаба выбранного в главном редакторе
В macro blocks editor теперь отображает номер текущего выбранного блока

BTW, экспортированные картинки можно же просто обработать в графическом редакторе - сжать до нужного размера (и забить на замыливание, они же нужны только чтобы уровни было видно в новой графике).
« Последнее редактирование: 30 Май 2015, 12:42:19 от spiiin »

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
BTW, экспортированные картинки можно же просто обработать в графическом редакторе - сжать до нужного размера (и забить на замыливание, они же нужны только чтобы уровни было видно в новой графике).
Не можно. Нам для перерисовки нужно было :)  (нужно было сделать макроблок камней, чтобы он стыковался с соседом)
Но в итоге я своим способом сделал, даже лучше вышло, поскольку у меня на каждый блок отдельный пнг.

Оффлайн spiiin

  • Модератор
  • Сообщений: 760
    • Просмотр профиля
Собрал все фиксы из предудущих сообщений в новую версию.
Ну и окошко About сделал, чтобы ник из заголовка программы убрать  :)

https://github.com/spiiin/CadEditor/raw/master/Release/cad_editor_v34.zip

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Собрал все фиксы из предудущих сообщений в новую версию.
Поторопился. Найден ещё 1 баг - если делать импорт blocks, для duck tales 2 можно повредить данные блоков следующего сета. Потому что файлы для ДТ2 должны быть без свойст блоков.  exportedBlocks.bin на 1088 байт , а не на 1280.

Ещё один недочет, не редактора, а конфига:  для Duck Tales 2 - нельзя выставить VideoBlock 5 (для подземелья замка), хотя в файле VideoBack_DT2.bin ты сделал его.

Ну и по-прежнему в главном меню остаются перепутанные названия BigBlock и Block.  Нужно просто их поменять местами (сами надписи).
« Последнее редактирование: 01 Июнь 2015, 09:56:14 от Ti_ »

Оффлайн spiiin

  • Модератор
  • Сообщений: 760
    • Просмотр профиля
По BigBlock и Block переименую, я может следующим заходом заодно перевод на русский сделаю :)

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

Конфиг можешь поправить сам для себя пока, строка
public OffsetRec getVideoOffset()     { return new OffsetRec(0x4D10 , 5   , 0xD00);  } // 5 - количество видеобанков, адрес в данном конфиге смысла не имеет, так как перегружена функция getDuckTalesVideoChunk, считывание самого банка памяти реализовано в ней

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Для новодобавленных игр (всех, что после этих двух, за исключением мегамэна и чудес на виражах) он работать не будет и не должен.
Но только отключать это тоже не стоит. В целом то, тайлсеты переносятся и этим мы воспользовались.

Оффлайн Roket

  • Пользователь
  • Сообщений: 3324
  • Пол: Мужской
  • Злой Котэ
    • Просмотр профиля

Версия редактора 3.3
Так обнаружил косяки в макроблоках игры duck tales.
 Начал редактировать уровень луну с заменой микро и макроблоков и вот возникли проблемы:
Макроблоки можно не все изменить в редакторе макроблоков. В списке они есть вроде все, а вот в списке редактирования в edit big blocks не все отображены.

если поточнее не отображаются в edit big blocks номера начиная с 140.

Цитата
Хм. Вот ещё при попытке заменить микро и макроблоки некоторых частей уровня я сохранил и когда нажимаешь в игре паузу -игра намертво виснет.

Зависон я вроде раскусил из-за чего, из-за того что я добавил тайл из верхней части бэкграунда которая юзается для рамки в один из микроблоков.
« Последнее редактирование: 17 Июнь 2015, 01:08:47 от Roket »

Оффлайн scorpionalfa

  • Пользователь
  • Сообщений: 151
  • Пол: Мужской
    • ВКонтакте
    • Просмотр профиля
Кто нибудь может подсказать, как в редакторе cad_editor_v32 Чёрный Плащ переходить на другие уровни игры для их редактирования? Сколько не клацал, что не менял, ни чего так и не понял.


Вот Я нарисовал к уже существующим ребятам и новичков, которых в игре не было, может получится с кем нибудь сделать продолжение этого легендарного борца с преступностью и собственным ЭГО.
Кстати у всех этих новеньких уже есть весь полный набор анимации.


Также Я слепил сырой фейк скриншот из мото уровня.
Планирую также полёты на громокряке, реактивном ранце, плаванье на катере и плоту, под водой, магазин оружия, много костюмов на выбор, возможность играть вдвоём с другом, новый сюжет в стиле джеймса бонда и его врагов "СПЕКТР" и ещё много много всякой вкуснятины, вот только Я не программист.
Кто реально может что то предложить, вот мой скайп: VitaliyOrlov3.
У меня есть неплохой исходник первого уровня ЧП на движке Scira Construct, но его нужно дорабатывать, у меня скила для этого не хватит.
« Последнее редактирование: 22 Июнь 2015, 22:15:16 от scorpionalfa »

Оффлайн spiiin

  • Модератор
  • Сообщений: 760
    • Просмотр профиля
Roket
Ага, обнаружились косяки при перемотке на вторую часть блоков, перемотка делалась на 0x40, а не 0x100 макроблоков вперёд (баг проявляется только в игре Duck Tales 1). В аттаче фикс.

Оффлайн Roket

  • Пользователь
  • Сообщений: 3324
  • Пол: Мужской
  • Злой Котэ
    • Просмотр профиля
Угу. :)
Спасиб, теперь стало гораздо удобнее делать достойные хаки на первую часть.

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Roket
Ага, обнаружились косяки при перемотке на вторую часть блоков, перемотка делалась на 0x40, а не 0x100 макроблоков вперёд (баг проявляется только в игре Duck Tales 1). В аттаче фикс.
Можно узнать, почему там вообще 512 блоков? А не 256.

Добавлено позже:
Спасиб, теперь стало гораздо удобнее делать достойные хаки на первую часть.
Как Ломакс этот баг не заметил  :ohmy:

Оффлайн spiiin

  • Модератор
  • Сообщений: 760
    • Просмотр профиля
Цитата
Можно узнать, почему там вообще 512 блоков? А не 256.
Макроблоков, а не блоков. Потому что в Duck Tales 1 их столько выделено на уровень. Номера макроблоков соотвественно кодируются 9 битами (один экран описывается 8x8 байт как в других играх Capcom + следом 8 байт, кодирующих старшие биты номеров).

Оффлайн Roket

  • Пользователь
  • Сообщений: 3324
  • Пол: Мужской
  • Злой Котэ
    • Просмотр профиля
Цитата
Как Ломакс этот баг не заметил  :ohmy:
Более того Ломакс сам не заметил как сделал это. Вот что значит человек без байтов в голове. :)


Оффлайн spiiin

  • Модератор
  • Сообщений: 760
    • Просмотр профиля
ОБНОВЛЕНИЕ РЕДАКТОРА. Версия 3.5.
- Конфиги для Contra Hard Corps (все уровни, редактор слоёв A и B, редактор врагов в режиме просмотра).
- Конфиги для игр (редактор экранов, блоков и макроблоков):
  Mega Man 3 (все уровни)
  Mega Man 4 (все уровни)
  Mega Man 5 (все уровни)
- Конфиги для игр (редактор экранов картинками, по 1 уровню):
  Jackal
  Banana Prince
  Mega Man 1
  Bucky O'Hare
  Raf World
  Power Blade 1
  Terminator 2
  Alien 3
  Castlevania
  Super Spy Hunter

Пока писал статьи на хабр про формат уровней для игр NES, улучшил автокорраптер и с помощью него сделал еще десяток конфигов картинками.
Также добавил мегамэнов 3,4,5 просто потому, что у них формат такой же, как и у Чёрного Плаща/Чипа и Дейла etc.

Ну и главное — разобрал формат уровней, объектов  и, частично, событий для Contra Hard Corps. Для запаковки и распаковки всех игровых данных (карты, описания блоков, фона) можно использовать пакер от DrMefistO (ссылки в конце поста). Адреса архивов в ROM'е указаны в конфигах уровней.
Список игровых объектов пока можно только просмотреть, возможно, в дальнейшем будет добавлена и возможность его редактирования.

Возможно, для хакинга Контры создам отдельную тему, если у кого-то будет желание ей заняться.

https://github.com/spiiin/CadEditor/blob/master/Release/cad_editor_v35.zip?raw=true - редактор
https://github.com/spiiin/CadEditor/blob/master/AutoCorruptor/nes_v2/corrupt2_example.zip?raw=true - автокорраптер с примерами
http://forum.lab313.ru/index.php?threads/konami-smd-compression-tools.147/ - LZKN Compressor для запаковки игровых архивов в ROM Contra Hard Corps

Оффлайн Roket

  • Пользователь
  • Сообщений: 3324
  • Пол: Мужской
  • Злой Котэ
    • Просмотр профиля
spiiin, было бы не плохо. Ну для контры да отдельная тема будет, если кто захочет, думаю было бы полезно. :)
И червяк джим тоже интересен в плане хакинга.

Оффлайн s1nka

  • Пользователь
  • Сообщений: 1568
  • Пол: Мужской
    • Steam
    • Просмотр профиля
spiiin, спасибо.