RetroArch 1.17.0 release


RetroArch 1.17.0 has just been released.

Grab it here.

Remember that this project exists for the benefit of our users, and that we wouldn’t keep doing this were it not for spreading the love to our users. This project exists because of your support and belief in us to keep going doing great things. We have always prioritized the endusers experience, and unlike others, we have never emburdened them with in-app ads, monetization SDKs or paywalled features, and we intend to continue to do so. If you’d like to show your support, consider donating to us. Check here in order to learn more. In addition to being able to support us on Patreon, there is now also the option to sponsor us on Github Sponsors! You can also help us out by buying some of our merch on our Teespring store!

Changelog

There are more changes than mentioned here, but for the sake of brevity, here is the changes since 1.16.0.

  •  
  • ACCESSIBILITY/TTS: fix target language and missing espeak handling on Linux
  • AI: AI service reworked: performance increase, automatic translation, configurable subtitle placement, and more
  • APPLE: Fix WebDAV crash with digest auth (Cloud Sync)
  • APPLE: Cloud sync fixes – ignore .DS_Store files and re-sync on app foreground
  • APPLE: Don’t re-create default directories
  • APPLE: Show Git information correctly
  • AUDIO/SYNC: Handle Hz skew adjustment for high refresh rates better (BFI, swap interval)
  • AUDIO/MIXER: Separate ffmpeg/mpv and audiomixer conditionals
  • AUDIO/WASAPI: Reworked shared buffer operation for more flexibility, fixed exclusive mode last buffer looping when entering menu
  • CONFIG/OVERRIDES: Fix setting savefile_directory in override file
  • CONFIG: Force fixed locale for numbers
  • CHEEVOS: Upgrade to rcheevos 11.0
  • CHEEVOS: Use rc_client for state management
  • CHEEVOS: Don’t track disc changes when achievements are disabled
  • CHEEVOS: Reinitialize rewind buffer after loading game with achievements
  • CHEEVOS: Inform user when server is unreachable
  • CHEEVOS: Fix crash on first load of game with achievements with threaded video
  • EMSCRIPTEN: Increase chunk size for reads/writes
  • EMSCRIPTEN: Modularize the JavaScript and clean up the web build
  • EMSCRIPTEN: Prefix core name with libretro_ for exports
  • EMSCRIPTEN: replace dashes with underscores in corenames (fix for vitaquake cores)
  • EMSCRIPTEN: Use ZipFS for web player asset bundle
  • EMSCRIPTEN: Change default audio rate to 44100
  • IOS: Fix widget on IOS17
  • IOS: Exit instead of crash on some errors
  • IOS: Fix ios-vulkan-ppsspp
  • IOS: Enable HDR support on IOS
  • IOS: Add option to disable respecting silent mode
  • IOS: Allow ignoring safe area (fullscreen over notch)
  • IOS: Default to not enabling keyboard gamepad
  • IOS: Fix XRGB8888 in GL driver
  • IOS: Allow changing the app icon
  • IOS: Add HAVE_ACCESSIBILITY to iOS builds
  • IOS/TVOS: Create GL context as GLES3 to fix some rendering performance problems
  • INPUT: Fix ghost input when setting RETROK_UNKNOWN
  • INPUT: Default ‘Bind Hold’ to 0 to prevent problems with controllers not resting at null state
  • INPUT: Add a setting to allow turbo d-pad directions
  • INPUT: Don’t save mouse buttons to autoconfig
  • INPUT/MENU: Add option for merging ‘Hotkey Enable’ device types
  • INPUT/mFI: disable secondary_joypad to prevent issues with controllers detected both as HID and mFI
  • INPUT/UDEV: Change event detection to polling in udev_joypad
  • INPUT/WAYLAND: Use unaccelerated pointer motion to prevent mouse dead zone
  • LAKKA: Add new menu options for Switch (overclock, CEC, BT ERTM)
  • LIBRETRO: Add environment command to get playlist path
  • LIBRETRO/NETPACKET: Switch environment call number from 76 to 78 (retire 76 as it was never used by any core). Simplify broadcasts by removing the option to send to all but one client, use an explicit RETRO_NETPACKET_BROADCAST constant instead. Separate explicit flushing and querying of incoming packet into two operations. Enable a core to specify a protocol version string which can get used instead of core version to determine compatibility between two players. Log and notify a separate message when there is a content crc mismatch while using this interface to convey it being less severe
  • MENU: Fix menu analog stick navigation (1.16.0.1)
  • MENU: Add option to find thumbnail images by playlist rom filename (1.16.0.2)
  • MENU: Don’t process menu events while input is being flushed (1.16.0.2)
  • MENU: Prevent proceeding to next bind when single binding (1.16.0.3)
  • MENU: Fix touchscreen menu false positives in case of overlap
  • MENU: Sort playlists ignoring extension (Playstation 2 should come after Playstation)
  • MENU: Treat System Volume Information folder as hidden on all platforms
  • MENU: Add Belarusian language option
  • MENU: Fix savestate thumbnail behavior when navigating back to playlist while content is still running
  • MENU: Fix word wrapped widget length
  • MENU: Add help text to controller drivers
  • MENU: Fix quit on content close option
  • MENU: Fix thumbnails in History for content loaded through Load Content
  • MENU: Flexible thumbnail matching (ROM name – database name – short name)
  • MENU: Remove legacy thumbnail pack downloader
  • MENU/GLUI: Icon corrections
  • MENU/OZONE: Thumbnail related fixes (missing thumbnail bar, fullscreen thumbnail flashing, sidebar focus)
  • MENU/RGUI: Fix text scaling in 16:9
  • MENU/XMB: Background images take precedence over color themes, default image opacity set the same as color theme opacity
  • MENU/XMB: Fix segmentation fault when background image is missing
  • MENU/XMB: Several corrections and cleanups
  • MENU/XMB: Layout/thumbnail fixes – Thumbnail layout adjustments, Header title improvements, Handheld layout adjustments
  • NETWORKING/NETPLAY: Add support for joining MITM servers from command line
  • NETWORKING/NETPACKET: Interface connection flow improvements
  • OSX: Fix mouse support for MelonDS DS on OSX
  • OSX: Option to create a portable build
  • PATCHES: Add support for XDelta-formatted patches.
  • PATCHES: Fix patching for cores that support contentless mode
  • PS2: Fix for no sound
  • PS2: Fix 0-byte logs and add memory stats
  • PSP: Fix memory leak in audio driver
  • RUNLOOP: Frame Rest, experimental sleep feature aiming to lower CPU usage and temperature when using certain CPU hungry vsync modes
  • RPI: Fix videocore + switchres compile failure
  • SCAN: Do CRC check on PSP/PSP(PSN) content
  • TVOS: Enable overlay support
  • VIDEO/BFI: Black Frame Insertion added to DirectX10/11/12. BFI Hz range now covers every 60hz multiple under 1000hz. Variable Strobe length via new ‘Dark Frames’ option, algorithm to auto select ‘decent’ Dark Frames choice.
  • VIDEO/GLSL: Add FinalViewportSize support to GLSL
  • VIDEO/GLSL: Change rotation type to int to maximize compatibility
  • VIDEO: Use video refresh rate instead of core refresh rate for menu frame limiting
  • VIDEO: Limit paused video refresh rate
  • VIDEO: Enforce swap interval 1 in menu if vsync is on
  • WII: Enable Cheevos for Wii builds
  • WIIU: Fix config file and core info reading
  • WIIU: Fix “Up” and “Left” directional input for both Analog sticks for GC Adapter
  • WIIU: Fix 3 USB controllers (NES/SNES/Retrode)
  • WIIU: Fix file descriptor leak
  • WIN32: Prefer D3D11 and WASAPI as default video and audio drivers
  • WIN32: Fix window size when aspect ratio is < 0
  • WIN32: Fix screen resolution always tied to the main monitor
  • WAYLAND: Enable fallback for screensaver inhibit via D-Bus
  • WAYLAND: Introduce wp_fractional_scale_v1 protocol for proper fractional scaling
  • WAYLAND: Update wayland-protocols version to 1.31

Dark Souls Remastered – InfiniDetail mod

This was a fun research sideproject. It did not take any development resources away.

Download this on NexusMods here.

This mod does the following:

  • Reduce/eliminate texture LOD (Level of Detail)
  • Increase draw distances, less pop-in of mappieces and objects
  • Untie special effects/particle effects from mappieces/collisions.

This mod takes a conservative and disciplined approach. It does not seek to alter
the game’s look, it does not add additional lighting, it does not remove spot lights or
remove baked shadows. In other words, it tries to look authentic to the original game,
and yet a still noticeable visual upgrade.

REQUIREMENTS

  • A copy of Dark Souls Remastered (PC version)

HOW TO INSTALL

  1. Extract the contents of the zip archive to the Dark Souls Remastered directory (usually C:\Program Files (x86)\Steam\steamapps\common\DARK SOULS REMASTERED).
  2. Start Dark Souls Remastered from Steam, or run DarkSoulsRemastered.exe from the install dir.
  3. This will start Dark Souls Remastered with the InfiniDetail mod

MEDIA

See some before/after screenshots here.

Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4

Full screenshot gallery here.

TODO
* Make more enemies visible all of the time
* Replace more low LOD fake mappieces with full LOD mappieces
* Fix up more rendering oversights from the original game

TOOLS USED
* DSMapStudio

CREDITS
* Fromsoftserve, for his inspirational videos and modding tips.
* DSMapStudio authors for the amazing tool. This mod would not have been possible without it.

FAQ
* Can it be used with DSR Graphics Overhaul mod?
No. DSR Graphics Overhaul by fromsoftserv is a far more ambitious mod that seeks to overhaul the game’s look and modernize it by removing baked shadows and replacing it with dynamic shadows, and also other artistic changes / edits. This mod has a more narrowly defined scope by comparison in that it wants to remain somewhat authentic and at the same time also remove some of the obvious visual rough edges from the original game that probably should have been addressed by the remastered version in the first place.
* How does it affect performance?
This mod can likely be optimized further, consider this a first pass. However, a performance test was done on Steam Deck. It ran at a smooth locked 60fps at the Steam Deck’s native resolution.

WHAT’S NEXT
InfiniDetail mods for Dark Souls 3 and Sekiro were developed alongside this mod, and will appear in the near immediate future.