← Back to Creators
HTML5 Game Optimization & Submission Guidelines
Submitting to the Unlocked Arcade Creator Beta is simple, but we have high standards for technical performance and mobile responsiveness. Your game must load instantly, fit any screen, and respect player bandwidth.
The Golden Rule
If your game doesn't play smoothly on a mid-range smartphone from 3 years ago, it will likely be returned for optimization. HTML5 games should be accessible everywhere.
1. Viewport Scaling & Responsiveness
Players access Unlocked Arcade from desktops, tablets, and smartphones. Your game canvas must scale intelligently without stretching, letterboxing excessively, or breaking the UI.
- Responsive Canvas: Use CSS or engine-specific scaling (like Phaser's
ScaleManager) to resize the canvas dynamically to the window size.
- Orientation Locks: If your game requires landscape, show a clear "Please rotate your device" message on portrait screens rather than breaking the layout.
- UI Safe Zones: Keep critical UI elements away from the very edges of the screen to account for mobile notches and safe areas.
2. Touch & Multi-Device Controls
A game that only works with WASD will alienate over half of our players. You must design for touch from day one.
- Implement Touch Listeners: Map touch events to mouse clicks, or implement virtual on-screen joysticks/buttons for mobile users.
- Prevent Default Behaviors: Ensure touch gestures (like swiping) don't trigger browser scrolling or pull-to-refresh actions. Use
event.preventDefault() on game interaction areas.
- Clear Instructions: Include precise control instructions in your submission metadata for both desktop and mobile users.
3. Asset Compression & Load Times
We enforce a strict 10MB total size limit for submissions. Instant-play means instant.
- Audio Compression: Use compressed formats like MP3 or WebM/OGG. Avoid large WAV files. Reduce bitrates for background music.
- Texture Atlases: Combine your sprites into sprite sheets/texture atlases to reduce HTTP requests and memory usage.
- Image Optimization: Compress PNGs and JPGs. Consider WebP for modern browser support.
- Minify Code: Minify your JavaScript and CSS files before packaging the ZIP.
4. Audio Context Policies
Modern browsers block audio from playing before the user interacts with the page. You must handle this gracefully.
- User Interaction Required: Do not attempt to play audio on load. Wait for the user to click a "Start" or "Play" button before initializing the AudioContext.
- Resume Context: If your engine suspends the AudioContext, ensure it resumes upon the first user interaction.
5. Security & Isolation
All games run in a sandboxed iframe to protect user data and platform integrity.
- No External Trackers: Remove any third-party analytics (like Google Analytics) or ad SDKs. These will be blocked by our CSP and may cause your game to fail review.
- Local Storage: You may use
localStorage or IndexedDB for saving game state. However, do not rely on it for critical data that must persist indefinitely, as users frequently clear browser caches.
- No Popups or Redirects: Do not use
window.open or modify `window.location`.
Ready to share your game?
If you've followed these guidelines, your game is ready for the review queue.
Go to Dashboard