Tool Ren'Py UnRen.bat v1.0.11d - RPA Extractor, RPYC Decompiler, Console/Developer Menu Enabler

5.00 star(s) 9 Votes

thomasxlong

Active Member
Apr 3, 2017
991
2,147
That did the job. Much appreciated bud, I'll add it to my tools folder. where did you get that one from?
 

master861

Well-Known Member
Nov 4, 2022
1,066
1,230
I know, I can imagine that a few people here will probably throw stones at me as I write this. But have any of you looked at the bat file, it seems like you haven't, otherwise you would have noticed that there are some nice lines there.
Let's take are look at the file.
Like this lines.
You don't have permission to view the spoiler content. Log in or register now.
ther are more lines like this but ther get never used because of the REM next to it.
Now if you look some lines above what i postet inside of the spoiler you see something like this.

REM --------------------------------------------------------------------------------
REM unrpyc by CensoredUsername 2f9810c 2022-03-31 v1.1.8 (Python 2) //oh python2 xd and then yelling why unren not works Halfway House is made with python3
REM
REM fried added proposed changes, as compiled by sigio, for improved Ren'Py 7.5+ compatibility
REM
REM fried also added some resiliency when brackets are in pathnames
REM --------------------------------------------------------------------------------
set decompcab20= //base64 code
if you now look deeper in der file you see some stuff like this.
You don't have permission to view the spoiler content. Log in or register now.
So now back to topic as i dit say in Read2 spoiler read the *.bat carefull you can easy change the unren-bat to you liking ,i thing maybe the most guys yelling because , the dokumentation is missing how to change this nice tool that it works with the newer games. Ther is only i thing maybe some lines to change that this tool works with some orther renpy versions.
 

master861

Well-Known Member
Nov 4, 2022
1,066
1,230
Not sure what sam used to make the file i can get it but , i get are smaller file and base64 as him.
maybe sam reads that i hope so if yes , sam i know its kinda lame to ask that but what else dit you us to make this.
You don't have permission to view the spoiler content. Log in or register now.
Ok fixed it my self hope this is ok for sam the orginal author of this tool.
I updatet the unrpyc file to 2.02. New version is atached.
Ok fixed it so far this version i atach now is only for python3 versions of the game realy sorry about that :giggle: .
If i got more time i try to at python2 back.
 
Last edited:
  • Like
Reactions: bobjones9792

bobjones9792

Member
May 27, 2017
245
695
Sorry if this has been addressed. For those of you having some trouble with more recent games and this tool, I did some digging. There's a post here about the various unpacking tools:

You don't have permission to view the spoiler content. Log in or register now.

Looking at the description of Unren, it specifically mentions using rpatool. Based on the post, it seems that rpatool isn't being maintained to deal with the newest versions of Renpy, or at least some games that use certain renpy features. I specifically had an issue with it when running lab rats 2 reformulate being unable to deal with the \ character used to denote a new line for long statements, so if you had a really long if statement like:

if (x > y + 3.14059493939439943939 \ 45343939539594395439549)

It throws up a compiler error when trying to run files with that slash in it. Removing the \ makes it work.

Not sure how feasible it is, but it would be nice if the .bat had an alternative like rpakit to unpack.
 

WALKUR

Member
Oct 21, 2020
246
221
Midnight Paradise

The game does not open when I extract it from rpyc to rpy with unren

'm sorry, but an uncaught exception occurred.

While running game code:
File "renpy/common/00start.rpy", line 193, in script
python:
File "renpy/common/00start.rpy", line 194, in <module>
renpy.execute_default_statement(True)
File "game/scripts/variables.rpy", line 70, in execute_default
default m_ns_jerkoff = NightScene(mom, _("Jerk off"), unlocked=True)
File "game/scripts/variables.rpy", line 70, in <module>
default m_ns_jerkoff = NightScene(mom, _("Jerk off"), unlocked=True)
NameError: name 'NightScene' is not defined

-- Full Traceback ------------------------------------------------------------

Full traceback:
File "renpy/common/00start.rpy", line 193, in script
python:
File "C:\Users\ne-se\OneDrive\Masaüstü\MidnightParadise-0.25-pc-elite\renpy\ast.py", line 823, in execute
renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
File "C:\Users\ne-se\OneDrive\Masaüstü\MidnightParadise-0.25-pc-elite\renpy\python.py", line 1178, in py_exec_bytecode
exec(bytecode, globals, locals)
File "renpy/common/00start.rpy", line 194, in <module>
renpy.execute_default_statement(True)
File "C:\Users\ne-se\OneDrive\Masaüstü\MidnightParadise-0.25-pc-elite\renpy\exports.py", line 4100, in execute_default_statement
i.execute_default(start)
File "game/scripts/variables.rpy", line 70, in execute_default
default m_ns_jerkoff = NightScene(mom, _("Jerk off"), unlocked=True)
File "C:\Users\ne-se\OneDrive\Masaüstü\MidnightParadise-0.25-pc-elite\renpy\python.py", line 1202, in py_eval_bytecode
return eval(bytecode, globals, locals)
File "game/scripts/variables.rpy", line 70, in <module>
default m_ns_jerkoff = NightScene(mom, _("Jerk off"), unlocked=True)
NameError: name 'NightScene' is not defined

Windows-10-10.0.19045 AMD64
Ren'Py 8.2.3.24061702
Midnight Paradise 0.25
Mon Jul 15 11:18:21 2024
 

pepplez

Member
Jun 7, 2020
354
481
Midnight Paradise

The game does not open when I extract it from rpyc to rpy with unren

'm sorry, but an uncaught exception occurred.

While running game code:
File "renpy/common/00start.rpy", line 193, in script
python:
File "renpy/common/00start.rpy", line 194, in <module>
renpy.execute_default_statement(True)
File "game/scripts/variables.rpy", line 70, in execute_default
default m_ns_jerkoff = NightScene(mom, _("Jerk off"), unlocked=True)
File "game/scripts/variables.rpy", line 70, in <module>
default m_ns_jerkoff = NightScene(mom, _("Jerk off"), unlocked=True)
NameError: name 'NightScene' is not defined

-- Full Traceback ------------------------------------------------------------

Full traceback:
File "renpy/common/00start.rpy", line 193, in script
python:
File "C:\Users\ne-se\OneDrive\Masaüstü\MidnightParadise-0.25-pc-elite\renpy\ast.py", line 823, in execute
renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
File "C:\Users\ne-se\OneDrive\Masaüstü\MidnightParadise-0.25-pc-elite\renpy\python.py", line 1178, in py_exec_bytecode
exec(bytecode, globals, locals)
File "renpy/common/00start.rpy", line 194, in <module>
renpy.execute_default_statement(True)
File "C:\Users\ne-se\OneDrive\Masaüstü\MidnightParadise-0.25-pc-elite\renpy\exports.py", line 4100, in execute_default_statement
i.execute_default(start)
File "game/scripts/variables.rpy", line 70, in execute_default
default m_ns_jerkoff = NightScene(mom, _("Jerk off"), unlocked=True)
File "C:\Users\ne-se\OneDrive\Masaüstü\MidnightParadise-0.25-pc-elite\renpy\python.py", line 1202, in py_eval_bytecode
return eval(bytecode, globals, locals)
File "game/scripts/variables.rpy", line 70, in <module>
default m_ns_jerkoff = NightScene(mom, _("Jerk off"), unlocked=True)
NameError: name 'NightScene' is not defined

Windows-10-10.0.19045 AMD64
Ren'Py 8.2.3.24061702
Midnight Paradise 0.25
Mon Jul 15 11:18:21 2024
Just a guess, the game is from 2019(?) and i doubt it will run with renpy 8 (uses python 3) maybe try to launch it in renpy 7 (uses python2) sdk.
 

Twistty

The Happy Beaver
Donor
Respected User
Former Staff
Sep 9, 2016
4,341
38,878
Midnight Paradise v0.25 Elite uses ren'py (8, 2, 3)
I tried everything also - you cannot extract the rpyc files without creating tons of errors.
does not work, does not work, UnRen-1.0.12d also no luck.
 
  • Hey there
  • Sad
Reactions: rKnight and pepplez

pepplez

Member
Jun 7, 2020
354
481
Midnight Paradise v0.25 Elite uses ren'py (8, 2, 3)
I tried everything also - you cannot extract the rpyc files without creating tons of errors.
does not work, does not work, UnRen-1.0.12d also no luck.
That's sad. But there's an alternate but i didn't try it with renpy 8.2.x, you would have to install python 3 (locally on your system) and then unrpa module as well. Maybe that works?
edit: there's also a module to decode .rpyc files - >
edit2 3: Found this by accident - not tested with renpy 8.0.3 and seems to work:
Usage:
Simply copy the un.rpyc or un.rpy file into the "game" directory inside the game. Run the game and it will decompile the entire game into .rpy files at startup.
For the bytecode-39.rpyb file, copy it into the game/cache directory, replacing the existing file. Run the game and it will decompile the entire game into .rpy files at startup. The game will regenerate the old bytecode-39.rpyb file after running.
Not even unrpa needed. I'm stunned.
 
Last edited:

Twistty

The Happy Beaver
Donor
Respected User
Former Staff
Sep 9, 2016
4,341
38,878
That's sad. But there's an alternate but i didn't try it with renpy 8.2.x, you would have to install python 3 (locally on your system) and then unrpa module as well. Maybe that works?
edit: there's also a module to decode .rpyc files - >
edit2: Found this by accident - not tested:
The first 2 only work for ren'py versions up to 8.1.x not 8.2.x..
The last one is the file I posted above.
But thanks for trying (y)
 
  • Yay, new update!
  • Haha
Reactions: rKnight and pepplez

WALKUR

Member
Oct 21, 2020
246
221
That's sad. But there's an alternate but i didn't try it with renpy 8.2.x, you would have to install python 3 (locally on your system) and then unrpa module as well. Maybe that works?
edit: there's also a module to decode .rpyc files - >
edit2 3: Found this by accident - not tested with renpy 8.0.3 and seems to work:

Not even unrpa needed. I'm stunned.
Thank you, it worked. My goal was to translate the game into my own language. I created the TL file with Renpy 8.2.3.
 

WALKUR

Member
Oct 21, 2020
246
221
Great! Which method worked for you? the local python install or the stand-alone unrpc?
First of all, I compiled the rpyc files you gave me, then
I created the 8.2.3.Tl file and the tl file was created with Unren11.d but the game did not see it. After compiling rpycs with 2.0.2 the game detected the Tl file
 
  • Yay, new update!
  • Like
Reactions: pepplez and Twistty

master861

Well-Known Member
Nov 4, 2022
1,066
1,230
Not sure what you all get trouple with :unsure: if my above version of unren dont work why you not use RPA explorer? 1722025815254.png
Is it really that difficult to type a few lines in cmd?:unsure:
And as you can see her is the 2.02 unrpyc.py
1722026083206.png
 

K1ndred

Newbie
Oct 1, 2017
28
191
For some reason using the "Enable console" feature on this game completely breaks it, any ideas why?

Update: Seems to be a problem with the game's developer mode, setting config.developer to False in unren-dev.rpy fixed it
 
Last edited:

Madeddy

Active Member
Dec 17, 2017
820
473
Midnight Paradise v0.25 Elite uses ren'py (8, 2, 3)
I tried everything also - you cannot extract the rpyc files without creating tons of errors.
does not work, does not work, UnRen-1.0.12d also no luck.
A bit late for this but maybe some people have still use for the answer:
  • UnRen-forall.bat v9.4 has a modified pre v2 unrpyc in use with partial support for Ren'Py v7.5 and v8.0; not for higher versions
  • UnRen-1.0.12d uses AFAIK a even older modified unrpyc(i think they used some version i did years ago) with roughly same compatibility as above
  • Un.rpyc v2.0.2 should work for the game above -> either they(devs) modified the engine or fraked with something to prevent decompiling

If someone wnats to unpack this days newer Ren'Py apps they should do it manually:
  1. Unpack the RPA files with one of the three working unpackers(RPAtool, UnRPA, RpaKit)
  2. Decompile with a actual unrpyc variant

For some reason using the "Enable console" feature on this game completely breaks it, any ideas why?
Some "devs" break this functionality by choice, to prevent people from cheating or other unwanted manipulations on their game. Other "game makers" break this sometimes because they have not really a idea what they are doing.
 
Last edited:
5.00 star(s) 9 Votes