Skip to content
Developer Docs

Engine Export Notes

Practical export notes for common browser-game engines and web stacks.

Core rule

Upload the exported web build, not the source project.

The ZIP root must contain index.html. Engine loader files, WASM files, data files, asset folders, and generated JavaScript should sit beside it as produced by the export.

Do not depend on remote JavaScript from CDNs. Buncha Games blocks third-party executable scripts; package engine and library scripts locally.

Unity WebGL

  • ZIP the contents of the exported WebGL folder so index.html, Build/, and TemplateData/ are at the ZIP root.
  • Standard Unity WebGL runtime files are supported, including .loader.js, .framework.js, .wasm, .data, .symbols.json, .unityweb, and .br/.gz compressed variants when Unity generates them.
  • Do not upload the Unity project folder, Assets/, ProjectSettings/, or Packages/.
  • Keep the ZIP under 200 MB and test load time before submitting.
  • Buncha Games serves .br and .gz runtime files with matching Content-Encoding headers when they use standard browser-runtime base extensions such as .js, .wasm, .data, .pck, or .unityweb.
  • Fullscreen, pointer lock, keyboard focus, mobile support, and memory limits depend on browser behavior inside an iframe.

Godot HTML5

  • ZIP the exported HTML5 output so index.html, generated JavaScript, .wasm, .pck, and asset files are at the ZIP root.
  • Standard Godot Web files are supported, including .js, .wasm, .pck, .audio.worklet.js, and .br/.gz compressed variants for runtime files.
  • Do not upload the .godot project, scenes, scripts, or editor-only files.
  • Godot 4 threaded exports may require SharedArrayBuffer and cross-origin isolation support; use non-threaded web exports unless you know the runtime needs are supported.
  • Test the export from a local static server before uploading, especially when WASM is involved.

Phaser, Vite, Three.js, and plain HTML

  • Run the production build command and ZIP the contents of the output folder, usually dist, build, public, or an equivalent static export folder.
  • Bundle dependencies such as Phaser, Arcade Physics, Matter.js, Three.js, Babylon.js, PixiJS, Cannon.js, and helper SDKs into the build output instead of loading them with remote script tags.
  • For plain HTML games, ZIP the folder contents that contain index.html and runtime assets.
  • Do not upload source directories, local config, .env files, or development-only scripts.

Construct, GDevelop, Defold, and PlayCanvas

  • Use the engine's HTML5 or web export.
  • ZIP the exported web build contents with index.html at the root.
  • Keep generated loader files, data files, and asset folders exactly where the export expects them.
  • If the engine uses hosted assets or services, disclose those external domains before review.

Browser and iframe caveats

  • Audio may need the player to click or press a key before sound starts.
  • Fullscreen and pointer lock usually require a user gesture.
  • Keyboard and gamepad focus should be handled clearly inside the game.
  • LocalStorage and save data may work differently than a standalone site.
  • Desktop play is the Alpha target; mobile support is welcome when the game handles it cleanly.
  • Large WASM or data files should be tested from a local static server before upload.