Mod Ren'Py Universal Ren'Py Mod / URM [2.4.2] (mod any Ren'Py game yourself)

5.00 star(s) 37 Votes

Boehser Onkel

Forum Fanatic
Modder
Feb 20, 2021
4,088
6,078
Ok, let's go (my biggest problem is getting the google translator to convey correctly what I want to say).
For the first question, the print below should help.
Can I use TCNDEX2 0x52_URM and text.gui modules ALSO for TP-TCNDEX-1(already finished game)!?

The second question is at the research or query level. More specific and comprehensive/broad and that I can replicate the use in other games,
How to get (if possible, of course) information about I need to reach 1061 friendship to unlock the shower scene (the example case).
Note however that the value 1061 (which is the master object here) is not reported by the standard URM. The value is obtained by another mod, but that doesn't allow for the wide and diverse resources that the URM has.
Also note that my goal is not to change the values already reached, but to know which ones (in the game) I need to reach.
It would be for effect to obtain something like a listing or table of detailed values for these purposes. Something like or equal to the "necessary condition".

If this second question has already been addressed in some of the other videos on the use or application of the URM, please let me know which one.
If not yet (and again if this is possible), please guide me on how to do it.

Thanks in advance,
no -i dont think so - and btw , i never played both games to the fullest and to the end (boring)
which game are you trying to get the 1061? first or second?

you can use the urm tables at the first game - tested

to "reach" the 1061 you seek just change the value
Screenshot_1.png

use the below attached text gui.zip for the first game

you can see the conditions if you activate the path/choices notification at urm options
even select path/choices that conditions are not reached
 
Last edited:

soadeths

Newbie
Dec 4, 2021
85
155
Hello 0x52

Thank you very much for your mod which is really excellent, I install it with almost every game I play.

However, I'd like to know if it's possible not to have this sentence when you activate the Clipboard on the games for live translations.

"You're in a replay: Choices detected: 0 hidden: Path detected: 0 options".

It's not really a big inconvenience, but if it could be removed, that would be really perfect!

Thank you in advance for your reply
 

soadeths

Newbie
Dec 4, 2021
85
155
sometimes in a replay are options for various positions/view angles that are maybe not unlocked
removing this would .. well you get me here do you :ROFLMAO:
It's not in a replay, I have this message that I add all the time to each dialogue, you a screen so that it is easier to view


Capture d’écran 2023-07-09 193126.jpg
 

soadeths

Newbie
Dec 4, 2021
85
155
thats not a urm feature buddy ;)
except its from the new textbox feature :unsure: - havent played around with this much
Yes, this is coming from urm, because if i delete it, I no longer have the message.

Try by yourself and activate the Clipboard option of any game with Shift+C or key Q and has right Clipboard activity, wait to have a dialog and paste it on a text block and you will also have this same message.
 

forgotp

Member
Nov 4, 2019
398
418
post the logfile pls, so we can see whats going on
here's what happens when loading a save, if you rollback it will continue the game as normal without having urm enabled, if you hit ignore it will keep throwing errors untill the game crashes.

I'm sorry, but an uncaught exception occurred.

While loading <renpy.display.im.Image object ('0x52/images/urm_vertical.x52') at 0x000000000d715040>:
File "renpy/common/00gamemenu.rpy", line 170, in script
$ ui.interact()
File "renpy/common/00gamemenu.rpy", line 170, in <module>
$ ui.interact()
OSError: Couldn't find file '0x52/images/urm_vertical.x52'.

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

Full traceback:
File "renpy/common/00gamemenu.rpy", line 170, in script
$ ui.interact()
File "Renpy\Town_of_Magic 0.66\renpy\ast.py", line 1138, in execute
renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
File "Renpy\Town_of_Magic 0.66\renpy\python.py", line 1122, in py_exec_bytecode
exec(bytecode, globals, locals)
File "renpy/common/00gamemenu.rpy", line 170, in <module>
$ ui.interact()
File "Renpy\Town_of_Magic 0.66\renpy\ui.py", line 299, in interact
rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
File "Renpy\Town_of_Magic 0.66\renpy\display\core.py", line 3499, in interact
repeat, rv = self.interact_core(preloads=preloads, trans_pause=trans_pause, pause=pause, pause_start=pause_start, pause_modal=pause_modal, **kwargs) # type: ignore
File "Renpy\Town_of_Magic 0.66\renpy\display\core.py", line 4089, in interact_core
self.draw_screen(root_widget, fullscreen_video, (not fullscreen_video) or video_frame_drawn)
File "Renpy\Town_of_Magic 0.66\renpy\display\core.py", line 2699, in draw_screen
surftree = renpy.display.render.render_screen(
File "render.pyx", line 492, in renpy.display.render.render_screen
File "render.pyx", line 266, in renpy.display.render.render
File "Renpy\Town_of_Magic 0.66\renpy\display\layout.py", line 886, in render
surf = render(child, width, height, cst, cat)
File "render.pyx", line 170, in renpy.display.render.render
File "render.pyx", line 266, in renpy.display.render.render
File "Renpy\Town_of_Magic 0.66\renpy\display\layout.py", line 886, in render
surf = render(child, width, height, cst, cat)
File "render.pyx", line 170, in renpy.display.render.render
File "render.pyx", line 266, in renpy.display.render.render
File "Renpy\Town_of_Magic 0.66\renpy\display\layout.py", line 886, in render
surf = render(child, width, height, cst, cat)
File "render.pyx", line 170, in renpy.display.render.render
File "render.pyx", line 266, in renpy.display.render.render
File "Renpy\Town_of_Magic 0.66\renpy\display\screen.py", line 731, in render
child = renpy.display.render.render(self.child, w, h, st, at)
File "render.pyx", line 170, in renpy.display.render.render
File "render.pyx", line 266, in renpy.display.render.render
File "Renpy\Town_of_Magic 0.66\renpy\display\layout.py", line 886, in render
surf = render(child, width, height, cst, cat)
File "render.pyx", line 170, in renpy.display.render.render
File "render.pyx", line 266, in renpy.display.render.render
File "Renpy\Town_of_Magic 0.66\renpy\display\dragdrop.py", line 546, in render
cr = render(child, width, height, st, at)
File "render.pyx", line 170, in renpy.display.render.render
File "render.pyx", line 266, in renpy.display.render.render
File "Renpy\Town_of_Magic 0.66\renpy\display\transform.py", line 909, in render
return RenderTransform(self).render(width, height, st, at)
File "accelerator.pyx", line 979, in renpy.display.accelerator.RenderTransform.render
File "accelerator.pyx", line 404, in renpy.display.accelerator.RenderTransform.render_child
File "render.pyx", line 266, in renpy.display.render.render
File "Renpy\Town_of_Magic 0.66\renpy\display\layout.py", line 1336, in render
surf = render(child,
File "render.pyx", line 170, in renpy.display.render.render
File "render.pyx", line 266, in renpy.display.render.render
File "Renpy\Town_of_Magic 0.66\renpy\display\layout.py", line 1107, in render
surf = render(d, width - x, rh, cst, cat)
File "render.pyx", line 170, in renpy.display.render.render
File "render.pyx", line 266, in renpy.display.render.render
File "Renpy\Town_of_Magic 0.66\renpy\display\layout.py", line 1062, in render
surf = render(d, rw, height - y, cst, cat)
File "render.pyx", line 170, in renpy.display.render.render
File "render.pyx", line 266, in renpy.display.render.render
File "Renpy\Town_of_Magic 0.66\renpy\display\transform.py", line 909, in render
return RenderTransform(self).render(width, height, st, at)
File "accelerator.pyx", line 979, in renpy.display.accelerator.RenderTransform.render
File "accelerator.pyx", line 404, in renpy.display.accelerator.RenderTransform.render_child
File "render.pyx", line 266, in renpy.display.render.render


File "Renpy\Town_of_Magic 0.66\renpy\display\im.py", line 676, in render
return cache.get(self, render=True)
File "Renpy\Town_of_Magic 0.66\renpy\display\im.py", line 330, in get
surf = image.load()
File "Renpy\Town_of_Magic 0.66\renpy\display\im.py", line 803, in load
raise e
File "Renpy\Town_of_Magic 0.66\renpy\display\im.py", line 757, in load
filelike = renpy.loader.load(self.filename, directory="images")
File "Renpy\Town_of_Magic 0.66\renpy\loader.py", line 833, in load
raise IOError("Couldn't find file '%s'." % name)
OSError: Couldn't find file '0x52/images/urm_vertical.x52'.

Windows-10-10.0.19045 AMD64
Ren'Py 8.1.0.23051307
Town of Magic 0.66.004
Also on hitting ignore the next log starts with Exception: Could not find font '0x52/FontAwesome5Free-Solid-900.otf.x52'.
 
  • Thinking Face
Reactions: Boehser Onkel

Boehser Onkel

Forum Fanatic
Modder
Feb 20, 2021
4,088
6,078
here's what happens when loading a save, if you rollback it will continue the game as normal without having urm enabled, if you hit ignore it will keep throwing errors untill the game crashes.



Also on hitting ignore the next log starts with Exception: Could not find font '0x52/FontAwesome5Free-Solid-900.otf.x52'.
solution :
extract the urm.rpa

edit :
extract into mainfolder (delete your urm.rpa)
 
  • Like
Reactions: 0x52

forgotp

Member
Nov 4, 2019
398
418

Mister Player

Newbie
May 9, 2023
76
240
0x52 is there a way in which we can freeze only one part of a variable (in future updates of course). I mean to say, like we have a variable "money" is there a way that this variable will not decrease but can be increased. Waiting patiently.... if it is possible.
 

0x52

Ren'Py Magician
Modder
Donor
Game Developer
May 23, 2019
1,674
6,509
Hello 0x52

Thank you very much for your mod which is really excellent, I install it with almost every game I play.

However, I'd like to know if it's possible not to have this sentence when you activate the Clipboard on the games for live translations.

"You're in a replay: Choices detected: 0 hidden: Path detected: 0 options".

It's not really a big inconvenience, but if it could be removed, that would be really perfect!

Thank you in advance for your reply
I'll have to look into this.

0x52 is there a way in which we can freeze only one part of a variable (in future updates of course). I mean to say, like we have a variable "money" is there a way that this variable will not decrease but can be increased. Waiting patiently.... if it is possible.
Theoretically it could be done, but I don't think it's something I want to add. At least not in the near future.

minor error 0x52

View attachment 2758965

View attachment 2758988

if i comment this out like here - there is no error

View attachment 2759050
LOL. So, they abused the tooltip feature to show images?!
I think there's a way to fix this within URM, I'll look into it.
 

Kata

Newbie
Feb 17, 2017
68
849
Minor feature request, but is it possible to expand the freeze feature with freeze up (value cannot be lowered but can be raised) and freeze down (value can be lowered but cannot be raised) options? They would be much more convenient than a static freeze for a lot of games.
 
  • Angry
Reactions: Mister Player

theMickey_

Engaged Member
Mar 19, 2020
2,197
2,834
...is it possible to expand the freeze feature with freeze up (value cannot be lowered but can be raised) and freeze down (value can be lowered but cannot be raised) options...
You're trolling, right? Because the post just above yours already has the answer to the exact same question.
 
  • Haha
Reactions: Mister Player

desmosome

Conversation Conqueror
Sep 5, 2018
6,316
14,501
0x52

Hey there, I got an idea for a feature. Do you think it would be possible to replace text only when it is spoken by certain characters?

For a makeshift incest patch, that would be quite helpful in cases where the dev didn't make different name variables to account for different characters referencing the mom.

Replacing the name with "mom" in all cases would lead to everyone calling her that. But if we can limit the replacement to when the line are spoken by her children, that would probably be good enough.
 

0x52

Ren'Py Magician
Modder
Donor
Game Developer
May 23, 2019
1,674
6,509
0x52

Hey there, I got an idea for a feature. Do you think it would be possible to replace text only when it is spoken by certain characters?

For a makeshift incest patch, that would be quite helpful in cases where the dev didn't make different name variables to account for different characters referencing the mom.

Replacing the name with "mom" in all cases would lead to everyone calling her that. But if we can limit the replacement to when the line are spoken by her children, that would probably be good enough.
That does make sense. I've put it on the wishlist ;)
 

Boehser Onkel

Forum Fanatic
Modder
Feb 20, 2021
4,088
6,078
0x52

Hey there, I got an idea for a feature. Do you think it would be possible to replace text only when it is spoken by certain characters?

For a makeshift incest patch, that would be quite helpful in cases where the dev didn't make different name variables to account for different characters referencing the mom.

Replacing the name with "mom" in all cases would lead to everyone calling her that. But if we can limit the replacement to when the line are spoken by her children, that would probably be good enough.
use this template meanwhile :cool:

Screenshot_3.png

the last part replaces text for all

Screenshot_4.png
 
Last edited:
5.00 star(s) 37 Votes