Насчёт фич не понял. Куда добавил? И какие нужны.
В CadEditor
все, которые посчитаешь нужными. У него же исходники открыты. Писать можно на на любом из языков C++,C#,VB (можно луа или python прикрутить ещё).
Из фич я собираюсь добавить поддержку настройки вида и масштаба в редактор объектов, возможность двигать объекты мышкой/загружать большие иконки объектов вместо маленьких и возможность загружать списки объектов для игр с большим числом доп. параметров объектов (жизни, скорость, типы поведения и т.п.).
Дальше особенно нечего добавлять, всё можно с помощью конфигов описать уже и так. Только разве что баги доправлять.
Ну а в перспективе неплохо бы сделать ещё много чего (в зависимости от того, нужно ли это кому-то и будет ли на это время):
- менеджер игровых архивов например, с возможностью вставки их в игру или пережатия на лету более эффективными архиваторами (видеопамять Duck Tales 2 например, редактировать).
- возможность загружать хитро описанные типы игровых экранов (как в супер марио или контре первой, там Rle-сжатие экранов).
- хекс редактор допилить (чтобы, например, в утиных историях 2 можно было легко указатели на врагов править, хотя это можно и кодом описать в конфиге уже сейчас).
- визуальный редактор конфигов, чтобы можно было тестировать их (например, проверять, как загружается видеопамять и потом ей блоки отрисовывать, хотя на самом деле, имхо, достаточно предзаготовленные картинки просто использовать, как у тебя в редакторе).
- сохранение данных в какой-нибудь текстовый формат, чтобы можно было из одной игры в другую их легче конвертировать или в своих играх использовать, например.
Добавлено позже:Самое главное неудобство в том, что каждый раз при редактирование больших блоков или малых нужно устанавливать графику палитру и.т.д. заново. Если бы все последние позиции и настройки запоминались это сэкономило бы половину времени как раз.
Не обращал внимания может эта функция уже есть, но было бы хорошо загружать свой вариант НЕС палитры, а то цвета какие-то не те.
evgeny угу, поправлю. сделаю, чтобы по умолчанию при загрузке выставлялись номера, которые были установлены в главном редакторе экраном, это будет достаточно. (Можно было бы вообще запретить пользователю их менять, и сделать конфиги для отдельных уровней, но в чипе и дейле, чудесах на виражах и еще паре игр в одном наборе макроблоков могут быть скрыты пара наборов блоков, как ты знаешь наверное
).
Про установку nes палитры - в конфигах есть 2 варианта изменения её:
можно поправить адрес, откуда будут читаться палитры - функция
getPalOffset, или же написать свою функцию
getPalFunc, которая будет устанавливать любую нужную тебе палитру (при этом из рома ничего читаться и писаться не будет, для примера посмотри любой конфиг TinyToon, там я руками вбивал нужные мне палитры).