Урок: Внедрение своего корабля в игру
Внедрение своего корабля в игру.
Сперва – подготовка. 0) Подготовка Windows: Зайдите в Свойства Папки и снимите флажок «скрывать расширения для известных типов файлов» во второй вкладке. 1) Скопируйте файл homeworld2.big в любую папку, путь к которой НЕ содержит пробелов. У меня – C:\1\ 2) Теперь откройте его в BigExtractor’е от Spooky. Жмите на кнопку «Распаковать всё». У Rebellion’ов была готовая полностью декомпилированная папка Data, респект тому, кто найдёт. (P.S. Нашол! Респект мне!! Но учтите - hod'ов там нет. Это уж из своей берите) Теперь в вашей папке 1 должна быть папка Data, а в ней – папки ship, weapon, subsystem etc. Но, как видите, все файлы wepn, ship, miss, wf и т.д. не декомпилированы, т.е. закодированы. 3) LuaDC.exe перенесите в папку Windows. Чтобы декомпилировать какой-либо файл нужно зайти в Пуск->Выполнить-> “LuaDC *путь к файлу и имя*”. Проще всего написать LuaDC, а затем в Проводнике взять файл и перетащить его в поле команды «Выполнить». Учтите, что НИКАКИХ кавычек в поле команды «Выполнить» быть не должно ни в коем случае! После верной декомпиляции в папке с исходником должен появиться файл с расширением LuaDC. Жмите в контекстном меню «Переименовать» и удаляйте это расширение нафиг. После чего открывайте полученный файл в блокноте. Если всё верно, то в нём должны быть следующие строки: Code:
-- LuaDC version 0.9.19 Урок 1: Внедрение своего корабля. 1) Ну допустим, к примеру, хотим мы сделать суперскаут, чтобы он летал быстро, стрелял быстро, умирал не очень быстро. Входим в папку Hgn_scout в вашей папке Data. Декомпилируем файлы .ship и .events. После чего копируем всю папку из этой папки в игровую папку (создайте) Data\ship. 2) Теперь последовательно переименовываем папку и все файлы из hgn_scout.* в “имя_новой_единицы”.*. Таким образом, в папке с именем этой единицы должны находиться файлы с именем папки и расширениями .hod, .ship, .events. 3) А теперь можно и поиздеваться. Заходим в файл .ship, он выглядит примерно так: Code:
NewShipType = StartShipConfig() Ну, я полагаю, что вы не настолько ламеры в английском, чтобы понять, что maxhealth – это здоровье, squadronSize – это размер звена и т.д. Изменяйте всё, что хотите. Ниже вам встретятся функции StartWeaponConfig и SetEngineBurn – о них и других файлах и функциях позже. 4) Сделали всё, что хотели? Но это ещё не всё. Надо, чтобы ваш кораблик принадлежал какой-то расе. А) Чтобы быстро внедрить свой кораблик зайдите в вашей папке Data в папку scripts\startingfleets, декомпилируйте файлы внутри. После чего перенесите папку startingfleets в игровую папку (создайте) Data\scripts. Откройте любой по выбору файл и изменяйте, к примеру vaygr00.lua будет выглядеть так: Code:
PersistantData = Code:
Ship = 0 и по аналогии (уж как – сами попробуйте догадаться =)) добавьте кораблик – тут я умываю руки. Скажу только, что DisplayPriority показывает расположение корабля в списке строительства, а строки $#### находятся в папке Data\locale. 5) А теперь создайте ярлык на файл Homeworld2.exe и пропишите в свойствах объекта “-overrideBigFile” (без кавычек). Запускайте, наслаждайтесь. Code:
Lesson is created by Dron01 |
Re: Урок: Внедрение своего корабля в игру
Я так в FX моде химичил. Из Genesis`а добавил материнку предков и прокачал все корабли кои можно. У меня лин.крейсер из турелей стрелял ДВОЙНЫМ залпом Саджуука! Материнки дохли через 1.4243 секунды. Истребители прыгали в гипер и хиигары строили гипер-платформу и хранителей. И пр. и пр. и пр.
|
Re: Урок: Внедрение своего корабля в игру
1 Attachment(s)
Прошу помочь в моей проблеме, взял модель из Клизмы (пиратский файтер) засунул его и все текстуры в HOD файл согласно уроку с Relic'овского форума с помощью CFHodEd 3.2.3 и файла kpr_bomber.hod, согласно тому же уроку поправил всё что нужно было. Как теперь вставить, а точнее добавть к уже имеющимся этот Шип в игру.
В том уроке было написано: Положить новый HOD файл в папку Data\ship\hgn_ship, взять events и ship файлы от hgn_interceptor и переименовать их все в hgn_ship, т.е. в результате в папке hgn_ship должны быть три файла hgn_ship.hod; hgn_ship.ship; hgn_ship.events, но что дальше делать ничего не указано. З.Ы. Использовал вышеуказанный метод А и Б, при загрузке skirmish'а, игра вылетает. Может проблема в моём HOD'е? На всякий случай вот мой ход: |
Re: Урок: Внедрение своего корабля в игру
если игра вылетает нужно всегда смотреть в лог файл
а потом думать что не так примерный путь: E:\Homeworld2\Bin\Release\Hw2.log |
Re: Урок: Внедрение своего корабля в игру
Посмотрел в лог, исправил кое какие ошибки в hiigaran00.lua. В игре он всё-таки появился (я заменил им Scout) но с вот такими вот проблемами:
Я так понял это из-за того что я использовал ship файл от Scout'a, а hod от другого. Хотелось бы узнать как самому сделать правильный HOD файл, чтобы не использовать готовые от других кораблей, и какие нужны скрипты для добавления нового шипа в меню постройки скажем для одной из рас. И хотелось бы поподробнее узнать принципы работы (значения строк в этих скриптах) вот этих файлов: *.events *.madstate *.ship, и как они взаимосвязаны друг с другом. З.Ы. Если есть у кого элементарный мод который добавляет (именно добавляет) один новый шип к существующей расе, выложете его плиз, я сам всё разберу (Test mod 01 не подходит). Заранее спасибо. И скажите как прятать картинки под спойлер или что-то подобное, тут на форуме. |
Re: Урок: Внедрение своего корабля в игру
Я добавляю SalvageCollector из piratemod v0.3 - модифицированный колллектор для быстрого сбора обломков.
удалось добавить корабль в стартовый флот, а вот в строительство никак не добавляется.. Просто не появляется в списке строительства, какой бы я ему DisplayPriority не присваивал. Что нужно еще сделать? |
Re: Урок: Внедрение своего корабля в игру
разобрался - необходимо было прописать корабль также в familylist.lua
|
Re: Урок: Внедрение своего корабля в игру
теперь всплыла следующая проблема - при добавлении этого коллектора в список постройки, он добавляется вместо какого-либо другого корабля, а не дополняя список. на пример, на верфи в разделе utilites 9 позиций, и коллектор добавляется не десятой, а заменяет одну из этих 9, какую бы я DisplayPriority не присваивал.
|
Re: Урок: Внедрение своего корабля в игру
Quote:
Code:
{ |
Re: Урок: Внедрение своего корабля в игру
я ставил заведомо свободные номера DisplayPriority..
|
Re: Урок: Внедрение своего корабля в игру
Quote:
Code:
DisplayedName = "$7136", Например DisplayedName = "HeavyFighter", 2 похожих по имени объекта вроде как не должны быть в хоме, и они заменяют друг друга. |
Re: Урок: Внедрение своего корабля в игру
Проверил. У mobile refinery и salvage collector'a и DisplayPriority и DisplayedName разные, а все то же.
|
Re: Урок: Внедрение своего корабля в игру
Ап теме.
Так же хотелось бы увидеть минимод-образец с 1 добавленным совершенно новым шипом. Вроде бы сделано всё по гайду, с учетом постов выше, но вылетает при загрузке карты, лог-файла нет вообще :confused: Игра ставилась и патчилась с данного форума, сама-по-себе работает отлично. |
Re: Урок: Внедрение своего корабля в игру
А если из другой игры(из Космической Федерации. Серые лорды)? Не говоря уже о том, что можно использовать шип файлы своих кораблей. Я нашёл их, но в формате shipcfg. Что это за формат?
|
Re: Урок: Внедрение своего корабля в игру
Quote:
|
Re: Урок: Внедрение своего корабля в игру
Ок. Только я не знаю, как это сделать. вот в второй игре даже есть программы(как я думаю) кораблей. Ну, например:
<?xml version="1.0" encoding="iso-8859-1" standalone="yes"?> <GC2Ships> <ShipTemplate Name="DreadnoughtTemplate3_t"> <Component>HugeHull0</Component> <DisplayName>Дредноут</DisplayName> <Model>Dreadnaught</Model> </ShipTemplate> </GC2Ships> Что это? По названию файла, что это какая-то часть дредноута. Но он по-другому выглядит. Да там их не один, а сразу 25 штук. Добавлено через 16 минут Да, закину, но не получается. Потом. Сейчас пароль от аккаунта искать, и на ноуте входить. Добавлено через 22 минуты Ещё кое-что нашёл. В нерабочей игре, в папке data есть кроме ShipCfg ещё одна папка. Называется ShipTemplates. В ней больше 25 текстовых файлов с кодами для кораблей. Вот пример: <?xml version="1.0" encoding="iso-8859-1" standalone="yes"?> <GC2Ships> <ShipTemplate Name="HvyFtrTemplate2_t"> <Component>SmallHull1</Component> <DisplayName>Феникс</DisplayName> <Model>Phoenix</Model> </ShipTemplate> </GC2Ships> Это феникс. Он у разных рас выглядит по-разному. Но есть сходства, оружие и броня выглядит (у разных рас) одинаково. Только попробовал открыть shipcfg с помошью блокнота. Это строение корабля. Очень полезно. Добавлено через 1 минуту Ещё кое-что нашёл. В нерабочей игре, в папке data есть кроме ShipCfg ещё одна папка. Называется ShipTemplates. В ней больше 25 текстовых файлов с кодами для кораблей. Вот пример: <?xml version="1.0" encoding="iso-8859-1" standalone="yes"?> <GC2Ships> <ShipTemplate Name="HvyFtrTemplate2_t"> <Component>SmallHull1</Component> <DisplayName>Феникс</DisplayName> <Model>Phoenix</Model> </ShipTemplate> </GC2Ships> Это феникс. Он у разных рас выглядит по-разному. Но есть сходства, оружие и броня выглядит (у разных рас) одинаково. Только попробовал открыть shipcfg с помошью блокнота. Это строение корабля. Очень полезно. Добавлено через 1 час 24 минуты А если кто-то заинтересован, то идите в тему Космическая Федерация. Ну, вы поняли. |
Re: Урок: Внедрение своего корабля в игру
Quote:
Заливай модель с текстурами и я создам пример тебе , и все распешу как делал ! |
All times are GMT +3. The time now is 11:06 AM. |