PDA

View Full Version : Как создать новую рассу в хомеворлд2


.::ÐIK†Â†ØR::.
05-15-2008, 10:46 PM
Товарищи! хочу создать новую рассу в хомеворлд2 со своей историей , подскажите как это зделать, какие луа там и ещо файлы делать .
Расса будет называтся юлхедер.

Pandorazero
05-16-2008, 12:09 AM
Значит так !
Можно и словами объяснить но лучше делом
Так проще будет объяснить тебе , качай мой modpak и ты все поймешь сам
посмотришь как там устроены скрипты , не так сложно !

Запускать это нада как обычный мод через Homeworld2.exe -overrideBigFile



Вот как это будет выглядеть в игре !

http://img403.imageshack.us/img403/6327/01uo7.th.jpg (http://img403.imageshack.us/my.php?image=01uo7.jpg)

.::ÐIK†Â†ØR::.
05-16-2008, 12:14 AM
О как быстро ответил , спасиб !, уже сбился со счота скока раз я тебе спасибо говорил )))

Pandorazero
05-16-2008, 12:25 AM
Без проблем обращайся если что :beer:

AndrewN
11-06-2008, 11:52 PM
Итак.
После трех часов т***а со скриптами удалось добавить новую расу в ХВ2 практически с нуля...
Итак. Согласие соавтора по моду получено, поэтому...
Тобари.
1. Предположим, что мы хотим добавить расу Тобари в игру. Дружно вспоминаем, какие у них есть корабли. Карриер, ганшип, фрегат.
Подумав, решаем, что нужны еще коллектор и пробка.
Подсистемы к чертям))
2. Для начала откапываем /берем из декомпиленной даты, декомпиллим сами/ файл Race.lua, и прописываем туда новую расу, собственно Тобарей.
Тобарям прописываем зеленые форточки). Зеленые форточки есть круто)


NotPlayable=0

Playable=1

races = {

{

"Invalid",
"Invalid",
"",
"",
0,
NotPlayable,
"",
},
{
"Hiigaran",
"$1100",
"hyperspace_gate",
"etg/special/SPECIAL_ABILITIES_HYPERSPACE_IN",
9.5,
Playable,
"HGN_",
},
{
"Vaygr",
"$1101",
"hyperspace_gate_vgr",
"etg/special/SPECIAL_ABILITIES_HYPERSPACE_IN",
9.5,
Playable,
"VGR_",
},
{
"Tobari",
"Tobari",
"hyperspace_gate_Vgr",
"etg/special/SPECIAL_ABILITIES_HYPERSPACE_IN",
9.5,
Playable,
"Tbr_",

},
{ "Random", "$3226", "", "", 0, Playable, "", },
}



3. Тобари вроде как есть.) Можно попробовать заглянуть в игру и убедиться, что теперь доступны три расы, плюс Св. РандомЪ.
4. Открываем Familylist.lua и прописываем там фамилии... семейства кораблей для Тобари...

{
name = "Corvette_Tbr", },
{
name = "Frigate_Tbr", },
{
name = "Carrier_Tbr", },
{
name = "Utility_Tbr", },
{
name = "Probe_Tbr", },
{
name = "SubSystem_Tbr", },

Не спрашивайте, почему так. Просто))
5. Естественно, моделей кораблей у нас нету) Поэтому подберем мало-мальски подходящее...
Именно:
Hgn_carrier
Hgn_assaultcorvette
Hgn_Assaultfrigate
Hgn_resoursecollector
Vgr_Probe.
6. Естественно, в готовом виде модели нас не устраивают...
Быстро переименовываем их в...:
Hgn_carrier..................Tbr_Carrier
Hgn_assaultcorvette......Tbr_Gunship
Hgn_Assaultfrigate........Tbr_Frigate
Hgn_resoursecollector....Tbr_Harvester
Vgr_Probe....................Tbr_Probe
Харвестер -- это для прикола)))
7. Вспоминаем, что нас не интересуют подсистемы.
Вспоминаем, что карриер -- единственный крупный корабль у Тобари.
Стало быть, ресерч модуль есть изначально.
Идем в Tbr_Carrier.ship, оставляем там от:


StartShipHardPointConfig(NewShipType, "Production 1", "HardpointProduction1", "System", "Production", "Destroyable", "", "Hgn_C_Production_Fighter", "", "", "", "", "", "", "")
StartShipHardPointConfig(NewShipType, "Production 2", "HardpointProduction2", "System", "Production", "Destroyable", "", "Hgn_C_Production_Corvette", "", "", "", "", "", "", "")
StartShipHardPointConfig(NewShipType, "Production 3", "HardpointProduction3", "System", "Production", "Destroyable", "", "Hgn_C_Production_Frigate", "Hgn_C_Production_FrigateAdvanced", "", "", "", "", "", "")
StartShipHardPointConfig(NewShipType, "Generic 1", "HardpointGeneric1", "System", "Generic", "Destroyable", "", "Hgn_C_Module_Research", "Hgn_C_Module_Hyperspace", "Hgn_C_Module_PlatformControl", "Hgn_C_Module_CloakGenerator", "Hgn_C_Module_HyperspaceInhibitor", "Hgn_C_Module_FireControl", "Hgn_C_Module_ResearchAdvanced", "Hgn_C_Module_BuildSpeed")
StartShipHardPointConfig(NewShipType, "Generic 2", "HardpointGeneric2", "System", "Generic", "Destroyable", "", "Hgn_C_Module_Research", "Hgn_C_Module_Hyperspace", "Hgn_C_Module_PlatformControl", "Hgn_C_Module_CloakGenerator", "Hgn_C_Module_HyperspaceInhibitor", "Hgn_C_Module_FireControl", "Hgn_C_Module_ResearchAdvanced", "Hgn_C_Module_BuildSpeed")
StartShipHardPointConfig(NewShipType, "Sensors 1", "HardpointSensors1", "System", "Sensors", "Destroyable", "", "Hgn_C_Sensors_DetectHyperspace", "Hgn_C_Sensors_AdvancedArray", "Hgn_C_Sensors_DetectCloaked", "", "", "", "", "")
StartShipHardPointConfig(NewShipType, "Engine", "Hardpoint_Engine", "System", "Innate", "Damageable", "Hgn_C_Engine", "", "", "", "", "", "", "", "")
StartShipHardPointConfig(NewShipType, "Resource", "Hardpoint_Resource", "System", "Innate", "Damageable", "Hgn_C_Innate_Resource", "", "", "", "", "", "", "", "")

...
только строки..:

StartShipHardPointConfig(NewShipType, "Generic 1", "HardpointGeneric1", "System", "Innate", "Damageable", "tbr_module_research", "")
StartShipHardPointConfig(NewShipType, "Engine", "Hardpoint_Engine", "System", "Innate", "Damageable", "Hgn_C_Engine", "", "", "", "", "", "", "", "")
StartShipHardPointConfig(NewShipType, "Resource", "Hardpoint_Resource", "System", "Innate", "Damageable", "Hgn_C_Innate_Resource", "", "", "", "", "", "", "", "")



Т.е. мы в первый же слот проставляем ресерч модуль, и делаем его вечным и неубиваемым)).
8. А-а-ах, у нас нет тобари ресерч модуля...Что же.. Выпотрашиваем Vgr_c_Module_research, кидаем его в Subsystems, и переименовываем все три файла в Tbr_Module_Research.
9. Теперь вспоминаем про семейства. Все тот же Tbr_Carrier.ship мы ковыряем дальше:
addAbility(NewShipType, "CanBuildShips", 1, "Corvette_Tbr, Frigate_Tbr, Carrier_Tbr, Utility_Tbr, Probe_Tbr", "Utility, Corvette, Frigate, SubSystemModule, Capital")
То есть строить он может все, в т.ч. и само себя)
Ах нет, пока не может..))
10.
Меняем
NewShipType.BuildFamily = "Carrier_Hgn"
на
NewShipType.BuildFamily = "Carrier_Tbr"
Точно так же выправляем во всех остальных шип-файлах все
NewShipType.BuildFamily с Hgn или Vgr на Tbr.
...
Теперь начинается самое веселое.
11. Создаем, или кидаем скрипты Building and Research в Scripts.
Нас интересует минимум кораблей и минимум ресерчей, посему клонируем Вайгровский пакет билдресерчей и переименовываем его Tobari. Однако build.lua лучше взять хиигарский.
Далее думаем, или опять же вспоминаем, как мы хотели построить дерево ресерчей...
Посколько подсистем нету, то открываем Build.lua, и удаляем все упоминания о подсистемах вообще, а так же из
RequiredShipSubSystems = "", .
Оставляем хиигарский карриер, ассолтфрегат, ассолткорвет, ресурсколлектор и пробку. Быстро их переименовываем так, как было указано выше.
12. Параллельно открываем research.lua. Что мы хотим? Подсистем нету, ergo, делаем активацией. Значит, оставляем родные вайгровские "CorvetteTech" и "FrigateTech".
12.1. "FrigateTech" дублируем, переименовываем в "CarrierSummon", исправляем все описания, меняем

TargetType = Family,
TargetName = "Frigate",

на

TargetType = Ship,
TargetName = "Tbr_Carrier",

12.2. Едем дальше. Дальше нам встречается "SuperCapHealthUpgrade1", "SuperCapHealthUpgrade2", "SuperCapSpeedUpgrade1" и "SuperCapSpeedUpgrade2"
Аналогично исправляем на

TargetType = Ship,
TargetName = "Tbr_Carrier",

...т.к. у нас только карриер и других крупных кораблей не предвидится.
12.3. Остальное выправляем по аналогии.
Однако.
Допустим, ганшипам мы хоти сделать апгрейд на огневую мощь.
Копируем любую пару конфигов, например, "CorvetteHealthUpgrade1" и "CorvetteHealthUpgrade2", переименовываем их в "CorvetteDamageUpgrade1" и "CorvetteDamageUpgrade2", и меняем

UpgradeName = "MAXHEALTH",
UpgradeValue = 1.6,
Icon = Icon_Health,


на

UpgradeName = "WeaponDamage",
UpgradeValue = 1.4,
Icon = Icon_Ability,


12.4. Подсистем у нас нет. Поэтому все упоминания о необходимых подсистемах исправляем на

RequiredSubSystems = "Research",

С этим вроде понятно.

Итого, что мы имеем? Расу Тобарей...)
Стоп.
Мы забыли прописать им Startinfleet.
13. Копируем любой стартингфлит-конфиг, переименовываем в Tobari00, и прописываем там карриер и шесть харвестеров.



PersistantData =
{
StrikeGroups = {},
Squadrons =
{
{
type = "tbr_Carrier",
subsystems = {},
shiphold = {},
name = "",
size = 1,
number = 1, },
{
type = "Tbr_Harvester",
subsystems = {},
shiphold = {},
name = "",
size = 1,
number = 6, },
},
Research = {}, }


Вроде как теперь точно все.
Что мы имеем? Почти безподсистемный карриер, ганшип, фрегат, коллектор и пробку. Карриер покупается только после ресерча, ганшипы и фрегаты спокойно апгрейдятся.
Жалко, они не летают в гипере, но как сделать гиперпрыжок без модулей, только после ресерча -- я пока не представляю...
А вот результат.
Другой совершенно несъедобный архив, весом в 1,69 мб. (http://stream.ifolder.ru/8946626)
Я вас предупредил.))

Created by AndrewN.

Prisoner
11-07-2008, 12:29 AM
4. Открываем Familylist.lua и прописываем там фамилии... семейства кораблей для Тобари...

Код:
{
name = "Corvette_Tbr", },
{
name = "Frigate_Tbr", },
{
name = "Carrier_Tbr", },
{
name = "Utility_Tbr", },
{
name = "Probe_Tbr", },
{
name = "SubSystem_Tbr", },Не спрашивайте, почему так. Просто))

это нужно для разделения кто кого будет строить

тоесть каждый корабль принадлежит к камунибудь билдфамили

отсутствие в файле шип причисление корабля к одному из семейств постройки скорее всего приведет к ошибке,
если семейства прописаное в шип'е небудет в Familylist.lua то это тоже приведет к ошибке

также с помощью такого семейства как батлкрузер_хгн и решена проблема постройки крейсеров только на верфи а не на матке

в абилити кэнбилд верфи имеется запись "файтер_хгн, корвет_хгн, батлкрузер_хгн"
а у метеринки батл не прописан вот она его и не строит

в принципе никто не мешает игратся с этими билдфамили как захочется
чтобы три вида носителей строили каждый свой вид перехватчиков, например

P.S. и еще можно поковырять файл юниткапс, но это уже по желанию, так как и стандартные настройки там будут работать

umka01
01-16-2009, 06:45 PM
У меня тоже вопросик. Как сделать так, что бы перенести кораблики из одного мода(к примеру из Звездных Воен 0.45 в мод Вавилон 5). Только подробно, что и где надо менять или просто скопировать. Сколько сам пытался.... нифига не выходит.

KUPRUM
01-09-2012, 09:57 AM
А как добавить свою расу?

Filipp
05-21-2014, 02:00 AM
И с помошью чего декомпелировать?!