эм. в общем не получилось записать.. фрапс почему то у меня перестал снимать рабочий стол... но я все прописал в race.lua в familylist.lua прописал в скриптах building and research tobari build.lua и research.lua корабли сделал. стартингфлит сделал. все в общем работает. я могу вполне нормально играть за мою рассу. все так как мне надо. но когда это ИИ, она просто стоит на месте... конечно ресурсы собирает, но почемуто ничего не строит.... хотя я думаю я все в ИИ прописал. вроде все файлики обработал.
класдеф показывать не буду. это глупо. с ним проблем нету 100%. так дальше. цпубюлд:
Code:
-- =============================================================================
-- Homeworld 2 Clean Data Resource Project
-- By S110
-- Version 1.0
-- 02/06/2010
-- Tools used: EditPad Lite, LuaDC version 0.9.19, and Cold Fusion LUA Decompiler v1.0.0
-- =============================================================================
aitrace("LOADING CPU BUILD")
dofilepath("data:ai/cpuresource.lua")
dofilepath("data:ai/cpubuildsubsystem.lua")
function CreateBuildDefinitions()
if (s_race == Race_Hiigaran) then
kCollector = HGN_RESOURCECOLLECTOR
kRefinery = HGN_RESOURCECONTROLLER
kScout = HGN_SCOUT
kInterceptor = HGN_INTERCEPTOR
kBomber = HGN_ATTACKBOMBER
kCarrier = HGN_CARRIER
kShipYard = HGN_SHIPYARD
kDestroyer = HGN_DESTROYER
kBattleCruiser = HGN_BATTLECRUISER
elseif (s_race == Race_Vaygr) then
kCollector = VGR_RESOURCECOLLECTOR
kRefinery = VGR_RESOURCECONTROLLER
kScout = VGR_SCOUT
kInterceptor = VGR_INTERCEPTOR
kBomber = VGR_BOMBER
kCarrier = VGR_CARRIER
kShipYard = VGR_SHIPYARD
kDestroyer = VGR_DESTROYER
kBattleCruiser = VGR_BATTLECRUISER
else
kCollector = TBR_RESOURCECOLLECTOR
kRefinery = TBR_RESOURCECONTROLLER
kScout = TBR_SCOUT
kInterceptor = TBR_INTERCEPTOR
kBomber = TBR_BOMBER
kCarrier = TBR_CARRIER
kShipYard = TBR_SHIPYARD
kDestroyer = TBR_DESTROYER
kBattleCruiser = TBR_BATTLECRUISER
end
end
function CpuBuild_PersonalityDemand()
if (s_race == Race_Hiigaran) then
sg_classPersonalityDemand[eFighter] = 0.5
sg_classPersonalityDemand[eCorvette] = 0.25
sg_classPersonalityDemand[eFrigate] = 0
elseif (s_race == Race_Vaygr) then
sg_classPersonalityDemand[eFighter] = 0.5
sg_classPersonalityDemand[eCorvette] = 0.5
sg_classPersonalityDemand[eFrigate] = 0.25
else
sg_classPersonalityDemand[eFighter] = 0.5
sg_classPersonalityDemand[eCorvette] = 0.5
sg_classPersonalityDemand[eFrigate] = 0.25
end
sg_classPersonalityDemand[ePlatform] = -0.5
if (Rand(100) < 10) then
sg_classPersonalityDemand[ePlatform] = 0
end
if (g_LOD >= 2) then
sg_classPersonalityDemand[ePlatform] = sg_classPersonalityDemand[ePlatform] - 3
end
aitrace("PersonalityDemand: Fi:"..sg_classPersonalityDemand[eFighter].." Co:"..sg_classPersonalityDemand[eCorvette].." Fr:"..sg_classPersonalityDemand[eFrigate])
end
это начало. первые две функции. остальное я посчитал ненужным прописывать. надеюсь это так. цпубюлдсистем:
Code:
-- =============================================================================
-- Homeworld 2 Clean Data Resource Project
-- By S110
-- Version 1.0
-- 02/06/2010
-- Tools used: EditPad Lite, LuaDC version 0.9.19, and Cold Fusion LUA Decompiler v1.0.0
-- =============================================================================
function CpuBuildSS_Init()
if (s_race == Race_Hiigaran) then
CpuBuildSS_DefaultSubSystemDemandRules = DoSubSystemDemand_Hiigaran
elseif (s_race == Race_Vaygr) then
CpuBuildSS_DefaultSubSystemDemandRules = DoSubSystemDemand_Vaygr
else
CpuBuildSS_DefaultSubSustemDemandRules = DoSubSystemDemand_Tobari
end
sg_lastSpecialSubSysTime = 0
sg_specialSubSysDelayTime = 150 + Rand(100)
sg_retireCountCheck = 0
sg_buildBCHyperspace = 1
end
милитари не трогал. первая функция в ресерче :
Code:
function CpuResearch_Init()
if (s_race == Race_Hiigaran) then
dofilepath("data:ai/hiigaran_upgrades.lua")
DoUpgradeDemand = DoUpgradeDemand_Hiigaran
DoResearchTechDemand = DoResearchTechDemand_Hiigaran
elseif (s_race == Race_Vaygr) then
dofilepath("data:ai/vaygr_upgrades.lua")
DoUpgradeDemand = DoUpgradeDemand_Vaygr
DoResearchTechDemand = DoResearchTechDemand_Vaygr
else
dofilepath("data:ai/tobari_upgrades.lua")
DoUpgradeDemand = DoUpgradeDemand_Tobari
DoResearchTechDemand = DoResearchTechDemand_Tobari
end
sg_lastUpgradeTime = gameTime()
sg_upgradeDelayTime = 180 + Rand(80)
cp_researchDemandRange = 0.5
if (g_LOD == 1) then
cp_researchDemandRange = 1
end
if (g_LOD == 0) then
cp_researchDemandRange = 2
end
if (Override_ResearchInit) then
Override_ResearchInit()
end
в том же файле функция, которую я прописал, чтобы тобари исследовали технологии:
Code:
function DoResearchTechDemand_Tobari()
if (Util_CheckResearch(CORVETTETECH)) then
local corvdemand = ShipDemandMaxByClass(eCorvette)
if (corvdemand > 0) then
ResearchDemandSet(CORVETTETECH, corvdemand + 0.5)
end
end
if (Util_CheckResearch(ASSAULTCORVETTETECH)) then
local demand = ShipDemandGet(TBR_ASSAULTCORVETTE)
if (demand > 0) then
ResearchDemandSet(ASSAULTCORVETTETECH, demand)
end
end
if (Util_CheckResearch(SHIPYARDTECH)) then
local demand = ShipDemandGet(TBR_SHIPYARD)
if (demand > 0) then
ResearchDemandSet(SHIPYARDTECH, demand)
end
end
if (Util_CheckResearch(BATTLECRUISERTECH)) then
local demand = ShipDemandGet(TBR_BATTLECRUISER)
if (demand > 0) then
ResearchDemandSet(BATTLECRUISERTECH, demand)
end
end
if (Util_CheckResearch(DESTROYERTECH)) then
local demand = ShipDemandGet(TBR_DESTROYER)
if (demand > 0) then
ResearchDemandSet(DESTROYERTECH, demand)
end
end
if (Util_CheckResearch(BOMBERTCORVETTETECH)) then
local demand = ShipDemandGet(TBR_BOMBERCORVETTE)
if (demand > 0) then
ResearchDemandSet(BOMBERCORVETTETECH, demand)
end
end
if (Util_CheckResearch(FRIGATETECH)) then
local frigdemand = ShipDemandMaxByClass(eFrigate)
if (frigdemand > 0) then
ResearchDemandSet(FRIGATETECH, frigdemand + 0.5)
end
end
end
и последнее я сделал тобариапгрейдс. и он пустой...
Code:
-- =============================================================================
-- Homeworld 2 Clean Data Resource Project
-- By S110
-- Version 1.0
-- 02/06/2010
-- Tools used: EditPad Lite, LuaDC version 0.9.19, and Cold Fusion LUA Decompiler v1.0.0
-- =============================================================================
aitrace("LOADING TOBARI UPGRADE INFO")
rt_mothership = {}
rt_capital = {}
rt_fighter = {}
rt_corvette = {}
rt_frigate = {}
rt_platform = {}
rt_collector = {}
я думаю это все что я сделал и больше ничего не требуется.. но моя расса не строит корабли... почему то..
Добавлено через 5 часов 35 минут
О_О_О начал игру с компами, поставил себе союзника хиигару и два противника ваиигров. ваигры НЕ СТРОЯТ КАК И ТОБАРИ!!! ВТФ!!!! чтото странное!!!