What is Pragma? #

Welcome to Pragma Engine!

Pragma Engine is a suite of tools for backend game development that includes everything required to build, launch, and support online multiplayer games. Pragma is built as an engine– much like Unreal, it is delivered and built from source. Pragma serves as a development environment for backend game development. Capabilities range from ready-made features that are enabled via configuration, to plugins that customize the behavior of Pragma provided services, to microservices built from scratch within the framework tailored exactly to a game’s needs.

Pragma provides a host of features including cross-platform accounts, cross-play and cross-progression, friends and presence, parties, matchmaking, dedicated and peer-to-peer game server integration, inventory, loadouts, progression, quests, missions, meta-game systems.

Pragma Engine foundations provides a rich set of tools to speed up development of game-specific features, including network, authentication, caching, persistence, routing, configuration, and backend content management.

Pragma provides a managed services offering, including full dev ops including build + deploy, unlimited internal and production environments, load testing and launch readiness tools and processes, live monitoring and alerts, and a big data pipeline to for analytics and insights. This offering uniquely enables studios to consolidate all dev ops to one service, including custom game specific backend work developed within the engine.

How it Works #

Working within Pragma provides the same control as building an in-house backend, with the benefit of an enormous wealth of functionality already implemented. Devs build and run the platform on their local dev environment, enabling end-to-end feature development alongside the game client and server. Studios relying on Pragma Managed Services push their backend code, which runs Pragma managed CI on behalf of the studio to produce backend artifacts. New builds of the backend can be configured to auto-deploy on specified environments for rapid iteration, or the tools can be used by the studio to deploy and configure environments directly.

Day one experience #

Onboarding includes setting up a local dev environment and integrating the Pragma sdk into your game codebase. Studios frequently use ready-made Pragma features to start running playtests quickly and adding basic backend features like persistence quickly. This enables studios to get started quickly and reserves the deeper learning and customization for later.

Day two experience #

When a studio is ready to start building out richer online features, they begin to engage more deeply with the platform. This includes authoring plugins and game-specific services to fit their game design. A fundamental tenant of Pragma is that studios are never blocked building the features they need. When a Pragma provided service is a good match, the studio can configure and customize it to their purposes. When the game’s needs don’t fit what’s avaialable, the studio can leverage the engine foundations to build their own microservices from scratch. These services leverage the same patterns and tools as the reste of the engine, including architectural patterns that are much faster to build than from scratch, and housed within the same backend tech stack and infra.

Preparing for launch #

Pragma provides a comprehensive set of tools for launch readiness. This involves authoring load test scenarios within the engine provided tooling, provisioning a production grade environment through Pragma’s Managed Service, and orchestrating large scale load testing prior to launch. Pragma offers consultation and guidance on this process, including a launch readiness process provided by Pragma to validate scale, settle on production deployment and configuration, and guidance on tuning launch features such as the login queue.

Next Steps #

Check out the Pragma Architecture Overview for further insight into the technical underpinnings of the engine.

See Getting Started for how to get started integrating your game with the Pragma Engine.