Часто возникающие вопросы по использованию редактора CadEditor

Краткое FAQ по использованию редактора и возможным проблемам

Общие вопросы

Что значит название CadEditor?

Это сокращение от Chip and Dale Editor, потому что изначально редактор предназначался для редактирования уровней этой игры.

Для чего нужен редактор CadEditor?

Прямое предназначение - смотреть и редактировать уровни из игр.

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

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

Почему редактор уже версии 5.0, а многие фичи реализованы не до конца или вообще не реализованы?

Такая версия нумерации была выбрана в начале разработки, версия 1.0 умела только редактировать все уровни и объекты в игре Chip and Dale: Rescue Rangers, все последующие версии добавлялись поверх неё. Справедливее было бы считать текущую версию версией 0.50.

Почему для некоторых игр доступно редактирование только одного уровня?

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

Можно ли создать модификацию игры, используя только редактор CadEditor

В принципе, возможно. Но стоит помнить, что NES и другие платформы имеют множество ограничений, следует хотя бы примерно ознакомиться с архитектурой целевой платформы, чтобы представлять, возможно ли в принципе реализовать на ней задуманную модификацию.

Также стоит помнить, что редактор CadEditor предназначен для модификации уровней игры, а также списков объектов на уровнях. Для изменения графики, поведения врагов, музыки, редактирования кода игры, текста, и для решения других задач, если предполагаются такие изменения, следует использовать подходящие инструменты.

Знания особенностей движка конкретной игры также приветствуются, чтобы понимать возможности и ограничения, которые предлагает конкретная игра. Но возможно и изменение уровней вообще без понимания устройства игры.

Где документация к редактору?

В процессе написания...

Редактор поддерживает так много игр, почему так мало созданных новых уровней на нём?

Для создания полноценного хака необходима возможность редактировать не только блоки и игровые экраны, но также и списки врагов и остальные поддерживаемые игрой особенности. В данный момент такая поддержка есть всего для 12 игр (для некоторых - с ограничениями).

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

Какие конкретно игры поддерживаются и что в них можно редактировать?

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

Какие игры будут добавлены в редактор?

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

Если же игра подходит для удобного добавления в редактор - рано или поздно она будет добавлена. Предпочтение отдаётся классическим играм, для которых не существует редакторов уровней.

Будет ли поддержка игр для других платформ?

В режиме построения уровней из блоков с заготовленными картинками - поддержка любых платформ есть и сейчас. Но основное направление пока что - игры для NES, для их исследования созданы удобные инструменты. Также возможно добавление игр для Sega Mega Drive. Для остальных платформ необходимо создание плагинов отрисовки тайлов графики. В перспективе - будет.

Как отредактировать уровень в игре X?

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

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

Тонкости редактирования каждой конкретной игры будут добавляться к документации, сейчас проще всего уточнить их на форуме, посвящённом редактору:
https://www.emu-land.net/forum/index.php/board,78.0.html
Основные проблемы при редактировании описаны далее в этом FAQ.

Как добавить в редактор игру X?

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

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

Пока что можно изучить список всех доступных для перегрузки функций с помощью утилиты ConfigViewer и обратиться к исходникам редактора для изучения особенностей работы редактора с этими функциями. Для этого понадобится хотя бы минимальное знание языка C#.

Как помочь развитию редактора?

Можно сделать денежное пожертвование, список кошельков указан в самом редакторе (и вообще, где только можно).

Зачем собирать пожертвования? Разработчик редактора жадный, бедный, или хочет заработать на пользователях?

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

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

Не хочу отдавать деньги, как ещё я могу помочь в разработке редактора?

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

Часто возникающие проблемы

Редактор не запускается.

Изучить сообщение об ошибке, чаще всего причина описана в нём

При открытии игры редактор выдаёт ошибку.

Снова же - изучить сообщение об ошибке, причина может быть описана в нём. Также проверить, что выбраны правильные файлы для редактирования.

После сохранения карты в редакторе нет изменений в игре.

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

Также сравнить ROM-файл до и после сохранения, возможно операционная система или другая программа блокируются запись в файл.

После сохранения изменений в игре перестали появляться враги.

Скорее всего, игра требует определённых правил расстановки врагов (например, сортировки в правильном порядке), которые были нарушены при расстановке объектов в редакторе.

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

После сохранения изменений в одном уровне другой уровень превратился в "кашу" из тайлов.

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

Версия ROM-файла правильная, конфиг открыт верный, но все равно редактор выдаёт ошибки.

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

Назад