Skip to content

Releases

1.7 Mac preview (experimental)

Pre-release

Choose a tag to compare

@jackpoison-prog jackpoison-prog released this 01 Nov 18:04

⚠️ Experimental Mac build — expect bugs and errors.

This is a test build of the Mac (Apple Silicon) port. I don't have a Mac, so it has only been tested by automated builds, never played on real hardware. It will probably not run smoothly at first.

  • Apple Silicon Macs only (M1 or newer), macOS 13 or newer.
  • US version of the game only (SoulCalibur II, GRSEAF).
  • Unsigned: the first time, right-click Setup.command → Open, then Open again. The full steps are in README.txt.
  • Netplay works Mac to Mac only; a Mac and a PC refuse each other at connect.

Linux, Windows and Steam Deck players: nothing changes for you; stay on 1.7.

Found a bug? Please open an issue or reply on #20 with userdata/launch.log attached, whether it works or not. Every report helps get this into a normal release.

RingOut 1.7

Choose a tag to compare

@jackpoison-prog jackpoison-prog released this 27 Oct 23:47

RingOut 1.7

New

  • Ultrawide screen shapes (pause menu → Screen Shape): 21:9 and 32:9 alongside 16:9. The game's 2D (menus, HUD, movies) stays at 16:9 and is centred. US, Plus and PAL discs; the JP disc stays 16:9.
  • Smooth Motion (Vulkan, screens above 60 Hz): blends between the game's 60 frames so motion follows your display's refresh rate. Off by default.
  • Add to Steam: at the end of setup, add the game to your Steam library as "Soul Calibur 2", with its icon. The Steam Deck package gets an "Add to Steam" script.

Fixed

  • Vulkan: when the window cannot be set up (seen on Wayland with NVIDIA), the game now exits with an error instead of crashing (#16).

Known issues

  • Inferno's fire flickers with Smooth Motion on, and is drawn in front of him at 21:9 and 32:9. Fix planned for the next release.

Found a bug?

Please report anything that goes wrong, especially with the new features (ultrawide, Smooth Motion and Add to Steam), on the issue tracker. Say which disc, which system (Linux, Steam Deck or Windows) and what you were doing when it happened.

Ring Out 1.6.10

Choose a tag to compare

@jackpoison-prog jackpoison-prog released this 21 Oct 03:45

Faster fights on Windows, a fix for the intro movie in dual-core, and a little more speed on the US, JP and Plus discs.

  • Windows: about 15% more fps in fights on a 2-core laptop. The CPU and video threads now run above normal priority, with the CPU thread one step higher, so background work no longer pushes the game aside. The video thread also waits on the game in larger steps.
  • Intro movie fixed in dual-core: the video thread could fall far enough behind during the intro movie that the game reused memory before it was drawn. That logged "GFX FIFO: Unknown Opcode" in nearly every run on 2-core machines. The video thread now stays within about 4 ms of the game. This applies on every platform.
  • Faster on the discs: about 1.7% fewer CPU cycles on the Steam Deck for Plus, 1.2% for US and 0.7% for JP. More of the game's code stays native when it calls through a pointer, and JP and Plus now get the two-lane SIMD that US got in 1.6.9. PAL is unchanged: it measured no gain.
  • Less CPU while idle: the controller hotplug thread no longer wakes every millisecond. It used 2–3% of a core.

Netplay needs both players on 1.6.10, as with every release.

Ring Out 1.6.9

Choose a tag to compare

@jackpoison-prog jackpoison-prog released this 15 Oct 20:32

The game now opens fullscreen by default, and the pause menu got some polish.

  • New: Fullscreen at Launch (pause menu → VIDEO), on by default (RingOut#15). The game now opens fullscreen. Turn it off there to open in a window again. Fullscreen in the same tab switches the window right away without changing what happens at launch.
  • Faster on the US disc: about 1% fewer CPU cycles on the Steam Deck. More of the game's vector math now runs as two-lane SIMD.
  • Pause menu: the panel no longer jumps when you switch tabs. Its top edge stays put and the bottom slides to fit. Apply now confirms with "Settings saved." Stray white pixels on the panel's border are gone.
  • Includes 1.6.8.1's Windows netplay fix.

Netplay needs both players on 1.6.9, as with every release.

Ring Out 1.6.8.1

Choose a tag to compare

@jackpoison-prog jackpoison-prog released this 15 Oct 14:09

A Windows netplay hotfix.

  • Fixed: on Windows, starting netplay from the in-game menu crashed the game (RingOut#19). Starting it with RingOut.cmd --netplay-host or --netplay-join was not affected.
  • Fixed: on Windows, after starting netplay from the menu, the keyboard did nothing.

Nothing else changed: same recompiled code and the same speed as 1.6.8 on every disc.

Netplay needs both players on 1.6.8.1, as with every release.

Ring Out 1.6.8

Choose a tag to compare

@jackpoison-prog jackpoison-prog released this 15 Oct 02:44

A speed release: the recompiled game code returns to the emulator far less often and does less work per call, which cuts CPU use by roughly 9-12% on the Steam Deck across all four discs.

  • Far fewer trips back to the emulator. Recompiled code used to hand control back to the emulator whenever a function ran past the end of its block of code, at every jump table and at every indirect call. Those paths now stay inside the native code, and a loop can run on until the next timing event instead of stopping every thousand emulated cycles. Over a scripted arcade run, the number of hand-offs fell by about 85%.
  • Small functions copied inline. Short helper functions are now copied straight into the code that calls them, so the call itself disappears.
  • Faster character skinning. The loops that bend each fighter's mesh to its skeleton now do their maths two numbers at a time, the way the GameCube's CPU does.
  • Faster vector loads and stores in the game's hottest code, which now move data straight between game memory and the CPU instead of through the emulated CPU state.
  • Fixed: setup failed when RingOut was unzipped into a folder whose path contains a space (RingOut#13).

Measured on a Steam Deck over the same scripted run, CPU cycles fell by about 11% (US), 12% (Japanese), 11% (SC2 Plus) and 9% (European). These are the combined steps of this release, each measured on its own against the one before. Windows runs the same recompiled code.

Every disc still produces exactly the same game state as before on Windows, Linux and the Steam Deck, checked frame by frame over 16,000 frames of a scripted arcade run and 14,000 frames of a versus match.

Re-run setup to get the speedup. Almost all of it is in the module setup builds on your machine. Unzip fresh and point setup at your disc as before.

Netplay needs both players on 1.6.8, as with every release.

Ring Out 1.6.7

Choose a tag to compare

@jackpoison-prog jackpoison-prog released this 08 Oct 21:59

A speed release: the hottest parts of the game's code now run as plain native code on all four discs, which cuts CPU use by roughly 8-10% on the Steam Deck, and Windows gets shorter loads and a much faster first launch.

  • Hot game code runs natively. Setup now turns the game's busiest loops and functions (its random number generators, the character skinning, a decoder and dozens of small maths routines) into ordinary native code: registers kept in locals, small helper calls inlined, no per-instruction bookkeeping. It works from a list that ships for each disc and changes nothing about what the game computes. Measured on a Steam Deck, the CPU cycles for the same 16,000-frame arcade run fell by about 8% (US), 8% (Japanese), 10% (European) and 9% (SC2 Plus). These are the combined steps of this release, each measured on its own against the one before.
  • The same on Windows. The Windows build gets all of it. A Windows-only bug kept this native code from being used at all in the 1.6.7 test builds; it was caught and fixed before release.
  • Faster loads. The emulated disc drive no longer waits for real GameCube timing, so each load is 1 to 3 seconds shorter. It can be turned off on the System tab.
  • Faster first launch on Windows. Setup now builds the shader cache, as it already does on Linux. On a 2-core laptop the first launch went from about 4.5 minutes of black window to about 28 seconds.
  • Less audio work. Audio inputs a GameCube game never uses (Wii remote speakers, GBA links and others) are no longer processed: about 70% less work on the audio thread.
  • A leaner runtime on Windows. Rebuilt with an updated speed profile: about 3.5% faster in the fight on a 2-core laptop.
  • Fixed: the Speed row stuck on "Unlimited" on Windows after holding Tab to fast-forward while the window lost focus.
  • New: slowdown report. Each second the game runs below 95% speed, launch.log gets one line saying what the machine was busy with. Useful when reporting performance problems.

Every disc produces the same game state on Windows, Linux and the Steam Deck, checked frame by frame over 16,000 frames of a scripted arcade run.

Re-run setup to get the speedup. Most of it is in the module setup builds on your machine. Unzip fresh and point setup at your disc as before.

Netplay needs both players on 1.6.7, as with every release.

Ring Out 1.6.6

Choose a tag to compare

@jackpoison-prog jackpoison-prog released this 03 Oct 04:58

A speed release: fights run about 21% faster on a slow Windows laptop, all four discs need about 8% less CPU on Linux, Linux players on the new clang 23 get the full speed profile back, and Windows now starts on Vulkan.

  • Faster on Windows. Three build fixes. The module setup builds on your PC now uses the clang version the speed profiles were trained with: the bundled one had been quietly ignoring them. The runtime is now built with link-time optimisation and a speed profile. Measured on a 2-core AMD laptop, same disc, save, scripted fight and renderer (Vulkan) for both versions: 21% faster in the fight (median of 4 runs each; every 1.6.6 run beat every 1.6.5 run).
  • Vulkan by default on Windows, wherever a Vulkan GPU works, with Direct3D 11 as the fallback. On that laptop Vulkan used about a third less CPU than Direct3D 11, mostly by compiling shaders far more cheaply on first play.
  • Choose the renderer in the menu. VIDEO → Renderer lists what the build has: Direct3D 11, Direct3D 12, OpenGL and Vulkan on Windows; Vulkan only on Linux and the Steam Deck. The choice applies at the next launch. A choice that cannot start (no Vulkan driver, say) falls back instead of locking you out.
  • Direct3D was missing from every Windows build since 1.6. Asking for it silently gave OpenGL. It is back.
  • Less CPU on Linux and the Steam Deck. Leaner code for floating-point checks and paired-single loads, the condition register kept in locals inside the fast code copies, and a runtime built with link-time optimisation and a speed profile trained in windowed Vulkan play. Measured against 1.6.5 over the same 16,000 frames on a Linux desktop: US 7.8% less CPU, Japanese 7.7%, SC2 Plus 8.2%, European 7.7%, before a final dispatch-loop trim worth about 0.5% more.
  • Full speed again with clang 23. Arch, CachyOS and other rolling distros moved to clang 23 this week, and clang 23 could only apply about a third of the speed profile that ships for each disc. The rest of the game code was built unoptimised, with no warning. 1.6.6 ships a second set of profiles trained on clang 23, and setup picks the one that matches your compiler. Setup now also checks that the profile really fits after building, and tells you to run setup.sh --pgo if it does not. On a Steam Deck, with the module built on a clang-23 desktop: 181% of full speed (median, whole arcade run, uncapped) instead of 159%.
  • Steam Deck holds full speed throughout. Measured over the whole arcade run on the same day with the same compiler, 1.6.5 dipped below full speed (as low as 53 fps); 1.6.6 never did (lowest 69 fps with the clang-23 profile).
  • Faster first launch on Linux. Setup now starts the game once to build its shader cache. On a 2-core laptop the first launch went from about 2.5 minutes of black window to about 23 seconds. On a desktop the extra setup step takes a few seconds.
  • setup.sh --pgo repairs a stale hot list. If the shipped list of hot entry points no longer matches your build, training now notices, refreshes the list and trains again.
  • Windows fixes. The game window shows the game's own icon instead of a warning triangle. Running setup.ps1 in a second copy of Ring Out no longer re-points the installed game's shortcuts at that copy.

Game behaviour is unchanged. Every disc produces frame-for-frame identical game state to 1.6.5, on Windows and Linux alike.

Re-run setup to get the speedup. Most of it is in the module setup builds on your machine. Unzip fresh and point setup at your disc as before.

Netplay needs both players on 1.6.6, as with every release.

Ring Out 1.6.5

Choose a tag to compare

@jackpoison-prog jackpoison-prog released this 27 Sep 23:26

A fix-and-speed release: the European disc gets the built-in movie player, an occasional crash at launch is gone, and the US, European and SC2 Plus discs are 1.5-2.5% faster again.

  • European disc: built-in movie player. Movies on the European disc now go through the same built-in player as US and SC2 Plus, instead of only the game's own decoder. The player first had to learn one thing about PAL: a 50 Hz disc shows 20 movie frames a second and skips the rest to keep the sound in step. The player now follows the game's own frame count, so picture and sound stay in sync.
  • Fixed a crash at launch. About 1 start in 200 crashed before the game appeared, and relaunching "fixed" it. Two threads were setting up the controller configuration at the same moment. Tested fixed over 2,000 starts.
  • Faster on US, European and SC2 Plus. 1.6.4's twin chunks are fast copies of each block of game code, used at the entry points real gameplay takes. The list of those entry points was recorded before another 1.6.4 change moved some of them, so the hottest code (the game's random number generator) was running in the slow copy. With the list re-recorded, measured on a Steam Deck against 1.6.4 over the same 16,000 frames: US 2.5% less CPU, European 2.2% less, SC2 Plus 1.5% less. The Japanese disc was not affected.

Game behaviour is unchanged. Every disc produces frame-for-frame identical game state to 1.6.4.

Re-run setup to get the speedup. It is in the module setup builds on your machine. Unzip fresh and point setup at your disc as before.

Netplay needs both players on 1.6.5, as with every release.

Ring Out 1.6.4

Choose a tag to compare

@jackpoison-prog jackpoison-prog released this 27 Sep 16:20

Another speed release: 8-13% less CPU than 1.6.3, depending on the disc. All of it comes from the code the recompiler generates.

Measured directly on a Steam Deck, 1.6.3 against 1.6.4 over the same 16,000 frames of an arcade match, each module built by its own release's setup, 8 runs each (every 1.6.4 run beat every 1.6.3 run):

  • US disc: 11.0% less CPU
  • Japanese disc: 8.3% less
  • European disc: 11.9% less
  • SC2 Plus: 12.7% less

What changed:

  • Twin chunks (the biggest part, 5.7-6.7% on every disc): each block of game code is compiled twice. A fast copy handles the entry points real gameplay uses, and the ordinary copy covers everything else.
  • Chunk overhang (US, European, SC2 Plus): one hot loop sat across the boundary between two compiled blocks, so every pass through it took a detour. It now stays inside one block. The Japanese disc's layout never had this problem.
  • Cheaper memory stores (every disc): stores through the stack and the game's two global data pointers skip a check that could never fail.
  • Three smaller improvements to how the recompiler handles floating point and paired-single maths, plus a CPU-state value it now keeps in a register instead of memory.
  • Starting Ring Out while it is already running now says so instead of opening a second copy.

Game behaviour is unchanged. On the US, European and SC2 Plus discs, some internal events now happen on slightly different frames, so replays recorded on 1.6.3 may play out differently on 1.6.4. Record new ones.

You need to re-run setup to get the gain. The speedup is in the module setup builds on your machine. Unzip fresh and point setup at your disc as before.

Netplay needs both players on 1.6.4, as with every release.