New Game Mode Won't Work In The Addme [Solved]

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
LitFam
Sergeant Major
Sergeant Major
Posts: 234
Joined: Sat Feb 04, 2017 5:52 pm
Games I'm Playing :: SWBF II 2005
xbox live or psn: No gamertag set
Location: Milky Way, Solar System, Earth, Antarctica

New Game Mode Won't Work In The Addme [Solved]

Post by LitFam »

I am trying to change the conquest description, and name, however its not working. (I have the 1.3 r129 patch BTW)

Here is mee add me
Hidden/Spoiler:
[code]-- 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
for flag, value in pairs(newFlags) do
mission[flag] = value
end
end
end
end

sp_missionselect_listbox_contents[sp_n+1] = {
isModLevel = 1,
mapluafile = "LVL%s_%s",
era_c = 1,
mode_con_c = 1,
change = {
mode_con = { name="Battle of Christophsis", about="The Battle of Christophsis took place for control of the planet Christophsis during the Clone Wars. Wanting to gain control of the planet's strategic resources, the Separatist Droid Army, led by General Whorm Loathsom, invaded and captured Christophsis. Responding to a cry for help from the world's inhabitants, the Galactic Republic and the Jedi High Council dispatched Jedi Generals Obi-Wan Kenobi and Anakin Skywalker and Admiral Wullf Yularen with a clone trooper contingent from the Grand Army of the Republic to liberate the planet." },
},
}

--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 = 255, blue = 255, green = 255, isModLevel = 1, mapluafile = "CHR%s_%s", era_c = 1, mode_con_c = 1,}
mp_n = table.getn(mp_missionselect_listbox_contents)
mp_missionselect_listbox_contents[mp_n+1] = sp_missionselect_listbox_contents[sp_n+1]

-- 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("CHR","CHRc_con",4)

-- all done
newEntry = nil
n = nil

-- Now load our core.lvl into the shell to add our localize keys
ReadDataFile("..\\..\\addon\\CHR\\data\\_LVL_PC\\core.lvl")[/code]
Last edited by LitFam on Thu Aug 17, 2017 6:00 pm, edited 1 time in total.
Marth8880
Resistance Leader
Posts: 5042
Joined: Tue Feb 09, 2010 8:43 pm
Projects :: DI2 + Psychosis
Games I'm Playing :: Silent Hill 2
xbox live or psn: Marth8880
Location: Edinburgh, UK
Contact:

Re: New Game Mode Won't Work In The Addme

Post by Marth8880 »

Code: Select all

sp_missionselect_listbox_contents[sp_n+1] = {
   isModLevel = 1,
   mapluafile = "LVL%s_%s",
   era_c = 1,
   mode_con_c = 1,
   change = {
      mode_con = { name="Battle of Christophsis", about="The Battle of Christophsis took place for control of the planet Christophsis during the Clone Wars. Wanting to gain control of the planet's strategic resources, the Separatist Droid Army, led by General Whorm Loathsom, invaded and captured Christophsis. Responding to a cry for help from the world's inhabitants, the Galactic Republic and the Jedi High Council dispatched Jedi Generals Obi-Wan Kenobi and Anakin Skywalker and Admiral Wullf Yularen with a clone trooper contingent from the Grand Army of the Republic to liberate the planet." },
   },
}
Is this an external map added by an addme from a different mod in your addon directory or something?
LitFam
Sergeant Major
Sergeant Major
Posts: 234
Joined: Sat Feb 04, 2017 5:52 pm
Games I'm Playing :: SWBF II 2005
xbox live or psn: No gamertag set
Location: Milky Way, Solar System, Earth, Antarctica

Re: New Game Mode Won't Work In The Addme

Post by LitFam »

I don't know what you mean, but I guess you are trying to say is this my map or is this code for adding a game mode on a different map.

I made the map (If that's what you're asking)
Marth8880
Resistance Leader
Posts: 5042
Joined: Tue Feb 09, 2010 8:43 pm
Projects :: DI2 + Psychosis
Games I'm Playing :: Silent Hill 2
xbox live or psn: Marth8880
Location: Edinburgh, UK
Contact:

Re: New Game Mode Won't Work In The Addme

Post by Marth8880 »

LitFam wrote:is this code for adding a game mode on a different map.
This is what I'm asking.
LitFam
Sergeant Major
Sergeant Major
Posts: 234
Joined: Sat Feb 04, 2017 5:52 pm
Games I'm Playing :: SWBF II 2005
xbox live or psn: No gamertag set
Location: Milky Way, Solar System, Earth, Antarctica

Re: New Game Mode Won't Work In The Addme

Post by LitFam »

No, I am trying to change the conquest name and description for my map. (I am not trying to literally make a new gamemode)
Marth8880
Resistance Leader
Posts: 5042
Joined: Tue Feb 09, 2010 8:43 pm
Projects :: DI2 + Psychosis
Games I'm Playing :: Silent Hill 2
xbox live or psn: Marth8880
Location: Edinburgh, UK
Contact:

Re: New Game Mode Won't Work In The Addme

Post by Marth8880 »

And LVL is the map's ID, correct?
LitFam
Sergeant Major
Sergeant Major
Posts: 234
Joined: Sat Feb 04, 2017 5:52 pm
Games I'm Playing :: SWBF II 2005
xbox live or psn: No gamertag set
Location: Milky Way, Solar System, Earth, Antarctica

Re: New Game Mode Won't Work In The Addme

Post by LitFam »

And LVL is the map's ID, correct?
I don't understand
Marth8880
Resistance Leader
Posts: 5042
Joined: Tue Feb 09, 2010 8:43 pm
Projects :: DI2 + Psychosis
Games I'm Playing :: Silent Hill 2
xbox live or psn: Marth8880
Location: Edinburgh, UK
Contact:

Re: New Game Mode Won't Work In The Addme

Post by Marth8880 »

Every map has a 3-character ID (though it's technically possible to have one longer than 3 characters). The general example that modders use for this ID is "ABC" or "***"; it's the first 3 characters in every single mission script for your map (e.g., "ABCc_con.lua"). You specify it in VisualMunge when you first create your map:

Image
Last edited by Marth8880 on Thu Aug 17, 2017 5:39 pm, edited 2 times in total.
LitFam
Sergeant Major
Sergeant Major
Posts: 234
Joined: Sat Feb 04, 2017 5:52 pm
Games I'm Playing :: SWBF II 2005
xbox live or psn: No gamertag set
Location: Milky Way, Solar System, Earth, Antarctica

Re: New Game Mode Won't Work In The Addme

Post by LitFam »

Yes my map lvl is correct (My maps 3 lettered name is CHR)

AddDownloadableContent("CHR","CHRc_con",4)
Marth8880
Resistance Leader
Posts: 5042
Joined: Tue Feb 09, 2010 8:43 pm
Projects :: DI2 + Psychosis
Games I'm Playing :: Silent Hill 2
xbox live or psn: Marth8880
Location: Edinburgh, UK
Contact:

Re: New Game Mode Won't Work In The Addme

Post by Marth8880 »

So your map's 3-character ID is *not* "LVL"?

Code: Select all

sp_missionselect_listbox_contents[sp_n+1] = {
   isModLevel = 1,
   mapluafile = "LVL%s_%s",
   era_c = 1,
   mode_con_c = 1,
   change = {
      mode_con = { name="Battle of Christophsis", about="The Battle of Christophsis took place for control of the planet Christophsis during the Clone Wars. Wanting to gain control of the planet's strategic resources, the Separatist Droid Army, led by General Whorm Loathsom, invaded and captured Christophsis. Responding to a cry for help from the world's inhabitants, the Galactic Republic and the Jedi High Council dispatched Jedi Generals Obi-Wan Kenobi and Anakin Skywalker and Admiral Wullf Yularen with a clone trooper contingent from the Grand Army of the Republic to liberate the planet." },
   },
}
The above block of code suggests that you have a map whose 3-character ID is "LVL". With that said, I have a feeling that you found the block elsewhere as a template in a tutorial or something but didn't change "LVL" in `mapluafile = "LVL%s_%s"` to your map's ID. If that's true, you need to merge the above code block with this one that exists in your addme:

Code: Select all

sp_n = table.getn(sp_missionselect_listbox_contents)

sp_missionselect_listbox_contents[sp_n+1] = { red = 255, blue = 255, green = 255, isModLevel = 1, mapluafile = "CHR%s_%s", era_c = 1, mode_con_c  = 1,}
mp_n = table.getn(mp_missionselect_listbox_contents)
mp_missionselect_listbox_contents[mp_n+1] = sp_missionselect_listbox_contents[sp_n+1]
The easiest way to do so would be to delete that one^ altogether, then in the other one that has the description stuff already put this directly above the `isModLevel` line:

Code: Select all

red = 255, 
blue = 255, 
green = 255,
And then change the value of `mapluafile` to reflect your map's actual ID, "CHR", so that it looks like this:

Code: Select all

mapluafile = "CHR%s_%s",
LitFam
Sergeant Major
Sergeant Major
Posts: 234
Joined: Sat Feb 04, 2017 5:52 pm
Games I'm Playing :: SWBF II 2005
xbox live or psn: No gamertag set
Location: Milky Way, Solar System, Earth, Antarctica

Re: New Game Mode Won't Work In The Addme

Post by LitFam »

Thanks!
Post Reply