Releases / v0.110.0

v0.110.0 Travels Light

2026-10-01 Engine + Hub Latest

A big web game fits on a phone. Its page holds a fraction of the memory it did, so a game an iPhone closed while it loaded now gets to play. A web game that stops tells the player why, and the next visit says it stopped. And a player signed in on a web build stays signed in long enough to publish what they made.

Web games need far less memory

A phone closes a page that holds too much, with no message, and usually reloads it. A game stuck at "loading the world", reloading over and over, is what that looks like. In our test, a 384 MB game's menu needed 2.2 GB in its page and now needs about 0.95 GB.

  • The game's files are held once. The page kept up to three copies of the game's download while it started. It keeps one now, and the engine reads each file from it when it is needed.
  • Models load a few at a time. A scene's models, or everything a menu preloads, used to go to the graphics card in a single frame, and the browser kept memory that size for the rest of the session. They now load over several frames, and the loading screen stays up until the last one is in.
  • A picture goes to the graphics card once. Models that carry the same picture now share it. One enemy whose eleven ragdoll parts each carried the same large texture used eleven times the memory it needed.
  • One file is one model, however its path is written. A model named two ways was loaded twice.
  • The page's log says how much memory the engine holds at each step of loading, and how much the models put on the graphics card once they are in.

When a web game stops

  • A lost graphics device says so. When the browser takes the graphics device away, the page now says so and asks the player to reload, rather than leaving a black screen.
  • The next visit says the game stopped. The page keeps its last 200 log lines, warnings and errors as the game runs. If the browser closes the page without warning, the next visit says the game stopped unexpectedly and can show what it said last. A site hosting the game can read the same record from window.floptleLastCrash() and send it with the player's agreement.

Signed in on the web

A web build's sign-in lasts fifteen minutes and was only renewed when the page loaded. Anything a player sent after that, such as publishing a level they had spent twenty minutes building, failed with "a browser build signs in by redirect". The sign-in now renews itself before the request that needs it. A player is signed out only when fopull.com refuses the renewal, not when the network has a bad moment.

Upgrading

Export your web build again and upload it. Nothing in your project changes. For a large game on phones, the biggest savings left are yours: a 4096×4096 texture takes 64 MB once loaded, whatever its file size, and a menu that preloads every level holds all of them at once. See Memory in a page in docs/web-export.md.

Floptle Hub

Linux x86_64 9.0 MB Download → sha256 680310e667c5314dfc683d2066f380ebd762d92f82b4035ddb0d2ed0f1af70c6
macOS Apple Silicon 5.9 MB Download → sha256 9c763de52012acffdc4994f49c0b61c431b50158f35bc5947d892fa25e3aae54
macOS Intel 6.4 MB Download → sha256 5d9e3bbc437a912d0c53a7d18d0b8fb1825b6a12d5d9441e4ece1c02abc44f21
Windows x86_64 7.3 MB Download → sha256 9d7311e1171d8c14cb7cd2ea49b043602314417441b258db675eba2ac2460b37

Engine

Linux x86_64 52.3 MB Download → sha256 5a6ebc6d91588e69a7be087d9571b6afe3b63dede8143015997c9e2a6c0a5f5f
macOS Apple Silicon 40.4 MB Download → sha256 ef469a6d5d05198c3b74006d533a8b3f6e6c182ca7e0da349b978618289e2e4d
macOS Intel 43.5 MB Download → sha256 9d355a52d1226a964771fb15cd901210cf6da4920d3b171156a8fc5ecf18428c
web 4.8 MB Download → sha256 cebd9c90ef5f4d5675c9368826ed1f61826a3af4626030ac9d49606ecc30a935
Windows x86_64 49.2 MB Download → sha256 41d5888f33b3ca8da99fe9866b29edd5018f081b78151ac50a53858de9f9c0f8

The binaries are not signed yet. On macOS, right-click the app and pick Open the first time. On Windows, if SmartScreen appears, pick More info then Run anyway.