Crash when trying to load ROM in a subdirectory
Hi there. Thanks for this great library - it's been very useful for a project of mine.
I have quite a few ROMs in my project so I'd like to organise them into subdirectories, however it seems that the library crashes when loading the ROM (with MAME at least) whenever the path contains a slash (I tried forward and backslashes). Leaving the ROM in the top level MyROMs directory works fine. I'm using the Blueprint LibretroCoreInstance.
Hi there!
I just tried UnrealLibretro for the 1st time, and it worked fine, even with a ROM in a subfolder. Details:
- UnrealLibretro v0.2.1-alpha, UE 4.27.2
- LibretroWorld > LibretroTVActor > LibretroCoreInstance > Rom Path >
my_subdir/my rom.gdi - Core: flycast_libretro
- Windows 10 (21H1)
- Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz 3.40 GHz
- NVIDIA GeForce GTX 1660
The plugin seems to either crash or ROM doesn't run. Example entry in LibretroCoreInstance:
- Rompath: berzerk.zip
- Core path: mame2010_libretro.dll
On run this generates an error that core can't load the game.
If I change Rompath to "berzerk", Unreal doesn't crash but nothing shows up on the monitor. Is the specific cores that I need to use for MAME?
Having a very similar problem, likely it's user error but for the life of me I don't know what else to try. An example project would be quite helpful, but I guess not including the roms makes that hard... maybe one of those old demo scene roms?
But yeah that's it, specifically stuck at the step "Click on the actors to set their Cores and ROMs then hit play" found the place that seems where they go, under the world outliner, selected LibretroTVActor, under details is a LibretroCoreInstance (inherited) and inside of that is a rom path and a core path, filling out both of those then testing the game by clicking play, the LibretroWorld loads for a moment but when I position the character toward the screen/TVActor it crashes the engine.
error given: Fatal error: [File:C:/actions-runner/_work/UnrealLibretro/UnrealLibretro/UE_4.27/UnrealLibretro/HostProject/Plugins/UnrealLibretro/Source/UnrealLibretro/Private/sdlarch.cpp] [Line: 838] Failed to load core: C:/Program Files/Epic Games/UE_4.27/Engine/Binaries/Win64/32D658614EA80C11B0134E87F34BF0A9.dll
UE4Editor_UnrealLibretro!LibretroContext::load() [C:\actions-runner_work\UnrealLibretro\UnrealLibretro\UE_4.27\UnrealLibretro\HostProject\Plugins\UnrealLibretro\Source\UnrealLibretro\Private\sdlarch.cpp:838] UE4Editor_UnrealLibretro!<lambda_54c8ca79f7e54b6f366a64590c0f3de9>::operator()() [C:\actions-runner_work\UnrealLibretro\UnrealLibretro\UE_4.27\UnrealLibretro\HostProject\Plugins\UnrealLibretro\Source\UnrealLibretro\Private\sdlarch.cpp:983] UE4Editor_UnrealLibretro!FLambdaRunnable::Run() [C:\actions-runner_work\UnrealLibretro\UnrealLibretro\UE_4.27\UnrealLibretro\HostProject\Plugins\UnrealLibretro\Source\UnrealLibretro\Private\LambdaRunnable.cpp:34] UE4Editor_Core UE4Editor_Core kernel32 ntdll
Running 4.27.2 with the 4.27 binary on windows 10 home AMD Ryzen 5 2600 Six-Core Processor 3.40 GHz 16GB Ram Nvidia 3090
the rom tried to load is sonic the hedgehog and the dll is genesis plus gx.
Any help appreciated, thanks. -Mike
edit: tested other cores and crash did not happen, but also nothing loaded and was met with a black screen on the libretroTVActor, so some progress at least
edit 2 - Working: tried other cores and roms and it did finally work, seems that some cores are incompatible and seemingly some of the roms I tried were corrupted. Also worth noting that the way to list the rom is in the format "C:\Users\micha\Documents\Unreal Projects\SonicFF\Plugins\UnrealLibretro\MyROMs\Genesis\Sonic1.md" and the core roughly "C:\Users\micha\Documents\Unreal Projects\SonicFF\Plugins\UnrealLibretro\MyCores\Genesis\blastem_libretro.dll" it seems some of my other frustration was that I was trying to point it to a directory instead of a file (because of the way it's worded in the menu), I could see some noobs also using the wrong slash like '/' anyway, maybe this will help future people.