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

5.00 star(s) 33 Votes

FaceCrap

Active Member
Oct 1, 2020
882
619
Interesting -- I've never thought of "fixing" typos in games using URM to replace those.
It's not something I do normally, it's just that this particular VN has two different main paths (MC can either be a decent guy or a total jerk) with enough content differences to make it interesting to play both sides (or a mix). It's then that those typos and grammar errors start to irritate and I revert to this option if they're bad enough. One could say sending those to the dev(s) but the first (and only) time I made such an offer, it didn't turn out as I had expected so now I just do it for personal use only and only if the vn in question has different enough paths and good enough to also play these...
 
Last edited:

0x52

Ren'Py Magician
Modder
Donor
Game Developer
May 23, 2019
1,595
6,053
Oh, 1.10 is out -- awesome!

But just to let you know: the new "Update" function (which worked great the last few updates) is giving me an error, no matter what game I've tested it with. It's trying to update "in-game" from 1.9.4b or 1.9.4 to 1.10.

View attachment 1988719
I am using 1.10. I think it might be an anti cheat thing.
Those issues are now fixed (in v1.10.1).

About the Red Room issue, this was caused by them assigning something to the "Button".
 

FaceCrap

Active Member
Oct 1, 2020
882
619
I was wondering something, I always enable the developer console so I can make a dump of the variables used in a VN, and their values.
But when I open the console, I always see this statement repeated a fair number of times (also showing in the VN's log.txt)

0x52: Something requested an unknown setting "values"

I don't think it affects anything since I've never noticed any errors while playing, but am just curious what causes it.

And while we're on the subject of msg's... I miss clicked on the save dialog and hit the question mark instead... which produced the following (ignorable) error (see traceback)

EDIT: I just realized what caused the error with the questionmark... I made a typo when I renamed the game folder. I intended it to be named With-Rain-Comes-The-Flood-1.0-PC but accidentally ended up naming it With-Rain-Comes-The-Flood-1.0-(C :FacePalm:The unbalanced parenthesis is what ended up causing this error and the tokenize routine changed it to an accolade ...
 
Last edited:

0x52

Ren'Py Magician
Modder
Donor
Game Developer
May 23, 2019
1,595
6,053
I was wondering something, I always enable the developer console so I can make a dump of the variables used in a VN, and their values.
But when I open the console, I always see this statement repeated a fair number of times (also showing in the VN's log.txt)

0x52: Something requested an unknown setting "values"

I don't think it affects anything since I've never noticed any errors while playing, but am just curious what causes it.

And while we're on the subject of msg's... I miss clicked on the save dialog and hit the question mark instead... which produced the following (ignorable) error (see traceback)

EDIT: I just realized what caused the error with the questionmark... I made a typo when I renamed the game folder. I intended it to be named With-Rain-Comes-The-Flood-1.0-PC but accidentally ended up naming it With-Rain-Comes-The-Flood-1.0-(C :FacePalm:The unbalanced parenthesis is what ended up causing this error and the tokenize routine changed it to an accolade ...
The "unknown setting" message is just informational, it will not break anything.
Some background information if you're interested: I have built my settings in such a way that I very easily add new settings, a side effect is that my code catches all attributes that get requested from my settings class. In your example, Ren'Py requests "values" from my settings. I wil implement an exception, so this doesn't log when "values" gets requested.

I will also prevent the error opening the save paths. That should of course not crash the game :censored:

Is there a way to enable dev console through URM?
I have looked into this a long time ago and it seemed that the dev console could only be enabled at startup, not during runtime.
But I will put it on my list and see if I can make it work somehow.
 

FaceCrap

Active Member
Oct 1, 2020
882
619
I will also prevent the error opening the save paths. That should of course not crash the game :censored:
It didn't crash the game, the error was ignorable so it isn't that big of a deal... chances of this happening are almost negligible, just chalk it up to a case of PEBCAK ;)
 

hkennereth

Member
Mar 3, 2019
229
742
Hello 0x52, I would like to share a small suggestion. Right now it takes 3 clicks to figure out what is the condition for a path when one is detected. For example:

screenshot0003.png

I would like to propose perhaps adding an option to display the current selected path and its condition directly on the screen as it is detected, so only if we want to change paths we need to open the existing Path Options window and get more detailed information about other paths, conditions, labels, etc. Something like this:

URM_path.png

It can also be inside the standard blue window, although I think something displaying as my example would keep it less obtrusive.

I also think that a similar implementation would be interesting for Choices, but here showing changed variables instead of conditions would probably be ideal and some games change a lot of variables on each option so this might not work as well. It's an idea worth considering, however.
 
Last edited:

0x52

Ren'Py Magician
Modder
Donor
Game Developer
May 23, 2019
1,595
6,053
Saving/loading no longer works since 1.10.
It just creates the folder in AppData with and stores empty files in the game directory itself (saying "Failed to save file").
When loading it shows the files in the game directory and then says "Failed to load file".
I'm running Windows 7 SP1 as admin with UAC disabled, so permissions should be an issue and it worked with older versions too.

edit:
The last version that works is 1.9.3 (1.9.4 doesn't), but it doesn't support games with the latest RenPy version.
I've attached 1.9.3 for everyone that has the same problem.
Can you check the log.txt file. When URM shows an "Failed to save/load file" message it logs the reason in there (you're looking for a line starting with "0x52:"

Hello 0x52, I would like to share a small suggestion. Right now it takes 3 clicks to figure out what is the condition for a path when one is detected. For example:

View attachment 2000157

I would like to propose perhaps adding an option to display the current selected path and its condition directly on the screen as it is detected, so only if we want to change paths we need to open the existing Path Options window and get more detailed information about other paths, conditions, labels, etc. Something like this:

View attachment 2000180

It can also be inside the standard blue window, although I think something displaying as my example would keep it less obtrusive.

I also think that a similar implementation would be interesting for Choices, but here showing changed variables instead of conditions would probably be ideal and some games change a lot of variables on each option so this might not work as well. It's an idea worth considering, however.
On the roadmap is the item "Hotkeys for showing paths and choices", that should make it easier.
Your example looks nice, but there could be a lot of paths and long conditions. Which will make it look messy.
I do want to improve this, but I have to think about a good way of doing this.
 

0x52

Ren'Py Magician
Modder
Donor
Game Developer
May 23, 2019
1,595
6,053
I've just released 1.10.2. This contains some small fixes and improvements:
  • Added paging to renaming tab (to improve performance)
  • Optimized text scaling on renaming tab
  • Prevent codeview from parsing variables and styling
  • Hide "ui." methods from codeview
  • Fix: Prevent error when showing save paths with special characters
  • Fix: Hover effect for settings
 

0x52

Ren'Py Magician
Modder
Donor
Game Developer
May 23, 2019
1,595
6,053
0x52: Failed to save file "E:\Visual Novels\EndlessSummer-0.1-win\game\Endless Summer.urm" with error: a bytes-like object is required, not 'str'
Thanks. Seems to be a Ren'Py 8 related issue. I'll look into it.
 
  • Like
Reactions: wiwem71072

0x52

Ren'Py Magician
Modder
Donor
Game Developer
May 23, 2019
1,595
6,053
Well... this is a little awkward. I should have waited a little with publishing 1.10.2.
I've just published 1.10.3 (about 40 minutes after 1.10.2 :LOL:). It turned out I had some more time and couldn't let go off wiwem71072's issue :giggle:

Changelog 1.10.3:
  • Fix: Creating .URM files in Ren'Py 8.x
  • Fix: Labels tab crashed on Ren'Py 7.5 and up
 

vimey

Active Member
Nov 29, 2020
823
599
I've just released 1.10.2. This contains some small fixes and improvements:
  • Added paging to renaming tab (to improve performance)
  • Optimized text scaling on renaming tab
  • Prevent codeview from parsing variables and styling
  • Hide "ui." methods from codeview
  • Fix: Prevent error when showing save paths with special characters
  • Fix: Hover effect for settings
sorry but i didn't understand the 'hide ui' thing how it work and thanks again for all your great work
 
  • Like
Reactions: Slow12

0x52

Ren'Py Magician
Modder
Donor
Game Developer
May 23, 2019
1,595
6,053
sorry but i didn't understand the 'hide ui' thing how it work and thanks again for all your great work
That's this:
Hello, 0x52! In the "Choice code" window you can see that looks like a calling some standard RenPy methods.
It's ui.saybehavior() and ui.interact() here, but I've seen some others in another game.
Is there a reason to show them in this window?
Could it be filtered out in future releases of your superb mod?
 

FaceCrap

Active Member
Oct 1, 2020
882
619
  • 1.10.2 (2022-08-24)
    • Added paging to renaming tab (to improve performance)
Thank you sooo much for this. Makes a world of difference! Too bad BuyMeACoffee no longer supports paypal... and patreon... ugh.... no thanks...
And seeing you used the same structure as for variables, I gladly made use of the sort option, although I suspect that might get added in the furture anyways, helps a lot if you've got as many replacements as I have in Savior
 
Last edited:

hkennereth

Member
Mar 3, 2019
229
742
On the roadmap is the item "Hotkeys for showing paths and choices", that should make it easier.
Your example looks nice, but there could be a lot of paths and long conditions. Which will make it look messy.
I do want to improve this, but I have to think about a good way of doing this.
Well, the number of paths shouldn't make a difference on my example since it simply shows the condition for the currently selected path, with the button there opening the window as usual.

I can see long conditions being a problem, although I used the same font size as you currently use mostly to keep it with the existing layout. I would actually suggest a smaller font size for these "persistent data" fields. I don't actually think showing the entirety of very long conditions is even necessary, the point of this suggested feature is more give a glanceable info so you know if it's worth opening the panel or not. If a really long choice exists it can be cropped after a certain length, and we can always open the panel to see it completely.

I find that on many games I keep opening the Paths panel to check if some odd choice is branching out at that point, only to realize that it's one of paths being used to alternate individual lines of dialogue -- things like "landlady vs. mom", "original MC name vs. custom name", "female vs. male MC", etc. -- in contrast to paths that change storylines or gameplay. While a shortcut to open the panel helps, it's only replacing a mouse click for a keyboard combination, and still making me open a panel to check if I need to bother changing paths or not, while my suggestion would allow you to skip checking that altogether, because the important info is already visible.

I don't feel that a keyboard shortcut to open that panel replaces my suggestion, I see both features as complimentary of each other. But the shortcut will be welcome, no doubt about it. So thanks for your continued work.
 

0x52

Ren'Py Magician
Modder
Donor
Game Developer
May 23, 2019
1,595
6,053
knyght thank you for your review.

I wanted to respond to it.
First, you're asking about an option to freeze values, this is on the roadmap, so you could expect it in a future release.
Second, your remark about searching objects, this should work, but you can disable this:
1661533964314.png
Here's an example (Using The DeLuca Family):
1661533998291.png
"morality", "crazy" and "calm" are objects here. See:
1661534036128.png
If this doesn't work for you, please let me know for which game, so I can check if there's something wrong.
 
  • Like
  • Red Heart
Reactions: knyght and vimey
5.00 star(s) 33 Votes