FOnline
 Указатель Классы Функции Переменные Группы Страницы
Создание локации

Создание локации

В данном документе объясняется, как создать свою локацию и вставить ее затем в игру.

  1. Соберите вместе все необходимые вам карты. Сделайте им одинаковые имена, вроде "testloc_entrance.map" и "testloc_bunker.map".
  1. Откройте свои карты, расставьте там гексы выхода или лестницы с параметрами, соответствующими номерам карт, которые вы выбрали.
  1. Найдите в той же папке Server\Maps файл Locations.cfg. Откройте, найдите свободную позицию. Статичные локации обычно идут в начале списка, квестовые, которые создаются скриптом - в конце. Впишите туда свою локацию и ее две карты.
    [Area 200]
    name=Testloc
    max_copy=1
    size=12
    map_0=testloc_entrance
    map_1=testloc_bunker
    entrance=0 (вход на локацию только один, на карту testloc_entrance,
    visible=1 не забудьте там оставить точку входа с номером 0.)
    auto_garbage=0
    Если вы хотите иметь возможность доступа к картам через скрипты (в частности - для телепортации на нужню карту), следует в Server\scripts\_maps.fos в блоке Maps внести по образцу свои карты, а их номера указать в конце строк map_0 и map_1
  1. Если вы хотите, чтобы ваша локация была на глобале с самого начала игры, найдите в папке Server\Maps файл GenerateWorld.cfg и впишите туда номер своей локации с координатами, на которых она будет генерироваться при запуске сервера. Вроде того:
    @ 200 777 466 # Test loc. (первое число - номер, дальше координаты X и Y глобальной карты)
    Локация уже физически присутствует на карте, и туда можно зайти, но пока не хватает многих важных деталей, вроде звукового оформления карт и названия локации, которое будет отображаться на глобале. Чтобы сделать все это, лезем в файл FOGM.MSG, который находится в директории Server\Text, по одному файлу на каждый используемый язык.

Для начала, прописываем звуки каждой карте по отдельности. Ищем, куда вписать # Map 90 и 91, выбираем им названия, музыку и звуки. Проще всего это сделать копированием звукового окружения других карт.

Далее - прокручиваем список вниз, до строки "# Global map". Внимательно изучаем формат записи. Тут оформляется уже сама локация - кружок на глобальной карте и все, что с ним связано. Обязательными для каждой локации являются поля Name и Info. Также тут можно выбрать:

  • Заставку локации, которая показывается при выборе точек входа;
  • Картинку, которая будет отображаться в списке локаций на глобальной карте;
  • Названия и координаты точек входа.

Пример:

# Test loc, pid 200, base 300000
{300000}{}{Тестовая локация.} - название
{300005}{}{Не заходи - убьет!} - информация под названием.
{300020}{}{art\intrface\twntestloc.frm} - заставка.
{300030}{}{art\intrface\WM_TSTLC.FRM} - картинка для списка.
{300090}{}{1} - посчитали точки входа. У нас она одна.
{300101}{}{Вход} - назвали точку входа.
{300102}{}{200} - координата Х.
{300103}{}{255} - координата Y.

Готово!
Локация сгенерировалась на карте и оформлена.

Наиболее частые ошибки:

  • Опечатки в номерах строк в файле FOGM.MSG. Исправляется с опытом.
  • Перед тестовым запуском сервера не очищены сейвы мира. Без этого локация не сгенерится.
  • Локации не выставлен параметр visible=1.

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