Hi! This tool seems like it would be extremely helpful! But for some reason, when I put it in my script, I get this error when starting up the game.
I'm sorry, but an uncaught exception occurred.
While running game code:
File "game/Script/technical/screens.rpy", line 503, in execute
screen main_menu():
File "game/Script/technical/screens.rpy", line 503, in execute
screen main_menu():
File "game/Script/technical/screens.rpy", line 518, in execute
use navigation
File "game/Script/technical/screens.rpy", line 305, in execute
screen navigation():
File "game/Script/technical/screens.rpy", line 305, in execute
screen navigation():
File "game/Script/technical/screens.rpy", line 307, in execute
fixed:
File "game/Script/technical/screens.rpy", line 313, in execute
imagebutton auto "gui/mainmenu/start_%s.webp" xpos 1553 ypos 432 focus_mask True action [Start(), Play("sound", "audio/sounds/buttonstart.mp3")] hovered [Play("sound", "audio/sounds/click.mp3")]:
TypeError: new_renpy_loadable() got an unexpected keyword argument 'directory'
-- Full Traceback ------------------------------------------------------------
Traceback (most recent call last):
File "renpy/common/_layout/screen_main_menu.rpym", line 28, in script
python hide:
File "renpy/ast.py", line 1187, in execute
renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "renpy/python.py", line 1260, in py_exec_bytecode
exec(bytecode, globals, locals)
~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "renpy/common/_layout/screen_main_menu.rpym", line 28, in <module>
python hide:
File "renpy/common/_layout/screen_main_menu.rpym", line 35, in _execute_python_hide
ui.interact()
~~~~~~~~~~~^^
File "renpy/ui.py", line 304, in interact
rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "renpy/display/core.py", line 2219, in interact
repeat, rv = self.interact_core(
~~~~~~~~~~~~~~~~~~^
preloads=preloads,
^^^^^^^^^^^^^^^^^^
...<4 lines>...
**kwargs,
^^^^^^^^^
) # type: ignore
^
File "renpy/display/core.py", line 2757, in interact_core
root_widget.visit_all(lambda d: d.per_interact())
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "renpy/display/displayable.py", line 432, in visit_all
d.visit_all(callback, seen)
~~~~~~~~~~~^^^^^^^^^^^^^^^^
File "renpy/display/displayable.py", line 432, in visit_all
d.visit_all(callback, seen)
~~~~~~~~~~~^^^^^^^^^^^^^^^^
File "renpy/display/displayable.py", line 432, in visit_all
d.visit_all(callback, seen)
~~~~~~~~~~~^^^^^^^^^^^^^^^^
File "renpy/display/screen.py", line 503, in visit_all
callback(self)
~~~~~~~~^^^^^^
File "renpy/display/core.py", line 2757, in <lambda>
root_widget.visit_all(lambda d: d.per_interact())
~~~~~~~~~~~~~~^^
File "renpy/display/screen.py", line 514, in per_interact
self.update()
~~~~~~~~~~~^^
File "renpy/display/screen.py", line 715, in update
self.screen.function(**self.scope)
~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
File "game/Script/technical/screens.rpy", line 503, in execute
screen main_menu():
File "game/Script/technical/screens.rpy", line 503, in execute
screen main_menu():
File "game/Script/technical/screens.rpy", line 518, in execute
use navigation
File "game/Script/technical/screens.rpy", line 305, in execute
screen navigation():
File "game/Script/technical/screens.rpy", line 305, in execute
screen navigation():
File "game/Script/technical/screens.rpy", line 307, in execute
fixed:
File "game/Script/technical/screens.rpy", line 313, in execute
imagebutton auto "gui/mainmenu/start_%s.webp" xpos 1553 ypos 432 focus_mask True action [Start(), Play("sound", "audio/sounds/buttonstart.mp3")] hovered [Play("sound", "audio/sounds/click.mp3")]:
File "renpy/ui.py", line 961, in _imagebutton
idle = choice(idle, idle_image, "idle", required=True)
~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "renpy/ui.py", line 949, in choice
rv = renpy.config.imagemap_auto_function(auto, name)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
File "renpy/common/00defaults.rpy", line 168, in _imagemap_auto_function
elif renpy.loadable(rv, directory="images"):
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: new_renpy_loadable() got an unexpected keyword argument 'directory'
Windows-11-10.0.26200-SP0 AMD64
Ren'Py 8.4.1.25072401
Painkiller: Arachnophobia 2.0
Fri Dec 26 00:11:16 2025
It seems as if its interacting with my main menu code for some reason? For reference, this only happens when I put in the files for this plugin and the image tools plug in.
If it helps, this is my main menu screen. Not sure what the problem is!
screen navigation(): fixed: style_prefix "navigation" spacing gui.navigation_spacing
imagebutton auto "gui/mainmenu/start_%s.webp" xpos 1553 ypos 432 focus_mask True action [Start(), Play("sound", "audio/sounds/buttonstart.mp3")] hovered [Play("sound", "audio/sounds/click.mp3")]: at enterone imagebutton auto "gui/mainmenu/load_%s.webp" xpos 1586 ypos 496 focus_mask True action [ShowMenu("load"), Play("sound", "audio/sounds/buttonclick.mp3")] hovered [Play("sound", "audio/sounds/click.mp3")]: at entertwo imagebutton auto "gui/mainmenu/chap_%s.webp" xpos 1377 ypos 563 focus_mask True action [ShowMenu("chapterselect"), Play("sound", "audio/sounds/buttonclick.mp3")] hovered [Play("sound", "audio/sounds/click.mp3")]: at enterthree imagebutton auto "gui/mainmenu/pref_%s.webp" xpos 1420 ypos 632 focus_mask True action [ShowMenu("preferences"), Play("sound", "audio/sounds/buttonclick.mp3")] hovered [Play("sound", "audio/sounds/click.mp3")]: at enterfour imagebutton auto "gui/mainmenu/warn_%s.webp" xpos 1486 ypos 691 focus_mask True action [ShowMenu("warnings"), Play("sound", "audio/sounds/buttonclick.mp3")] hovered [Play("sound", "audio/sounds/click.mp3")]: at enterfive imagebutton auto "gui/mainmenu/about_%s.webp" xpos 1550 ypos 764 focus_mask True action [ShowMenu("about"), Play("sound", "audio/sounds/buttonclick.mp3")] hovered [Play("sound", "audio/sounds/click.mp3")]: at entersix imagebutton auto "gui/mainmenu/help_%s.webp" xpos 1583 ypos 830 focus_mask True action [ShowMenu("help"), Play("sound", "audio/sounds/buttonclick.mp3")] hovered [Play("sound", "audio/sounds/click.mp3")]: at enterseven if renpy.variant("pc"): imagebutton auto "gui/mainmenu/quit_%s.webp" xpos 1593 ypos 900 focus_mask True action [Quit(confirm=not main_menu), Play("sound", "audio/sounds/buttonclick.mp3")] hovered [Play("sound", "audio/sounds/click.mp3")]: at entereight
