Mod Ren'Py Global Walkthrough Mod for most Ren'Py games [1.1] [fergz]

fergz

Newbie
Jun 19, 2019
63
380
The mod has been updated to version 1.1 which includes a new mod version for (most) RENPY 8 games.
1.1:
New version of the mod which supports extracting script files from RENPY 8 version:​
Includes a modified version of which I modified to extract files from RENPY8 games.​
It is guaranteed to work on games that hide .rpy files.
But because un.rpyc has not been updated in a while, this doesn't work on RENPY8 games that hide .rpyc files and delete .rpy files.
Performance boosts (BADIK TEST):​
1892 variables fetched in 1391 choices. 213304 lines​
v1.0.1: fergzWtMod ran for 4.532114267349243 seconds​
v1.1: fergzWtMod ran for 2.452584800000295 seconds​
Some other minor improvements.​
 

Hung Gen

Newbie
Sep 16, 2017
98
25
It works for Misfits .8.1, except for the lotion scene.
I can try to upload the tracebback later if needed.
 

Qmil679

Q / Motherlover
Donor
Mar 13, 2019
5,080
13,748
Anyone knows if this mod will work for the game: "Time For You" ?
 

ZLZK

Member
Modder
Jul 2, 2017
295
802
fergz you don't need to unpack/decompile any files.
Loaded files are variables that you can read/edit directly in game.

All labels:
Python:
    for k, v in renpy.game.script.namemap.items():
        if isinstance(k, basestring):
            # each label code here
Labels are: renpy.ast.Label
Choices are: renpy.ast.Menu

For rest read renpy/ast.py file.

For example: In this method I read choices from the game and change them,
without reading/editing any game files.
 
Last edited:

ZLZK

Member
Modder
Jul 2, 2017
295
802
fergz you don't need to unpack/decompile any files.
Loaded files are variables that you can read/edit directly in game.

All labels:
Python:
    for k, v in renpy.game.script.namemap.items():
        if isinstance(k, basestring):
            # each label code here
Labels are: renpy.ast.Label
Choices are: renpy.ast.Menu

For rest read renpy/ast.py file.

For example: In this method I read choices from the game and change them,
without reading/editing any game files.
fergz if you are interested I have done working example of my proposal.

But I have started working on real time version.
(Since it can evaluate conditions correctly.)
And I intend on completing it.
 

fergz

Newbie
Jun 19, 2019
63
380
fergz if you are interested I have done working example of my proposal.

But I have started working on real time version.
(Since it can evaluate conditions correctly.)
And I intend on completing it.
Cool! I'll check this out and probably will implement it to this mod when I'll have some time, your method (if it works properly with all versions) is definitely better than unpacking/decompiling the game files.
 
  • Like
Reactions: AVM666

vimey

Active Member
Nov 29, 2020
823
601
fergz if you are interested I have done working example of my proposal.

But I have started working on real time version.
(Since it can evaluate conditions correctly.)
And I intend on completing it.
Your version is good enough but I noticed it can't show the choice outcomes if they are listed after the jump if you can make that happen it would be much better take a look at this game script for example
 
  • Like
Reactions: doujin1

ZLZK

Member
Modder
Jul 2, 2017
295
802
My version is nowhere done, I made that example it short time.
I will continue to improve it when I will have time.

Your version is good enough but I noticed it can't show the choice outcomes if they are listed after the jump if you can make that happen it would be much better take a look at this game script for example
I didn't cover after jump because I have yet no idea how to handle it.
Because if you would just include jump it will scan whole game till the end.
I guess I could scan n times of jump, but it will be not ideal.
I will check out later how that games has it done.

So far I have done choice styling and improved regex a lot.
Now it works with any kind of Variable Assignment.
And variable can be nested now. (dict item, class item, etc)
I mean it is not limited to value being only bool or int.
It can be anything as long as it will turn out to be bool or int.
I mean it can be function call, dict item, list item, etc.
This is something only real time version can do.
Because you get to evaluate code since you have access to store.
But it has to be Variable Assignment, I can't yet handle changes done in functions or classes.

EDIT:
Added support for translations. (Translated text couldn't match changed menu.)
Your version is good enough but I noticed it can't show the choice outcomes if they are listed after the jump if you can make that happen it would be much better take a look at this game script for example
Added checking for first jump.
 
Last edited:
  • Like
Reactions: vimey

vimey

Active Member
Nov 29, 2020
823
601
My version is nowhere done, I made that example it short time.
I will continue to improve it when I will have time.



I didn't cover after jump because I have yet no idea how to handle it.
Because if you would just include jump it will scan whole game till the end.
I guess I could scan n times of jump, but it will be not ideal.
I will check out later how that games has it done.

So far I have done choice styling and improved regex a lot.
Now it works with any kind of Variable Assignment.
And variable can be nested now. (dict item, class item, etc)
I mean it is not limited to value being only bool or int.
It can be anything as long as it will turn out to be bool or int.
I mean it can be function call, dict item, list item, etc.
This is something only real time version can do.
Because you get to evaluate code since you have access to store.
But it has to be Variable Assignment, I can't yet handle changes done in functions or classes.

EDIT:
Added support for translations. (Translated text couldn't match changed menu.)

Added checking for first jump.
Got this bug with this game
 

St_Dmitry

Member
Apr 3, 2017
105
552
fergz Thanks for your mod! :love:
It works great and i have only one 'feature' to ask if it's acceptable. What i want to know - is it 'worked' or not when i opened the game or started game/loaded saved game. Maybe you can add 'flag' showing that it's working :)
In some games where there's no points in first choice - i can't stop to think that i've done installation of this mode wrong.. :cry:

Or is there any way to check that all is working fine, when a game opens without an error?
 

Kylson23

Member
Apr 24, 2019
209
2,368
I have already fixed it and I have also redone the way of getting flags.
Now should be more precise and I have included flags with string value.
Hi, i have this error in the game become a rockstar 0.99 beta
 

ZLZK

Member
Modder
Jul 2, 2017
295
802
Hi, i have this error in the game become a rockstar 0.99 beta
I guess change:
Python:
        common_flags = eval( " & " . join([ "set({})" . format(flags) for flags in data.values() ]) )
to:
Python:
        if not data:
            return
        
        common_flags = eval( " & " . join([ "_set({})" . format(flags) for flags in data.values() ]) )
 
Last edited:

ZLZK

Member
Modder
Jul 2, 2017
295
802
I have reconstructed my mod for better compatibility.
Added support for say_menu_text_filter translations.
Added flags with float values.
Overall didn't make any progress in extending mod,
I have just slightly improved what was already there.

P.S.:
Mod doesn't show up if there isn't at least 2 pickable choices. (Locked choices doesn't count.)
 
Last edited:

vimey

Active Member
Nov 29, 2020
823
601
I have reconstructed my mod for better compatibility.
Added support for say_menu_text_filter translations.
Added flags with float values.
Overall didn't make any progress in extending mod,
I have just slightly improved what was already there.

P.S.:
Mod doesn't show up if there isn't at least 2 pickable choices. (Locked choices doesn't count.)
Got this error with two games I just tried