diff --git a/src/Ryujinx/Systems/PlayReport/PlayReports.Formatters.cs b/src/Ryujinx/Systems/PlayReport/PlayReports.Formatters.cs index 649c3cad6..d8df7b627 100644 --- a/src/Ryujinx/Systems/PlayReport/PlayReports.Formatters.cs +++ b/src/Ryujinx/Systems/PlayReport/PlayReports.Formatters.cs @@ -1070,6 +1070,23 @@ namespace Ryujinx.Ava.Systems.PlayReport _ => FormattedValue.ForceReset }; + private static FormattedValue TomodachiLifeLTD_Status(SingleValue value) + { + MessagePackObject messagePackObject = value.Matched.PackedValue; + MessagePackObjectDictionary messagePackObjectDictionary = messagePackObject.AsDictionary(); + + int miiCount = messagePackObjectDictionary["MiiNum"].AsInt32(); + int fountainLevel = messagePackObjectDictionary["FountainLevel"].AsInt32(); + + return $"Looking after {"Mii".ToQuantity(miiCount)}, with an island level of {fountainLevel}"; + } + + private static FormattedValue AnimalCrossingNewHorizons_AppCommon(SingleValue value) + { + MessagePackObject messagePackObject = value.Matched.PackedValue; + MessagePackObjectDictionary messagePackObjectDictionary = messagePackObject.AsDictionary(); + return $"Living on {messagePackObjectDictionary["LandName"].AsString()} Island"; + } } } diff --git a/src/Ryujinx/Systems/PlayReport/PlayReports.cs b/src/Ryujinx/Systems/PlayReport/PlayReports.cs index d483515bb..8880ed5d4 100644 --- a/src/Ryujinx/Systems/PlayReport/PlayReports.cs +++ b/src/Ryujinx/Systems/PlayReport/PlayReports.cs @@ -119,6 +119,19 @@ namespace Ryujinx.Ava.Systems.PlayReport "based on what game you first launch.\n\nNSO emulators do not print any Play Report information past the first game launch so it's all we got.") .AddValueFormatter("launch_title_id", NsoEmulator_LaunchedGame) ) + .AddSpec( + [ "010051f0207b2000", "0100ca502552a000" ], // Tomodachi Life: Living the Dream + Demo + spec => spec + .WithDescription( + "based on your total Mii count and island level.") + .AddValueFormatter("Common", TomodachiLifeLTD_Status) + ) + .AddSpec( + "01006f8002326000", // Animal Crossing New Horizons + spec => spec + .WithDescription("based on your island name.") + .AddValueFormatter("AppCmn", AnimalCrossingNewHorizons_AppCommon) + ) ); private static string Playing(string game) => $"Playing {game}";