Skip to content

Adds support for lists in the Unreal SDK #4029 #4216

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

Merged
merged 13 commits into from
Jul 30, 2025

Conversation

keith-miller
Copy link
Contributor

What type of PR is this?
/kind feature

What this PR does / Why we need it:
Adds support for lists to the Unreal SDK

Which issue(s) this PR fixes:
Closes #4029

Special notes for your reviewer:

@github-actions github-actions bot added kind/feature New features for Agones size/M labels Jul 8, 2025
@markmandel
Copy link
Collaborator

/gcbrun

@agones-bot
Copy link
Collaborator

Build Succeeded 🥳

Build Id: e19ce66e-028a-43bb-817a-9cb5e707a81d

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/googleforgames/agones.git pull/4216/head:pr_4216 && git checkout pr_4216
helm install agones ./install/helm/agones --namespace agones-system --set agones.image.registry=us-docker.pkg.dev/agones-images/ci --set agones.image.tag=1.51.0-dev-4403ced

Copy link
Collaborator

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

Sweeeeeet!

We'll need some docs here: https://agones.dev/site/docs/guides/client-sdks/unreal/

But make sure the new docs are wrapped in a feature shortcode: https://agones.dev/site/docs/contribute/documentation-editing-contribution/

I am going to call on past unreal contributors, if you wouldn't mind reviewing if possible:
@alexrudd, @KAllan357, @GloryOfNight, @KiaArmani, @DevChagrins - if one of you could take a look at these code changes and make sure they are good?

@keith-miller
Copy link
Contributor Author

Sure thing! Will work on the docs and get those in.

@keith-miller
Copy link
Contributor Author

keith-miller commented Jul 21, 2025

@markmandel hey, so I see the game engine client SDKs reference List actions that don't match the REST section (I was using the REST docs to implement the Unreal functionality). I'm assuming the REST section is out of date, but maybe it's the other way around. Is there a breakdown on the changes so I can get the Unreal functionality up to date?

Thanks

@0xaravindh
Copy link
Member

/gcbrun

@agones-bot
Copy link
Collaborator

Build Failed 😭

Build Id: 019fcec5-caee-42ae-9cb1-32eb34553461

Status: FAILURE

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

@keith-miller
Copy link
Contributor Author

Ok, it looks like some of those list methods in other SDKs and they are using Protobuf Fieldmasks and I'm not sure if that exists using regular old HTTP. Just let me know if matching the REST functionality list is ok for Unreal.

@0xaravindh
Copy link
Member

/gcbrun

@agones-bot
Copy link
Collaborator

Build Succeeded 🥳

Build Id: af8e6190-0074-4aa7-8b91-0efdf0c61316

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/googleforgames/agones.git pull/4216/head:pr_4216 && git checkout pr_4216
helm install agones ./install/helm/agones --namespace agones-system --set agones.image.registry=us-docker.pkg.dev/agones-images/ci --set agones.image.tag=1.51.0-dev-c784b78

@markmandel
Copy link
Collaborator

@markmandel hey, so I see the game engine client SDKs reference List actions that don't match the REST section (I was using the REST docs to implement the Unreal functionality). I'm assuming the REST section is out of date, but maybe it's the other way around. Is there a breakdown on the changes so I can get the Unreal functionality up to date?

Let me know if I'm understanding correctly.

All the other language SDKs (e.g. node, go, etc) use gRPC for their SDK implementations. The engine SDKs use the REST (And some websocket) APIs to implement the Agones integration.

The REST API was primarily built for game engines, since gRPC is game engines is... painful 😱 .

So if you are asking "should I be using the REST API here" - then the answer is yes 👍🏻

@markmandel
Copy link
Collaborator

/gcbrun

@keith-miller
Copy link
Contributor Author

Oh, believe me, I know :) I would love to have gRPC support in Unreal, but that would be a herculean effort with all the platforms they support. I will update the Agones Unreal SDK docs to match the REST API ones, since the functionality matches.

Thanks!

@agones-bot
Copy link
Collaborator

Build Failed 😭

Build Id: d729a3ee-23a3-4df2-a509-f509b97023cd

Status: FAILURE

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

@0xaravindh
Copy link
Member

/gcbrun

@agones-bot
Copy link
Collaborator

Build Failed 😭

Build Id: 5c588bc8-9ea3-4834-9dc1-dd2a458a59e5

Status: FAILURE

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

@0xaravindh
Copy link
Member

/gcbrun

@GloryOfNight
Copy link
Contributor

LGTM 👍

@agones-bot
Copy link
Collaborator

Build Succeeded 🥳

Build Id: a413fa44-fce8-4e84-8428-a6588b2728c0

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/googleforgames/agones.git pull/4216/head:pr_4216 && git checkout pr_4216
helm install agones ./install/helm/agones --namespace agones-system --set agones.image.registry=us-docker.pkg.dev/agones-images/ci --set agones.image.tag=1.51.0-dev-8412ea3

@igooch
Copy link
Collaborator

igooch commented Jul 28, 2025

@keith-miller we're about to cut a release. If you need this in for this release, could you please add the short codes to the docs ASAP? This keeps the static version of our site for version 1.50 correctly showing that this isn't implemented.

{{% feature expiryVersion="1.51.0" %}}
existing documentation
{{% /feature %}}

{{% feature publishVersion="1.51.0" %}}
new documentation
{{% /feature %}}

@keith-miller
Copy link
Contributor Author

keith-miller commented Jul 28, 2025 via email

@0xaravindh
Copy link
Member

/gcbrun

Copy link
Collaborator

@igooch igooch left a comment

Choose a reason for hiding this comment

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

LGTM per #4216 (comment)

@Sivasankaran25
Copy link
Collaborator

/gcbrun

@agones-bot
Copy link
Collaborator

Build Failed 😭

Build Id: a88a9bf3-ad1f-497f-b11d-4ecdf6b13204

Status: FAILURE

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

@igooch igooch enabled auto-merge (squash) July 30, 2025 21:24
@igooch
Copy link
Collaborator

igooch commented Jul 30, 2025

/gcbrun

@agones-bot
Copy link
Collaborator

Build Succeeded 🥳

Build Id: 5f59d7c0-7d29-4420-b276-2fd5c8118759

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/googleforgames/agones.git pull/4216/head:pr_4216 && git checkout pr_4216
helm install agones ./install/helm/agones --namespace agones-system --set agones.image.registry=us-docker.pkg.dev/agones-images/ci --set agones.image.tag=1.51.0-dev-f5e36aa

@igooch igooch merged commit ee750b0 into googleforgames:main Jul 30, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature New features for Agones size/M
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add support for lists in Unreal SDK
7 participants