Mod Ren'Py Summertime Saga: SPH Mod [0.20.16 Beta59] [ImTransAndTiny]

5.00 star(s) 14 Votes

ImTransAndTiny

Active Member
May 1, 2020
878
1,956
I'm getting my information from srksrk 68. The page for his mod has instructions for applying the NT mod on Android 10 or earlier. If you're able to get the NT mod working on Android, then use the same procedure on this mod. All Ren'Py mods work the same way, so if that one works, this one works.
 
  • Like
Reactions: ballsontheline2000

srksrk 68

Forum Fanatic
Modder
Sep 17, 2018
4,404
5,626
If I may add some things since I am mentioned here...

1. There are two folders that come into play on Android. One is the installation folder that can only be accessed in read-only mode. The other is the public folder, which normally can only be accessed by the application, but in read/write mode. Other applications only have access if you grant it to them, e.g. some file explorers can get it. That's what is described in my thread.
2. It does not make a difference if you put rpa files or extracted files there. Android does not know about rpa or rpy or Ren'py.
3. It does not make sense to install NT and SPH mod at the same time anyways.

And happy777 did you notice there is an EDIT button to your posts? Maybe you want to try it out some time...
 

ImTransAndTiny

Active Member
May 1, 2020
878
1,956
But iam using your mod and ImTransAndTiny mod is not working can u please hepl
Are you installing the SPH Mod in a clean copy of Summertime Saga? The reason why I use an RPA is because there's only one file to delete to uninstall the mod. If you've previously installed the Naughty Tribute Mod, you would need to delete the images, overlays, and scripts folders, google_translate.rpa and, ideally, presplash.png. The two mods can't be installed at the same time. Only one copy of each script file can be loaded at a time.
 

ImTransAndTiny

Active Member
May 1, 2020
878
1,956
I have tried not working please do something
Since all Ren'Py mods work by having Ren'Py find and load their files instead of the original game files, I can't explain why one mod would work for you and another wouldn't. I don't have an Android device to test the mod on, so I'm not able to test srksrk 68's instructions. I depend on someone else who has Android to tell me whether it can be done and how to do it.
 

ImTransAndTiny

Active Member
May 1, 2020
878
1,956
Really it's not working u ahve to do something that's why I am telling you to do something because there are many Android users so please do something
But what can I do? I know nothing about Android and don't have an Android device. I don't know how to help you. I can only hope that someone else knows what to do.
 
  • Like
Reactions: RumpGoblin

KLUMZEE

Newbie
Sep 26, 2021
21
12
What can u tell
Bruh, you are borderline-harassing the mod author at this point with the amount of posts you've made about this. She does not owe you or anyone else anything so she doesn't "need" to do jack shit to support Android. You've asked her to, she explained why she can't. End of conversation. Whether it's because she's unfamiliar with how to make it compatible or because it can't be done any more doesn't matter.

If android is your only way to play then maybe you should find a different game?
 

srksrk 68

Forum Fanatic
Modder
Sep 17, 2018
4,404
5,626
Tell srksrk 68 he can help you with this and i have tried all the methods it's really not working
OK, please stop yelling. Everybody here tries to help but you will get people a lot more helpful if you are at least trying to be polite.

From the screenshots you posted earlier, it appears that you put the rpa on the same level as the game folder on your device. Have you tried to put it inside that folder instead? like "<summertime>/game/sph.rpa" (or whatever it's called)?

Edit: I also noticed that you apparently misspelled the game folder (you call it "games"). Note that correct spelling is required.
Edit 2: And you've put it into the files folder, which is one level up. So in total it should look like: "<summertime>/files/game/sph.rpa".
 
Last edited:
  • Like
Reactions: ImTransAndTiny

ImTransAndTiny

Active Member
May 1, 2020
878
1,956
OK, please stop yelling. Everybody here tries to help but you will get people a lot more helpful if you are at least trying to be polite.

From the screenshots you posted earlier, it appears that you put the rpa on the same level as the game folder on your device. Have you tried to put it inside that folder instead? like "<summertime>/game/sph.rpa" (or whatever it's called)?
Much appreciated, srk. I didn't want to drag you into this.
 

srksrk 68

Forum Fanatic
Modder
Sep 17, 2018
4,404
5,626
For the records: after trying for some time, I was not able to get the SPH mod to work on Android as well. Seems that either no RPA files can be loaded from SD card at all (this is where custom mods go), or it's an issue with the SPH mod itself (which I doubt). So, bad luck :(
 

srksrk 68

Forum Fanatic
Modder
Sep 17, 2018
4,404
5,626
For the records: after trying for some time, I was not able to get the SPH mod to work on Android as well. Seems that either no RPA files can be loaded from SD card at all (this is where custom mods go), or it's an issue with the SPH mod itself (which I doubt). So, bad luck :(
I guess this is because of the way Ren'Py implements the load strategy, specifically for Android:
Code:
def load_core(name):
    """
    Returns an open python file object of the given type.
    """

    name = lower_map.get(name.lower(), name)

    if renpy.config.file_open_callback:
        rv = renpy.config.file_open_callback(name)
        if rv is not None:
            return rv

    # Look for the file directly.
    if not renpy.config.force_archives:
        try:
            fn = transfn(name)
            return open_file(fn, "rb")
        except:
            pass

    # Look for the file in the apk.
    for apk in apks:
        prefixed_name = "/".join("x-" + i for i in name.split("/"))

        try:
            return apk.open(prefixed_name)
        except IOError:
            pass

    # Look for it in archive files.
    for prefix, index in archives:
        if not name in index:
            continue

        afn = transfn(prefix + ".rpa")

        data = [ ]

        # Direct path.
        if len(index[name]) == 1:

            t = index[name][0]
            if len(t) == 2:
                offset, dlen = t
                start = ''
            else:
                offset, dlen, start = t

            rv = SubFile(afn, offset, dlen, start)

        # Compatibility path.
        else:
            f = file(afn, "rb")

            for offset, dlen in index[name]:
                f.seek(offset)
                data.append(f.read(dlen))

            rv = StringIO(''.join(data))
            f.close()

        return rv

    return None
As you can see, Ren'Py first tries to load the physical file, then it looks inside any APK if finds, and only then it looks inside the RPA files. This explains why my mod works, but your's doesn't.

I personally redefined that method for the possibility to disable the mod (all mods in fact) using parameter DISABLE_MOD which my mod introduces. This keeps Ren'Py from performing the first part (looking for the physical file). I guess it would be possible to change this in a way that also on Android, RPA's are parsed before APK's. But maybe that's too much messing with the engine...
 

ImTransAndTiny

Active Member
May 1, 2020
878
1,956
I guess this is because of the way Ren'Py implements the load strategy, specifically for Android:
Code:
def load_core(name):
    """
    Returns an open python file object of the given type.
    """

    name = lower_map.get(name.lower(), name)

    if renpy.config.file_open_callback:
        rv = renpy.config.file_open_callback(name)
        if rv is not None:
            return rv

    # Look for the file directly.
    if not renpy.config.force_archives:
        try:
            fn = transfn(name)
            return open_file(fn, "rb")
        except:
            pass

    # Look for the file in the apk.
    for apk in apks:
        prefixed_name = "/".join("x-" + i for i in name.split("/"))

        try:
            return apk.open(prefixed_name)
        except IOError:
            pass

    # Look for it in archive files.
    for prefix, index in archives:
        if not name in index:
            continue

        afn = transfn(prefix + ".rpa")

        data = [ ]

        # Direct path.
        if len(index[name]) == 1:

            t = index[name][0]
            if len(t) == 2:
                offset, dlen = t
                start = ''
            else:
                offset, dlen, start = t

            rv = SubFile(afn, offset, dlen, start)

        # Compatibility path.
        else:
            f = file(afn, "rb")

            for offset, dlen in index[name]:
                f.seek(offset)
                data.append(f.read(dlen))

            rv = StringIO(''.join(data))
            f.close()

        return rv

    return None
As you can see, Ren'Py first tries to load the physical file, then it looks inside any APK if finds, and only then it looks inside the RPA files. This explains why my mod works, but your's doesn't.

I personally redefined that method for the possibility to disable the mod (all mods in fact) using parameter DISABLE_MOD which my mod introduces. This keeps Ren'Py from performing the first part (looking for the physical file). I guess it would be possible to change this in a way that also on Android, RPA's are parsed before APK's. But maybe that's too much messing with the engine...
If the solution is to stop using RPA, I'll do that.
 

KLUMZEE

Newbie
Sep 26, 2021
21
12
Well this has been a rollercoaster. Anyway, Mod Author, hope you are well. Been abit since I last posted. You are awesome and your work is appreciated.
I agree with this sentiment 100%. I love the mod and all the work ImTransAndTiny has done on it. There's a lot of people here that appreciate it. It's hard to find good examples of this type of content and I honestly think that this mod is some of the best I've ever seen.
 

ZeroRules

Newbie
Sep 29, 2022
58
39
No doubt you were working hard, that seems to be your nature. And this is the pregnancy update ya? Cis/Cheat Futa Eve getting any dialogue? I thought I read a log of the dialogue you typed up but honestly can't recall it's been awhile.
 

happy777

New Member
Apr 9, 2020
6
1
For the records: after trying for some time, I was not able to get the SPH mod to work on Android as well. Seems that either no RPA files can be loaded from SD card at all (this is where custom mods go), or it's an issue with the SPH mod itself (which I doubt). So, bad luck :(
Thank u srksrk 68 for listening and sorry if I told something wrong to anyone
 

ImTransAndTiny

Active Member
May 1, 2020
878
1,956
No doubt you were working hard, that seems to be your nature. And this is the pregnancy update ya? Cis/Cheat Futa Eve getting any dialogue? I thought I read a log of the dialogue you typed up but honestly can't recall it's been awhile.
It always ends up being a mixed bag of whatever I was inspired to work on, and what seemed like low-hanging fruit (easy progress).
 
5.00 star(s) 14 Votes