(мини-гайд)
Сразу скажу, что в этой процедуре, как правило, нет необходимости. Самодельные карты встречаются редко, т.к. администрация приватных серваков не располагает в 99% случаев ни ресурсами, ни художественным вкусом. И тем не менее... Ага, а еще иногда встречаются серверы, на которых древние, устаревшие версии карт. Вот в этом случае это может пригодиться.
Для начала идем вот сюда: http://openkore.sourceforge.net/grftool/ , и скачиваем GRF Tool (0.6 Мб); это инструмент для извлечения ресурсов из grf-файлов;Для полноценного подключения новой карты нужны 3 вещи:
- сама карта .fld
- упоминание о карте в файле tables\maps.txt
- прописаные порталы к этой карте
Для работы так же требуется установленный на компутере ActivePerl, http://www.activestate.com/store/activeperl/download (15.2 Мб). Он понадобится нам для исполнения скрипта-конвертора. (Замечание: оказалось, ставить Перл не обязательно, см. эту заметку).
Открываем GRF Tool-ом ваш grf-файл. Ставим фильтр *.gat (карты рельефа местности и проходимость клеточек) - выгружаем все файлы (Ctrl-A, Extract). Ставим другой фильтр - *.rsw (карты высот воды) - и тоже выгружаем их всех в ту же папку. Закрываем GRF Tool; он нам больше тут не понадобится.
Берем из дистрибутива OpenKore скрипт \fields\tools\gat2fld.pl, и ложим его в ту же папку, куда мы только что выгружали карты. Запускаем скрипт, просто покликав на него. Можно идти курить.
Удаляем *.gat, *.rsw и скрипт. Всё, у нас осталась папочка с *.fld-файлами - готовые поля для Kore. Пол-дела уже сделано.
На этом месте я обычно беру какое-то средство для сравнения каталогов, и выясняю, что именно изменилось. Т.е. какие файлы на самом деле изменились. Например, TotalCommader, и встроенная в нем фича "синхронизация каталогов".
Теперь беремся за файл \tables\maps.txt. Мы должны либо дополнить его, либо создать заново. Обратите внимание, у нас получились .fld-файлы, но в maps.txt рудиментально указан перечень .rsw-файлов. Что еще... там через разделители указаны расширенные названия карт, насколько я помню, их писать не обятательно.
Мда... а список карт "с нуля" можно получить, например, дав команду dir *.fld /b > maps.txt (находясь в каталоге с нашими .fld), и потом в текстовом редакторе заменив все .fld на .rsw#mymap#.
Теперь возьмемся за синонимы карт. Я выше кажется говорил, что GRF Tool нам больше не понадобится? Ха-ха, я вас гнусно обманул! Понадобиться, и еще не раз.
Да, а вот сами синонимы лежат в файле resnametable.txt. В нем первое поле каждой строки - это как карту видно в клиенте, а второе - как называется ее файл данных. Ну-с... по моим сведениям, Kore не поддерживает механизма синонимов, поэтому нам просто надо внимательно изучить этот файл, и сделать дубликаты .fld файлов, согласно него - и, включить их в наш maps.txt, если их там еще нет.
(Кстати, в клиенте есть список карт, вот он - mapnametable.txt, казалось бы, достаточно просто переименовать файл в maps.txt, но нет, он почему-то не полный (?!).)
Всё. Поля укладываем в \fields, список карт maps.txt - в \tables, и можно запускаться. Остались правда нерабочими порталы.... Но это уже совсем другая история (см. ниже в теме мини-FAQ по записи порталов).
* * *
Дополнительные материалы: варп через нпц