Simple parser / extractor for starlight engine SLF files. No one did this so I did. It's just dumb pixel packing on a file, splitted bu header and resources. Take a look at the hexpat file under IMHex or even the python script to understand it more. Tested on beta / demo version of the engine. Can't garantee to work with any version. Warning, the engine file are quite messy. You'll end of with a lot of unexpected assets that somehow got packed into prod ...
Install python, then install Pillow: python -m pip install Pillow
Then put the loaf.py file next to the engine and run python loaf.py -o DATAExt/UI "Games\AdventureMode\Chapter C\Datafiles\UI.slf" (change to the output path and slf path)
To extract the content of a map to the "VillageB" folder :
python loafed.py "Games/AdventureMode/Chapter C/Maps/Village/VillageB/MapData.slf" "VillageB"
To convert to TMX (tiled):
Copy the gen_tsx and merger to the folder, then :
python loafed.py "Games/AdventureMode/Chapter C/Maps/Villa/VillaA/MapData.slf" Out/Villa/VillaA
python gen_tsx.py -i Out/Villa/VillaA -o Out/Villa/VillaA/Tiled
python merger.py -i "Out/Villa/VillaA" -o "Out/Villa/VillaA/Tiled/VillaA.tmx"
If you want to rip all maps, then copy the files plus map_rip.py and run it like this :
python map_rip.py -i "Games/AdventureMode/Chapter C/Maps" -o MapsOut
Then use Tiled to open the tmx files and view the maps
Not hard, but to be done. I'm not interested in the engine as it's proprietary and not documented at all + RPG Maker MV is far supperior to quickly iterate than custom LUA / C++ engine.
- Support
AUTOLOAD00blocks ? - Support
MAPINFO000to convert maps to Tiled + RPG Maker JSON ? - Save editor / convert to JSON (
STARv201LOADINFO)
Future plans ? Port it to rpg maker, add a SLF file loader and see if the browser like that !