Custom Side: How To (FAQ)

In this forum you will find and post information regarding the modding of Star Wars Battlefront 2. DO NOT POST MOD IDEAS/REQUESTS.

Moderator: Moderators

Caleb1117
2008 Most Original Avatar
Posts: 3096
Joined: Sun Aug 20, 2006 5:55 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set
Location: X-Fire: caleb1117 ಠ_ಠ

Re: Custom Side: How To

Post by Caleb1117 »

SBF_Dann_Boeing wrote:I was thinking of making a huge sides 101 tut that explained everything and anything about sides. But I'm too lazy. :P
Lol, I am too, but my laziness in this matter was overwrite-d by the amount of times I had to explain sides to new people.
Its so much easier to just point them to a tut.
User avatar
[RDH]Zerted
Gametoast Staff
Gametoast Staff
Posts: 2982
Joined: Sun Feb 26, 2006 7:36 am
Projects :: Bos Wars AI - a RTS game
Games I'm Playing :: SWBF2 and Bos Wars
xbox live or psn: No gamertag set
Location: USA
Contact:

Re: Custom Side: How To

Post by [RDH]Zerted »

Caleb1117 wrote:
SBF_Dann_Boeing wrote:I was thinking of making a huge sides 101 tut that explained everything and anything about sides...
...Its so much easier to just point them to a tut.
The more detailed tut you guys write (for anything), the easier it is for me to write a small tool to do it for you.
User avatar
Fluffy_the_ic
Hoth Battle Chief
Hoth Battle Chief
Posts: 3223
Joined: Thu Jan 24, 2008 7:03 pm
Projects :: astrally
xbox live or psn: fluffytherc
Location: he/him

Re: Custom Side: How To

Post by Fluffy_the_ic »

i had two errors in the munge. The say: 1: ERROR[levelpack mission\SWRc_con.req]:Expecting bracket, but none was found.
File : munged\pc\swrc_con.script.req(1)...
2: ERROR[levelpack mission\SWRc_con.req]:Expecting bracket, but none was found.
File : munged\pc\swrc_con.script.req(1)...
They don't have the one and two in front of them, obviously, but still...
RevanSithLord
Sith Master
Sith Master
Posts: 2636
Joined: Mon Nov 07, 2005 12:40 am
Projects :: Designated Days + LFC + GT vs SWBFC
Games I'm Playing :: FO3 + FO New Vegas
xbox live or psn: Master Revan
Location: GDSS Philadelphia

Re: Custom Side: How To

Post by RevanSithLord »

You know those brackets that look like, { and } ? Well, obviously there is one in the wrong place or there is nothing in the spot that it's suppose to.
Caleb1117
2008 Most Original Avatar
Posts: 3096
Joined: Sun Aug 20, 2006 5:55 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set
Location: X-Fire: caleb1117 ಠ_ಠ

Re: Custom Side: How To

Post by Caleb1117 »

Yes, post your CW lua.
Grev
Hoth Battle Chief
Hoth Battle Chief
Posts: 3132
Joined: Sun Dec 09, 2007 11:45 pm
Projects :: No Mod project currently.
Games I'm Playing :: Minecraft
Location: A Certain Box Canyon

Re: Custom Side: How To

Post by Grev »

Just a quick question.... do I have to have my modding folder in Gamedata? I just saw a post above about that..... I have a shortcut on my desktop.....

This will help me alot in the future! THANKS!
User avatar
Fluffy_the_ic
Hoth Battle Chief
Hoth Battle Chief
Posts: 3223
Joined: Thu Jan 24, 2008 7:03 pm
Projects :: astrally
xbox live or psn: fluffytherc
Location: he/him

Re: Custom Side: How To

Post by Fluffy_the_ic »

Okay. i just copied what caleb wrote in the instuctions, which had no brackets, just parenthesis, and changed it to my troop, but here's my LUA anyways. And i know it's got a weird name, but my friend wanted me to make a map with these weird guys he made up and one of them loves tape.
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 = 2;
CIS = 1;
-- These variables do not change
ATT = CIS;
DEF = REP;


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"}



--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: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(30)
SetMaxPlayerFlyHeight (30)

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_ep3_rifleman",
"rep_inf_ep3_rocketeer",
"rep_inf_ep3_engineer",
"rep_inf_ep3_sniper",
"rep_inf_ep3_officer",
"rep_inf_ep3_jettrooper",
"rep_hover_fightertank",
"rep_hero_yoda",
"rep_hover_barcspeeder")

ReadDataFile("dc:SIDE\\hdl.lvl",
"hdl_jed_stick_hoodlum"

ReadDataFile("SIDE\\cis.lvl",
"cis_inf_rifleman",
"cis_inf_rocketeer",
"cis_inf_engineer",
"cis_inf_sniper",
"cis_inf_officer",
"cis_inf_droideka",
"cis_hero_jangofett",
"cis_hover_aat")


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

SetupTeams{
rep = {
team = REP,
units = 20,
reinforcements = 150,
soldier = { "rep_inf_ep3_rifleman",9, 25},
assault = { "rep_inf_ep3_rocketeer",1, 4},
engineer = { "rep_inf_ep3_engineer",1, 4},
sniper = { "rep_inf_ep3_sniper",1, 4},
officer = {"rep_inf_ep3_officer",1, 4},
special = { "rep_inf_ep3_jettrooper",1, 4},

},
cis = {
team = CIS,
units = 20,
reinforcements = 150,
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_jangofett")
SetHeroClass(REP, "rep_hero_yoda")

AddUnitClass(REP, "hdl_jed_sticky_hoodlum, 1, 4)


-- Level Stats
-- ClearWalkers()
AddWalkerType(0, 4) -- special -> droidekas
AddWalkerType(1, 0) -- 1x2 (1 pair of legs)
AddWalkerType(2, 0) -- 2x2 (2 pairs of legs)
AddWalkerType(3, 0) -- 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)

SetSpawnDelay(10.0, 0.25)
--ReadDataFile("dc:SWR\\SWR.lvl", "SWR_conquest")
ReadDataFile("dc:SWR\\SWR.lvl", "SWR_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, "imp_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
Caleb1117
2008 Most Original Avatar
Posts: 3096
Joined: Sun Aug 20, 2006 5:55 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set
Location: X-Fire: caleb1117 ಠ_ಠ

Re: Custom Side: How To

Post by Caleb1117 »

You need to add a ) at the end of your unit call.

Note I highlighted the one from the default ones too.
Hidden/Spoiler:
ReadDataFile("dc:SIDE\\hdl.lvl",
"hdl_jed_stick_hoodlum")

ReadDataFile("SIDE\\cis.lvl",
"cis_inf_rifleman",
"cis_inf_rocketeer",
"cis_inf_engineer",
"cis_inf_sniper",
"cis_inf_officer",
"cis_inf_droideka",
"cis_hero_jangofett",
"cis_hover_aat")
FragMe!
Gametoast Staff
Gametoast Staff
Posts: 2244
Joined: Sat May 13, 2006 12:34 am
Projects :: Not sure keep changing my mind.
Games I'm Playing :: F1 and SWBF
xbox live or psn: No gamertag set
Location: Origin name GT_FragMe
Contact:

Re: Custom Side: How To

Post by FragMe! »

Also on the unit call you have "hdl_jed_stick_hoodlum" as the name but lower down you have AddUnitClass(REP, "hdl_jed_sticky_hoodlum, 1, 4)
User avatar
Fluffy_the_ic
Hoth Battle Chief
Hoth Battle Chief
Posts: 3223
Joined: Thu Jan 24, 2008 7:03 pm
Projects :: astrally
xbox live or psn: fluffytherc
Location: he/him

Re: Custom Side: How To

Post by Fluffy_the_ic »

ok i caught my typo right after posting my LUA. But i still get the same exact error :cpu:
FragMe!
Gametoast Staff
Gametoast Staff
Posts: 2244
Joined: Sat May 13, 2006 12:34 am
Projects :: Not sure keep changing my mind.
Games I'm Playing :: F1 and SWBF
xbox live or psn: No gamertag set
Location: Origin name GT_FragMe
Contact:

Re: Custom Side: How To

Post by FragMe! »

Just noticed too you are missing a closing " in the addunitclass statement

AddUnitClass(REP, "hdl_jed_sticky_hoodlum", 1, 4)
Pidgeon

Re: Custom Side: How To

Post by Pidgeon »

:( I did everything you said except for the copy the munge thing but i got this error:

Code: Select all

WARNING[PC_modelmunge msh\gam_inf_gamorreanguard.msh]:SplitSkinnedSegments: WARNING: out of space in splitting catalog!
WARNING[PC_modelmunge msh\gam_inf_gamorreanguard.msh]:SplitSkinnedSegments: WARNING: out of space in splitting catalog!
WARNING[PC_modelmunge msh\gam_inf_gamorreanguard.msh]:SplitSkinnedSegments: WARNING: resorting to brute force, this may take a while...
WARNING[PC_modelmunge msh\gam_inf_gamorreanguard.msh]:gam_inf_gamorreanguard has 1731 vertices and NO COLLISION GEOMETRY (WILL BE SLOW)!
   0 Errors    4 Warnings
Edit:oh yeah I forgot to mention i was using a garmoreean and building up but..... :faint:
Caleb1117
2008 Most Original Avatar
Posts: 3096
Joined: Sun Aug 20, 2006 5:55 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set
Location: X-Fire: caleb1117 ಠ_ಠ

Re: Custom Side: How To

Post by Caleb1117 »

Those shouldn't be a problem at all, they are just warnings, does it crash ingame?
Pidgeon

Re: Custom Side: How To

Post by Pidgeon »

no the in game doesn't crash but my units not on the imp team

Edit:Ill show you how I put it in
engineer = { "imp_inf_engineer",1,4},
sniper = { "imp_inf_sniper",1,4},
officer = { "imp_inf_officer",1,4},
special = { "imp_inf_dark_trooper",1,4},
},
}

SetHeroClass(ALL, "all_hero_hansolo_tat")
SetHeroClass(IMP, "imp_hero_bobafett")

AddUnitClass(IMP, exi_inf_good_troopr also it in MODg_con.lua
User avatar
Maveritchell
Jedi Admin
Jedi Admin
Posts: 7366
Joined: Mon Aug 21, 2006 11:03 pm

Re: Custom Side: How To

Post by Maveritchell »

Welcome to Gametoast, Pidgeon. Just a reminder, please read the rules, one of which is "no double posting." If you need to add content to your post, just edit it.
User avatar
Fluffy_the_ic
Hoth Battle Chief
Hoth Battle Chief
Posts: 3223
Joined: Thu Jan 24, 2008 7:03 pm
Projects :: astrally
xbox live or psn: fluffytherc
Location: he/him

Re: Custom Side: How To

Post by Fluffy_the_ic »

ok i get it... but as i said before, the errors are EXACTLY the same.

EDIT: :cpu:
Caleb1117
2008 Most Original Avatar
Posts: 3096
Joined: Sun Aug 20, 2006 5:55 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set
Location: X-Fire: caleb1117 ಠ_ಠ

Re: Custom Side: How To

Post by Caleb1117 »

Post more of your Lua.
User avatar
Fluffy_the_ic
Hoth Battle Chief
Hoth Battle Chief
Posts: 3223
Joined: Thu Jan 24, 2008 7:03 pm
Projects :: astrally
xbox live or psn: fluffytherc
Location: he/him

Re: Custom Side: How To

Post by Fluffy_the_ic »

i'm a little confused by you saying post more of my LUA. I posted the whole thing.
Caleb1117
2008 Most Original Avatar
Posts: 3096
Joined: Sun Aug 20, 2006 5:55 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set
Location: X-Fire: caleb1117 ಠ_ಠ

Re: Custom Side: How To

Post by Caleb1117 »

I mean Pidgeon.
We pointed out all the typos in yours, is it still not working?
User avatar
Fluffy_the_ic
Hoth Battle Chief
Hoth Battle Chief
Posts: 3223
Joined: Thu Jan 24, 2008 7:03 pm
Projects :: astrally
xbox live or psn: fluffytherc
Location: he/him

Re: Custom Side: How To

Post by Fluffy_the_ic »

ok well i need to munge again but i'm getting this odd feeling it might not work.

EDIT: i don't think this'll work BECAUSE i can only get water in my map. not foliage. not items. i have one of your object packs and i get them in on ZE but they don't show up in game.
Last edited by Fluffy_the_ic on Sun Feb 03, 2008 11:18 am, edited 2 times in total.
Post Reply