Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Star_Wars_Battlefront_modding_tutorial_3.5 ПЕРЕВОД.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
28.14 Mб
Скачать

Часть 5. Объекты

На хорошей карте должны быть объекты. Объекты очень важны, и сейчас вы научитесь их добавлять.

Сначала, выберите мир, из которого вы ходите взять объекты. Так как у нас ландшафт Endor, пусть это будет Endor. В папке с активами (assets folder), найдите worlds (миры) и нажмите END. В этот раз выделите ODF и MSH. Скопируйте их в вашу папку world1. Теперь в редакторе Zeroeditor выберите - объекты (objects) в режиме редактирования (Edit Mode). Убедитесь, что уровень (layer) установлен на базовый (BASE). Если вы добавите объекты только на уровне захвата, они не появятся в режимах CTF и тому подобных (позже расскажу об этом режиме подробнее). В общем, левое окно должно выглядеть так:

Щелкните Browse (поиск). Найдите свою папку world1, выберите папку odf. Появится много файлов. Это объекты из Endor. Например, вы хотите, чтобы ваш командный пост находился за деревьями. Найдите end_prop_leaftree. Щелкните. Теперь в окне, убедитесь, что в разделе Place (разместить) указано at the top (поверх). Теперь разместите деревья вокруг пятого командного поста. Это простейшая задача. Вы можете искать другие объекты, и вставлять, что хотите. Можете добавлять папки odf и msh из любого мира и размещать по своему усмотрению в собственном мире. С помощью Multi-Select (выбор нескольких объектов), вы можете выбирать несколько объектов сразу и copy(копировать)/paste(вставлять) их. Попрактикуйтесь с объектами. Это киты, на которых держится уровень. И еще пара советов:

- Убедитесь, что объекты закреплены на поверхности (не плавают).

- Убедитесь, что положение объекта выбрано разумно. Бункер в открытом поле выглядит странно. Также как десяток кораблей, уложенных штабелем один на другой.

- Используйте ящики (crates)/бочки (barrels) и т.д. Они послужат укрытием в ходе битвы.

Часть 6: Файл lua

Теперь, когда мы разобрались с редактором Zeroeditor, взглянем на сценарий программы (скрипт). В этой части мы научимся изменять героев для нашего уровня, и выполнять последний шаг по созданию командных постов.

Перейдите в data_MAP. Теперь загрузите обычную папку (common folder). Затем перейдите по адресу scripts\MAP. Вы должны увидеть 9 файлов. Нам нужно два:

MAPc_con

MAPg_con

Всего два типа файлов с такими именами – один lua, а другой bak. Не пытайтесь редактировать файлы типа bak, работаем только с файлами lua. Файлы, в начале имени которых стоит MAPc, предназначены для битвы клонов (clone wars). Файлы MAPg – для галактической гражданской войны (galactic civil war). Начнем с командного поста. Откройте MAPc_con при помощи блокнота Notepad. Программа Office Word здесь работать не будет, нужна программа типа блокнота Notepad. Вы увидите такое окно:

Это и есть файл LUA. Это то, что заставляет игру работать. Нам нужно изменить две части. Первая часть:

--This defines the CPs. These need to happen first

cp1 = CommandPost:New{name = "cp1"}

cp2 = CommandPost:New{name = "cp2"}

cp3 = CommandPost:New{name = "cp3"}

cp4 = CommandPost:New{name = "cp4"}

Здесь нужно добавить одну строку. Скопируйте последнюю строку, чтобы получилось вот так.

--This defines the CPs. These need to happen first

cp1 = CommandPost:New{name = "cp1"}

cp2 = CommandPost:New{name = "cp2"}

cp3 = CommandPost:New{name = "cp3"}

cp4 = CommandPost:New{name = "cp4"}

cp4 = CommandPost:New{name = "cp4"}

В последней строке измените cp4на сp5. В итоге должно получиться так:

--This defines the CPs. These need to happen first

cp1 = CommandPost:New{name = "cp1"}

cp2 = CommandPost:New{name = "cp2"}

cp3 = CommandPost:New{name = "cp3"}

cp4 = CommandPost:New{name = "cp4"}

cp5 = CommandPost:New{name = "cp5"}

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

--This adds the CPs to the objective. This needs to happen after the objective is set up

conquest:AddCommandPost(cp1)

conquest:AddCommandPost(cp2)

conquest:AddCommandPost(cp3)

conquest:AddCommandPost(cp4)

Таким образом командные посты устанавливаются в качестве цели (objective), то есть вам нужно захватить их всех, чтобы выиграть. Как и в предыдущем примере скопируйте последнюю строку и замените значение на cp5. В итоге должно получиться следующее:

--This adds the CPs to the objective. This needs to happen after the objective is set up

conquest:AddCommandPost(cp1)

conquest:AddCommandPost(cp2)

conquest:AddCommandPost(cp3)

conquest:AddCommandPost(cp4)

conquest:AddCommandPost(cp5)

Теперь ваш командный пост добавлен. Повторите эти изменения во всех четырех файлах, перечисленных выше.

Теперь приступим к изменению героев. И вот какие изменения мы выполним:

Anakin  Mace Windu

Darth Maul  Jango Fett

Han Solo  Chewbacca

Boba Fett  Darth Vader

Теперь переходим в файл с цифровыми объектами (assets). Нужно отыскать закодированные имена этих героев. Перейдите в папку Сторон (sides folder), затем в rep (республика), потом odf. Здесь лежат все файлы республики. Запустите сортировку по имени, найдите раздел, где все указывается, как rep_hero_(hero name - имя героя). Настройка по умолчанию здесь: rep_hero_anakin. Нам нужен Mace Windu. Прокрутите вниз, пока не найдете его имя. Оно записано, как rep_hero_macewindu. Запишите себе где-нибудь. Теперь найдем Jango Fett. Перейдите в папку cis (папка конфедерации), потом в папку odf. Найдите cis_hero_jangofett. Это тоже запишите. А теперь, что касается общей папки со всеми героями (all folder). Найдите all_hero_chewbacca. Запишите. И последнее по очередности, но не по значению – папка империи (imp folder). Найдите imp_hero_darthvader. Итак, у нас есть кодовые имена нужных нам героев:

Rep_hero_macewindu

Cis_hero_jangofett

All_hero_chewbacca

Imp_hero_darthvader

Не так уж сложно, правда? Хорошо, теперь вернемся к файлам сценария (файлам скрипта) (ModID\common\scripts\ModID). Снова войдите в MAPc_con. Перейдите к следующему тексту:

ReadDataFile("SIDE\\rep.lvl",

"rep_inf_ep3_rifleman",

"rep_inf_ep3_rocketeer",

"rep_inf_ep3_engineer",

"rep_inf_ep3_sniper",

"rep_inf_ep3_officer",

"rep_inf_ep3_jettrooper",

"rep_hover_fightertank",

"rep_hero_anakin",

"rep_hover_barcspeeder")

ReadDataFile("SIDE\\cis.lvl",

"cis_inf_rifleman",

"cis_inf_rocketeer",

"cis_inf_engineer",

"cis_inf_sniper",

"cis_inf_officer",

"cis_inf_droideka",

"cis_hero_darthmaul",

"cis_hover_aat")

Так уровню сообщается, какой файл нужно загрузить для игры. Как видите, загружаются юниты (units), техника (vehicles), и герои (heroes). Но здесь указано ‘rep_hero_anakin’ и ‘cis_hero_darthmaul’. Нам нужны другие герои. Поэтому здесь вводим тех героев, которые нам требуются. Это должно выглядеть таким образом:

ReadDataFile("SIDE\\rep.lvl",

"rep_inf_ep3_rifleman",

"rep_inf_ep3_rocketeer",

"rep_inf_ep3_engineer",

"rep_inf_ep3_sniper",

"rep_inf_ep3_officer",

"rep_inf_ep3_jettrooper",

"rep_hover_fightertank",

"rep_hero_macewindu",

"rep_hover_barcspeeder")

ReadDataFile("SIDE\\cis.lvl",

"cis_inf_rifleman",

"cis_inf_rocketeer",

"cis_inf_engineer",

"cis_inf_sniper",

"cis_inf_officer",

"cis_inf_droideka",

"cis_hero_jangofett",

"cis_hover_aat")

Понятно? Теперь игре дается команды загрузить героев. Прокрутите текст до:

SetHeroClass(CIS, "cis_hero_darthmaul")

SetHeroClass(REP, "rep_hero_anakin")

Здесь игре указывается, кого назначить героями. Замените имена в строках на наших героев, итак здесь написано:

SetHeroClass(CIS, "cis_hero_jangofett")

SetHeroClass(REP, "rep_hero_macewindu")

Теперь этот файл готов. Переходим в Galactic Civil War One (первую гражданскую галактическую войну). Выполните те же действия, за исключением замены героев на mace windu и jango fett, замените их на Chewbacca и darth vader. Все делается по аналогии, кроме того, что исходные варианты, который мы меняем – это boba fett и han solo, а не Anakin и maul.

Когда закончите, считайте, мы разобрались с файлами LUA, оставим их на время. Не буду описывать более сложные операции с файлами LUA в этом руководстве. Файлы LUA помогают создавать стороны по желанию пользователя, добавлять цели для миссий и делать другие классные вещи.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]