mtkennerly / ludusavi-playnite

Playnite plugin for save backups via Ludusavi
MIT License
141 stars 9 forks source link

Cannot run Ludusavi (corrupted saves) #73

Closed TermsGithub closed 1 month ago

TermsGithub commented 1 month ago

Hi, I installed the Addon some time ago and thought that I was using it since then.....

Today I had an crash with corrupted saves and now wanted to use the Backups, but there were none.... I had all the settings in standard and there were no saves or anything.

Now I saw that everytime I ran the program I get the Notification "Ludusavi could not be executed". Basically I always was clicking on the Save button after I have played something, but it never did to something.

I was playing around a little bit it no Setting changes change anything. I get this error when I try to open Ludu in the Extension Tab, when I manually want to save a Game and restore Game Files.

Please, fix this... Also: Instead of an Notification an Error Message would be better if the Save did´t work. At least when you manually save/restore it.

Windows 11, latest. The Version cannot be determined, but I have installed it in the last two weeks.

20-05 20:11:24.602|DEBUG|LudusaviPlaynite#LudusaviPlaynite:Could not determine Ludusavi version

24-05 16:16:45.036|DEBUG|LudusaviPlaynite#LudusaviPlaynite:Running Ludusavi: backup --force --merge --try-update --api -- "This War of Mine" 24-05 16:16:45.036|DEBUG|LudusaviPlaynite#LudusaviPlaynite:Ludusavi could not be executed System.ComponentModel.Win32Exception (0x80004005): Das System kann die angegebene Datei nicht finden bei System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) bei System.Diagnostics.Process.Start() bei LudusaviPlaynite.LudusaviPlaynite.RunCommand(String command, String args) bei LudusaviPlaynite.LudusaviPlaynite.InvokeLudusaviDirect(Invocation invocation, Boolean standalone) 24-05 16:16:45.036|DEBUG|LudusaviPlaynite#LudusaviPlaynite:Ludusavi exited with -1 and invalid JSON content System.ArgumentNullException: Der Wert darf nicht NULL sein. Parametername: value bei Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings) bei Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings) bei LudusaviPlaynite.LudusaviPlaynite.InvokeLudusavi(Invocation invocation) 24-05 16:17:32.898|WARN |SuccessStory#SteamApi:No SteamLibrary configuration found 24-05 16:17:32.898|ERROR|SuccessStory#Common:Error on WindowBase_LoadedEvent()|G:\GitHub\Lacro59\playnite-successstory-plugin\source\SuccessStory.cs|221 System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt. bei SuccessStory.Clients.SteamAchievements..ctor() in G:\GitHub\Lacro59\playnite-successstory-plugin\source\Clients\SteamAchievements.cs:Zeile 63. bei SuccessStory.Services.SuccessStoryDatabase.get_AchievementProviders() in G:\GitHub\Lacro59\playnite-successstory-plugin\source\Services\SuccessStoryDatabase.cs:Zeile 43. bei SuccessStory.SuccessStory.WindowBase_LoadedEvent(Object sender, EventArgs e) in G:\GitHub\Lacro59\playnite-successstory-plugin\source\SuccessStory.cs:Zeile 221. 24-05 16:17:42.525|WARN |SuccessStory#SteamApi:No SteamLibrary configuration found 24-05 16:17:42.525|ERROR|SuccessStory#Common:Error on WindowBase_LoadedEvent()|G:\GitHub\Lacro59\playnite-successstory-plugin\source\SuccessStory.cs|221 System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt. bei SuccessStory.Clients.SteamAchievements..ctor() in G:\GitHub\Lacro59\playnite-successstory-plugin\source\Clients\SteamAchievements.cs:Zeile 63. bei SuccessStory.Services.SuccessStoryDatabase.get_AchievementProviders() in G:\GitHub\Lacro59\playnite-successstory-plugin\source\Services\SuccessStoryDatabase.cs:Zeile 43. bei SuccessStory.SuccessStory.WindowBase_LoadedEvent(Object sender, EventArgs e) in G:\GitHub\Lacro59\playnite-successstory-plugin\source\SuccessStory.cs:Zeile 221. 24-05 16:18:03.858|DEBUG|LudusaviPlaynite#LudusaviPlaynite:Could not determine Ludusavi version System.ComponentModel.Win32Exception (0x80004005): Das System kann die angegebene Datei nicht finden bei System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) bei System.Diagnostics.Process.Start() bei LudusaviPlaynite.LudusaviPlaynite.RunCommand(String command, String args) bei LudusaviPlaynite.LudusaviPlaynite.GetLudusaviVersion() 24-05 16:18:28.625|DEBUG|LudusaviPlaynite#LudusaviPlaynite:Running Ludusavi: backup --force --merge --try-update --api --path "C:\Users\User\ludusavi-playnite-GAME-Backups" -- "A Plague Tale: Requiem" 24-05 16:18:28.625|DEBUG|LudusaviPlaynite#LudusaviPlaynite:Ludusavi could not be executed System.ComponentModel.Win32Exception (0x80004005): Das System kann die angegebene Datei nicht finden bei System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) bei System.Diagnostics.Process.Start() bei LudusaviPlaynite.LudusaviPlaynite.RunCommand(String command, String args) bei LudusaviPlaynite.LudusaviPlaynite.InvokeLudusaviDirect(Invocation invocation, Boolean standalone) 24-05 16:18:28.625|DEBUG|LudusaviPlaynite#LudusaviPlaynite:Ludusavi exited with -1 and invalid JSON content System.ArgumentNullException: Der Wert darf nicht NULL sein. Parametername: value bei Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings) bei Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings) bei LudusaviPlaynite.LudusaviPlaynite.InvokeLudusavi(Invocation invocation) 24-05 16:23:32.878|DEBUG|LudusaviPlaynite#LudusaviPlaynite:Running Ludusavi: restore --force --api --path "C:\Users\User\ludusavi-playnite-GAME-Backups" -- "A Plague Tale: Requiem" 24-05 16:23:32.878|DEBUG|LudusaviPlaynite#LudusaviPlaynite:Ludusavi could not be executed System.ComponentModel.Win32Exception (0x80004005): Das System kann die angegebene Datei nicht finden bei System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) bei System.Diagnostics.Process.Start() bei LudusaviPlaynite.LudusaviPlaynite.RunCommand(String command, String args) bei LudusaviPlaynite.LudusaviPlaynite.InvokeLudusaviDirect(Invocation invocation, Boolean standalone) 24-05 16:23:32.878|DEBUG|LudusaviPlaynite#LudusaviPlaynite:Ludusavi exited with -1 and invalid JSON content System.ArgumentNullException: Der Wert darf nicht NULL sein. Parametername: value bei Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings) bei Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings) bei LudusaviPlaynite.LudusaviPlaynite.InvokeLudusavi(Invocation invocation)

TermsGithub commented 1 month ago

I forgot: Installed it per .pext File. I tried to reinstall it, but there is no difference. If I move the Folder into the Extensions Folder, it shows as installed, but there are not Ludu options at all. Installing per Playnite Download does not change anything either.

mtkennerly commented 1 month ago

Hi, we can try to figure out what's going on here. In Playnite (add-ons -> extension settings -> generic -> Ludusavi), what do you have configured for the name or full path of the Ludusavi executable? And can you confirm if that executable still exists in the configured location?

TermsGithub commented 1 month ago

The name shows "ludusavi". And when I click on explore it opens an Game folder??? Obviously without the exe. Where can I find the .exe ? I cannot find it in Appdata.

Why does this happen and why can I change the Path of the exe, if it´s an Addon?

mtkennerly commented 1 month ago

You need to download Ludusavi itself in addition to the Playnite plugin, and then you can configure the plugin so it knows where you put your copy of ludusavi.exe.

You can find the latest Ludusavi release here (right now it's ludusavi-v0.23.0-win64.zip): https://github.com/mtkennerly/ludusavi/releases

You may also want to review the plugin setup instructions here: https://github.com/mtkennerly/ludusavi-playnite?tab=readme-ov-file#setup

TermsGithub commented 1 month ago

Lol. Now it works. Thank you!

However, is the exe supposed to be bundled with the pext File/Download in playnite or not? The Description makes is sound as if the extra download is not necessary.

May I recommend to make an Error popup, which tells the User that the .exe could not be found?

mtkennerly commented 1 month ago

It's intended to be a separate download. Sorry for the confusion - I'll see if I can improve the description to make this clearer.

I'll try a popup and see how it feels. It may be helpful to make sure this kind of error doesn't go unnoticed.