private void SongAggregateGraph(DLCPackageData info, DLCPackageType dlcType) { var dlcName = info.Name.ToLower(); var songPartition = new SongPartition(); // Xblock var xbl = new GraphItem(); xbl.Name = dlcName; xbl.Canonical = String.Format(CANONICAL_XBLOCK[dlcType], dlcName); xbl.RelPathDirectory = xbl.Canonical; xbl.Tag = new List<string>(); xbl.Tag.Add(TagValue.EmergentWorld.GetDescription()); xbl.Tag.Add(TagValue.XWorld.GetDescription()); xbl.UUID = IdGenerator.Guid(); xbl.RelPathFile = String.Format("{0}.xblock", xbl.Name); GameXblock = xbl; JsonDB = new List<GraphItem>(); if (currentPlatform.IsConsole) HsonDB = new List<GraphItem>(); SongXml = new List<GraphItemLLID>(); MusicgameSong = new List<GraphItemLLID>(); foreach (var arrangement in info.Arrangements) { var name = String.Format(NAME_ARRANGEMENT, dlcName, songPartition.GetArrangementFileName(arrangement.Name, arrangement.ArrangementType).ToLower()); // JsonDB var json = new GraphItem(); json.Name = name; json.Canonical = currentPlatform.IsConsole ? CANONICAL_MANIFEST_CONSOLE : String.Format(CANONICAL_MANIFEST_PC, dlcName); json.RelPathDirectory = json.Canonical; json.Tag = new List<string>(); json.Tag.Add(TagValue.Database.GetDescription()); json.Tag.Add(TagValue.JsonDB.GetDescription()); json.UUID = IdGenerator.Guid(); json.RelPathFile = String.Format("{0}.json", json.Name); JsonDB.Add(json); //One file for each arrangement (Xbox360 / PS3 only) if (currentPlatform.IsConsole) { // HsonDB var hson = new GraphItem(); hson.Name = name; hson.Canonical = CANONICAL_MANIFEST_CONSOLE; hson.RelPathDirectory = hson.Canonical; hson.Tag = new List<string>(); hson.Tag.Add(TagValue.Database.GetDescription()); hson.Tag.Add(TagValue.HsonDB.GetDescription()); hson.UUID = IdGenerator.Guid(); hson.RelPathFile = String.Format("{0}.hson", json.Name); HsonDB.Add(hson); } // XmlSong var xml = new GraphItemLLID(); xml.Name = name; xml.Canonical = String.Format(CANONICAL_XMLSONG, dlcName); xml.RelPathDirectory = xml.Canonical; xml.LogPathDirectory = xml.Canonical; xml.Tag = new List<string>(); xml.Tag.Add(TagValue.Application.GetDescription()); xml.Tag.Add(TagValue.XML.GetDescription()); xml.UUID = arrangement.SongXml.UUID; xml.LLID = Guid.Parse(arrangement.SongXml.LLID); xml.RelPathFile = String.Format("{0}.xml", xml.Name); xml.LogPathFile = xml.RelPathFile; SongXml.Add(xml); // Musicgame var sng = new GraphItemLLID(); sng.Name = name; sng.Canonical = String.Format(CANONICAL_GAMESONG, currentPlatform.GetPathName()[1].ToLower()); sng.RelPathDirectory = sng.Canonical; sng.LogPathDirectory = sng.Canonical; sng.Tag = new List<string>(); sng.Tag.Add(TagValue.Application.GetDescription()); sng.Tag.Add(TagValue.MusicgameSong.GetDescription()); if (currentPlatform.IsConsole) sng.Tag.Add(GraphItem.GetPlatformTagDescription(currentPlatform.platform)); sng.UUID = arrangement.SongFile.UUID; sng.LLID = Guid.Parse(arrangement.SongFile.LLID); sng.RelPathFile = String.Format("{0}.sng", sng.Name); sng.LogPathFile = sng.RelPathFile; MusicgameSong.Add(sng); } if (currentPlatform.version == GameVersion.RS2014) { //One file for all arrangement (PC / Mac only) if (!currentPlatform.IsConsole) { // HsanDB var hsan = new GraphItem(); hsan.Name = String.Format("songs_dlc_{0}", dlcName); hsan.Canonical = String.Format(CANONICAL_MANIFEST_PC, dlcName); hsan.RelPathDirectory = hsan.Canonical; hsan.Tag = new List<string>(); hsan.Tag.Add(TagValue.Database.GetDescription()); hsan.Tag.Add(TagValue.HsanDB.GetDescription()); hsan.UUID = IdGenerator.Guid(); hsan.RelPathFile = String.Format("{0}.hsan", hsan.Name); HsanDB = hsan; } // Showlight (Xml) var xml = new GraphItemLLID(); xml.Name = String.Format(NAME_SHOWLIGHT, dlcName); xml.Canonical = String.Format(CANONICAL_XMLSONG, dlcName); xml.RelPathDirectory = xml.Canonical; xml.LogPathDirectory = xml.Canonical; xml.Tag = new List<string>(); xml.Tag.Add(TagValue.Application.GetDescription()); xml.Tag.Add(TagValue.XML.GetDescription()); xml.UUID = IdGenerator.Guid(); xml.LLID = Guid.Parse(IdGenerator.LLID()); xml.RelPathFile = String.Format("{0}.xml", xml.Name); xml.LogPathFile = xml.RelPathFile; SongXml.Add(xml); ShowlightXml = xml; } // Image Art (DDS) var aArtArray = new string[] { info.AlbumArtPath }; if (currentPlatform.version == GameVersion.RS2014) aArtArray = new string[] { String.Format("album_{0}_256.dds", dlcName), String.Format("album_{0}_128.dds", dlcName), String.Format("album_{0}_64.dds", dlcName) }; ImageArt = new List<GraphItemLLID>(); foreach (var album in aArtArray) { var dds = new GraphItemLLID(); dds.Canonical = CANONICAL_IMAGEART[dlcType]; dds.RelPathDirectory = dds.Canonical; dds.LogPathDirectory = dds.Canonical; dds.Tag = new List<string>(); dds.Tag.Add(TagValue.DDS.GetDescription()); dds.Tag.Add(TagValue.Image.GetDescription()); dds.UUID = IdGenerator.Guid(); dds.LLID = Guid.Parse(IdGenerator.LLID()); dds.Name = Path.GetFileNameWithoutExtension(album); dds.RelPathFile = Path.GetFileName(album); dds.LogPathFile = dds.RelPathFile; ImageArt.Add(dds); } // Lyrics Font Texture if (!String.IsNullOrEmpty(info.LyricsTex)) { LyricsTex = new GraphItemLLID(); var tex = new GraphItemLLID(); tex.Canonical = String.Format(CANONICAL_MANIFEST_PC, dlcName); tex.RelPathDirectory = tex.Canonical; tex.LogPathDirectory = tex.Canonical; tex.Tag = new List<string>(); tex.Tag.Add(TagValue.DDS.GetDescription()); tex.Tag.Add(TagValue.Image.GetDescription()); tex.UUID = IdGenerator.Guid(); tex.LLID = Guid.Parse(IdGenerator.LLID()); tex.Name = String.Format("lyrics_{0}", dlcName); tex.RelPathFile = tex.Name; tex.LogPathFile = tex.RelPathFile; LyricsTex = tex; } // Soundbank Soundbank = new List<GraphItemLLID>(); var bnk = new GraphItemLLID(); bnk.Canonical = String.Format(CANONICAL_SOUNDBANK, currentPlatform.GetPathName()[0].ToLower()); bnk.RelPathDirectory = bnk.Canonical; bnk.LogPathDirectory = LOGPATH_SOUNDBANK; bnk.Tag = new List<string>(); bnk.Tag.Add(TagValue.Audio.GetDescription()); bnk.Tag.Add(TagValue.WwiseSoundBank.GetDescription()); bnk.Tag.Add(GraphItem.GetPlatformTagDescription(currentPlatform.platform)); bnk.UUID = IdGenerator.Guid(); bnk.LLID = Guid.Parse(IdGenerator.LLID()); bnk.Name = String.Format("song_{0}", dlcName); bnk.RelPathFile = String.Format("{0}.bnk", bnk.Name); bnk.LogPathFile = bnk.RelPathFile; Soundbank.Add(bnk); if (currentPlatform.version == GameVersion.RS2014) { // Soundbank Preview var bnkPreview = new GraphItemLLID(); bnkPreview.Canonical = String.Format(CANONICAL_SOUNDBANK, currentPlatform.GetPathName()[0].ToLower()); bnkPreview.RelPathDirectory = bnkPreview.Canonical; bnkPreview.LogPathDirectory = LOGPATH_SOUNDBANK; bnkPreview.Tag = new List<string>(); bnkPreview.Tag.Add(TagValue.Audio.GetDescription()); bnkPreview.Tag.Add(TagValue.WwiseSoundBank.GetDescription()); bnkPreview.Tag.Add(GraphItem.GetPlatformTagDescription(currentPlatform.platform)); bnkPreview.UUID = IdGenerator.Guid(); bnkPreview.LLID = Guid.Parse(IdGenerator.LLID()); bnkPreview.Name = String.Format("song_{0}_preview", dlcName); bnkPreview.RelPathFile = String.Format("{0}.bnk", bnkPreview.Name); bnkPreview.LogPathFile = bnkPreview.RelPathFile; Soundbank.Add(bnkPreview); } }
private void InlayAggregateGraph(DLCPackageData info, DLCPackageType dlcType) { var dlcName = info.Inlay.DLCSixName; // Xblock var xbl = new GraphItem(); xbl.Name = String.Format("guitar_{0}", dlcName); xbl.Canonical = String.Format(CANONICAL_XBLOCK[dlcType], dlcName); xbl.RelPathDirectory = xbl.Canonical; xbl.Tag = new List <string>(); xbl.Tag.Add(TagValue.EmergentWorld.GetDescription()); xbl.Tag.Add(TagValue.XWorld.GetDescription()); xbl.UUID = IdGenerator.Guid(); xbl.RelPathFile = String.Format("guitar_{0}.xblock", dlcName); GameXblock = xbl; // JsonDB JsonDB = new List <GraphItem>(); var json = new GraphItem(); json.Name = String.Format("dlc_guitar_{0}", dlcName); json.Canonical = currentPlatform.IsConsole ? CANONICAL_MANIFEST_CONSOLE : String.Format(CANONICAL_MANIFEST_PC, dlcName); json.RelPathDirectory = json.Canonical; json.Tag = new List <string>(); json.Tag.Add(TagValue.Database.GetDescription()); json.Tag.Add(TagValue.JsonDB.GetDescription()); json.UUID = IdGenerator.Guid(); json.RelPathFile = String.Format("dlc_guitar_{0}.json", dlcName); JsonDB.Add(json); if (currentPlatform.IsConsole) { // HsonDB - One file for each manifest (Xbox360 / PS3 only) HsonDB = new List <GraphItem>(); var hson = new GraphItem(); hson.Name = String.Format("dlc_{0}", dlcName); hson.Canonical = CANONICAL_MANIFEST_CONSOLE; hson.RelPathDirectory = hson.Canonical; hson.Tag = new List <string>(); hson.Tag.Add(TagValue.Database.GetDescription()); hson.Tag.Add(TagValue.HsonDB.GetDescription()); hson.UUID = IdGenerator.Guid(); hson.RelPathFile = String.Format("dlc_{0}.hson", dlcName); HsonDB.Add(hson); } else { // HsanDB - One file for all manifest (PC / Mac) var hsan = new GraphItem(); hsan.Name = String.Format("dlc_{0}", dlcName); hsan.Canonical = String.Format(CANONICAL_MANIFEST_PC, dlcName); hsan.RelPathDirectory = hsan.Canonical; hsan.Tag = new List <string>(); hsan.Tag.Add(TagValue.Database.GetDescription()); hsan.Tag.Add(TagValue.HsanDB.GetDescription()); hsan.UUID = IdGenerator.Guid(); hsan.RelPathFile = String.Format("dlc_{0}.hsan", dlcName); HsanDB = hsan; } ImageArt = new List <GraphItemLLID>(); // Inlay Icon (DDS) var aArtArray = new string[] { String.Format("reward_inlay_{0}_512", dlcName), String.Format("reward_inlay_{0}_256", dlcName), String.Format("reward_inlay_{0}_128", dlcName), String.Format("reward_inlay_{0}_64", dlcName) }; foreach (var icon in aArtArray) { var iconDDS = new GraphItemLLID(); iconDDS.Canonical = CANONICAL_IMAGEART[dlcType]; iconDDS.RelPathDirectory = iconDDS.Canonical; iconDDS.LogPathDirectory = iconDDS.Canonical; iconDDS.Tag = new List <string>(); iconDDS.Tag.Add(TagValue.DDS.GetDescription()); iconDDS.Tag.Add(TagValue.Image.GetDescription()); iconDDS.UUID = IdGenerator.Guid(); iconDDS.LLID = Guid.Parse(IdGenerator.LLID()); iconDDS.Name = icon; iconDDS.RelPathFile = String.Format("{0}.dds", iconDDS.Name); iconDDS.LogPathFile = iconDDS.RelPathFile; ImageArt.Add(iconDDS); } // Inlay Art var inlayDDS = new GraphItemLLID(); inlayDDS.Canonical = CANONICAL_INLAY; inlayDDS.RelPathDirectory = inlayDDS.Canonical; inlayDDS.LogPathDirectory = inlayDDS.Canonical; inlayDDS.Tag = new List <string>(); inlayDDS.Tag.Add(TagValue.DDS.GetDescription()); inlayDDS.Tag.Add(TagValue.Image.GetDescription()); inlayDDS.UUID = IdGenerator.Guid(); inlayDDS.LLID = Guid.Parse(IdGenerator.LLID()); inlayDDS.Name = String.Format("inlay_{0}", dlcName); inlayDDS.RelPathFile = String.Format("{0}.dds", inlayDDS.Name); inlayDDS.LogPathFile = inlayDDS.RelPathFile; ImageArt.Add(inlayDDS); // Inlay Nif var nif = new GraphItemLLID(); nif.Canonical = CANONICAL_INLAY; nif.RelPathDirectory = nif.Canonical; nif.LogPathDirectory = nif.Canonical; nif.Tag = new List <string>(); nif.Tag.Add(TagValue.Application.GetDescription()); nif.Tag.Add(TagValue.GamebryoSceneGraph.GetDescription()); nif.UUID = IdGenerator.Guid(); nif.LLID = Guid.Parse(IdGenerator.LLID()); nif.Name = dlcName; nif.RelPathFile = String.Format("{0}.nif", dlcName); nif.LogPathFile = nif.RelPathFile; InlayNif = nif; }
private void InlayAggregateGraph(DLCPackageData info, DLCPackageType dlcType) { var dlcName = info.Inlay.DLCSixName; // Xblock var xbl = new GraphItem(); xbl.Name = String.Format("guitar_{0}", dlcName); xbl.Canonical = String.Format(CANONICAL_XBLOCK[dlcType], dlcName); xbl.RelPathDirectory = xbl.Canonical; xbl.Tag = new List<string>(); xbl.Tag.Add(TagValue.EmergentWorld.GetDescription()); xbl.Tag.Add(TagValue.XWorld.GetDescription()); xbl.UUID = IdGenerator.Guid(); xbl.RelPathFile = String.Format("guitar_{0}.xblock", dlcName); GameXblock = xbl; // JsonDB JsonDB = new List<GraphItem>(); var json = new GraphItem(); json.Name = String.Format("dlc_guitar_{0}", dlcName); json.Canonical = currentPlatform.IsConsole ? CANONICAL_MANIFEST_CONSOLE : String.Format(CANONICAL_MANIFEST_PC, dlcName); json.RelPathDirectory = json.Canonical; json.Tag = new List<string>(); json.Tag.Add(TagValue.Database.GetDescription()); json.Tag.Add(TagValue.JsonDB.GetDescription()); json.UUID = IdGenerator.Guid(); json.RelPathFile = String.Format("dlc_guitar_{0}.json", dlcName); JsonDB.Add(json); if (currentPlatform.IsConsole) { // HsonDB - One file for each manifest (Xbox360 / PS3 only) HsonDB = new List<GraphItem>(); var hson = new GraphItem(); hson.Name = String.Format("dlc_{0}", dlcName); hson.Canonical = CANONICAL_MANIFEST_CONSOLE; hson.RelPathDirectory = hson.Canonical; hson.Tag = new List<string>(); hson.Tag.Add(TagValue.Database.GetDescription()); hson.Tag.Add(TagValue.HsonDB.GetDescription()); hson.UUID = IdGenerator.Guid(); hson.RelPathFile = String.Format("dlc_{0}.hson", dlcName); HsonDB.Add(hson); } else { // HsanDB - One file for all manifest (PC / Mac) var hsan = new GraphItem(); hsan.Name = String.Format("dlc_{0}", dlcName); hsan.Canonical = String.Format(CANONICAL_MANIFEST_PC, dlcName); hsan.RelPathDirectory = hsan.Canonical; hsan.Tag = new List<string>(); hsan.Tag.Add(TagValue.Database.GetDescription()); hsan.Tag.Add(TagValue.HsanDB.GetDescription()); hsan.UUID = IdGenerator.Guid(); hsan.RelPathFile = String.Format("dlc_{0}.hsan", dlcName); HsanDB = hsan; } ImageArt = new List<GraphItemLLID>(); // Inlay Icon (DDS) var aArtArray = new string[] { String.Format("reward_inlay_{0}_512", dlcName), String.Format("reward_inlay_{0}_256", dlcName), String.Format("reward_inlay_{0}_128", dlcName), String.Format("reward_inlay_{0}_64", dlcName) }; foreach (var icon in aArtArray) { var iconDDS = new GraphItemLLID(); iconDDS.Canonical = CANONICAL_IMAGEART[dlcType]; iconDDS.RelPathDirectory = iconDDS.Canonical; iconDDS.LogPathDirectory = iconDDS.Canonical; iconDDS.Tag = new List<string>(); iconDDS.Tag.Add(TagValue.DDS.GetDescription()); iconDDS.Tag.Add(TagValue.Image.GetDescription()); iconDDS.UUID = IdGenerator.Guid(); iconDDS.LLID = Guid.Parse(IdGenerator.LLID()); iconDDS.Name = icon; iconDDS.RelPathFile = String.Format("{0}.dds", iconDDS.Name); iconDDS.LogPathFile = iconDDS.RelPathFile; ImageArt.Add(iconDDS); } // Inlay Art var inlayDDS = new GraphItemLLID(); inlayDDS.Canonical = CANONICAL_INLAY; inlayDDS.RelPathDirectory = inlayDDS.Canonical; inlayDDS.LogPathDirectory = inlayDDS.Canonical; inlayDDS.Tag = new List<string>(); inlayDDS.Tag.Add(TagValue.DDS.GetDescription()); inlayDDS.Tag.Add(TagValue.Image.GetDescription()); inlayDDS.UUID = IdGenerator.Guid(); inlayDDS.LLID = Guid.Parse(IdGenerator.LLID()); inlayDDS.Name = String.Format("inlay_{0}", dlcName); inlayDDS.RelPathFile = String.Format("{0}.dds", inlayDDS.Name); inlayDDS.LogPathFile = inlayDDS.RelPathFile; ImageArt.Add(inlayDDS); // Inlay Nif var nif = new GraphItemLLID(); nif.Canonical = CANONICAL_INLAY; nif.RelPathDirectory = nif.Canonical; nif.LogPathDirectory = nif.Canonical; nif.Tag = new List<string>(); nif.Tag.Add(TagValue.Application.GetDescription()); nif.Tag.Add(TagValue.GamebryoSceneGraph.GetDescription()); nif.UUID = IdGenerator.Guid(); nif.LLID = Guid.Parse(IdGenerator.LLID()); nif.Name = dlcName; nif.RelPathFile = String.Format("{0}.nif", dlcName); nif.LogPathFile = nif.RelPathFile; InlayNif = nif; }
private void SongAggregateGraph(DLCPackageData info, DLCPackageType dlcType) { var dlcName = info.Name.ToLower(); var songPartition = new SongPartition(); // Xblock var xbl = new GraphItem(); xbl.Name = dlcName; xbl.Canonical = String.Format(CANONICAL_XBLOCK[dlcType], dlcName); xbl.RelPathDirectory = xbl.Canonical; xbl.Tag = new List <string>(); xbl.Tag.Add(TagValue.EmergentWorld.GetDescription()); xbl.Tag.Add(TagValue.XWorld.GetDescription()); xbl.UUID = IdGenerator.Guid(); xbl.RelPathFile = String.Format("{0}.xblock", xbl.Name); GameXblock = xbl; JsonDB = new List <GraphItem>(); if (currentPlatform.IsConsole) { HsonDB = new List <GraphItem>(); } SongXml = new List <GraphItemLLID>(); MusicgameSong = new List <GraphItemLLID>(); foreach (var arrangement in info.Arrangements) { var name = String.Format(NAME_ARRANGEMENT, dlcName, songPartition.GetArrangementFileName(arrangement.Name, arrangement.ArrangementType).ToLower()); // JsonDB var json = new GraphItem(); json.Name = name; json.Canonical = currentPlatform.IsConsole ? CANONICAL_MANIFEST_CONSOLE : String.Format(CANONICAL_MANIFEST_PC, dlcName); json.RelPathDirectory = json.Canonical; json.Tag = new List <string>(); json.Tag.Add(TagValue.Database.GetDescription()); json.Tag.Add(TagValue.JsonDB.GetDescription()); json.UUID = IdGenerator.Guid(); json.RelPathFile = String.Format("{0}.json", json.Name); JsonDB.Add(json); //One file for each arrangement (Xbox360 / PS3 only) if (currentPlatform.IsConsole) { // HsonDB var hson = new GraphItem(); hson.Name = name; hson.Canonical = CANONICAL_MANIFEST_CONSOLE; hson.RelPathDirectory = hson.Canonical; hson.Tag = new List <string>(); hson.Tag.Add(TagValue.Database.GetDescription()); hson.Tag.Add(TagValue.HsonDB.GetDescription()); hson.UUID = IdGenerator.Guid(); hson.RelPathFile = String.Format("{0}.hson", json.Name); HsonDB.Add(hson); } // XmlSong var xml = new GraphItemLLID(); xml.Name = name; xml.Canonical = String.Format(CANONICAL_XMLSONG, dlcName); xml.RelPathDirectory = xml.Canonical; xml.LogPathDirectory = xml.Canonical; xml.Tag = new List <string>(); xml.Tag.Add(TagValue.Application.GetDescription()); xml.Tag.Add(TagValue.XML.GetDescription()); xml.UUID = arrangement.SongXml.UUID; xml.LLID = Guid.Parse(arrangement.SongXml.LLID); xml.RelPathFile = String.Format("{0}.xml", xml.Name); xml.LogPathFile = xml.RelPathFile; SongXml.Add(xml); // Musicgame var sng = new GraphItemLLID(); sng.Name = name; sng.Canonical = String.Format(CANONICAL_GAMESONG, currentPlatform.GetPathName()[1].ToLower()); sng.RelPathDirectory = sng.Canonical; sng.LogPathDirectory = sng.Canonical; sng.Tag = new List <string>(); sng.Tag.Add(TagValue.Application.GetDescription()); sng.Tag.Add(TagValue.MusicgameSong.GetDescription()); if (currentPlatform.IsConsole) { sng.Tag.Add(GraphItem.GetPlatformTagDescription(currentPlatform.platform)); } sng.UUID = arrangement.SongFile.UUID; sng.LLID = Guid.Parse(arrangement.SongFile.LLID); sng.RelPathFile = String.Format("{0}.sng", sng.Name); sng.LogPathFile = sng.RelPathFile; MusicgameSong.Add(sng); } if (currentPlatform.version == GameVersion.RS2014) { //One file for all arrangement (PC / Mac only) if (!currentPlatform.IsConsole) { // HsanDB var hsan = new GraphItem(); hsan.Name = String.Format("songs_dlc_{0}", dlcName); hsan.Canonical = String.Format(CANONICAL_MANIFEST_PC, dlcName); hsan.RelPathDirectory = hsan.Canonical; hsan.Tag = new List <string>(); hsan.Tag.Add(TagValue.Database.GetDescription()); hsan.Tag.Add(TagValue.HsanDB.GetDescription()); hsan.UUID = IdGenerator.Guid(); hsan.RelPathFile = String.Format("{0}.hsan", hsan.Name); HsanDB = hsan; } // Showlight (Xml) var xml = new GraphItemLLID(); xml.Name = String.Format(NAME_SHOWLIGHT, dlcName); xml.Canonical = String.Format(CANONICAL_XMLSONG, dlcName); xml.RelPathDirectory = xml.Canonical; xml.LogPathDirectory = xml.Canonical; xml.Tag = new List <string>(); xml.Tag.Add(TagValue.Application.GetDescription()); xml.Tag.Add(TagValue.XML.GetDescription()); xml.UUID = IdGenerator.Guid(); xml.LLID = Guid.Parse(IdGenerator.LLID()); xml.RelPathFile = String.Format("{0}.xml", xml.Name); xml.LogPathFile = xml.RelPathFile; SongXml.Add(xml); ShowlightXml = xml; } // Image Art (DDS) var aArtArray = new string[] { info.AlbumArtPath }; if (currentPlatform.version == GameVersion.RS2014) { aArtArray = new string[] { String.Format("album_{0}_256.dds", dlcName), String.Format("album_{0}_128.dds", dlcName), String.Format("album_{0}_64.dds", dlcName) } } ; ImageArt = new List <GraphItemLLID>(); foreach (var album in aArtArray) { var dds = new GraphItemLLID(); dds.Canonical = CANONICAL_IMAGEART[dlcType]; dds.RelPathDirectory = dds.Canonical; dds.LogPathDirectory = dds.Canonical; dds.Tag = new List <string>(); dds.Tag.Add(TagValue.DDS.GetDescription()); dds.Tag.Add(TagValue.Image.GetDescription()); dds.UUID = IdGenerator.Guid(); dds.LLID = Guid.Parse(IdGenerator.LLID()); dds.Name = Path.GetFileNameWithoutExtension(album); dds.RelPathFile = Path.GetFileName(album); dds.LogPathFile = dds.RelPathFile; ImageArt.Add(dds); } // Lyrics Font Texture if (!String.IsNullOrEmpty(info.LyricsTex)) { LyricsTex = new GraphItemLLID(); var tex = new GraphItemLLID(); tex.Canonical = String.Format(CANONICAL_MANIFEST_PC, dlcName); tex.RelPathDirectory = tex.Canonical; tex.LogPathDirectory = tex.Canonical; tex.Tag = new List <string>(); tex.Tag.Add(TagValue.DDS.GetDescription()); tex.Tag.Add(TagValue.Image.GetDescription()); tex.UUID = IdGenerator.Guid(); tex.LLID = Guid.Parse(IdGenerator.LLID()); tex.Name = String.Format("lyrics_{0}", dlcName); tex.RelPathFile = tex.Name; tex.LogPathFile = tex.RelPathFile; LyricsTex = tex; } // Soundbank Soundbank = new List <GraphItemLLID>(); var bnk = new GraphItemLLID(); bnk.Canonical = String.Format(CANONICAL_SOUNDBANK, currentPlatform.GetPathName()[0].ToLower()); bnk.RelPathDirectory = bnk.Canonical; bnk.LogPathDirectory = LOGPATH_SOUNDBANK; bnk.Tag = new List <string>(); bnk.Tag.Add(TagValue.Audio.GetDescription()); bnk.Tag.Add(TagValue.WwiseSoundBank.GetDescription()); bnk.Tag.Add(GraphItem.GetPlatformTagDescription(currentPlatform.platform)); bnk.UUID = IdGenerator.Guid(); bnk.LLID = Guid.Parse(IdGenerator.LLID()); bnk.Name = String.Format("song_{0}", dlcName); bnk.RelPathFile = String.Format("{0}.bnk", bnk.Name); bnk.LogPathFile = bnk.RelPathFile; Soundbank.Add(bnk); if (currentPlatform.version == GameVersion.RS2014) { // Soundbank Preview var bnkPreview = new GraphItemLLID(); bnkPreview.Canonical = String.Format(CANONICAL_SOUNDBANK, currentPlatform.GetPathName()[0].ToLower()); bnkPreview.RelPathDirectory = bnkPreview.Canonical; bnkPreview.LogPathDirectory = LOGPATH_SOUNDBANK; bnkPreview.Tag = new List <string>(); bnkPreview.Tag.Add(TagValue.Audio.GetDescription()); bnkPreview.Tag.Add(TagValue.WwiseSoundBank.GetDescription()); bnkPreview.Tag.Add(GraphItem.GetPlatformTagDescription(currentPlatform.platform)); bnkPreview.UUID = IdGenerator.Guid(); bnkPreview.LLID = Guid.Parse(IdGenerator.LLID()); bnkPreview.Name = String.Format("song_{0}_preview", dlcName); bnkPreview.RelPathFile = String.Format("{0}.bnk", bnkPreview.Name); bnkPreview.LogPathFile = bnkPreview.RelPathFile; Soundbank.Add(bnkPreview); } }