Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hard time to find exe in game folder for players #1947

Open
ourabigdev opened this issue Oct 16, 2023 · 8 comments
Open

Hard time to find exe in game folder for players #1947

ourabigdev opened this issue Oct 16, 2023 · 8 comments
Labels
enhancement New feature or request

Comments

@ourabigdev
Copy link

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 ourabigdev added the enhancement New feature or request label Oct 16, 2023
@Ceebox
Copy link

Ceebox commented Oct 16, 2023

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

@ourabigdev
Copy link
Author

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

@Doprez
Copy link
Contributor

Doprez commented Oct 16, 2023

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?

@manio143
Copy link
Member

@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

@Ethereal77
Copy link
Contributor

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.

@SoulRider
Copy link

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.

@Fydar
Copy link
Contributor

Fydar commented Jun 7, 2024

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.

@Doprez
Copy link
Contributor

Doprez commented Jun 8, 2024

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).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

7 participants