Issue Fedora - SMAPI Can't Find Game

sdvplant

Greenhorn
Platform: Fedora Linux
Game Version: 1.5.4

I am unable to get a log for this issue as the ~/.config/StardewValley/ErrorLogs file does not exist. The directory it should be in does, however.
I am able to launch SDV itself through Steam and through manually executing StardewValley.bin.x86_64 and StardewValley.bin.x86 (though not the .exe)

Trying to execute the SMAPI .exe in the game folder manually gets me the "Oops! SMAPI can't find the game" error.
Per Steam, if I do not use the command TERM=xterm in the launch options, it will not launch SDV. I also have the location set to the SMAPI .exe, but as it does not open the SMAPI console for me, I am assuming it is not launching SMAPI.

I've read in other places that in cases that SDV is able to launch, but SMAPI isn't, it could be an issue of not having .NET 4.5 or 4.5.2 in Wine. However, Wine warns me that these .NET versions can break it when I try to install them. I am not sure how to proceed from here.
 
I'm a little confused, both SDV and SMAPI have native versions.
Are you trying to run the game natively, and SMAPI through wine?
You won't get it running properly, or even any Linux logs that way.


If you want to use SMAPI on the native linux version. Either use the automatic installer via Mono, or follow the manual instructions in the "README.txt" file included in the zip.
Afterwards, you can just launch the game normally. The SMAPI exe is launched through the game provided Mono; just like base SDV.

I'd recommend a clean uninstall/reinstall of SDV for Linux, and a clearing of any 'exe' locations that you set. Then, retry installing SMAPI, per above.
 

sdvplant

Greenhorn
I did install SMAPI through Mono. I don't understand what "The SMAPI exe is launched through the game provided Mono" means.
I also don't know what a clean install of SDV for Linux would look like. I downloaded it off of Steam and as I said it works in Steam just fine.
 
I did install SMAPI through Mono. I don't understand what "The SMAPI exe is launched through the game provided Mono" means.
I also don't know what a clean install of SDV for Linux would look like. I downloaded it off of Steam and as I said it works in Steam just fine.
Okay, so I'm hoping you used the "install on Linux.sh" script to install; which uses Mono. Did it have trouble finding your directory? As mentioned in Step 4 here: https://stardewvalleywiki.com/Modding:Installing_SMAPI_on_Linux

As it seems to have failed somewhere along the way. Alternatively, see further down below.

What I meant by, "the SMAPI exe being launched through the game provided Mono"; is that. Once SMAPI is properly installed in your game folder. You don't need to to touch that file, just run the game normally through Steam. It's already taken care of behind the scenes, so to speak.

What I meant by, "clean install of SDV" is that; while Steam runs the vanilla version fine. I don't know what modding files you added to the game folder. For all I know; you used the WIndows installer since you mentioned trying Wine.
Which is why I was preferring to start from scratch.
-----------------
As an alternative.
You can try walking through the steps of a manual install as I referenced earlier: https://github.com/Pathoschild/SMAP...42f/src/SMAPI.Installer/assets/README.txt#L22

1. Extract the 'internal/unix-install.dat' from the SMAPI installer package.
Inside you should see the following files/folders:
Code:
Mods/
smapi-internal/
StardewModdingAPI
StardewModdingAPI.pdb
steam_appid.txt
StardewModdingAPI.exe
StardewModdingAPI.xml
2. Copy those over into your game folder. Overwrite any from your previous install.

3. Open a terminal in your game folder, and run these 3 commands.
Code:
mv StardewValley StardewValley-original
mv StardewModdingAPI StardewValley
chmod +x StardewValley
4. Launch the game normally through Steam. As SMAPI should be installed correctly now.
 

sdvplant

Greenhorn
Hi, probably as you were writing that, I installed xterm, re-did the SMAPI mono installation, and removed my Steam launch commands. I did not re-install SDV as with these adjustments it seems to be working now. I also realize with your 3rd point of opening the terminal I do have the StardewValley file, but I did not realize it was an executable shell script and the intended way of opening the game if one does not wish to use Steam.

The only issue is the SMAPI terminal is aesthetically unpleasing now.

Thank you for the responses and help.
 
Hi, probably as you were writing that, I installed xterm, re-did the SMAPI mono installation, and removed my Steam launch commands. I did not re-install SDV as with these adjustments it seems to be working now. I also realize with your 3rd point of opening the terminal I do have the StardewValley file, but I did not realize it was an executable shell script and the intended way of opening the game if one does not wish to use Steam.

The only issue is the SMAPI terminal is aesthetically unpleasing now.

Thank you for the responses and help.
No prob, glad you got it working!

Ah yea, I don't like the default aesthetics either. Technically speaking; I just run SMAPI directly outside of Steam via my mate-terminal:
./StardewModdingAPI.bin.x86_64

But, the new StardewValley script has some support for alternate terminals. To keep it running through Steam; you can always change it there instead.
Per Line62 - 63; it just defaults to xterm.
Code:
    # select terminal (prefer xterm for best compatibility, then known supported terminals)
    for terminal in xterm gnome-terminal kitty terminator xfce4-terminal konsole terminal termite alacritty mate-terminal x-terminal-emulator; do
 
Top