move some general notes from settings section

This commit is contained in:
13xforever 2019-10-14 00:57:21 +05:00
parent acbce113ff
commit 5400e7d9f0

View File

@ -10,7 +10,7 @@ namespace CompatBot.Utils.ResultFormatters
{
internal static partial class LogParserResult
{
private static void BuildWeirdSettingsSection(DiscordEmbedBuilder builder, NameValueCollection items)
private static void BuildWeirdSettingsSection(DiscordEmbedBuilder builder, NameValueCollection items, List<string> generalNotes)
{
var notes = new List<string>();
var serial = items["serial"] ?? "";
@ -79,18 +79,18 @@ namespace CompatBot.Utils.ResultFormatters
{
CheckP5Settings(serial, items, notes);
CheckAsurasWrathSettings(serial, items, notes);
CheckJojoSettings(serial, items, notes, ppuPatches, ppuHashes);
CheckSimpsonsSettings(serial, notes);
CheckNierSettings(serial, items, notes, ppuPatches, ppuHashes);
CheckDod3Settings(serial, items, notes, ppuPatches, ppuHashes);
CheckJojoSettings(serial, items, notes, ppuPatches, ppuHashes, generalNotes);
CheckSimpsonsSettings(serial, generalNotes);
CheckNierSettings(serial, items, notes, ppuPatches, ppuHashes, generalNotes);
CheckDod3Settings(serial, items, notes, ppuPatches, ppuHashes, generalNotes);
CheckScottPilgrimSettings(serial, items, notes);
CheckGoWSettings(serial, items, notes);
CheckDesSettings(serial, items, notes, ppuPatches, ppuHashes);
CheckGoWSettings(serial, items, notes, generalNotes);
CheckDesSettings(serial, items, notes, ppuPatches, ppuHashes, generalNotes);
CheckTlouSettings(serial, items, notes);
CheckMgs4Settings(serial, items, notes);
CheckMgs4Settings(serial, generalNotes);
}
else if (items["game_title"] == "vsh.self")
CheckVshSettings(items, notes);
CheckVshSettings(items, notes, generalNotes);
if (items["game_category"] == "1P")
CheckPs1ClassicsSettings(items, notes);
@ -176,7 +176,7 @@ namespace CompatBot.Utils.ResultFormatters
&& KnownMotionControlsIds.Contains(serial)
&& items["pad_handler"] is string padHandler
&& !padHandler.StartsWith("DualShock"))
notes.Add("❗ This game requires motion controls, please use DS3 or DS4 gamepad");
notes.Add("❗ This game requires motion controls, please use native handler for DualShock 3 or DualShock 4 controller");
if (items["audio_backend"] is string audioBackend && !string.IsNullOrEmpty(audioBackend))
{
@ -310,7 +310,7 @@ namespace CompatBot.Utils.ResultFormatters
"18cf9a4e8196684ed9ee816f82649561fd1bf182",
};
private static void CheckJojoSettings(string serial, NameValueCollection items, List<string> notes, Dictionary<string, int> ppuPatches, HashSet<string> ppuHashes)
private static void CheckJojoSettings(string serial, NameValueCollection items, List<string> notes, Dictionary<string, int> ppuPatches, HashSet<string> ppuHashes, List<string> generalNotes)
{
if (AllStarBattleIds.Contains(serial) || serial == "BLJS10318" || serial == "NPJB00753")
{
@ -337,17 +337,17 @@ namespace CompatBot.Utils.ResultFormatters
if (vbr > 60)
notes.Add(" Unlocking FPS requires game patch");
if (ppuHashes.Overlaps(KnownJojoPatches))
notes.Add(" This game has an FPS unlock patch, see [Game Patches](https://github.com/RPCS3/rpcs3/wiki/Game-Patches)");
generalNotes.Add(" This game has an FPS unlock patch, see [Game Patches](https://github.com/RPCS3/rpcs3/wiki/Game-Patches)");
}
}
}
}
private static void CheckSimpsonsSettings(string serial, List<string> notes)
private static void CheckSimpsonsSettings(string serial, List<string> generalNotes)
{
if (serial == "BLES00142" || serial == "BLUS30065")
{
notes.Add(" This game has a controller initialization bug. Simply unplug and replug it until it works.");
generalNotes.Add(" This game has a controller initialization bug. Simply unplug and replug it until it works.");
}
}
@ -357,7 +357,7 @@ namespace CompatBot.Utils.ResultFormatters
"f098ee8410599c81c89f90d698340a078dc69a90",
};
private static void CheckNierSettings(string serial, NameValueCollection items, List<string> notes, Dictionary<string, int> ppuPatches, HashSet<string> ppuHashes)
private static void CheckNierSettings(string serial, NameValueCollection items, List<string> notes, Dictionary<string, int> ppuPatches, HashSet<string> ppuHashes, List<string> generalNotes)
{
if (serial == "BLUS30481" || serial == "BLES00826" || serial == "BLJM60223")
{
@ -390,7 +390,7 @@ namespace CompatBot.Utils.ResultFormatters
if (frameLimit != "30")
notes.Add("⚠ Please set `Framerate Limiter` to 30 fps");
if (ppuHashes.Overlaps(KnownNierPatches))
notes.Add(" This game has an FPS unlock patch, see [Game Patches](https://github.com/RPCS3/rpcs3/wiki/Game-Patches#nier)");
generalNotes.Add(" This game has an FPS unlock patch, see [Game Patches](https://github.com/RPCS3/rpcs3/wiki/Game-Patches#nier)");
}
if (serial == "BLJM60223" && items["native_ui"] == EnabledMark)
@ -430,7 +430,7 @@ namespace CompatBot.Utils.ResultFormatters
"NPHA80258",
};
private static void CheckGoWSettings(string serial, NameValueCollection items, List<string> notes)
private static void CheckGoWSettings(string serial, NameValueCollection items, List<string> notes, List<string> generalNotes)
{
if (serial == "NPUA70080") // GoW3 Demo
return;
@ -442,7 +442,7 @@ namespace CompatBot.Utils.ResultFormatters
}
else if (Gow3Ids.Contains(serial))
{
notes.Add(" Black screen after Santa Monica logo is fine for up to 5 minutes");
generalNotes.Add(" Black screen after Santa Monica logo is fine for up to 5 minutes");
if (items["spu_decoder"] is string spuDecoder
&& spuDecoder.Contains("LLVM")
&& items["spu_block_size"] is string blockSize
@ -450,7 +450,7 @@ namespace CompatBot.Utils.ResultFormatters
notes.Add("⚠ Please change `SPU Block Size` to `Mega` for this game");
}
else if (GowAscIds.Contains(serial))
notes.Add(" This game is known to be very unstable");
generalNotes.Add(" This game is known to be very unstable");
}
private static readonly HashSet<string> DesIds = new HashSet<string>
@ -465,7 +465,7 @@ namespace CompatBot.Utils.ResultFormatters
"5446a2645880eefa75f7e374abd6b7818511e2ef",
};
private static void CheckDesSettings(string serial, NameValueCollection items, List<string> notes, Dictionary<string, int> ppuPatches, HashSet<string> ppuHashes)
private static void CheckDesSettings(string serial, NameValueCollection items, List<string> notes, Dictionary<string, int> ppuPatches, HashSet<string> ppuHashes, List<string> generalNotes)
{
if (!DesIds.Contains(serial))
return;
@ -505,7 +505,7 @@ namespace CompatBot.Utils.ResultFormatters
if (vblankRate > 60)
notes.Add(" Unlocking FPS requires game patch");
if (ppuHashes.Overlaps(KnownDesPatches))
notes.Add(" This game has an FPS unlock patch, see [Game Patches](https://github.com/RPCS3/rpcs3/wiki/Game-Patches#demons-souls)");
generalNotes.Add(" This game has an FPS unlock patch, see [Game Patches](https://github.com/RPCS3/rpcs3/wiki/Game-Patches#demons-souls)");
}
}
else if (ppuPatches.Any())
@ -533,7 +533,7 @@ namespace CompatBot.Utils.ResultFormatters
"5eb979631fbbe531db5d20f0622dca5a8b64090e",
};
private static void CheckDod3Settings(string serial, NameValueCollection items, List<string> notes, Dictionary<string, int> ppuPatches, HashSet<string> ppuHashes)
private static void CheckDod3Settings(string serial, NameValueCollection items, List<string> notes, Dictionary<string, int> ppuPatches, HashSet<string> ppuHashes, List<string> generalNotes)
{
if (!Dod3Ids.Contains(serial))
return;
@ -557,9 +557,9 @@ namespace CompatBot.Utils.ResultFormatters
if (vbr > 60)
notes.Add(" Unlocking FPS requires game patch");
if (ppuHashes.Overlaps(KnownDod3Patches))
notes.Add(" This game has an FPS unlock patch, see [Game Patches](https://github.com/RPCS3/rpcs3/wiki/Game-Patches#drakengard-3)");
generalNotes.Add(" This game has an FPS unlock patch, see [Game Patches](https://github.com/RPCS3/rpcs3/wiki/Game-Patches#drakengard-3)");
else if (ppuHashes.Any())
notes.Add("🤔 Very interesting version of the game you got there");
generalNotes.Add("🤔 Very interesting version of the game you got there");
}
}
}
@ -605,20 +605,20 @@ namespace CompatBot.Utils.ResultFormatters
"NPHB00065", "NPHB00067",
};
private static void CheckMgs4Settings(string serial, NameValueCollection items, List<string> notes)
private static void CheckMgs4Settings(string serial, List<string> generalNotes)
{
if (!Mgs4Ids.Contains(serial))
return;
notes.Add(" Metal Gear Solid 4 just got ingame, and is still very unstable");
notes.Add(" There is no universal set of settings and game updates that works for everyone");
generalNotes.Add(" Metal Gear Solid 4 just got ingame, and is still very unstable");
generalNotes.Add(" There is no universal set of settings and game updates that works for everyone");
}
private static void CheckVshSettings(NameValueCollection items, List<string> notes)
private static void CheckVshSettings(NameValueCollection items, List<string> notes, List<string> generalNotes)
{
if (items["build_branch"] is string branch
&& !branch.Contains("vsh", StringComparison.InvariantCultureIgnoreCase))
notes.Add(" Booting `vsh.self` currently requires a special build");
generalNotes.Add(" Booting `vsh.self` currently requires a special build");
if (items["lib_loader"] is string libLoader
&& libLoader != "Manual selection")
notes.Add("⚠ `Library Loader` must be set to `Manual`");