Ready Player Me

A Ready Player Me integration that works locally can fail once the app is streamed with Pixel Streaming, with the error "Failed to download a list of avatar templates." This is the fix.

What is happening

Ready Player Me fetches avatar templates over HTTPS at runtime. Unreal's default network settings verify the peer certificate on that request, and when the certificate is not one the packaged app trusts, the request is refused and the app reports that it could not download the list. Unreal describes the switch as there to allow self-signed certificates; the exact reason verification fails on streaming machines has not been pinned down.

Nothing is wrong with your integration or with Ready Player Me. It is a setting in your project that has to be changed before packaging.

The fix

  1. Turn off Verify Peer

    In the editor: Project Settings > Engine > Network > libcurl > Verify Peer, unticked. Or, the same setting by hand, add these two lines to Config/DefaultEngine.ini in your project:

    [/Script/Engine.NetworkSettings]
    n.VerifyPeer=false
  2. Rebuild and repackage

    The setting is packaged with the build, so an existing package ignores the edited file — you need a new one.

  3. Upload the new build and test the integration

    Through the Control Panel, or from Unreal.

This is a workaround, not a resolution

It has to be applied per project, by hand, and repeated for each app. If you maintain several, it belongs in whatever you use to set up a new project rather than being remembered each time.

Last updated