PlayDrop logoPlayDrop Studio
CreatePlayTradeEarnLearnConnectorsAssetsCommunitySupport
PlayDrop logoPlayDrop Studio
CreatePlayTradeEarnLearnConnectorsAssetsCommunitySupport
Sign in
PlayDrop games
Documentation

Start here

OverviewYour first gamePlayDrop gamesFAQ

Create with Cloud

Cloud creationPlans & generations

Connect your AI app

All connectorsClaudeChatGPTClaude CodeCodexCursorGeminiAntigravityGrok BuildGrok BotGrok ChatLovableReplit

Publish and share

Publish from your AI appSimple HTML gamesPackaging and .playPublish & importGame filesVisibility and reachListing art and videoGenres and tagsLocalizationInstant games

Game experience

Loading, pause and audioFull screen and safe areasCloud savesLocal parties and controllers

Play together

Sharing, friends and invitesLeaderboardsAchievementsOnline parties and voiceRealtime game servers

Earn

MonetizationCredits & rewards

Assets

Game assetsAI asset generationCustom formats and player creations

Reference

Client SDKServer SDKcatalogue.jsonErrors and recoveryTroubleshooting
DocumentationPlayDrop games
Start here

What PlayDrop adds to your game

What a PlayDrop game can do with the SDK, catalogue.json and hosting, where each feature works, and its guide: saves, leaderboards, parties, servers and more.

A PlayDrop game is a web game that PlayDrop hosts, lists and runs on its website and in the PlayDrop apps for iOS, Android, Windows and macOS. In the apps a game plays full screen, with no browser bar around it; it is the same web game running in the app's game view, not a separate native build. This page lists what PlayDrop can add and where each part is documented.

Two ways in

Simple HTMLPackage
What you sendOne self-contained HTML file, up to 10 MiBA built folder, ZIP or .play with catalogue.json
PlayDrop SDKNoYes, every feature below
Listing images and videoNoYes
Hosted game serverNoYes
GuideSimple HTML gamesPackaging

Any game can start simple and become a package later under the same name and link.

What players get

CapabilityWhat it gives playersGuide
Host lifecycleClean pause and resume, audio that follows the player's mute, a fast first frameLoading, pause and audio
Full-screen layoutEdge-to-edge play with the HUD clear of notches and PlayDrop's controlsFull screen and safe areas
Cloud savesProgress that follows the player between devicesCloud saves
LeaderboardsTop scores and the player's rankLeaderboards
AchievementsGoals with icons and progressAchievements
Sharing and invitesShare sheets with an image or clip, friend invites and game cards in chatSharing, friends and invites
Online parties and voiceFriends join the same room together, with optional room voiceOnline parties and voice
Local parties and controllersGamepads and phones as controllers on one screenLocal parties and controllers
Realtime serversColyseus rooms with a MongoDB database per gameRealtime game servers
Reviews, tips, purchases and adsWays for players to support the game; credits for the creatorMonetization
Assets and AI generationShared assets, generated media and player creationsGame assets, AI assets, Custom formats

What the listing gets

catalogue.json gives the game its page: title, description, genre and tags, icon, hero art, screenshots and video, translations and Instant eligibility. Visibility decides who can open it: private for testing, unlisted for anyone with the link, public for discovery on PlayDrop, open to search engines. Public listing creates discovery opportunities; it does not guarantee players.

Where each feature works

The website and the apps run the same game with the same SDK, but some host features depend on the device:

  • Haptics only work in the native apps; sdk.haptics.supported tells you.
  • Sharing a video clip depends on the host; hosts without it reject instead of sharing a plain link.
  • Offline play and file preloading happen in the native apps for games that declare them; the website loads games online.
  • Room voice and parties depend on the host build, sign-in and the platform rollout.
  • Ads depend on the host and on available inventory; load() reports when none is ready.

Design so the game still plays when an optional service is missing.

Start with the SDK

Load the SDK, read the host state, then signal readiness when the first designed frame is on screen:

html
<script src="https://assets.playdrop.ai/sdk/playdrop.js"></script>
<script type="module">
  const sdk = await playdrop.init();
  // Set up pause, audio and HUD from sdk.host, then render the first frame.
  sdk.host.ready();
</script>

Continue with loading, pause and audio. The client SDK reference lists every namespace.

What the connector cannot do

Your AI app publishes built games and reads your account. It cannot open or change games made in PlayDrop Studio, return source code, or upload executable 3D model code. Those limits belong to the connector, not the platform: Studio and PlayDrop's own tools can still do them.

Related guides

  • Simple HTML gamesPublish one self-contained HTML file up to 10 MiB with upload_game: what fits, the mini catalogue, visibility, updates and when to switch to a package.
  • Packaging and .playLay out a built game folder, ZIP or .play with catalogue.json at its root, declare listing media and servers, and upload it with prepare_catalogue_upload.
  • Loading, pause and audioInitialize the PlayDrop SDK, signal ready at the first playable frame, pause and resume cleanly, follow the audio policy, and preload files for offline play.
  • Client SDKReference for the PlayDrop browser SDK: host lifecycle, identity and saves, controllers, social, multiplayer, shop, ads, leaderboards, assets and AI.
PreviousMake your first AI game with PlayDrop CloudNextPlayDrop FAQ: AI game creation, publishing and connectors
View Markdown
EnglishFrançaisDeutsch日本語한국어EspañolPortuguês (Brasil)Bahasa Indonesia繁體中文简体中文ItalianoPolskiNederlandsSvenskaNorsk bokmålSuomiTürkçeไทยTiếng Việtالعربية

On this page

Two ways inWhat players getWhat the listing getsWhere each feature worksStart with the SDKWhat the connector cannot do
View Markdown