stride icon indicating copy to clipboard operation
stride copied to clipboard

Hard time to find exe in game folder for players

Open ourabigdev opened this issue 2 years ago • 8 comments
trafficstars

Is your feature request related to a problem? Please describe. the problem is the big amount of dll that if i release my game in itch as a zip the player will need to scroll and it's hard to find the exe

Describe the solution you'd like compress the dlls to one dll or 5 or by category because there is too much

ourabigdev avatar Oct 16 '23 10:10 ourabigdev

Should the players really be looking around in the game folder for the .exe anyway?

Ceebox avatar Oct 16 '23 13:10 Ceebox

Should the players really be looking around in the game folder for the .exe anyway?

in itch.io yes since he is downlowding the exe not using a launcher like steam

ourabigdev avatar Oct 16 '23 13:10 ourabigdev

I was going to suggest dotnet publish -c Release -r win-x64 /p:PublishSingleFile=true but it seems like Stride ignores that upon publish? @manio143 would you have an idea why this wouldn't work, would it be the serialization and loading of assets?

Doprez avatar Oct 16 '23 19:10 Doprez

@Doprez I was able to publish a Stride game fully self contained, single file, with VCRedist included, compiled from GitHub actions pipeline - see the tree here: https://github.com/manio143/project-step-up/tree/8f4755099b7fe983d5648ed474ce140b5ac78c54

manio143 avatar Oct 16 '23 20:10 manio143

I would prefer if Stride, by default on publish, moved all its DLLs to a runtime or whatever subdir, and the .exe could know where to look for them, so in the base directory there would be just the .exe and maybe configs.

The last part (the executable knows where to look for the DLLs) is already done I think. @tebjan Did you not make a PR some time ago for this?

But I think this should be done only for publish. When building normally in Debug or Release, I would avoid the copy to not degrade the compilation times.

Ethereal77 avatar Oct 18 '23 09:10 Ethereal77

The old school non-code way to do it is to put you code folder inside another folder, and in that outer folder, just have a shortcut to the .exe file.

SoulRider avatar May 27 '24 00:05 SoulRider

I recommend checking out this project. It has been actively maintained for many years now. https://github.com/nulastudio/NetBeauty2

I'm not sure if Stride will work with it. I might give it a test when I'm not so busy and we can create any follow up bugs if Stride is not compatible with NetBeauty2.

But ultimately, it's probably not something that Stride should try and impose on the user. The moving of DLLs can create some incompatibilities with native libraries that expect certain DLLs to be in a certain place; which could result in a lot of bug reports from users directed at Stride.

If NetBeauty2 is something Stride wants to recommend for this use case, we can include NetBeauty2 in the tests.

fydar avatar Jun 07 '24 21:06 fydar

I recommend checking out this project. It has been actively maintained for many years now. https://github.com/nulastudio/NetBeauty2

I think this could even be useful as a separate repo to demo this as an external feature. We could add it to the docs as a tutorial on how to add it to a Stride project (assuming it doesnt break any references).

Doprez avatar Jun 08 '24 20:06 Doprez