|
Register | Forum Rules | FAQ | Members List | Calendar | Today's Posts | Search |
|
Thread Tools |
11-27-2007, 12:26 AM | #1 | ||
Orphey_OZ
Faction: Хиигаряне Join Date: Nov 2007
Location: UA\Kiev\Furon
Posts: 91
|
Урок: Внедрение своего корабля в игру
Внедрение своего корабля в игру.
Сперва – подготовка. 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 -- 5/23/2004 11:08:14 PM -- LuaDC by Age2uN -- on error send source file (compiled lua) and this outputfile to Age2uN@gmx.net Урок 1: Внедрение своего корабля. 1) Ну допустим, к примеру, хотим мы сделать суперскаут, чтобы он летал быстро, стрелял быстро, умирал не очень быстро. Входим в папку Hgn_scout в вашей папке Data. Декомпилируем файлы .ship и .events. После чего копируем всю папку из этой папки в игровую папку (создайте) Data\ship. 2) Теперь последовательно переименовываем папку и все файлы из hgn_scout.* в “имя_новой_единицы”.*. Таким образом, в папке с именем этой единицы должны находиться файлы с именем папки и расширениями .hod, .ship, .events. 3) А теперь можно и поиздеваться. Заходим в файл .ship, он выглядит примерно так: Code:
NewShipType = StartShipConfig() NewShipType.displayedName = "Merger" NewShipType.sobDescription = "Some from rail, some from bomber..." NewShipType.maxhealth = 150 NewShipType.regentime = 0 NewShipType.minRegenTime = 0 NewShipType.sideArmourDamage = 1 NewShipType.rearArmourDamage = 1 NewShipType.isTransferable = 1 NewShipType.useEngagementRanges = 0 NewShipType.unitCapsNumber = 3 NewShipType.SquadronSize = 3 NewShipType.formationSpacing = 50 Ну, я полагаю, что вы не настолько ламеры в английском, чтобы понять, что maxhealth – это здоровье, squadronSize – это размер звена и т.д. Изменяйте всё, что хотите. Ниже вам встретятся функции StartWeaponConfig и SetEngineBurn – о них и других файлах и функциях позже. 4) Сделали всё, что хотели? Но это ещё не всё. Надо, чтобы ваш кораблик принадлежал какой-то расе. А) Чтобы быстро внедрить свой кораблик зайдите в вашей папке Data в папку scripts\startingfleets, декомпилируйте файлы внутри. После чего перенесите папку startingfleets в игровую папку (создайте) Data\scripts. Откройте любой по выбору файл и изменяйте, к примеру vaygr00.lua будет выглядеть так: Code:
PersistantData = { StrikeGroups = {}, Squadrons = { { type = "Vgr_MotherShip", subsystems = {}, shiphold = {}, name = "", size = 1, }, { type = "Vgr_ResourceCollector", subsystems = {}, shiphold = {}, name = "", size = 1, number = 6, }, { type = "Vgr_Carrier", subsystems = {}, shiphold = {}, name = "", size = 1, number = 1, }, --а вот это ваш новый эскадрон { type = "имя_новой единицы", size = размер_эскадрона, number = 1, }, }, Research = {}, } Code:
Ship = 0 SubSystem = 1 build = { { Type = SubSystem, ThingToBuild = "Vgr_C_Production_Fighter", RequiredResearch = "", RequiredShipSubSystems = "", DisplayPriority = 0, DisplayedName = "$7100", Description = "$7101", }, и по аналогии (уж как – сами попробуйте догадаться =)) добавьте кораблик – тут я умываю руки. Скажу только, что DisplayPriority показывает расположение корабля в списке строительства, а строки $#### находятся в папке Data\locale. 5) А теперь создайте ярлык на файл Homeworld2.exe и пропишите в свойствах объекта “-overrideBigFile” (без кавычек). Запускайте, наслаждайтесь. Code:
Lesson is created by Dron01 |
||
09-22-2008, 08:45 PM | #2 | ||
Айсис
Faction: Предтечи Join Date: Apr 2008
Location: Хамунаптра
Posts: 344
|
Re: Урок: Внедрение своего корабля в игру
Я так в FX моде химичил. Из Genesis`а добавил материнку предков и прокачал все корабли кои можно. У меня лин.крейсер из турелей стрелял ДВОЙНЫМ залпом Саджуука! Материнки дохли через 1.4243 секунды. Истребители прыгали в гипер и хиигары строили гипер-платформу и хранителей. И пр. и пр. и пр.
|
||
01-18-2009, 02:13 AM | #3 | ||
shurka777
Join Date: Dec 2007
Posts: 16
|
Re: Урок: Внедрение своего корабля в игру
Прошу помочь в моей проблеме, взял модель из Клизмы (пиратский файтер) засунул его и все текстуры в 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'е? На всякий случай вот мой ход: Last edited by shurka777 : 01-18-2009 at 02:30 AM. |
||
01-18-2009, 12:24 PM | #4 | ||
Prisoner
Faction: Хиигаряне Join Date: Jul 2008
Location: город герой Киев
Posts: 559
|
Re: Урок: Внедрение своего корабля в игру
если игра вылетает нужно всегда смотреть в лог файл
а потом думать что не так примерный путь: E:\Homeworld2\Bin\Release\Hw2.log |
||
01-18-2009, 01:11 PM | #5 | ||
shurka777
Join Date: Dec 2007
Posts: 16
|
Re: Урок: Внедрение своего корабля в игру
Посмотрел в лог, исправил кое какие ошибки в hiigaran00.lua. В игре он всё-таки появился (я заменил им Scout) но с вот такими вот проблемами:
Я так понял это из-за того что я использовал ship файл от Scout'a, а hod от другого. Хотелось бы узнать как самому сделать правильный HOD файл, чтобы не использовать готовые от других кораблей, и какие нужны скрипты для добавления нового шипа в меню постройки скажем для одной из рас. И хотелось бы поподробнее узнать принципы работы (значения строк в этих скриптах) вот этих файлов: *.events *.madstate *.ship, и как они взаимосвязаны друг с другом. З.Ы. Если есть у кого элементарный мод который добавляет (именно добавляет) один новый шип к существующей расе, выложете его плиз, я сам всё разберу (Test mod 01 не подходит). Заранее спасибо. И скажите как прятать картинки под спойлер или что-то подобное, тут на форуме. |
||
12-07-2009, 01:43 AM | #6 | ||
regul
Join Date: Apr 2007
Posts: 991
|
Re: Урок: Внедрение своего корабля в игру
Я добавляю SalvageCollector из piratemod v0.3 - модифицированный колллектор для быстрого сбора обломков.
удалось добавить корабль в стартовый флот, а вот в строительство никак не добавляется.. Просто не появляется в списке строительства, какой бы я ему DisplayPriority не присваивал. Что нужно еще сделать? |
||
01-10-2010, 04:00 AM | #7 | ||
regul
Join Date: Apr 2007
Posts: 991
|
Re: Урок: Внедрение своего корабля в игру
разобрался - необходимо было прописать корабль также в familylist.lua
|
||
01-14-2010, 12:20 AM | #8 | ||
regul
Join Date: Apr 2007
Posts: 991
|
Re: Урок: Внедрение своего корабля в игру
теперь всплыла следующая проблема - при добавлении этого коллектора в список постройки, он добавляется вместо какого-либо другого корабля, а не дополняя список. на пример, на верфи в разделе utilites 9 позиций, и коллектор добавляется не десятой, а заменяет одну из этих 9, какую бы я DisplayPriority не присваивал.
|
||
01-14-2010, 07:07 AM | #9 | |||
EvilChaotic
Faction: Вэйгр Join Date: Nov 2007
Location: В Фотошопе
Posts: 158
|
Re: Урок: Внедрение своего корабля в игру
Quote:
Code:
{ Type = SubSystem, ThingToBuild = "Vgr_MS_Sensors_AdvancedArray", RequiredResearch = "", RequiredShipSubSystems = "", DisplayPriority = 25, DisplayedName = "$7122", Description = "$7123", }, { Type = SubSystem, ThingToBuild = "Vgr_C_Sensors_DetectHyperspace", RequiredResearch = "", RequiredShipSubSystems = "", DisplayPriority = 30, DisplayedName = "$7126", Description = "$7127", }, { =============================================================== { Type = Ship, ThingToBuild = "Vgr_LanceFighter", RequiredResearch = "LanceBeams", RequiredShipSubSystems = "FighterProduction", DisplayPriority = 23, DisplayedName = "$7136", Description = "$7137", }, { Type = Ship, ThingToBuild = "Vgr_MissileCorvette", RequiredResearch = "", RequiredShipSubSystems = "CorvetteProduction", DisplayPriority = 100, DisplayedName = "$7138", Description = "$7139", }, { |
|||
01-15-2010, 10:04 AM | #10 | ||
regul
Join Date: Apr 2007
Posts: 991
|
Re: Урок: Внедрение своего корабля в игру
я ставил заведомо свободные номера DisplayPriority..
|
||
01-15-2010, 02:20 PM | #11 | ||
EvilChaotic
Faction: Вэйгр Join Date: Nov 2007
Location: В Фотошопе
Posts: 158
|
Re: Урок: Внедрение своего корабля в игру
Ну тогда проблема вот в этом:
Code:
DisplayedName = "$7136", Например DisplayedName = "HeavyFighter", 2 похожих по имени объекта вроде как не должны быть в хоме, и они заменяют друг друга. |
||
01-16-2010, 01:39 AM | #12 | ||
regul
Join Date: Apr 2007
Posts: 991
|
Re: Урок: Внедрение своего корабля в игру
Проверил. У mobile refinery и salvage collector'a и DisplayPriority и DisplayedName разные, а все то же.
|
||
01-27-2013, 05:38 AM | #13 | ||
Spy0007
Join Date: Jan 2013
Posts: 1
|
Re: Урок: Внедрение своего корабля в игру
Ап теме.
Так же хотелось бы увидеть минимод-образец с 1 добавленным совершенно новым шипом. Вроде бы сделано всё по гайду, с учетом постов выше, но вылетает при загрузке карты, лог-файла нет вообще Игра ставилась и патчилась с данного форума, сама-по-себе работает отлично. |
||
05-16-2014, 03:35 AM | #14 | ||
Филипп
Faction: Предтечи Join Date: Mar 2014
Posts: 31
|
Re: Урок: Внедрение своего корабля в игру
А если из другой игры(из Космической Федерации. Серые лорды)? Не говоря уже о том, что можно использовать шип файлы своих кораблей. Я нашёл их, но в формате shipcfg. Что это за формат?
|
||
05-16-2014, 10:27 AM | #15 | ||
Pandorazero
Faction: Хиигаряне Join Date: Mar 2007
Location: Киев
Posts: 1,425
|
Re: Урок: Внедрение своего корабля в игру
|
||
05-17-2014, 05:50 AM | #16 | ||
Филипп
Faction: Предтечи Join Date: Mar 2014
Posts: 31
|
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 минуты А если кто-то заинтересован, то идите в тему Космическая Федерация. Ну, вы поняли. Last edited by Филипп : 05-17-2014 at 07:54 AM. Reason: добавлено сообщение |
||
05-17-2014, 08:08 AM | #17 | |||
Pandorazero
Faction: Хиигаряне Join Date: Mar 2007
Location: Киев
Posts: 1,425
|
Re: Урок: Внедрение своего корабля в игру
Quote:
Заливай модель с текстурами и я создам пример тебе , и все распешу как делал ! |
|||
Currently Active Users Viewing This Thread: 2 (0 members and 2 guests) | |
|
|