Tool Ren'Py UnRenGUI, UnRen-forall(v9.4), UnRen-Powershell-forall(v9.4), UnRen-old

5.00 star(s) 3 Votes

Arthas Menethil

Well-Known Member
Apr 7, 2019
1,266
943
I am translating the game into Spanish, but there are some parts in the boxes that do not catch what I translated, this may be the developer's fault.
 

MasterGamer1234567890

Active Member
Oct 25, 2022
831
727
EDIT 250725 Version 9.6.41:
Added Support for Ren'Py 8.4.1 which replaces Python 3.9 with version 3.12. The code is scalable and will support future developments in Python 3.

EDIT 250727 Version 9.6.42:
Added support for LittleMan which have a modified Python shipped without multiprocessing support.
Thanks for your great work. One minor issue. In the future, could you please add the version number to the name of the compressed file? It would make it easier to see whether you have the latest version or not.
 
  • Like
Reactions: asdfg_dk

joelurmel

Engaged Member
Nov 3, 2022
2,375
4,183
For all Unren users,

Bad news since the release of Ren'Py 8.4.*, no tool is capable of decompiling rpyc files anymore.
This is because Ren'Py decided to change the file structure and implement anti-reverse engineering measures to prevent this.

We must therefore wait for an update of the unrpyc tools from CensoredUserName or rpydec, or even a new tool.
 

Gen Urobuchi

Newbie
Nov 19, 2020
82
127
For all Unren users,

Bad news since the release of Ren'Py 8.4.*, no tool is capable of decompiling rpyc files anymore.
This is because Ren'Py decided to change the file structure and implement anti-reverse engineering measures to prevent this.

We must therefore wait for an update of the unrpyc tools from CensoredUserName or rpydec, or even a new tool.
Are we able to "rebuild" the game in a lower ren'py version sdk - and do it that way?
 

gnadudu

Well-Known Member
Aug 31, 2018
1,953
2,905
For all Unren users,

Bad news since the release of Ren'Py 8.4.*, no tool is capable of decompiling rpyc files anymore.
This is because Ren'Py decided to change the file structure and implement anti-reverse engineering measures to prevent this.

We must therefore wait for an update of the unrpyc tools from CensoredUserName or rpydec, or even a new tool.
Did you check the dev branch of unrpyc? It did get an update 3 weeks ago to support the latest changes from renpy 8.4...
 
Last edited:
  • Thinking Face
Reactions: Gen Urobuchi

Gen Urobuchi

Newbie
Nov 19, 2020
82
127
Did you check the dev branch of unrpyc? It did get an update 3 weeks ago to support the latest changes from renpy 8.4...

I think that is what he was talking about?
Maybe Madeddy might know better?
 

gnadudu

Well-Known Member
Aug 31, 2018
1,953
2,905

I think that is what he was talking about?
Maybe Madeddy might know better?
I'm talking about this:
The person in the issue you linked still uses unrpyc v2.0.2 and not the one from the dev branch...
If you look at the commits from the dev branch you can see the work for supporting 8.4 was started in January and 3 weeks ago some additional work was done to support newly added attributes:
1753649982600.png
 
  • Like
Reactions: Gen Urobuchi

joelurmel

Engaged Member
Nov 3, 2022
2,375
4,183
I'm talking about this:
The person in the issue you linked still uses unrpyc v2.0.2 and not the one from the dev branch...
If you look at the commits from the dev branch you can see the work for supporting 8.4 was started in January and 3 weeks ago some additional work was done to support newly added attributes:
View attachment 5084233
Yep, got it and the solution work. So I've updated my UnRen-forall to Version 9.6.44 :cool:
 

gnadudu

Well-Known Member
Aug 31, 2018
1,953
2,905
Yep, got it and the solution work. So I've updated my UnRen-forall to Version 9.6.44 :cool:
Be aware it's the dev branch and there might still be some issues. Looking through the pull requests there seems to be a problem with else statements:


This should probably be fixable by changing line 407 in decompiler/__init__.py from
Code:
if (i + 1) == len(ast.entries) and not isinstance(condition, renpy.ast.PyExpr):
to

Code:
if (i + 1) == len(ast.entries) and not isinstance(condition, (renpy.ast.PyExpr, renpy.astsupport.PyExpr)):
if I understand it correctly, but that would need some tests (so if someone reports else statement errors this might be a way to fix it...)
 

joelurmel

Engaged Member
Nov 3, 2022
2,375
4,183
Be aware it's the dev branch and there might still be some issues. Looking through the pull requests there seems to be a problem with else statements:


This should probably be fixable by changing line 407 in decompiler/__init__.py from
Code:
if (i + 1) == len(ast.entries) and not isinstance(condition, renpy.ast.PyExpr):
to

Code:
if (i + 1) == len(ast.entries) and not isinstance(condition, (renpy.ast.PyExpr, renpy.astsupport.PyExpr)):
if I understand it correctly, but that would need some tests (so if someone reports else statement errors this might be a way to fix it...)
That's why I said it was a temporary solution. I'll update when it's published in the master branch.
 
5.00 star(s) 3 Votes