Multiplayer issues

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

Post Reply
JimmyAngler
High General
High General
Posts: 837
Joined: Mon Nov 04, 2013 10:37 am
Projects :: Battlefront Halation
Games I'm Playing :: SWBF 1-2-2015
xbox live or psn: none
Location: Area 51

Multiplayer issues

Post by JimmyAngler »

So I'm trying to play online with some friends on my mod, but it will not allow it. The map Blood Gulch shows up twice in the multiplayer list, and both are selected when I click on one. My new era doesn't show up, or the game mode. It just displays the basic ones. I also can't find the added era on polis masa. I have no idea about online things, so what needs to be done?
Noobasaurus
Droid Pilot Assassin
Droid Pilot Assassin
Posts: 2006
Joined: Tue Aug 17, 2010 5:56 pm

Re: Multiplayer issues

Post by Noobasaurus »

If you can't see it on the map list, it's most likely your addme that's causing problems. Post that please.
JimmyAngler
High General
High General
Posts: 837
Joined: Mon Nov 04, 2013 10:37 am
Projects :: Battlefront Halation
Games I'm Playing :: SWBF 1-2-2015
xbox live or psn: none
Location: Area 51

Re: Multiplayer issues

Post by JimmyAngler »

The map is on the list, just not the modes and eras.
Hidden/Spoiler:
[code]--Search through the missionlist to find a map that matches mapName,
--then insert the new flags into said entry.
--Use this when you know the map already exists, but this content patch is just
--adding new gamemodes (otherwise you should just add whole new entries to the missionlist)
-- recursively merges the second given table into the first given table
function MergeTables( mission, newFlags )
--for each table entry,
local array = type({})
for key,value in pairs(newFlags) do
--check for nested tables
if type(value) == array then
--mission must have this key as a table too
if type(mission[key]) ~= array then
mission[key] = {}
end
--merge these two tables recursively
MergeTables(mission[key], value)
else
--the key is a simple variable, so simply store it
mission[key] = value
end
end
end

--Search through the missionlist to find a map that matches mapName,
--then insert the new flags into said entry.
--Use this when you know the map already exists, but this content patch is just
--adding new gamemodes (otherwise you should just add whole new entries to the missionlist)
function AddNewGameModes(missionList, mapName, newFlags)
for i, mission in missionList do
if mission.mapluafile == mapName then
MergeTables(mission, newFlags)
end
end
end




--insert totally new maps here:
local sp_n = 0
local mp_n = 0
sp_n = table.getn(sp_missionselect_listbox_contents)


sp_missionselect_listbox_contents[sp_n+1] = { red = 0, blue = 149, green = 110,
isModLevel = 1,
mapluafile = "HLO%s_%s",
era_h = 1,
mode_con_h = 1,
change = {
era_h = { name="Halo Wars", icon2="halo_wars" },
mode_con = {name="Domination", about = "Capture all of the enemy's landing zones to achieve total domination"}

},
}

mp_n = table.getn(mp_missionselect_listbox_contents)
mp_missionselect_listbox_contents[mp_n+1] = sp_missionselect_listbox_contents[sp_n+1]

AddNewGameModes(
sp_missionselect_listbox_contents,
"pol1%s_%s",
{
era_h = 1,
mode_con_h = 1,
change = {
era_h = { name="Halo Wars", icon2="halo_wars" },
mode_con = {name="Conquest", about = "Capture all of the enemy's command points while trying to defend your own!"}

},
}
)

mp_n = table.getn(mp_missionselect_listbox_contents)
mp_missionselect_listbox_contents[mp_n+1] = sp_missionselect_listbox_contents[sp_n+1]

AddNewGameModes(
sp_missionselect_listbox_contents,
"pol1%s_%s",
{
era_h = 1,
mode_ctf_h = 1,
change = {
era_h = { name="Halo Wars", icon2="halo_wars" },
mode_ctf = {name="Capture the Flag", about = "Capture the enemy's flag while trying to defend your own!"}

},
}
)

-- associate this mission name with the current downloadable content directory
-- (this tells the engine which maps are downloaded, so you need to include all new mission lua's here)
-- first arg: mapluafile from above
-- second arg: mission script name
-- third arg: level memory modifier. the arg to LuaScript.cpp: DEFAULT_MODEL_MEMORY_PLUS(x)

AddDownloadableContent("HLO","HLOh_con",4)
AddDownloadableContent("pol1","pol1h_con",4)
AddDownloadableContent("pol1","pol1h_ctf",4)


-- all done
newEntry = nil
n = nil

-- Now load our core.lvl into the shell to add our localize keys
ReadDataFile("..\\..\\addon\\HLO\\data\\_LVL_PC\\core.lvl")
ReadDataFile("..\\..\\addon\\HLO\\data\\_LVL_PC\\ingame.lvl")[/code]
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: Multiplayer issues

Post by [RDH]Zerted »

It shows up twice in MP because you have these lines twice:

Code: Select all

mp_n = table.getn(mp_missionselect_listbox_contents)
mp_missionselect_listbox_contents[mp_n+1] = sp_missionselect_listbox_contents[sp_n+1]
That code 'copies' the map entry in SP to MP. You copy it twice so it shows up twice.

Both of your AddNewGameModes calls add the game mode to sp_missionselect_listbox_contents, which is the singleplayer list. Perhaps you meant to use mp_missionselect_listbox_contents for one of them?

*SP = singleplayer
MP = multiplayer
Post Reply