[ Обновленные темы · Новые сообщения · Участники · Поиск · RSS ]
  • Страница 1 из 1
  • 1
[Карты] Добавляем свою карту в игру [by AlexBond, 4erver]
4erveR
Модераторы
Сообщений: 1511
Реп: 77 / Инв: 13
Для начала нужно создать скрипт для карты:
1. Качаем исходники скриптов и компилятор
2. Берем оттуда исходник скрипта любой карты (лучше мультиплеерной, Multi*.lua)
3. Прописываем путь к нашей карте в параметрах функции LoadLevel. Но помните: имя файла карты должно быть только из зарегистрированных игрой, иначе будет ошибка (подробнее)! На имена папок и скриптов это ограничение не распространяется.
4. Если в скрипте есть еще код кроме вызова LoadLevel внутри InitialiseLevel, удаляем его при отсутствии необходимости.
5. Сохраняем исходник с новым именем, компилим и кидаем lub в папку data/scripts

После создания скрипта нужно изменить файл local.xom, который находится по следующему пути:
Код
Worms Forts Under Siege\data\frontend\Local.xom


1. В XomView 2.9+ выбираем WF режим и открываем файл.
2. Открываем раздел ContainerResources
3. Выбираем любой пункт из FE.Level.*, где название соответствует нужному вам типу (н-р FE.Level.Multi.* для мультиплеерных карт)
4. ПКМ, Export .xom, сохраняем файл
5. ПКМ, Insert Cntr, выбираем тот файл
6. Выбираем появившуюся копию
Код
XResourceDetails::XContainerResourceDetails [241] "FE.Level.Attract1"
LevelDetails [1387]
LevelName = FE.B.Name.G.Mission3
ScriptName = G3multi
LevelType = 4
Brief =
Image = SS.Greek3
LevelNumber = 47
Lock =
LongestWins = False
AIPathNodeStartYOffset = 0.00
AIPathNodeCollisionStep = 20.00
80

7. Вписываем имя скрипта (ScriptName)
8. Меняем картинку (Image), название (LevelName) и порядковый номер (LevelNumber)
9. Сохраняем результаты (Save Xom).

 
4erveR
Модераторы
Сообщений: 1511
Реп: 77 / Инв: 13
Особенность функции LoadLevel (by AlexBond):

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

Пример вызова функции
Код

function InitialiseLevel()
        LoadLevel("landscapes/MP/DM03.xom",true)   
end


Для чего нужен второй параметр неизвестно...
 
  • Страница 1 из 1
  • 1
Поиск: