Known Issues, Error Codes & Performance Fixes

Documented workarounds and diagnostic tools from AksharDP/xc2-recomp (v0.1.12) for setup verification errors, VRAM memory budgets, town streaming slowdowns, and AMD/Intel GPU quirks.

  • Log location: logs/xc2.log
  • Town streaming fix: core_float = 1
  • AMD cloud sea fix: feedback_snap = 1
  • Portable profile fix: v0.1.12
Macro view of a handheld mainboard PCB and multi-core GPU silicon package
AVX2 CPU and Vulkan 1.3 VK_EXT_external_memory_host pipeline

Current known issues in XC2 Recomp (v0.1.12)

The upstream README and issue tracker at AksharDP/xc2-recomp/issues document three active engine limitations in early development:

Symptom / LimitationRoot Cause in EngineCurrent Status or Workaround
Far cloud sea texture jumps when camera movesOccurs at any framerate and resolution during camera rotation.Tracked upstream in {REPO}; separate from the thin-line AMD flicker fixed by feedback_snap = 1 in v0.1.11.
16:9 HUD stretching on ultrawide aspect ratiosAbove 1280x720 at non-16:9 shapes, the 2D interface remains laid out for 16:9.Keep picture_fit = keep in xc2.ini until custom aspect ratio layout support lands.
Extra ~1.3 GiB memory usage in default mirror modeTo prevent props from sliding or flickering above 30 FPS, the runtime copies GPU-read buffers when each frame is submitted (memory = mirror).If you run low on RAM/VRAM, set memory = import in xc2.ini to save ~1.3 GiB (note: every frame then waits for the GPU to finish the previous frame via frame_guard, which runs ~25% slower).

Fixing Goldmouth & town streaming slowdowns

When leaving or entering dense areas such as Goldmouth’s covered market, Xenoblade Chronicles 2 queues asset streaming workers on Switch virtual core 1. Make sure these settings are active in xc2.ini (all enabled by default since v0.1.4–v0.1.12):

  • core_float = 1: Lets guest job threads pinned to virtual core 1 run on any of the three virtual cores (still respecting one thread per core). On an RTX 4070 Laptop, core_float = 1 raises framerate when leaving Goldmouth’s covered market from ~65 FPS to ~95 FPS.
  • zstd_native = 1: Replaces the game’s ARM64 Zstandard decompression routine with a native host x86-64 zstd decoder.
  • feedback_snap = 1 & lod_guard = 1: feedback_snap = 1 (refined in v0.1.11 for issue #39) reads self-sampled render targets from a snapshot copy so thin lines do not flicker in the cloud sea on AMD GPUs; lod_guard = 1 waits for level-of-detail data updates to finish before the GPU reads them.

XC2-Setup error codes & how to resolve them

If XC2-Setup stops during Stage 1 (Check) or Stage 2 (Extract), match the message ID against this table:

Installer Error IDMeaningResolution
check.region_mismatch / check.dlc_other_regionYour base game, update, and DLC files belong to different regional Title IDs.Ensure US/EU base (0100E95004038000) is paired with US/EU Update 3.0.1 (0100E95004038800), or JP base (0100F3400332C000) with JP Update 3.0.0 (0100F3400332C800).
check.input_damagedA source game archive ended early or failed its internal NCA hash verification.Re-copy the named archive from your console storage and run XC2-Setup again.
extract.romfs_mismatchThe merged 3.0.1 RomFS checksum does not match expected-xc2-3.0.1.json.Ensure your update package is Update 3.0.1 (or 3.0.0 for Japan), re-copy both base and update files, and run with --verify.
Saves or flight logs missing before v0.1.12Earlier releases resolved the portable profile or created flight/ outside the install folder in some working directories.Update to {TAG} (PR #57 and PR #79 fix portable profile/ resolution and place flight/ directly next to xc2.exe).

Collecting logs, flight spike dumps & reporting bugs

When reporting an issue on AksharDP/xc2-recomp/issues, the maintainer requests three items (added in v0.1.9):

  1. The log file (logs/xc2.log): Open F1 → Advanced → Open log folder to grab xc2.log from the run where the problem occurred (previous runs are kept as xc2.1.log through xc2.4.log).
  2. A save file standing at the bug location: Copy the save from your install’s profile/ folder where loading the save immediately reproduces the visual bug or hang.
  3. Optional diagnostics (trace & flight): Under [diagnostics] in xc2.ini, set trace = perf (or svc,host,ipc,fs,gfx,perf,sched,audio,present) for detailed logging, or enable the flight recorder (flight = 1, flight_spike_ms = 100) to save frame dumps to flight/ whenever a frame exceeds 100 ms.

XC2 Recomp uses SDL3 controller input with automatic Nintendo, Xbox and PlayStation button prompt generation (plus custom rumble curve and Xbox impulse trigger options):

ControllerBest For in XC2 RecompHardware AdvantageLink
8BitDo Ultimate 2 WirelessNintendo layout & Windows/Deck dockZero-drift TMR sticks, charging dock, native Switch/XInput mode toggleView on Amazon
GameSir Cyclone 21000 Hz Blade combo cancelingTMR sticks, micro-switch ABXY buttons and 1000 Hz wireless dongleView on Amazon
Sony DualSensePlayStation button promptsAutomatic PlayStation icon rendering in XC2 tutorials and Driver Arts HUDView on Amazon
Xbox Wireless ControllerXbox prompts & impulse triggersSupports rumble_triggers = 1 in xc2.ini with redrawn Xbox button glyphsView on Amazon

As an Amazon Associate, this site earns from qualifying purchases.

Mountain peaks rising above a dense sea of clouds at sunrise
Karst peaks emerging above a morning sea of clouds, echoing the Cloud Sea Titans of Alrest
Natural green emerald crystal prism embedded in dark mineral matrix
Hexagonal emerald crystal prism in matrix, echoing the Aegis Core Crystal geometry
Desktop gaming PC workstation with dual monitors and tempered glass chassis
Windows 10/11 x64 desktop workstation for Vulkan 1.3, AMD FSR 3.1/4 and 3040x1710 internal rendering

Common questions

Why did jiggle bones, hair, and cloth physics go flat above 30 FPS in older builds?

In builds prior to v0.1.11, running at 60+ FPS caused secondary bone physics (hair, cloth, and jiggle bones) to lose their bounce and go flat. Update to v0.1.11 or newer ({TAG}), where PR #45 fixed high-framerate bone physics.

Does the maintainer test on AMD GPUs?

As noted in the upstream README, the maintainer tests locally on Intel integrated and NVIDIA GPUs and welcomes AMD GPU bug reports (with a save file in profile/ and logs/xc2.log) on GitHub Issues.