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

5.00 star(s) 51 Votes

namtab

Member
Jun 28, 2020
177
96
153
can you help with the game sovereiGn.
i got error :

I'm sorry, but an uncaught exception occurred.

While running game code:
File "game/location/home.rpy", line 18, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/home.rpy", line 18, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/home.rpy", line 35, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/home.rpy", line 35, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/home.rpy", line 35, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/home.rpy", line 35, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/home.rpy", line 35, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/neighbor.rpy", line 75, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/neighbor.rpy", line 75, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/neighbor.rpy", line 75, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/neighbor.rpy", line 75, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/neighbor.rpy", line 54, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/neighbor.rpy", line 54, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/neighbor.rpy", line 17, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/neighbor.rpy", line 42, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/office.rpy", line 59, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/office.rpy", line 59, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/office.rpy", line 59, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/office.rpy", line 59, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/office.rpy", line 81, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/downtown.rpy", line 8, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/office.rpy", line 59, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/office.rpy", line 59, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/office.rpy", line 59, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
[Previous line repeated 1 more time]
File "game/location/office.rpy", line 218, in script
n "You helped [jl.name] with her work."
TypeError: 'str' object is not callable

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

Full traceback:
File "game/location/home.rpy", line 18, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/home.rpy", line 18, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/home.rpy", line 35, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/home.rpy", line 35, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/home.rpy", line 35, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/home.rpy", line 35, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/home.rpy", line 35, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/neighbor.rpy", line 75, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/neighbor.rpy", line 75, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/neighbor.rpy", line 75, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/neighbor.rpy", line 75, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/neighbor.rpy", line 54, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/neighbor.rpy", line 54, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/neighbor.rpy", line 17, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/neighbor.rpy", line 42, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/office.rpy", line 59, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/location.rpy", line 384, in script call
python:
File "game/location/location.rpy", line 395, in script call
python:
File "game/location/office.rpy", line 59, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/office.rpy", line 59, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/office.rpy", line 59, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/office.rpy", line 81, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/downtown.rpy", line 8, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/office.rpy", line 59, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/office.rpy", line 59, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
File "game/location/office.rpy", line 59, in script call
call screen location_options(locationsList, local.characterToDisplay, actionList, fromIndex) with dissolve
[Previous line repeated 1 more time]
File "game/location/office.rpy", line 218, in script
n "You helped [jl.name] with her work."
File "E:\[o0o]\Sovereign-17.0-pc\renpy\ast.py", line 921, in execute
renpy.exports.say(who, what, *args, **kwargs)
File "E:\[o0o]\Sovereign-17.0-pc\renpy\exports.py", line 1373, in say
who(what, *args, **kwargs)
File "E:\[o0o]\Sovereign-17.0-pc\renpy\character.py", line 1266, in __call__
self.do_display(who, what, cb_args=self.cb_args, dtt=dtt, **display_args)
File "E:\[o0o]\Sovereign-17.0-pc\renpy\character.py", line 927, in do_display
display_say(who,
File "E:\[o0o]\Sovereign-17.0-pc\renpy\character.py", line 666, in display_say
rv = renpy.ui.interact(mouse='say', type=type, roll_forward=roll_forward)
File "E:\[o0o]\Sovereign-17.0-pc\renpy\ui.py", line 299, in interact
rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
File "E:\[o0o]\Sovereign-17.0-pc\renpy\display\core.py", line 3377, 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 "E:\[o0o]\Sovereign-17.0-pc\renpy\display\core.py", line 4272, in interact_core
renpy.game.invoke_in_new_context(renpy.config.inspector, l)
File "E:\[o0o]\Sovereign-17.0-pc\renpy\game.py", line 286, in invoke_in_new_context
return callable(*args, **kwargs)
File "renpy/common/_developer/inspector.rpym", line 192, in _m1_inspector__inspect
renpy.ui.interact(mouse="screen", type="screen", suppress_overlay=True, suppress_underlay=True)
File "E:\[o0o]\Sovereign-17.0-pc\renpy\ui.py", line 299, in interact
rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
File "E:\[o0o]\Sovereign-17.0-pc\renpy\display\core.py", line 3377, 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 "E:\[o0o]\Sovereign-17.0-pc\renpy\display\core.py", line 3810, in interact_core
root_widget.visit_all(lambda i : i.per_interact())
File "E:\[o0o]\Sovereign-17.0-pc\renpy\display\core.py", line 582, in visit_all
d.visit_all(callback, seen)
File "E:\[o0o]\Sovereign-17.0-pc\renpy\display\core.py", line 582, in visit_all
d.visit_all(callback, seen)
File "E:\[o0o]\Sovereign-17.0-pc\renpy\display\core.py", line 582, in visit_all
d.visit_all(callback, seen)
File "E:\[o0o]\Sovereign-17.0-pc\renpy\display\screen.py", line 451, in visit_all
callback(self)
File "E:\[o0o]\Sovereign-17.0-pc\renpy\display\core.py", line 3810, in <lambda>
root_widget.visit_all(lambda i : i.per_interact())
File "E:\[o0o]\Sovereign-17.0-pc\renpy\display\screen.py", line 462, in per_interact
self.update()
File "E:\[o0o]\Sovereign-17.0-pc\renpy\display\screen.py", line 653, in update
self.screen.function(**self.scope)
File "renpy/common/_developer/inspector.rpym", line 27, in execute
screen _inspector:
File "renpy/common/_developer/inspector.rpym", line 27, in execute
screen _inspector:
File "renpy/common/_developer/inspector.rpym", line 31, in execute
frame:
File "renpy/common/_developer/inspector.rpym", line 35, in execute
has side "t c b":
File "renpy/common/_developer/inspector.rpym", line 40, in execute
if not tree:
File "renpy/common/_developer/inspector.rpym", line 46, in execute
viewport:
File "renpy/common/_developer/inspector.rpym", line 53, in execute
has vbox:
File "renpy/common/_developer/inspector.rpym", line 76, in execute
for depth, width, height, d in tree:
File "renpy/common/_developer/inspector.rpym", line 78, in execute
$ t = " " * depth + u"\u2022 " + _inspector_repr(d)
File "renpy/common/_developer/inspector.rpym", line 78, in <module>
$ t = " " * depth + u"\u2022 " + _inspector_repr(d)
File "renpy/common/_developer/inspector.rpym", line 197, in _inspector_repr
if type(d) is renpy.display.screen.ScreenDisplayable:
TypeError: 'str' object is not callable

Windows-10-10.0.19045 AMD64
Ren'Py 8.0.3.22090809u
Sovereign 17.0
Wed Dec 31 20:51:06 2025

====================================================
If after the intro you haven't left your bedroom there won't be an error, but try to leave and then try to change numbers like money, stamina etc. then the error will occur.
View attachment traceback.txt View attachment traceback.txt
 

micojive

Well-Known Member
Oct 2, 2017
1,560
4,331
517
Is there a way to get the choices to appear when the option doesnt present even when the mod is loaded? Example the game "Him" has two choices but they are not detected to show what the outcomes would be.

1767359576208.png
 

GreenGobbo

Member
Oct 18, 2018
476
1,282
356
It used to work just fine with any version before the current 0.8c.
I used to use it extensively, so I don't think I was not placing files wrong.
Just to be clear I put urm rpa in
Android/data/NullHypo(folder)/files/game.
Game just simply crashes now at start Before it could loadup menu.
Removing URM rpa makes game run like normal again.
Just to be safe that I didn't commit some dufus mistake I uninstalled game, clean up the Android data folder for game, install freshly downloaded game, freshly downloaded mod, double check game version and mod version. follow same installation instructions. Again same issue game runs fantastic without mod but crashes before menu can load with mod.

Update:

Found a fix.

The Android port of 0.8c uses 'x-' prefixes on all files and folder. So had to add the same prefix to game folder in files and urm.rpa
Did just that making it like
NullHypo(game folder)/files/x-game
And same prefix for URM.rpa.
Viola.
Runs as it should.
This might apply to other ports with similar issue. I know 66 uses prefix in his ports.

Thanks for replies Chrisdarock19, your reply told me nothing was wrong with game script or mod on PC version(same game files) so it must be the something else.
Duuuuuude! I was running into the same problem you described here. Did a little search-fu, found your post and tried your fix. Worked like a charm! TYVM!


Ummm, quick edit: putting the x- at the start of the game folder and the urm file allowed the game to fully launch without crashing, buuuuut after trying to load up my save files and attempting to start new ones a few times it tuns out that urm itself still isn't working. Doesn't show up anywhere within the game at all, almost like it's not even there. :ROFLMAO:
 
Last edited:

Andarilho

Member
Apr 11, 2017
428
1,610
429
Hey folks
Help me to understand something here, plz

I'm trying to modify Stacy profile from the game https://f95zone.to/threads/fetish-locator-s-m-studio-s1-v1-0-16-vinovella.171221/ so that her surname matchs the one i use with the renaming funtion.
3sm.jpg

1sm.jpg

2sm.jpg

But i can't make any permanent changes. The moment i close the game or do any new interaction, the value resets and i'm stuck with the surname "Young" again.

Am i messing with the right variables here?
Is it possible to use URM to permanently alter elements of character profiles/menu/bios?
 

Calvin Kloin

Member
Jul 24, 2019
330
286
200
The mod works fine on mobile using Joiplay and there's also "52" button. There is none on PC, I cannot open URM window nor access saved variables. What can this be?
 

balboa2151

Active Member
Jun 10, 2023
583
643
277
Hello everyone, I have a Patreon membership for this mod, should I be asking a question here, Patreon or on discord? thank you
 
Last edited:

balboa2151

Active Member
Jun 10, 2023
583
643
277
Here or on Discord would be the best place to ask questions.
Hey, thank you for responding back to me, it's greatly appreciated, I've used this mod on hundreds of game and I never had this mod crash a game until I tried using it with " Long Road Home " here is the error, any help would be great, thank you
I'm sorry, but an uncaught exception occurred.

While running game code:
File "game/ep1.rpy", line 1669, in script call
mc "Good night, Tracy."
File "renpy/common/00start.rpy", line 94, in script
python hide:
File "game/ep1.rpy", line 1669, in script call
mc "Good night, Tracy."
File "renpy/common/00start.rpy", line 94, in script
python hide:
File "renpy/common/00start.rpy", line 94, in <module>
python hide:
File "renpy/common/00start.rpy", line 97, in _execute_python_hide
i()
File "0x52-URM/classes/main.rpy", line 59, in afterLoad
File "0x52-URM/classes/settings.rpy", line 138, in __getattr__
File "0x52-URM/classes/settings.rpy", line 161, in get
TypeError: argument of type 'bool' is not iterable
 

kamimed

Newbie
Dec 29, 2019
46
237
103
Request of new feature

Is there a way to implement in "Miscellaneous" a way to enable or disable the "Quick Menu" (usually located at the bottom of the screen under the text box, the one with Auto Skip Save Load Pref) Some developers hide it and to be honest it would be simpler if there was a way to enable it or hide it.

(Maybe the option already exists and I don't see it)


For the moment I use a drop in mod file to enable it, but would be nice to have it in URM.

Code:
# This script forces the quick menu to be active on startup
# Drop this file into the /game/ folder

init 999 python:
    # Set the variable that controls quick menu visibility
    quick_menu = True
  
    # Ensure the quick menu screen is added to the screen overlay list
    if "quick_menu" not in config.overlay_screens:
        config.overlay_screens.append("quick_menu")

   # Optional: Force show the screen specifically after the game initializes
label after_load:
    $ quick_menu = True
    return

Thanks for this tool, much appreciated.


P.S. Maybe in the future for "Custom Textboxes" a way to add custom fonts, let's say you have a "fonts" folder, that automatically pulls the available fonts and displays it in the list of fonts, sometimes the game font is quite nice but the dialog is centered which makes it a drag when you are used to alignment left.
 
Last edited:

robs1234

Active Member
Nov 15, 2023
580
912
230
hello, sry if this is not the right place to ask this, but... I have a problem with renpy games, since i upgraded my windows to 11 every renpy game freeze my pc, i need to restart the pc for it to works back, i never had this problem on windows 10, every files are the same for the game except the windows updated over the old one, i dont have problems on other normal games and i didnt find a solution online, i was wondering if there are ppl here who have/had this problem and know a solution ?
 

Shadefang

Newbie
Jul 16, 2018
15
20
88
Hi,

I've got a problem with URM 2.6.2 and Long Road Home. Long Road Home has the Icewolfs Restoration Mod and Hotfix Ep 15 installed.

On starting I get un uncaught exception error (attached as LRH start), choosing Ignore lets me continue. On loading a save I get an unrecoverable error, attached as LRH crash on load.

Removing the 0x52_URM.rpa lets me start and load the saves without issues. View attachment 5502154 View attachment 5502156
I just ran into this issue as well, and I _think_ I managed to fix it by removing the universal gallery unlocker that ships with the restoration mod (deleting _ugu.rpy/rpc)

haven't played for long enough to be sure it's fixed, but it's no longer immediately crashing and I can open URM, so take that as you will
 
  • Like
Reactions: 0x52

0x52

Ren'Py Magician
Modder
Donor
Game Developer
May 23, 2019
1,777
7,396
712
Hey, thank you for responding back to me, it's greatly appreciated, I've used this mod on hundreds of game and I never had this mod crash a game until I tried using it with " Long Road Home " here is the error, any help would be great, thank you
I'm sorry, but an uncaught exception occurred.

While running game code:
File "game/ep1.rpy", line 1669, in script call
mc "Good night, Tracy."
File "renpy/common/00start.rpy", line 94, in script
python hide:
File "game/ep1.rpy", line 1669, in script call
mc "Good night, Tracy."
File "renpy/common/00start.rpy", line 94, in script
python hide:
File "renpy/common/00start.rpy", line 94, in <module>
python hide:
File "renpy/common/00start.rpy", line 97, in _execute_python_hide
i()
File "0x52-URM/classes/main.rpy", line 59, in afterLoad
File "0x52-URM/classes/settings.rpy", line 138, in __getattr__
File "0x52-URM/classes/settings.rpy", line 161, in get
TypeError: argument of type 'bool' is not iterable
Answered on Discord

Is there a way to implement in "Miscellaneous" a way to enable or disable the "Quick Menu"
There's no universal way to do this. Quick menu implementations can be quite different

Maybe in the future for "Custom Textboxes" a way to add custom fonts, let's say you have a "fonts" folder, that automatically pulls the available fonts and displays it in the list of fonts
It's on the wishlist. Exactly like this :)
 

king_cobra24

Member
Apr 3, 2025
125
89
88
this thing really does come in handy i can set things the way i like it changing the font to cursive is pretty impressive not to mention i can take away the textbox background which i prefer when i play avns it annoys me that i had to deal with the background of the textbox but with this i can get rid of it with ease thanks for this feature
 
5.00 star(s) 51 Votes