Skip to main content
Cordial now keeps the Roblox builds it runs in its own store, and each profile runs the newest one (Latest) or a version you pinned. Two profiles can run two different versions at the same time. Sober’s copy is something you can import, not something Cordial follows. The Flatpak no longer crashes when Roblox opens a web page, such as a profile page. In 0.24.1 that ended the whole client.

What will still bite

If you used Sober’s build, it no longer updates when Sober does. The first launch after upgrading copies Sober’s build into Cordial’s store and asks once whether to check for a newer one. From then on a new build arrives when you update in Cordial (Settings → Updates), and Cordial does not download one unasked on a metered connection, which is what most desktops report. Roblox refuses clients that are too old, so if joining starts failing with an update message, update from there. The first launch does one-off work. It moves the build store from ~/.cache/cordial/builds to ~/.local/share/cordial/builds (in the Flatpak, ~/.var/app/io.github.luohoa97.Cordial/data/cordial/builds), checks who signed any build that was kept before, and copies Sober’s or your chosen build in if that is what you were running. It runs before the window opens, so that launch can pause. Cordial does not delete ~/.cache/cordial/build, lib or assets afterwards; they can be removed by hand. Copying Sober’s build takes about 150 MB of new space, because the Flatpak cannot link to Sober’s files. An APK you chose in Settings is imported, and every profile with no pinned version is pinned to it, so it keeps running that file. Choose Latest on Settings → Version to follow the store instead. The saved path is cleared. Each kept build takes about 0.5 GB with its extracted assets. The store keeps the newest build, the one before it, any build a profile is pinned to and any a client is running; updating removes the rest. A pinned build that Roblox stops accepting looks like Cordial breaking. What the engine shows when Roblox refuses an old client has not been captured. A pinned profile whose client stops soon after starting says to choose Latest if Roblox asked for an update.

What you can do now

  • Settings → Roblox lists the builds Cordial keeps, where each came from (downloaded, or imported from Sober or a file, with the date), how big it is and which profiles use it, and removes ones nothing uses.
  • Import from a file and, while Sober holds a build Cordial does not, Import from Sober rows. Both check Roblox’s signature first.
  • Download Roblox always downloads from the mirror. It no longer copies Sober’s files and reports a download.
  • On first run with Sober installed you get both buttons, Download Roblox and Copy Sober’s build.
  • Pinning a profile to an older build than it last ran shows a note that an older build may not understand what a newer one saved. That is not measured; the note says so.
  • Settings → Audio → Microphone picks which microphone voice chat records from, next to the output device. It follows your desktop’s default until you choose one, applies at once if you are already in voice chat, and opening the list does not turn the microphone on. CORDIAL_AUDIO_SOURCE sets it for a single launch. Roblox’s own in-game device list still shows one driver.
  • CORDIAL_APK still runs one APK for a single launch without filing it. CORDIAL_APK_DIR is gone.

Also

Roblox and Sober are unchanged on disk: Cordial reads Sober’s directory only when you ask it to import, and never writes there.

What is still broken

The signed-in startup freeze, the movement-key and touchscreen issues and the rest of the list in the 0.24.0 notes still apply. The first time you open Settings, several plugin permission dialogs can open on top of each other. Answer or close each one; a fix is in progress. Not tried: importing a split APK through the Flatpak’s file chooser, which may hand Cordial only the file you picked and not the split beside it. Copy Sober’s build instead.