ECal Studios - ShipCheck - Build & Release Checklist for Unreal

Stop shipping with the wrong startup map

ShipCheck is a focused editor-only plugin that gives Unreal developers a clear, structured release readiness checklist directly inside the editor. Think of it as a pre-flight checklist you run before every build: one click, and you know exactly what passed, what needs attention, and what requires your personal sign off before you ship.

Why ShipCheck?

Every Unreal developer has packaged a build with something embarrassingly wrong. The wrong startup map opens on launch. Development build configuration slips into the release. A CHANGELOG.md is missing from a Fab submission. A redirector heavy project causes mysterious load issues on the user's machine. ShipCheck catches these.

Built-In Presets

Five presets cover the most common scenarios right out of the box.

Game Build is the general-purpose preset for any packaged release. Steam Demo is tuned for Next Fest and public demo submissions and skips the Fab-specific checks. Internal QA is lighter and designed for builds you are sending to testers. Fab Plugin Submission focuses on the checks that Fab reviewers care about most: your .uplugin descriptor fields, changelog, readme, and plugin configuration. Fab Asset Submission is the equivalent for asset packs.

Custom Presets and Your Own Manual Checks

If none of the built-in presets match your workflow, you can build your own. Click the + button next to the preset dropdown to open the preset editor. Give your preset a name, pick any combination of the built-in automated checks, and add your own custom manual checks: things only you can verify, like "Confirm the Steam store capsule is updated" or "Test on a real Steam Deck."

Custom manual checks have a name, a description of why they matter, a suggested fix hint, and a severity level. They show up in the results list alongside the automated checks and can be confirmed the same way. Your custom presets and checks are saved locally and persist between sessions.

What Gets Checked

Project Settings covers the version number, company name, and project icon. Maps confirms the Game Default Map is set and the map asset actually exists. Packaging warns if you are running in Development or Debug configuration and checks Pak and IoStore settings. Debug scans Blueprint asset names for obvious debug patterns and guides you through a manual Print String search. Assets looks for redirectors, oversized textures above a configurable threshold, and broken hard dependencies. Plugins checks for developer-only plugins on your configured denylist. Localization checks whether targets and culture folders exist. Release Notes verifies a changelog and readme are where ShipCheck expects them. Fab Prep reads your .uplugin descriptor and checks all the fields Fab requires.

Every Check Answers Three Questions

What happened: the specific value that was detected and what the check found. Why it matters: a clear explanation of the risk if this item is wrong. What to do: a precise suggested fix pointing to the right setting, file, or menu.

Reports

Export any run to a Markdown or JSON report saved to Saved/ShipCheck/Reports/. Markdown is great for human-readable QA documentation or Fab submission proof. JSON works for automation or sharing results with a team.

The Copy Summary button gives you a one-liner ready for Discord or Slack.

Zero Risk to Your Project

ShipCheck is read-only. It never modifies your project settings, deletes files, or changes asset data. It reads, reports, and advises. You decide what to fix.

Technical Highlights

Editor-only plugin with zero runtime modules and zero impact on packaged builds. No third-party dependencies, no account, no login, no internet connection. Supports Unreal Engine 5.5, 5.6, and 5.7 on Win64, macOS, and Linux editor builds. Works with Blueprint-only and C++ projects. Full C++ source included.

Documentation