3.90 star(s) 23 Votes

Bauza

Newbie
Aug 15, 2016
25
52
I've played this games so many times since it came out, I hope it gets adapted to Android at some point.
 

primarx

Newbie
Dec 17, 2018
31
11
enjoyed playing it. though cheats really helped with grinding and looking for missing scenes. managed to see them all. great job with the game(y)
 

RainSlide

New Member
Jan 8, 2020
13
10
Just like Throwaway7777, I can't get every scene in game…

But I can decode the gallery data file, so, here is the modified gallery data file with every scene unlocked: https://attachments.f95zone.to/2021/07/1341826_galleryData.dat
(It's just the attachment below, I copy its link here for everyone's convenience.

Gallery data location is the same with your save:
Code:
%APPDATA%\..\LocalLow\Pyorgara\SL
  • You should at least have original galleryData.dat and SLSave1.dat within this directory, maybe more SLSaveX.dat for more saves
  • Delete, rename or move away the original galleryData.dat, put this one there instead
If you would like to do it by yourselves, then:

Both galleryData.dat and SLSave1.dat shares the same C# Assembly binary format, uses ANSI ASCII encoding for the text inside. Use a to modify them.

If you are new to binary file editing, just remember everything the hex editor shows is just hexadecimal numbers, convert them between hex and decimal if you don't think & count in hexadecimal. The rest is just like editing the blocks in game maps, except for there is no grass, water or houses, just numbers, strings, and everything else, shown as hexadecimal.

Note that if you do it wrong enough, the game may fail to read the dat file. BACKUP FIRST if you would like to edit those dat files.

For the description below, when referring both files, the former one is always to galleryData.dat, and the latter one is always to SLSave1.dat.
  • Starts with:
    • 23 bytes: 0001000000FFFFFFFF01000000000000000C020000000F
    • 15 bytes: 417373656D626C792D435368617270 (= Assembly-CSharp)
    • 5 bytes: 0501000000
    • 1 byte: 12 or 11 for me, I don't know what does it mean
    • Data name, length & content is variable, but 18 bytes for both of the file:
      • 534C6D61696E2B47616C6C65727944617461 (= SLmain+GalleryData)
      • 534C6D61696E2B506C617965724461746141 (= SLmain+PlayerDataA)
    • 4 or 3 bytes: 18000000 or 000000, don't know why they differs
  • Then the names, all text, enable string preview in ANSI ASCII encoding in your hex editor to see them.
    For each name:
    • Starts with the length of this name in bytes, a 1 byte hex number;
      (For example, if a name starts with 12, which is 18 in decimal, then the length of this name is 18 bytes.)
    • Then the name in ANSI ASCII encoding, with the exact same length.
  • Then the values, mostly binary or numeric, with some text:
    • For galleryData.dat, it's about arrays (or lists) of binaries.
      For each entry in the gallery, there is a list of scenes;
      and so for each name in galleryData.dat, there is an array of binaries indicating whether this scene is unlocked or not.
      • It starts with 52 bytes, still, I don't know what it is: 07070707070707070707070707070707070707070707070708080808080808080808080808080808080808080808080802000000
      • Then, for each value, there is:
        • 1 byte: 09
        • 1 byte: hex number for the index of the array
        • 3 bytes: 000000
      • (For example, if the 8th name is galleryVeils and the 8th value got 090A000000, then the index of the value of galleryVeils is 0A, or 10 in decimal.)
      • After the 09XX000000 indexes, we finally reach the value, or the array, itself.
        For each array, there is:
        • 1 byte: 0F
        • 1 byte: hex number for the index of the array
        • 3 byte: 000000
        • 1 byte: hex number for the length of the array
        • 4 byte: 00000008
      • (For example, for galleryVeils, the array with the index of 10, we got 0F0A0000000400000008, the index is again 0A, or 10 in decimal, and it has a length of 04 or 4 in decimal.)
      • Then, for the content of each array, there is some 4 bytes 00000000 (false) or 01000000 (true) with their amount matching the length of the array, with false for this scene is locked, and true for this scene is unlocked.
      • (For example, for galleryVeils, the array with the index of 10, we may got 00000000010000000100000001000000, then there is 1 scene locked and 3 scene unlocked.)
    • For SLSave1.dat, it's much more difficult. You had better edit your save with signed 16 bit / signed 32 bit number preview support and preview randomly between the value part of your save file, to see if there is a matching number at the right place, and edit it accordingly; or just use the buildin cheat feature with that heartwarming password already.
  • End with 1 byte 0B
 
Last edited:

ssj782

Engaged Member
Apr 19, 2019
3,392
5,075
I re-download this game once in a while just to watch the 'under the desk' scene, lol.
 
3.90 star(s) 23 Votes