Parasite писал(а):Или я что-то не так понял?
Да не так понял. О закрытии формата речи не идёт.
Есть родственные сущности: карта, слой. Они относительно самостоятельны и полностью изолированны. Предполагается распространение их через интернет.
С точки зрения пользрвателя выглядеть ДОЛЖНО так:
1. Скачал файл-слоя (как плагин) в ивде zip-архива со всеми настройками, иконками, вспомогательными KML-объектамии и проч. (так как возможно расширение в будущем).
2. Кинул скачанный файл в каталог Layers планеты.
Всё. С этого момента в планете доступна новая карта или слой. лежит он в меню по умолчанию с сочетанием клавиш по умолчанию.
3. Пользователю надо переместить карту в другой пункт меню, сменить URL, изменить таймаут бана.
Для этого он через интерфейс в настройках для ДАННОЙ КАРТЫ меняет нужные параметры.
Эти параметры сохраняются в отдельном maps.ini (или любое имя).
4. При загрузке планеты свойства карты сначала загружаются из зипа. потом из maps.ini.
Таким образом пользователь видит всё так как он настроил.
Никаких правок блокнотом, никаких дописываний строчек.
Продвинутые пользователи ЗАПРОСТО залезут, если им надо и поменяют, если хотят, что-то в зипе. Вытащат и поправят какие-то настройки, которые не вынесены в интерфейс и так далее.
Уважаемый Parasite, Почему вам нужны плагины, вам же дали исходники?!!
Именно по этой причине нужны и зип-контейнеры для настроек карт.
Всё всегда можно делать и ручками. Но не всегда этого хочется.
Прошу прежде чем спорить как следует разобраться в предложении и его мотивах. Полностью разобраться.
Parasite писал(а):Чем плох вариант "Кинули строчку в custommaps.ini (единственный файл, а не фолдер с кучей ЗИПов) -- карта есть, не кинули -- её нет"?
Открыть Блокнотом инишник и вписать единственную строчку сможет даже нуб, имхо (либо я совсем уж потеряю веру в человечество).
Тем, что все карты в одном инишнике придётся нумеровать. Вставка новой карты нетривиальна. Нуб должен усвоить что за строчку надо прописывать и где. Я не нуб, но мне всё равно как правило лень это делать.
Parasite писал(а):Почему-то гинекологические инструменты делают для гинекологов, ювелирные - для ювелиров...
Вы пользуетесь GSM. Очень удобно. Там туева хуча настроек и нас ничего не заставляют править блокнотом. А реализация GSM -- хот не коллайдер, но в тысячи раз сложнее САС Планеты.
Parasite писал(а):Имхо, это крайне избыточный метод. Перекрывающихся настроек будет не так много, чтобы удостаивать их чести быть вынесенными в отдельный эксклюзивный файл (их и на настоящий-то момент совсем немного, всех оптом). Опять же, при автосоздании\записи этого файла - надо будет продумывать и определять, какие именно настройки являются перекрывающимися а какие нет (а это усложнение программы, потенциальные глюки и время на разработку и отладку фичи).
Надо экономить код и логику, а не количество файлов с настройками. Перекрываться будут ВСЕ и ЛЮБЫЕ настройки. Без разбора. Простым слиянием ассоциативных списков с перезаписью.
Гораздо больше можно сделать ошибк в блокноте, чем в таком лаконичном и абстрактном коде.
Parasite писал(а):Ну дак и чем же плох вариант с custommaps.ini?
Не все проблемы решаются. Можно подойти к решению более абстрактно и элегантно, убив при этом толпу зайцев. Без усложнения.
Parasite писал(а):опять же без распыления на миллион отдельных инишников
ФЛУД. Какой нахрен миллион?!