Page 1 of 1

Adding Flying Vehicles

Posted: Fri Feb 15, 2008 9:58 pm
by obiboba3po
Hello, its obi again, this thread is similar to the "adding walking vehicels" thread except that i now would like to know how to add flying vehicles and what you have to do. Thanks!

Re: Adding Flying Vehicles

Posted: Sat Feb 16, 2008 1:08 am
by SBF_Dann_Boeing
its really exactly the same thing...

Except you only need 1. the vehicle spawn in zeroedit 2. the vehicle called for in a ReadDataFile in the lua and 3. have its memory pool (EntityFlyer) set up (its already there by default for conquest luas).

Wasn't there a basic "how to add vehicles to your map" tutorial? What ever happenned to it?

Re: Adding Flying Vehicles

Posted: Sat Feb 16, 2008 1:31 am
by Maveritchell
SBF_Dann_Boeing wrote:Wasn't there a basic "how to add vehicles to your map" tutorial? What ever happenned to it?
It's still there. In the "Getting Started" doc in the tools. People just choose to skip reading the documentation that's given to them from the get-go, for whatever reason. (Btw, Getting Started is the clearest and most newbie-friendly doc in there.)

Re: Adding Flying Vehicles

Posted: Sat Feb 16, 2008 9:15 am
by obiboba3po
No, the getting started document only has how to add vehicle spawns. I read the document 10 times and i still was getting nowhere with my vehicles. Nowhere in that document does it mention the lua or the memory pools. There is a document that talks about the lua but doesnt even mention the memory pools. I think when they release the next version they should make a better documentation. Anyways, the memory pool thing is what i need to add so thanks.



*EDIT
ok i added the flyer thing into the memory pools even though it was already there and still nothing was happening!! Here is my script so if anyone sees any problems, please tell me!! Thanks!! Here is it:
Hidden/Spoiler:
--
-- Copyright (c) 2005 Pandemic Studios, LLC. All rights reserved.
--

-- load the gametype script
ScriptCB_DoFile("ObjectiveConquest")
ScriptCB_DoFile("setup_teams")

-- REP Attacking (attacker is always #1)
REP = 1;
CIS = 2;
-- These variables do not change
ATT = REP;
DEF = CIS;


function ScriptPostLoad()


--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"}
cp6 = CommandPost:New{name = "cp6"}

--This sets up the actual objective. This needs to happen after cp's are defined
conquest = ObjectiveConquest:New{teamATT = ATT, teamDEF = DEF,
textATT = "game.modes.con",
textDEF = "game.modes.con2",
multiplayerRules = true}

--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)
conquest:AddCommandPost(cp6)

conquest:Start()

EnableSPHeroRules()

end


---------------------------------------------------------------------------
-- FUNCTION: ScriptInit
-- PURPOSE: This function is only run once
-- INPUT:
-- OUTPUT:
-- NOTES: The name, 'ScriptInit' is a chosen convention, and each
-- mission script must contain a version of this function, as
-- it is called from C to start the mission.
---------------------------------------------------------------------------
function ScriptInit()

ReadDataFile("ingame.lvl")


SetMaxFlyHeight(500)
SetMaxPlayerFlyHeight (400)

SetMemoryPoolSize ("ClothData",20)
SetMemoryPoolSize ("Combo",50) -- should be ~ 2x number of jedi classes
SetMemoryPoolSize ("Combo::State",650) -- should be ~12x #Combo
SetMemoryPoolSize ("Combo::Transition",650) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Condition",650) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Attack",550) -- should be ~8-12x #Combo
SetMemoryPoolSize ("Combo::DamageSample",6000) -- should be ~8-12x #Combo::Attack
SetMemoryPoolSize ("Combo::Deflect",100) -- should be ~1x #combo

ReadDataFile("sound\\yav.lvl;yav1cw")
ReadDataFile("SIDE\\rep.lvl",
"rep_inf_ep2_rifleman",
"rep_inf_ep2_rocketeer",
"rep_inf_ep2_engineer",
"rep_inf_ep2_sniper",
"rep_inf_ep3_officer",
"rep_inf_ep2_jettrooper",
"rep_hover_fightertank",
"rep_hero_anakin",
"rep_hover_barcspeeder",
"rep_fly_gunship",
"rep_walk_atte")
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",
"cis_tread_hailfire",
"cis_walk_spider",
"cis_tread_snailtank",
"cis_fly_droidgunship",
"cis_fly_geofighter")


ReadDataFile("SIDE\\tur.lvl",
"tur_bldg_laser",
"tur_bldg_tower")

SetupTeams{
rep = {
team = REP,
units = 90,
reinforcements = 1000,
soldier = { "rep_inf_ep2_rifleman",9, 25},
assault = { "rep_inf_ep2_rocketeer",1, 4},
engineer = { "rep_inf_ep2_engineer",1, 4},
sniper = { "rep_inf_ep2_sniper",1, 4},
officer = {"rep_inf_ep3_officer",1, 4},
special = { "rep_inf_ep2_jettrooper",1, 4},

},
cis = {
team = CIS,
units = 99,
reinforcements = 1100,
soldier = { "cis_inf_rifleman",9, 25},
assault = { "cis_inf_rocketeer",1, 4},
engineer = { "cis_inf_engineer",1, 4},
sniper = { "cis_inf_sniper",1, 4},
officer = {"cis_inf_officer",1, 4},
special = { "cis_inf_droideka",1, 4},
}
}

SetHeroClass(CIS, "cis_hero_darthmaul")
SetHeroClass(REP, "rep_hero_anakin")


-- Level Stats
-- ClearWalkers()
AddWalkerType(0, 4) -- special -> droidekas
AddWalkerType(1, 2) -- 1x2 (1 pair of legs)
AddWalkerType(2, 2) -- 2x2 (2 pairs of legs)
AddWalkerType(3, 2) -- 3x2 (3 pairs of legs)
local weaponCnt = 1024
SetMemoryPoolSize("Aimer", 75)
SetMemoryPoolSize("AmmoCounter", weaponCnt)
SetMemoryPoolSize("BaseHint", 1024)
SetMemoryPoolSize("EnergyBar", weaponCnt)
SetMemoryPoolSize("EntityCloth", 32)
SetMemoryPoolSize("EntityFlyer", 32)
SetMemoryPoolSize("EntityHover", 32)
SetMemoryPoolSize("EntityLight", 200)
SetMemoryPoolSize("EntitySoundStream", 4)
SetMemoryPoolSize("EntitySoundStatic", 32)
SetMemoryPoolSize("MountedTurret", 32)
SetMemoryPoolSize("Navigator", 128)
SetMemoryPoolSize("Obstacle", 1024)
SetMemoryPoolSize("PathNode", 1024)
SetMemoryPoolSize("SoundSpaceRegion", 64)
SetMemoryPoolSize("TreeGridStack", 1024)
SetMemoryPoolSize("UnitAgent", 128)
SetMemoryPoolSize("UnitController", 128)
SetMemoryPoolSize("Weapon", weaponCnt)
SetMemoryPoolSize("CommandWalker", 1)
SetMemoryPoolSize("EntityFlyer",300)

SetSpawnDelay(10.0, 0.25)
--ReadDataFile("dc:SSS\\SSS.lvl", "SSS_conquest")
ReadDataFile("dc:SSS\\SSS.lvl", "SSS_conquest")
SetDenseEnvironment("false")




-- Sound

SetSoundEffect("ScopeDisplayZoomIn", "binocularzoomin")
SetSoundEffect("ScopeDisplayZoomOut", "binocularzoomout")

voiceSlow = OpenAudioStream("sound\\global.lvl", "rep_unit_vo_slow")
AudioStreamAppendSegments("sound\\global.lvl", "cis_unit_vo_slow", voiceSlow)
AudioStreamAppendSegments("sound\\global.lvl", "global_vo_slow", voiceSlow)

voiceQuick = OpenAudioStream("sound\\global.lvl", "rep_unit_vo_quick")
AudioStreamAppendSegments("sound\\global.lvl", "cis_unit_vo_quick", voiceQuick)

OpenAudioStream("sound\\global.lvl", "cw_music")
-- OpenAudioStream("sound\\global.lvl", "global_vo_quick")
-- OpenAudioStream("sound\\global.lvl", "global_vo_slow")
OpenAudioStream("sound\\yav.lvl", "yav1")
OpenAudioStream("sound\\yav.lvl", "yav1")
OpenAudioStream("sound\\yav.lvl", "yav1_emt")

SetBleedingVoiceOver(REP, REP, "rep_off_com_report_us_overwhelmed", 1)
SetBleedingVoiceOver(REP, CIS, "rep_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(CIS, REP, "cis_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(CIS, CIS, "cis_off_com_report_us_overwhelmed", 1)

SetOutOfBoundsVoiceOver(2, "cisleaving")
SetOutOfBoundsVoiceOver(1, "repleaving")

SetAmbientMusic(REP, 1.0, "rep_yav_amb_start", 0,1)
SetAmbientMusic(REP, 0.8, "rep_yav_amb_middle", 1,1)
SetAmbientMusic(REP, 0.2, "rep_yav_amb_end", 2,1)
SetAmbientMusic(CIS, 1.0, "cis_yav_amb_start", 0,1)
SetAmbientMusic(CIS, 0.8, "cis_yav_amb_middle", 1,1)
SetAmbientMusic(CIS, 0.2, "cis_yav_amb_end", 2,1)

SetVictoryMusic(REP, "rep_yav_amb_victory")
SetDefeatMusic (REP, "rep_yav_amb_defeat")
SetVictoryMusic(CIS, "cis_yav_amb_victory")
SetDefeatMusic (CIS, "cis_yav_amb_defeat")

SetSoundEffect("ScopeDisplayZoomIn", "binocularzoomin")
SetSoundEffect("ScopeDisplayZoomOut", "binocularzoomout")
--SetSoundEffect("BirdScatter", "birdsFlySeq1")
--SetSoundEffect("WeaponUnableSelect", "com_weap_inf_weaponchange_null")
--SetSoundEffect("WeaponModeUnableSelect", "com_weap_inf_modechange_null")
SetSoundEffect("SpawnDisplayUnitChange", "shell_select_unit")
SetSoundEffect("SpawnDisplayUnitAccept", "shell_menu_enter")
SetSoundEffect("SpawnDisplaySpawnPointChange", "shell_select_change")
SetSoundEffect("SpawnDisplaySpawnPointAccept", "shell_menu_enter")
SetSoundEffect("SpawnDisplayBack", "shell_menu_exit")


--OpeningSateliteShot
AddCameraShot(0.908386, -0.209095, -0.352873, -0.081226, -45.922508, -19.114113, 77.022636);

AddCameraShot(-0.481173, 0.024248, -0.875181, -0.044103, 14.767292, -30.602322, -144.506851);
AddCameraShot(0.999914, -0.012495, -0.004416, -0.000055, 1.143253, -33.602314, -76.884430);
AddCameraShot(0.839161, 0.012048, -0.543698, 0.007806, 19.152437, -49.802273, 24.337317);
AddCameraShot(0.467324, 0.006709, -0.883972, 0.012691, 11.825212, -49.802273, -7.000720);
AddCameraShot(0.861797, 0.001786, -0.507253, 0.001051, -11.986043, -59.702248, 23.263165);
AddCameraShot(0.628546, -0.042609, -0.774831, -0.052525, 20.429928, -48.302277, 9.771714);
AddCameraShot(0.765213, -0.051873, 0.640215, 0.043400, 57.692474, -48.302277, 16.540724);
AddCameraShot(0.264032, -0.015285, -0.962782, -0.055734, -16.681797, -42.902290, 129.553268);
AddCameraShot(-0.382320, 0.022132, -0.922222, -0.053386, 20.670977, -42.902290, 135.513001);
end

Re: Adding Flying Vehicles

Posted: Sat Feb 16, 2008 2:30 pm
by Maveritchell
I'm not sure which of the flyers you're trying to add, but I know that the droid gunship won't show up because it's a commandflyer, for which you need an extra memorpool line. Just like a commandwalker (or a commandhover), you need SetMemoryPoolSize("CommandFlyer", 1) (or however many you need) for commandflyers.

Re: Adding Flying Vehicles

Posted: Sat Feb 16, 2008 2:43 pm
by elfie
there is also a forum on adding command flyers and walkers if that is your problem. Also you've changed your units from 20 to 90 which means you have to add SetUberMode(1); uner conquest:start. i assume you are a beginer?

Re: Adding Flying Vehicles

Posted: Sat Feb 16, 2008 2:46 pm
by obiboba3po
ok, i will try the command flyer thing. I am trying to add the geonosian starfighter. can someone please help me do this?

Re: Adding Flying Vehicles

Posted: Sat Feb 16, 2008 3:48 pm
by SBF_Dann_Boeing
but...we just told you how to do it.

EDIT:
actually the geo fighter is slightly more complicated cuz its not in the default geo side for swbfII. You'd have to set up a custom side to call for it. I don't really want to go into how to do that now, someone else can.

Re: Adding Flying Vehicles

Posted: Sat Feb 16, 2008 4:43 pm
by obiboba3po
ok, thanks n e ways

Re: Adding Flying Vehicles

Posted: Sat Feb 16, 2008 5:38 pm
by Grev
Psst, for adding side parts like geo, search rep sarktrooper. It was a thread on sides by me....

Also, normal flyers add just with vech spawns. Nothing else needed but adding what flyer in the .lua

Re: Adding Flying Vehicles

Posted: Sat Feb 16, 2008 5:59 pm
by SilvaDalek
He doesn't mean S ARK Trooper, he means Dark Trooper. :roll:

Re: Adding Flying Vehicles

Posted: Sat Feb 16, 2008 7:10 pm
by FragMe!
I am going take wild guess given what you are loading in the LUA that this is not a space map but a ground map.
If so you need to add the last line in the place shown.

SetMaxFlyHeight(300)
SetMaxPlayerFlyHeight (300)
SetGroundFlyerMap(1)

Re: Adding Flying Vehicles

Posted: Sat Feb 16, 2008 9:02 pm
by obiboba3po
ok i think its the last thing that you mentioned that i need to edit. Thanks.

Re: Adding Flying Vehicles

Posted: Sun Feb 17, 2008 9:10 am
by AceMastermind
SetGroundFlyerMap(1)
I've never had to use that line