All case studies
    Pilot · name withheld under NDAAAA studio · North America

    Client, server and launcher. One run, in sync.

    A AAA studio in North America shipping a multiplayer game. Its game client, dedicated server and launcher were each built by a pipeline of their own.

    The studio

    AAA studio, North America
    Multiplayer game
    Client, dedicated server, launcher
    Pilot

    Before

    Three pipelines built the client, the dedicated server and the launcher, each on its own schedule. Over time the versions drifted apart: QA could pick up a client that did not match the server it had to connect to, and before every playtest someone had to line the three builds up by hand.

    Architecture
    01Trigger
    Source controlA submitted change
    Unreal Editor pluginDesigners and QA start runs
    02Orchestrate
    One SpeedrunCI projectClient, server and launcher pipelines
    Roles and SSOPipeline edits stay with the build team
    03Build in parallel
    Game clientSame commit
    Dedicated serverSame commit
    LauncherSame commit
    04Deliver
    One releaseClient, server and launcher, one version
    QA and playtestsDownload the matched set
    Failure triageStep, log, change and suggested fix
    A single change starts all three pipelines. Client, dedicated server and launcher build side by side from the same commit and ship together as one release, so every playtest starts from a set that fits.

    How they use SpeedrunCI

    01

    Three targets, one project

    The client, dedicated server and launcher became three pipelines in one SpeedrunCI project, so they are defined, triggered and tracked in one place.

    02

    Started from the same change

    All three pipelines start from the same commit, so every client, server and launcher in a run is built from identical source.

    03

    Built side by side

    The three targets build at the same time across runners. The slowest target sets the pace, instead of the three queuing one after another.

    04

    Shipped as one set

    A finished run publishes client, server and launcher together as one release, so QA and playtesters always take a set that belongs together.

    05

    A failure stays in its lane

    If one target fails, SpeedrunCI names the step, the log and the change that broke it, with a suggested fix, and the other targets' results stay valid.

    06

    Builds without a ticket

    Designers and QA start a run from the Unreal Editor plugin; pipeline changes stay with the build team through roles.

    What changed

    One run ships all three, versions matched. Playtests start from a client, server and launcher that are known to fit together, and nobody lines builds up by hand.

    MultiplayerDedicated serverLauncher

    More stories are on the way

    More pilots are running now, and their stories follow. Want yours to be next? A pilot runs on one of your real Unreal projects.