• 1.2.80 Stable

    GreemDev released this 2025-01-20 03:15:46 +00:00 | 346 commits to master since this release

    Significant changes include:
    Embedded Compatibility List viewer (by @GreemDev),
    Migration to .NET 9 (by @marco-carvalho),
    The Experimental Metal Backend (by @IsaacMarovitz, work repurposed, rebased, and merged in by @GreemDev),
    Ability to read/write amiibo .bin files (by @Jacobwasbeast),
    Unified locales (by @LotP1),
    Headless in Avalonia (by @GreemDev), and
    Swedish localization (by @yeager)

    Merged PRs in this release (in the order they were merged):
    #198, #348, #391, #412, #296, #420, #422, #424, #427, #430, #432, #415, #418, #441, #447, #446, #450, #440, #448, #469, #460, #428, #444, #470, #472, #471, #465, #461, #475, #480, #481, #497, #507, #505, #517, #515, #519, #203, #524, #502, #489, #503, #531, #314, #375, #513, #538, #537, #541, #543, #545

    UI:

    • Fix for updates not being autoloaded
    • PlayerSelect applet (#537)
      • Allows you to play Minecraft Nintendo Switch Edition, and Diablo 3 with multiple local players.
        • Those are just the 2 games I know of that use this. There's probably others.
    • Compatibility List Viewer
      • You can access this via Help > Open Compatibility List. You can search for games you're interested in, and it only shows the games you actually own by default.
      • This functionality has also been opened as a PR on ryujinx-mirror.
    • Headless in Avalonia
      • There is no longer a dedicated headless/nogui build. It's now integrated directly into the standard Avalonia build.
      • This was done to reduce confusion on what file to download, while also still allowing the users who use headless to continue using it.
        • There's even the ability to inherit your main Ryujinx's config, input settings & last used emulated Switch profile!
      • You can access headless Ryujinx by invoking Ryujinx via the command line with the first argument being --no-gui or nogui. The following should then be your old Headless script content, additionally with --use-main-config for the config inheritance mentioned above.
    • Play Time in the UI now caps out at showing hours. It shows seconds at the least. If less than a second it will act like it was never played.
    • You can now click on the Title IDs of games in the UI and they will be copied to your clipboard.
    • There is now a button in settings you can click which will resync the time in Ryujinx to match your system's.
      • Note that this is not an active setting, it just sets the time to the current time. It can still fall out of sync.
    • Intel Mac Warning
      • On every boot, and only one time during that session, you will be warned that Intel Macs are not supported, if you are running Ryujinx on one.
    • Discord RPC:
      • Added Goat Simulator 3 asset image

    I18N:

    • Russian translation update (#450)
    • Entire Swedish translation (#446, #513)
    • Ukrainian translation update (original: #488)
    • Korean translation updates (#422, #465, #502)
    • Norwegian translation updates (#418, #503, #538)
    • French translation update (#415)
    • Simplified Chinese translation updates (#440, #375)
    • Italian translation update (#489)

    Graphics:

    • Experimental Metal Backend
      • The label "experimental" is not for show! More games don't work than do.
      • If you're on an ARM Mac and want to get the best out of Metal without trial & error, set the graphics backend to Auto.
      • Using Auto on a Mac will use Vulkan for most games, and use Metal on the games it's known to work better than Vulkan + MoltenVK in.
      • There is currently a known bug where shader translation from Vulkan to Metal will eventually freeze.
        • To alleviate this, you can simply keep trying. It does do some translations before it freezes.
        • You can also delete or move your Vulkan cache to another location to start fresh to avoid this issue entirely.
    • Vulkan
      • Resolve Image Usage Validation Error (#296)

    HLE:

    • Stub IHidServer SetGestureOutputRanges (#524)
      • Lets the new Donkey Kong game, Donkey Kong Country Returns HD, boot.
    • Throw a more descriptive error when the loaded processes doesn't contain a process with key matching _latestPid (likely missing Firmware).

    Infra:

    • Various NuGet package updates (#203)
    • Update the mac release script to use LLVM 17 (#519)

    Nerd Zone:

    • Removed a lot of manual observable properties in many ViewModels and replaced them with the CommunityToolkit.Mvvm ObservableProperty autogenerated ones to reduce the size of the view model files.
    • Use UnmanagedCallersOnly for ARMeilleure delegates.
    • The repeated <Border>s in MainStatusBarView have been turned into a reusable Avalonia Control: MiniVerticalSeparator
    • ConfigurationState migration is now defined in a map of version => migrator function; to reduce code duplication.
    • DiscordIntegrationModule now changes the current playing game state based on when TitleIds.CurrentApplication changes; instead of directly being invoked when a change is needed.
    • Removed Ryujinx.UI.Common: it existed because previously the project had 2 different UI layers you could use; GTK and Avalonia. We only support Avalonia now and will probably never support another framework.
    • The logic for launching an applet, such as miiEdit, has been abstracted into a utility class called AppletMetadata.
    Platform Artifact
    Windows 64-bit Stable Windows Artifact
    Linux 64-bit Stable Linux Artifact
    Linux ARM 64-bit Stable Linux ARM Artifact
    macOS Stable macOS Artifact
    Downloads