Ren'Py Is possible "De-compile " a game Ver. Ren'Py 7.4.2 an convert to an old version of Ren'py?

Sexy Afrodita

Member
Jun 6, 2018
361
211
I have problems with many problems with games in the version 7.4.2. my pc is old, tried to play the last version of some games but, saddly can't run anymore, I think maybe "re.packing" the entire game to another old version of ren'py can help, but not sure.. some can tell me how find, manuals or tutorials of how to do this? please any help be apreciated!!

You don't have permission to view the spoiler content. Log in or register now.
 
  • Like
Reactions: Mattthetadpole

anne O'nymous

I'm not grumpy, I'm just coded that way.
Modder
Donor
Respected User
Jun 10, 2017
10,957
16,188
[...] I think maybe "re.packing" the entire game to another old version of ren'py can help, but not sure.. [...]
I can works, but for how long ? The version 7.4.x do not just introduce support for 64bits computers, it also introduce the support for Python 3.x and add new features. Therefore, at most doing this would works for few months only, until all games use, without necessarily understanding it, one of those new feature or Python 3.x syntax.

By example, there's a game that was broke when he past to the version 7.4.2, just because there's two divisions inside its code. As ridiculously insignificant as it can seem, something like value / value is a big change that make a game wrote with a version prior to 7.4.0 version incompatible with any recent version of Ren'py. In this particular case, the game wrote for the 7.4.0, or later, version would works on an ancient version, but it's the best example to show how a really small change can break anything. There many other changes like that, more complex and so difficult to understand, and few among them would permit to play the game with a version prior to 7.4.0
 

Sexy Afrodita

Member
Jun 6, 2018
361
211
I can works, but for how long ? The version 7.4.x do not just introduce support for 64bits computers, it also introduce the support for Python 3.x and add new features. Therefore, at most doing this would works for few months only, until all games use, without necessarily understanding it, one of those new feature or Python 3.x syntax.

By example, there's a game that was broke when he past to the version 7.4.2, just because there's two divisions inside its code. As ridiculously insignificant as it can seem, something like value / value is a big change that make a game wrote with a version prior to 7.4.0 version incompatible with any recent version of Ren'py. In this particular case, the game wrote for the 7.4.0, or later, version would works on an ancient version, but it's the best example to show how a really small change can break anything. There many other changes like that, more complex and so difficult to understand, and few among them would permit to play the game with a version prior to 7.4.0
bad fate to me, not in to tpgm games, but.. damn I'll have no choice soon, lol... Regards (y)
 
  • Like
Reactions: Mattthetadpole

79flavors

Well-Known Member
Respected User
Jun 14, 2018
1,607
2,256
[...]I think maybe "re.packing" the entire game to another old version of ren'py can help, but not sure.. some can tell me how find, manuals or tutorials of how to do this?

It's possible.

Put a copy of the game somewhere temporary and then use UnRen to unpack it. (use the 0.9 dev version, as 0.8 won't unpack some newer games).

Delete the now unneeded *.rpa game archive files (if they existed) from the /game/ folder.
If the game doesn't include *.rpy files, again use UnRen to rebuild the .rpy source code using the data in the .rpyc files.

Go into your RenPy projects folder and create a new folder for the game.

Copy the /game/ folder and all it's sub folders from the temporary directory to the RenPy project folder you created.

Delete the /game/script_version.txt file.
Delete the /game/cache/ folder completely.
Delete the /game/saves/ folder completely.

Launch the version of RenPy you want to use. Maybe or .

Then [BUILD] your copy of the project using that version of RenPy using the launcher.

Just keep in mind, as Anne says, that newer games may start to use those new 7.4.0+ version features. Which means they just won't work with anything earlier than 7.4.
A lot of games will rebuild just fine. But some won't.
 
Last edited:

Penfold Mole

Engaged Member
Respected User
May 22, 2017
3,116
7,611
It's much easier and faster to force Ren'Py to use ANGLE (DirectX) renderer than rebuild the game, IMO.

I've seen the same kind of log from people with some older Intel graphics that lack support for the OpenGL features listed in the log. The problem seems to be that an attempt to initialize OpenGL GL2 renderer first makes the new Ren'Py to freeze and an attempt to automatically switch to the ANGLE renderer to fail on this kind of hardware.

Forcing Ren'Py to use the ANGLE renderer from the start should solve the problem.

Just hold the SHIFT key while starting the game and keep holding it until the graphics configuration window of Ren'Py opens. Select ANGLE renderer, close the window and start the game again.

This worked at least for some who responded and said that it worked. Haven't seen a response yet that says otherwise.
 

Mattthetadpole

New Member
Jun 20, 2020
5
17
It's much easier and faster to force Ren'Py to use ANGLE (DirectX) renderer than rebuild the game, IMO.

I've seen the same kind of log from people with some older Intel graphics that lack support for the OpenGL features listed in the log. The problem seems to be that an attempt to initialize OpenGL GL2 renderer first makes the new Ren'Py to freeze and an attempt to automatically switch to the ANGLE renderer to fail on this kind of hardware.

Forcing Ren'Py to use the ANGLE renderer from the start should solve the problem.

Just hold the SHIFT key while starting the game and keep holding it until the graphics configuration window of Ren'Py opens. Select ANGLE renderer, close the window and start the game again.

This worked at least for some who responded and said that it worked. Haven't seen a response yet that says otherwise.
I've done this and I've had no change
 

Mattthetadpole

New Member
Jun 20, 2020
5
17
Sun Sep 5 00:43:13 2021
Windows-7-6.1.7601-SP1
Ren'Py 7.4.8.1895


Bootstrap to the start of init.init took 0.23s
Early init took 0.06s
Loader init took 0.03s
Loading error handling took 0.06s
Loading script took 0.51s
Loading save slot metadata. took 0.02s
Loading persistent took 0.00s
Importing _renpysteam: ImportError('No module named _renpysteam',)
Set script version to: (7, 4, 8)
Running init code took 0.20s
Loading analysis data took 0.27s
Analyze and compile ATL took 0.09s
Index archives took 0.00s
Dump and make backups. took 0.00s
Cleaning cache took 0.00s
Making clean stores took 0.00s
Initial gc. took 0.06s
DPI scale factor: 1.000000
nvdrs: Loaded, about to disable thread optimizations.
nvdrs: "Couldn't load nvlib." (can be ignored)
Creating interface object took 0.00s
Cleaning stores took 0.00s
Init translation took 0.09s
Build styles took 0.00s
Load screen analysis took 0.06s
Analyze screens took 0.00s
Save screen analysis took 0.00s
Prepare screens took 0.22s
Save pyanalysis. took 0.00s
Save bytecode. took 0.00s
Running _start took 0.00s
Performance test:
Interface start took 0.14s

Initializing angle2 renderer:
primary display bounds: (0, 0, 1366, 768)
swap interval: 1 frames
Windowed mode.
Could not get pygame screen: error('Could not create GLES window surface',)

Initializing sw renderer:





This my log after switching to angle2 renderer.
 

Penfold Mole

Engaged Member
Respected User
May 22, 2017
3,116
7,611
Sun Sep 5 00:43:13 2021
Windows-7-6.1.7601-SP1
Ren'Py 7.4.8.1895


Bootstrap to the start of init.init took 0.23s
Early init took 0.06s
Loader init took 0.03s
Loading error handling took 0.06s
Loading script took 0.51s
Loading save slot metadata. took 0.02s
Loading persistent took 0.00s
Importing _renpysteam: ImportError('No module named _renpysteam',)
Set script version to: (7, 4, 8)
Running init code took 0.20s
Loading analysis data took 0.27s
Analyze and compile ATL took 0.09s
Index archives took 0.00s
Dump and make backups. took 0.00s
Cleaning cache took 0.00s
Making clean stores took 0.00s
Initial gc. took 0.06s
DPI scale factor: 1.000000
nvdrs: Loaded, about to disable thread optimizations.
nvdrs: "Couldn't load nvlib." (can be ignored)
Creating interface object took 0.00s
Cleaning stores took 0.00s
Init translation took 0.09s
Build styles took 0.00s
Load screen analysis took 0.06s
Analyze screens took 0.00s
Save screen analysis took 0.00s
Prepare screens took 0.22s
Save pyanalysis. took 0.00s
Save bytecode. took 0.00s
Running _start took 0.00s
Performance test:
Interface start took 0.14s

Initializing angle2 renderer:
primary display bounds: (0, 0, 1366, 768)
swap interval: 1 frames
Windowed mode.
Could not get pygame screen: error('Could not create GLES window surface',)

Initializing sw renderer:





This my log after switching to angle2 renderer.
Your log file basically says that DirectX isn't working on your Windows 7 SP1.

Are you sure you have downloaded and installed the latest drivers for your graphics card from its manufacturer's site?
I doubt that you could get good enough drivers for your Windows via Windows Update automatically (at least not any more).

You could also run dixdiag tool (just type dxdiag in your windows menu search box) and take a look at the Display tab there.
You could either take a screenshot of the display tab or save all information into a text file by clicking at the bottom of the dxdiag dialog that says "Save all information..." and post the file here. At least the upper part of the text file until the Sound Devices section starts.

__________________________________________

Correction!

Apparently it is possible that this game is using the new model-based renderer, which requires at least OpenGL ES 3 to be supported by your graphics card, which means that the ANGLE renderer is unavailable.
ANGLE2 already requires OpenGL ES 3 support for model-based rendering.

In case your graphics card doesn't support it, it will just fail.

You could try to disable model-based rendering by downloading and extracting attached file into your main game folder (where the game launcher exe-file is). A file named "disable_model-based_rendering.rpy" will drop into the 'game' subfolder and add a configuration line to Ren'Py define config.gl2 = False that disables model-based rendering and then the old ANGLE renderer becomes available again, so you could switch to it and try to play the game.

WARNING! In case the game actually utilizes some new features that do require model-based rendering, the game will probably crash when it tries to use any of them. Also, old saves may not work!

I guess you have nothing to lose to try it, since you haven't been able to run the game at all.
 
Last edited:

Barbarian259

Newbie
Apr 18, 2021
79
47
Your log file basically says that DirectX isn't working on your Windows 7 SP1.

Are you sure you have downloaded and installed the latest drivers for your graphics card from its manufacturer's site?
I doubt that you could get good enough drivers for your Windows via Windows Update automatically (at least not any more).

You could also run dixdiag tool (just type dxdiag in your windows menu search box) and take a look at the Display tab there.
You could either take a screenshot of the display tab or save all information into a text file by clicking at the bottom of the dxdiag dialog that says "Save all information..." and post the file here. At least the upper part of the text file until the Sound Devices section starts.

__________________________________________

Correction!

Apparently it is possible that this game is using the new model-based renderer, which requires at least OpenGL ES 3 to be supported by your graphics card, which means that the ANGLE renderer is unavailable.
ANGLE2 already requires OpenGL ES 3 support for model-based rendering.

In case your graphics card doesn't support it, it will just fail.

You could try to disable model-based rendering by downloading and extracting attached file into your main game folder (where the game launcher exe-file is). A file named "disable_model-based_rendering.rpy" will drop into the 'game' subfolder and add a configuration line to Ren'Py define config.gl2 = False that disables model-based rendering and then the old ANGLE renderer becomes available again, so you could switch to it and try to play the game.

WARNING! In case the game actually utilizes some new features that do require model-based rendering, the game will probably crash when it tries to use any of them. Also, old saves may not work!

I guess you have nothing to lose to try it, since you haven't been able to run the game at all.
thank you so much you are life safer!
 

Big Dan

Newbie
Jul 6, 2017
31
6
Your log file basically says that DirectX isn't working on your Windows 7 SP1.

Are you sure you have downloaded and installed the latest drivers for your graphics card from its manufacturer's site?
I doubt that you could get good enough drivers for your Windows via Windows Update automatically (at least not any more).

You could also run dixdiag tool (just type dxdiag in your windows menu search box) and take a look at the Display tab there.
You could either take a screenshot of the display tab or save all information into a text file by clicking at the bottom of the dxdiag dialog that says "Save all information..." and post the file here. At least the upper part of the text file until the Sound Devices section starts.

__________________________________________

Correction!

Apparently it is possible that this game is using the new model-based renderer, which requires at least OpenGL ES 3 to be supported by your graphics card, which means that the ANGLE renderer is unavailable.
ANGLE2 already requires OpenGL ES 3 support for model-based rendering.

In case your graphics card doesn't support it, it will just fail.

You could try to disable model-based rendering by downloading and extracting attached file into your main game folder (where the game launcher exe-file is). A file named "disable_model-based_rendering.rpy" will drop into the 'game' subfolder and add a configuration line to Ren'Py define config.gl2 = False that disables model-based rendering and then the old ANGLE renderer becomes available again, so you could switch to it and try to play the game.

WARNING! In case the game actually utilizes some new features that do require model-based rendering, the game will probably crash when it tries to use any of them. Also, old saves may not work!

I guess you have nothing to lose to try it, since you haven't been able to run the game at all.
Thank you so much
 
Dec 14, 2021
3
1
Your log file basically says that DirectX isn't working on your Windows 7 SP1.

Are you sure you have downloaded and installed the latest drivers for your graphics card from its manufacturer's site?
I doubt that you could get good enough drivers for your Windows via Windows Update automatically (at least not any more).

You could also run dixdiag tool (just type dxdiag in your windows menu search box) and take a look at the Display tab there.
You could either take a screenshot of the display tab or save all information into a text file by clicking at the bottom of the dxdiag dialog that says "Save all information..." and post the file here. At least the upper part of the text file until the Sound Devices section starts.

__________________________________________

Correction!

Apparently it is possible that this game is using the new model-based renderer, which requires at least OpenGL ES 3 to be supported by your graphics card, which means that the ANGLE renderer is unavailable.
ANGLE2 already requires OpenGL ES 3 support for model-based rendering.

In case your graphics card doesn't support it, it will just fail.

You could try to disable model-based rendering by downloading and extracting attached file into your main game folder (where the game launcher exe-file is). A file named "disable_model-based_rendering.rpy" will drop into the 'game' subfolder and add a configuration line to Ren'Py define config.gl2 = False that disables model-based rendering and then the old ANGLE renderer becomes available again, so you could switch to it and try to play the game.

WARNING! In case the game actually utilizes some new features that do require model-based rendering, the game will probably crash when it tries to use any of them. Also, old saves may not work!

I guess you have nothing to lose to try it, since you haven't been able to run the game at all.
Your solution worked, thank you so much.
 
  • Like
Reactions: Penfold Mole