Skip to content

Bannerlator 3.0.4

Choose a tag to compare

@github-actions github-actions released this 02 Sep 17:07
· 189 commits to main since this release

Bannerlator

3.0.4  app-side update

Bannerlator 3.0.4

Run Windows apps and games on Android — no PC and no root required.

3.0.4 is the Steam update. The app's Steam client has been rebuilt from the ground up as a native engine — sign-in, library, downloads, cloud saves, achievements, friends and chat now all run on it — and the SteamLite online/VAC launcher got the fixes and polish that make real-Steam games launch reliably: no more "Incorrect Version" / "could not connect to Steam" on launch, a pre-flight check before the container opens, and a Friends tab right in the in-game drawer. As always the update is entirely app-side — no ImageFS reinstall — so your containers, Wine installs, themes, accent colour and per-game settings all carry over untouched. Install straight over 3.0.3.

SteamLite users: the launch popup will ask you to update the SteamLite client package (v4 or newer) before the first online launch — one tap, then Launch. Verified on this build: Counter-Strike: Source on a VAC-secured server, Stumble Guys online (including its game update through the new engine), Brawlhalla online.

What's New — everything since 3.0.3

🦀 Native Steam engine (new — on by default)

  • The Steam client inside the app is now a native engine instead of the Java one inherited from GameNative. Sign-in (QR and password/Steam Guard), your owned library, depot downloads with resume and verify, beta branches, cloud saves, achievements, rich presence, friends, chat and presence all run on it.
  • Faster, lighter, more resilient — a single hardened session that self-heals on reconnect, with less memory and battery overhead than the Java stack.
  • Steam connection region setting — pick the Steam region the app connects through (Settings → Steam), useful on networks where the auto-picked servers misbehave.
  • The Java engine stays available for one release as a fallback: Log Manager → "Native Steam engine (restart required)". If anything Steam-related misbehaves for you, flip it off, restart, and please send the SteamLite/Steam logs. The Java engine is scheduled for removal in the next release.
  • Every new Steam control has a ? help button explaining what it does.

🎮 SteamLite (real Steam · online · VAC) — reliability

  • Fixed: "Incorrect Version, Please Update" / "Could not connect to Steam servers" on launch (Brawlhalla and others). Steam allows one login per account; the app now pauses its own Steam session right before the container opens and resumes it when the game exits, so the game's login is never kicked.
  • Cloud saves sync before the container opens — the pre-launch cloud pull now finishes first, then the hand-off happens.
  • Pre-flight before launch — a small "Getting Steam ready" popup (photo slideshow) while the app checks sign-in, cloud, game files, the SteamLite client and your network / NAT type, so a bad network is called out before the game starts instead of failing inside it.
  • Fixed an intermittent crash at game start caused by Steam's overlay injecting into the game process; overlay injection is now disabled for SteamLite launches.
  • VAC-aware launching — secure (VAC) launch is used when the game needs it, with a per-game override; non-VAC games start faster.
  • Live agent channel — the app and the in-container Steam agent now talk directly instead of guessing from log files, so launch status and errors are exact.
  • Update & Launch — when a newer SteamLite client package is available, the launch popup shows it and installs it in one tap before launching.
  • Better crash diagnostics in the SteamLite log bundle (crash cause quoted at the top, engine section, network verdict).
  • Faster fallback for non-VAC titles — when Steam accepts the launch but never spawns the game, non-VAC titles now start directly after ~15 s instead of ~60 s.

⚠️ Known issue (64-bit titles launched directly by Steam): on some 64-bit games Steam's own spawn can still crash at startup with the overlay-injection signature; the launcher then starts the game directly. Non-VAC games (e.g. Stumble Guys) play online normally this way. A 64-bit VAC game that Steam launches directly would end up in an insecure start and be rejected by VAC servers — titles that go through a 32-bit launcher (Counter-Strike: Source, Team Fortress 2, Left 4 Dead 2) are unaffected. Fix in progress.

👥 Friends & chat while you play

  • Friends tab in the in-game side drawer — see who's online and chat without leaving the game. Populated by the app's session for normal launches and relayed through the SteamLite agent for real-Steam launches (Steam's headless session doesn't stream presence, so statuses there may show as "last known").
  • Steam chat notifications setting is shared between Settings and the Friends page cog — one switch, no conflict.

📦 GOG

  • DLC auto-detect + batch extract — Fast Extract and the Unpack Archive screen now spot sibling setup_*.exe DLC installers next to a GOG base game and extract base + DLC into one merged folder in a single pass.

🧰 Project

  • Every pull request is now compiled against main by CI before it can be merged.

🗂️ New sister app — BFE (file explorer)

github.com/The412Banner/BFE · latest v0.10 · sideload-only, GPL-3.0

Bannerlator's built-in File Manager and its native extraction engine, lifted into a standalone Android file explorer for managing game files outside the emulator. What it does:

  • Dual-pane commander — two panes side by side, one shared toolbar; copy / move / rename / delete / share with multi-select, sort, search, grid or list.
  • Every storage you have — internal, SD card and USB, pinnable app-private folders via Android's storage picker, and root browsing on rooted devices.
  • FitGirl and DODI repack extraction — unpacks the repack's setup.exe + Setup-N.bin volumes natively (FreeArc / ISDone decoding on-device), no PC or Windows installer run needed.
  • GOG offline installer extraction — the setup_<game>.exe installer is unpacked straight to game files, and DLC installers sitting next to it are detected and extracted into the same game folder automatically in one pass.
  • Archives and disc images — 7z, zip, rar (multi-part), tar / gz / xz, zst, split volumes, .iso / .udf / .img, .wcp / .tzst — the same extraction engine Bannerlator uses.
  • Compress folders back to .wcp / .tzst for sharing or importing into Bannerlator.
  • APK cloner + signer — duplicate an APK under a new package name and sign it, on device.
  • Convert video to MP4 (bundled ffmpeg), plus New file / New folder, APK icons in listings.

Early 0.x builds — please report anything odd on the BFE issue tracker.


🙏 Credits

Built on the work of many open-source projects and their communities:

  • Native Steam engine & SteamLite agent — derived from WinNative's GPL wnsteam client and wn-steam-launcher (hardened, extended and rebranded here); protocol groundwork from SteamKit2 (the SteamRE team).
  • Steam (fallback engine)JavaSteam (joshuatam's fork of SteamKit2) and Goldberg / gbe_fork (Detanup01 & contributors).
  • Graphics & Frame GenerationDXVK (Philip Rebohle & contributors), VKD3D-Proton (Hans-Kristian Arntzen & contributors), Mesa / Turnip (the Freedreno & Mesa teams), and AMD FidelityFX (FSR).
  • Containers, launch & runtimeWine (WineHQ) and Proton / GE-Proton (Valve & GloriousEggroll); box64 (ptitSeb) and FEXCore (the FEX-Emu team).
  • Audio — Android AAudio, driven by our own DirectAudio endpoint.
  • The app itselfWinlator (brunodev85) and its Cmod lineage; GameNative (GPL-3.0) for the Steam session-hardening and present paths.

Steam is a trademark of Valve Corporation; other names are trademarks of their respective owners. Bannerlator is an independent project — not affiliated with or endorsed by any of them. Each component remains under its own license.