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

Allow option for nightly engine build #127

Open
cu-kai opened this issue Jun 24, 2024 · 4 comments
Open

Allow option for nightly engine build #127

cu-kai opened this issue Jun 24, 2024 · 4 comments

Comments

@cu-kai
Copy link

cu-kai commented Jun 24, 2024

With the recent work being done on CI for the engine, is there a possibility we could introduce nightly builds players could optionally use (with the usual warnings of dragons ahead when enabling such an option)? That way the players can feel the upstream improvements without having to wait a long time (read: years) for a stable release?

@slipher
Copy link
Contributor

slipher commented Jun 24, 2024

For engine only?

@cu-kai
Copy link
Author

cu-kai commented Jun 24, 2024

We could do gamelogic too if you like, but the engine is the most important part as the maintained servers provide more up to date gamelogic anyway.

With the engine it's a simple case of replacing the executable. The gamelogic would require additional dpks to be downloaded each day which could quickly flood users' hard drives. I'm not sure how desirable that is unless you can find at way around this current limitation. As far as I know, the updater doesn't currently remove old dpks.

@cu-kai cu-kai changed the title Allow option for nightly build Allow option for nightly engine build Jun 24, 2024
@cu-kai
Copy link
Author

cu-kai commented Jun 24, 2024

Just to be clear, I think providing nightly engine builds only would be preferable.

@slipher
Copy link
Contributor

slipher commented Jul 13, 2024

I would be willing to implement the updater side, if someone else got the nightly automated build of the engine going.

Implementation sketch:

  • Add nightly build option in settings (or perhaps "bleeding edge"; "nightly" is lame and jargony)
  • Install into a subdirectory of the install directory. We want to keep the release engine intact so the user can switch back quickly upon hitting a bug.
  • Since we are installing in a different directory and not installing data, a -pakpath option will be needed to locate the paks. Luckily the connect URL work has established a decently robust framework for adding extra Daemon flags (even in the face of custom commands).
  • When checking if an update is available, if the nightly is option is enabled, check for changes of both released version and nightly version. Released version must always be installed to get paks.
  • When nightly needs to be updated but released version does not, make a special mode for the download screen where the download starts automatically, and only the nightly version is downloaded.
  • If the special mode is not active on the download screen and the nightly option is enabled, it should do both the standard download+install and the nightly download.
  • We might want to consider omitting zips for other platforms when downloading, since for a nightly build those will constitute a large percentage of the data.

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

No branches or pull requests

2 participants