mirror of
https://github.com/RPCS3/discord-bot.git
synced 2025-02-17 00:09:49 +00:00
only show simpsons note on older builds without patch applied
fixes #941
This commit is contained in:
parent
5419938ac1
commit
fcd88cef82
@ -37,9 +37,7 @@ internal static partial class LogParserResult
|
||||
var serial = items["serial"] ?? "";
|
||||
BuildFatalErrorSection(builder, items, multiItems, notes);
|
||||
|
||||
Version? buildVersion = null;
|
||||
if (items["build_branch"] is "HEAD" or "master")
|
||||
Version.TryParse(items["build_full_version"], out buildVersion);
|
||||
TryGetRpcs3Version(items, out var buildVersion);
|
||||
var supportedGpu = string.IsNullOrEmpty(items["rsx_unsupported_gpu"]) && items["supported_gpu"] != DisabledMark;
|
||||
var unsupportedGpuDriver = false;
|
||||
if (Config.Colors.CompatStatusNothing.Equals(builder.Color.Value) || Config.Colors.CompatStatusLoadable.Equals(builder.Color.Value))
|
||||
@ -541,8 +539,7 @@ internal static partial class LogParserResult
|
||||
}
|
||||
else if (fatalError.Contains("RSX Decompiler Thread"))
|
||||
{
|
||||
if (items["build_branch"] is "HEAD" or "master"
|
||||
&& Version.TryParse(items["build_full_version"], out var v)
|
||||
if (TryGetRpcs3Version(items, out var v)
|
||||
&& v >= DecompilerIssueStartVersion
|
||||
&& v < DecompilerIssueEndVersion)
|
||||
{
|
||||
|
@ -29,9 +29,7 @@ internal static partial class LogParserResult
|
||||
var hasTsxFa = items["cpu_extensions"]?.Contains("TSX-FA") ?? false;
|
||||
items["has_tsx"] = hasTsx ? EnabledMark : DisabledMark;
|
||||
items["has_tsx_fa"] = hasTsxFa ? EnabledMark : DisabledMark;
|
||||
Version? buildVersion = null;
|
||||
if (items["build_branch"] is "HEAD" or "master"
|
||||
&& Version.TryParse(items["build_full_version"], out buildVersion)
|
||||
if (TryGetRpcs3Version(items, out var buildVersion)
|
||||
&& buildVersion < TsxFaFixedVersion)
|
||||
{
|
||||
if (items["enable_tsx"] == "Disabled" && hasTsx && !hasTsxFa)
|
||||
@ -403,7 +401,7 @@ internal static partial class LogParserResult
|
||||
CheckP5Settings(serial, items, notes, generalNotes, ppuHashes, ppuPatches, patchNames);
|
||||
CheckAsurasWrathSettings(serial, items, notes);
|
||||
CheckJojoSettings(serial, state, notes, ppuPatches, ppuHashes, generalNotes);
|
||||
CheckSimpsonsSettings(serial, generalNotes);
|
||||
CheckSimpsonsSettings(serial, items, generalNotes, ppuPatches, patchNames);
|
||||
CheckNierSettings(serial, items, notes, ppuPatches, ppuHashes, generalNotes);
|
||||
CheckDod3Settings(serial, items, notes, ppuPatches, ppuHashes, generalNotes);
|
||||
CheckScottPilgrimSettings(serial, items, notes, generalNotes);
|
||||
@ -700,9 +698,14 @@ internal static partial class LogParserResult
|
||||
}
|
||||
}
|
||||
|
||||
private static void CheckSimpsonsSettings(string serial, List<string> generalNotes)
|
||||
private static void CheckSimpsonsSettings(string serial, NameValueCollection items, List<string> generalNotes, Dictionary<string, int> ppuPatches, UniqueList<string> patchNames)
|
||||
{
|
||||
if (serial is "BLES00142" or "BLUS30065")
|
||||
if (serial is not ("BLES00142" or "BLUS30065"))
|
||||
return;
|
||||
|
||||
var hasPatch = ppuPatches.Any() && patchNames.Any(n => n.Contains("Fix pad initialization", StringComparison.OrdinalIgnoreCase));
|
||||
if ((!TryGetRpcs3Version(items, out var v) || v < FixedSimpsonsBuild)
|
||||
&& !hasPatch)
|
||||
generalNotes.Add("ℹ️ This game has a controller initialization bug. Please use [the patch](https://wiki.rpcs3.net/index.php?title=The_Simpsons_Game#Patches).");
|
||||
}
|
||||
|
||||
@ -944,8 +947,7 @@ internal static partial class LogParserResult
|
||||
notes.Add("⚠️ Please enable `Read Color Buffers`");
|
||||
var depthBufferPatchesAreApplied = ppuPatches.Any() && patchNames.Count(n => n.Contains("depth buffer", StringComparison.OrdinalIgnoreCase)) > 1;
|
||||
|
||||
if (items["build_branch"] is "HEAD" or "master"
|
||||
&& Version.TryParse(items["build_full_version"], out var buildVersion)
|
||||
if (TryGetRpcs3Version(items, out var buildVersion)
|
||||
&& buildVersion < FixedTlouRcbBuild)
|
||||
{
|
||||
if (items["read_depth_buffer"] == EnabledMark)
|
||||
|
@ -73,9 +73,8 @@ internal static partial class LogParserResult
|
||||
private static readonly Version IntelThreadSchedulerBuildVersion = new(0, 0, 15, 12008);
|
||||
private static readonly Version PsnDiscFixBuildVersion = new(0, 0, 18, 12783);
|
||||
private static readonly Version CubebBuildVersion = new(0, 0, 19, 13050);
|
||||
private static readonly Version FixedTlouRcbBuild = new Version(0, 0, 21, 13432); // the best I got was "it was fixed more than a year ago", so it's just a random build from a year ago
|
||||
|
||||
|
||||
private static readonly Version FixedTlouRcbBuild = new(0, 0, 21, 13432); // the best I got was "it was fixed more than a year ago", so it's just a random build from a year ago
|
||||
private static readonly Version FixedSimpsonsBuild = new(0, 0, 29, 15470);
|
||||
|
||||
private static readonly Dictionary<string, string> RsxPresentModeMap = new()
|
||||
{
|
||||
@ -432,7 +431,7 @@ internal static partial class LogParserResult
|
||||
}
|
||||
else
|
||||
{
|
||||
builder = new DiscordEmbedBuilder
|
||||
builder = new()
|
||||
{
|
||||
Description = "Log analysis failed. Please try again.",
|
||||
Color = Config.Colors.LogResultFailed,
|
||||
@ -1189,4 +1188,10 @@ internal static partial class LogParserResult
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
private static bool TryGetRpcs3Version(NameValueCollection items, out Version? version)
|
||||
{
|
||||
version = null;
|
||||
return items["build_branch"] is "HEAD" or "master" && Version.TryParse(items["build_full_version"], out version);
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user