> For the complete documentation index, see [llms.txt](https://wiki.playgama.com/playgama/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.playgama.com/playgama/game-requirements/technical-requirements.md).

# Technical Requirements

## 1.1 Bridge SDK

* **1.1.1** The game integrates the current version of the Playgama Bridge SDK.
* **1.1.2** Every step listed in [Required steps](/playgama/bridge-sdk/api.md#required-steps) of the SDK documentation is done.

## 1.2 External services

* **1.2.1** Registration or authorization on external services is not required for launching and using the game.
* **1.2.2** The game never forces or automatically prompts the player to sign in at launch.
* **1.2.3** If sign-in is implemented, it works, and a failed or stuck sign-in never keeps the player out of the game.
* **1.2.4** The game does not include external analytics systems such as Google Analytics (GA4) or similar — requests to them may be blocked. To collect game analytics, use the built-in [Bridge analytics module](/playgama/bridge-sdk/api/analytics.md).
* **1.2.5** The game loads no external resources: everything it needs ships inside the archive.
* **1.2.6** Links to social networks or third-party websites are shown only when [`platform.isExternalLinksAllowed`](/playgama/bridge-sdk/api/platform.md#is-external-links-allowed) is `true`; otherwise the game hides them.
* **1.2.7** The game does not include any technical means of limiting its operation due to the URL it is opened from.

## 1.3 Build

* **1.3.1** The total size of all game files does not exceed 300 MB when uploaded as an archive.
* **1.3.2** An `index.html` file is added to the root of the archive. File and folder names use only Latin characters.
* **1.3.3** The game peaks below 2 GB of memory while it starts. The automatic build check refuses an archive that goes above it.

## 1.4 Mobile devices

These items apply when mobile devices are specified in the publication request.

* **1.4.1** The game runs in full-screen mode during gameplay or startup.
* **1.4.2** If data entry is possible (e.g., player nickname or document name), the keyboard automatically appears when clicking on the input field.
* **1.4.3** If the game only supports one orientation, the corresponding value must be selected when filling out the draft. In the opposite orientation, a special placeholder for rotating the device will be displayed.
* **1.4.4** The game is fully controlled by gestures, and touch controls respond reliably. Control mechanics can be supplemented by using the mobile device's accelerometer.
* **1.4.5** A long press on the game field does not select text, open the browser context menu or show the iOS magnifier.
* **1.4.6** The game shows no WebGL or engine warning when it starts, such as a message that the build is not supported on mobile devices.

## 1.5 Desktop devices

Every game is playable on desktop devices.

* **1.5.1** The game is fully controlled by keyboard and/or mouse.
* **1.5.2** The game does not use the Esc key: the browser reserves it for exiting full screen.
* **1.5.3** If the game also supports mobile devices, both control schemes work.

## 1.6 Display

* **1.6.1** The game adapts to the screen on every device: at any size, aspect ratio and orientation it supports, it fills the available area (excluding sticky banners), and visual elements do not deform or stretch disproportionately.
* **1.6.2** The active field scale does not exceed the screen boundaries, and elements are not cut off.
* **1.6.3** There is no browser page scrolling (browser window system scrollbar). However, it is allowed to implement custom content scrolling within the game.
* **1.6.4** Internal elements and texts do not overlap or cover other elements.
* **1.6.5** All pop-up windows have a cross or button to close them.
* **1.6.6** It is possible to control the game with one hand and remain on the main scene without additional scrolling or swiping. Internal game field movements are allowed in strategies, role-playing games, and other genres with large game fields.
* **1.6.7** Text stays readable at every screen size.
* **1.6.8** In a square (1:1) window the game still fills the area, with no empty bars and no overlapping or clipped elements.

## 1.7 Stability

* **1.7.1** There are no technical messages, errors, or crashes, freezing after some time of use, or during certain user actions, such as screen rotation, long press on the game field, gestures and swipes, minimizing the browser, opening ads, browsing history transitions, and other interactions.
* **1.7.2** The game can be played through: levels can be completed, and nothing gets stuck anywhere.
* **1.7.3** The game runs correctly in the current versions of Google Chrome, Mozilla Firefox, Opera, Safari and Edge, on Windows, macOS, Android and iOS.

## 1.8 Video

* **1.8.1** The system video player called by the game does not appear in any browser.
* **1.8.2** Video files are embedded in the archive, and the player cannot leave the game through the video player interface. Videos through the YouTube player or similar embedded players are not accepted.
