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

Unreal SDK add Allocate + Reserve and changes to the plugin settings #1345

Merged
merged 5 commits into from
Feb 20, 2020

Conversation

WVerlaek
Copy link
Contributor

Adds the Allocate and Reserve methods to the Unreal plugin, and an option to configure whether Ready should be sent automatically at startup.

Also removed the debug logging option in the settings following up from #1303 (comment) to be more consistent with UnrealEngine logging behaviour (and changed the default verbosity to Verbose)

@agones-bot
Copy link
Collaborator

Build Failed 😱

Build Id: 49b25e8c-f5e4-4121-a062-83f588fcd2b2

To get permission to view the Cloud Build view, join the agones-discuss Google Group.

- Request Retry Limit. Maximum number of times a failed request to the Agones sidecar is retried. Health requests are not retried. (default: `30`)
- Send Ready at Startup. Automatically send a Ready request when the server starts. Disable this to manually control when the game server should be marked as ready. (default: `true`)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does there need to be more docs around how to use the the supplied methods, such as Allocate, Ready, SetLabel etc?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tend to agree, it might be worth adding a paragraph on how these mehtods / structs are available to be set from within UE4Editor?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might also be worth adding a paragraph around using this locally ... eg. how we can turn off the healthcheck/ready checks when just launching via UE4Editor that makes it easier for most GameDevs to iterate fast before pushing into our clusters.

Copy link
Contributor Author

@WVerlaek WVerlaek Feb 19, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have added some docs on how to use the sdk methods, please lmk if it makes any sense 😄

Copy link
Contributor Author

@WVerlaek WVerlaek Feb 19, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For local dev (or for running outside an agones environment) I think the plugin could use some more work to support disabling executing the sdk methods / auto health checks. Was thinking about an additional config value bAgonesEnabled which can be set to default, forceEnabled, or forceDisabled, where default will disable calling out to the agones sidecar when running locally inside the unreal editor - but that's not something for this pr

@markmandel
Copy link
Member

@domgreen, @padhansell - would either of you like to a gander and see if this is good to go please?

@markmandel
Copy link
Member

(hit rebuild on the CI. Failing on Flaky test)

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 5a07eb6e-25e6-4c63-a61f-8616325b453a

The following development artifacts have been built, and will exist for the next 30 days:

A preview of the website (the last 30 builds are retained):

To install this version:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/1345/head:pr_1345 && git checkout pr_1345
  • helm install ./install/helm/agones --namespace agones-system --name agones --set agones.image.tag=1.4.0-5286ce6

Copy link
Contributor

@domgreen domgreen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, slight nit on happy path indentation and would add a slight bit more to the docs.

else
{
UE_LOG(LogAgonesHook, Error, TEXT("Failed to send reserve request, error serializing duration (%d)"), Seconds);
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dunno the style for cpp well but would prefer to return early in the conditional with this one

eg. if the duration doesnt parse return and log ... if it does then normal flow no ident sendrequest

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

don't believe unreal has a specific guideline for this but agree it looks better, will change

- Request Retry Limit. Maximum number of times a failed request to the Agones sidecar is retried. Health requests are not retried. (default: `30`)
- Send Ready at Startup. Automatically send a Ready request when the server starts. Disable this to manually control when the game server should be marked as ready. (default: `true`)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tend to agree, it might be worth adding a paragraph on how these mehtods / structs are available to be set from within UE4Editor?

- Request Retry Limit. Maximum number of times a failed request to the Agones sidecar is retried. Health requests are not retried. (default: `30`)
- Send Ready at Startup. Automatically send a Ready request when the server starts. Disable this to manually control when the game server should be marked as ready. (default: `true`)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might also be worth adding a paragraph around using this locally ... eg. how we can turn off the healthcheck/ready checks when just launching via UE4Editor that makes it easier for most GameDevs to iterate fast before pushing into our clusters.

Copy link

@padhansell padhansell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All looks good to me 👍

Copy link
Member

@markmandel markmandel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's do this!

@google-oss-robot
Copy link

New changes are detected. LGTM label has been removed.

@google-oss-robot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: domgreen, markmandel, padhansell, WVerlaek

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@google-oss-robot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: domgreen, markmandel, padhansell, WVerlaek

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: f8dee534-1b97-42da-9a16-0203a61c6d1a

The following development artifacts have been built, and will exist for the next 30 days:

A preview of the website (the last 30 builds are retained):

To install this version:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/1345/head:pr_1345 && git checkout pr_1345
  • helm install ./install/helm/agones --namespace agones-system --name agones --set agones.image.tag=1.4.0-78e99fd

@markmandel markmandel merged commit fc7fb70 into googleforgames:master Feb 20, 2020
@markmandel markmandel added this to the 1.4.0 milestone Feb 20, 2020
@markmandel markmandel added area/user-experience Pertaining to developers trying to use Agones, e.g. SDK, installation, etc kind/feature New features for Agones labels Feb 20, 2020
@pooneh-m pooneh-m removed their request for review February 20, 2020 22:08
ilkercelikyilmaz pushed a commit to ilkercelikyilmaz/agones that referenced this pull request Oct 23, 2020
…oogleforgames#1345)

* Add Allocate,Reserve, remove debug log setting, add auto startup setting

* Return early

* Add usage docs

Co-authored-by: Mark Mandel <mark.mandel@gmail.com>
@WVerlaek WVerlaek deleted the master branch October 25, 2021 14:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved area/user-experience Pertaining to developers trying to use Agones, e.g. SDK, installation, etc kind/feature New features for Agones size/L
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants