This isn't an actual plug-in, but a little hack to achieve per-game settings in standalone Citra, which doesn't support the option at the moment.
Tested briefly and it does the trick; the same logic, with minor modifications, could also be used with other emulators that store the settings into individual files in a similar way
How to:
- Create new text file
- Paste the following code
@echo off
SET ConfigFolder=%APPDATA%\Citra\config
SET ConfigNameDefault=%ConfigFolder%\qt-config.ini
SET ConfigName="%ConfigFolder%\%~n1.ini"
echo %ConfigFolder%
echo %ConfigNameDefault%
echo %ConfigName%
REM Backup copy
COPY %ConfigNameDefault% %ConfigNameDefault%.bak
IF EXIST %ConfigName% (
REM Use existing per-game config
COPY %ConfigName% %ConfigNameDefault%
) ELSE (
REM Create new per-game config using base INI
COPY %ConfigNameDefault% %ConfigName%
)
REM Start emulator and wait for exit
START /WAIT citra-qt.exe %1
REM Config changes while game was running are saved back into per-game INI
COPY %ConfigNameDefault% %ConfigName%
REM Restore original INI
COPY %ConfigNameDefault%.bak %ConfigNameDefault%
- Save the file as 'citra-per-game.bat' in the main Citra folder (where the .EXE is)
- In LaunchBox, create a new emulator as follows
And that's it
Now, for 3DS games where you want to use a custom config, simply switch emulator in Launchbox using this new entry, and upon startup it will create a <ROM filename>.ini within Citra settings folder; every change to the emulation settings done while the ROM is loaded will be saved in this new file (once you close the emulator app) and then loaded back on the next execution
As usual, make a manual backup of your existing settings just to be safe, and use at your own risk