Skip to main content

Documentation Index

Fetch the complete documentation index at: https://buildpixel.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Perforce remains the dominant SCM in AAA UE development for a reason: it handles binary assets gracefully, supports streams for long-lived branching, and integrates with the Unreal Editor’s source control panel. BuildPixel speaks p4 natively.

What you’ll need

From your Helix admin:
  • Server URL — e.g. ssl:perforce.studio.com:1666 (TLS) or tcp:... (plaintext, discouraged)
  • A dedicated build user — e.g. bp-buildbot. Use a service user, not someone’s real account.
  • Credentials — either a long-lived ticket (preferred) or a password
  • Read access to the depot or stream you want to build. The build user doesn’t need write access.
Set the build user’s Type to service in Helix (p4 user -t service bp-buildbot). Service users don’t count against your licensed seats and can’t open files for edit.

Configure the org

In Settings → Integrations → Perforce, fill in:
Server URL:     ssl:perforce.studio.com:1666
Username:       bp-buildbot
Authentication: Ticket
Ticket:         <paste long ticket string>
Click Test connection to verify before saving. Common failures:
  • Connect to server failed — wrong host/port, or BuildPixel can’t reach the server. We strongly recommend TLS.
  • Login expired — generate a fresh ticket with p4 login -p.
  • Password invalid — for password mode, double-check it.
Credentials are stored encrypted at rest.

Create a Perforce project

After org config, the project creation flow lets you pick:
  • Depot path — e.g. //depot/MyGame/...
  • Or stream — e.g. //streams/mygame-mainline/main
For streams, BuildPixel uses the stream as the workspace identity. For classic depots, the depot path itself is the identity.

Triggering builds

Perforce has no native webhook. Three trigger modes are supported:

Manual

Click Build now in the dashboard.

Scheduled

Schedule the build (e.g. nightly). Pulls latest CL, builds.

External webhook

Wire a Helix submit-trigger to call BuildPixel’s API on every submit.
For the external webhook approach, call the trigger endpoint from a Helix change-commit trigger script. See Triggers for the script.

Network requirements

Your Helix server needs to be reachable from BuildPixel. Most teams run with public-internet TLS. If your server is on a private network, talk to enterprise@streampixel.io.

Troubleshooting

Likely a too-broad client view. Tighten it to just paths your build needs (Source, Content, Plugins, Config, *.uproject) — exclude Marketing, Docs, etc. Set clientView on the project to override the default.
Tickets default to 12 hours. For long-lived auth, generate an unlimited ticket: p4 login -a -p (subject to your Helix admin’s policy).
For Perforce, BuildPixel runs p4 describe -s <CL>. If the build user can’t read the CL, the description is unknown. Grant read on change actions via p4 protect.