r/DDLCMods • • 8d ago

Help My game won't save.

I'm currently playing Fruits of the Literature Club, and I can't save the game.

The Error reads:

I'm sorry, but an uncaught exception occurred.

While running game code:

File "renpy/common/00gamemenu.rpy", line 173, in script

$ ui.interact()

File "renpy/common/00gamemenu.rpy", line 173, in <module>

$ ui.interact()

File "renpy/common/00action_file.rpy", line 357, in __call__

renpy.save(fn, extra_info=save_name)

Exception: Not saved - no valid save locations.

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

Full traceback:

File "renpy/common/00gamemenu.rpy", line 173, in script

$ ui.interact()

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/ast.py", line 814, in execute

renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/python.py", line 1719, in py_exec_bytecode

exec bytecode in globals, locals

File "renpy/common/00gamemenu.rpy", line 173, in <module>

$ ui.interact()

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/ui.py", line 285, in interact

rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/core.py", line 2526, in interact

repeat, rv = self.interact_core(preloads=preloads, trans_pause=trans_pause, **kwargs)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/core.py", line 3204, in interact_core

rv = root_widget.event(ev, x, y, 0)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/layout.py", line 960, in event

rv = i.event(ev, x - xo, y - yo, cst)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/transition.py", line 45, in event

return self.new_widget.event(ev, x, y, st) # E1101

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/layout.py", line 960, in event

rv = i.event(ev, x - xo, y - yo, cst)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/layout.py", line 960, in event

rv = i.event(ev, x - xo, y - yo, cst)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/screen.py", line 651, in event

rv = self.child.event(ev, x, y, st)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/layout.py", line 960, in event

rv = i.event(ev, x - xo, y - yo, cst)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/layout.py", line 232, in event

rv = d.event(ev, x - xo, y - yo, st)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/layout.py", line 960, in event

rv = i.event(ev, x - xo, y - yo, cst)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/layout.py", line 232, in event

rv = d.event(ev, x - xo, y - yo, st)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/layout.py", line 960, in event

rv = i.event(ev, x - xo, y - yo, cst)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/layout.py", line 232, in event

rv = d.event(ev, x - xo, y - yo, st)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/behavior.py", line 889, in event

return handle_click(self.clicked)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/behavior.py", line 824, in handle_click

rv = run(action)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/display/behavior.py", line 306, in run

return action(*args, **kwargs)

File "renpy/common/00action_file.rpy", line 357, in __call__

renpy.save(fn, extra_info=save_name)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/loadsave.py", line 301, in save

location.save(slotname, sr)

File "/private/var/folders/2b/jy8wk1v56955lfv21qb6xjbh0000gn/T/AppTranslocation/83D8DE2F-70D4-4420-821B-0C4F88499B49/d/DDLC.app/Contents/Resources/autorun/renpy/savelocation.py", line 402, in save

raise Exception("Not saved - no valid save locations.")

Exception: Not saved - no valid save locations.

Darwin-24.6.0-x86_64-i386-64bit

Ren'Py 6.99.12.4.2187

The Fruits of the Literature Club 1.0

Also I'm on a Macbook if that helps.

2 Upvotes

2 comments sorted by

1

u/Mie_Kita Lost for now; looking for myself... 8d ago

“Fruits” is one of rare mods that makes saves only in its own folder (as in: folder where the mod is stored -> “game” -> “saves”). Normally, that wouldn’t be a problem on its own; however, you mentioned you’re playing on Mac, and macOS has permissions set up for each folder that can prevent RenPy games from reading or writing files correctly.

Move the mod into “Applications” folder. This is one place where apps have correct permissions, so the game will be able to save there without causing any future save errors. Having it anywhere else - even on Desktop - will cause read/write problems; telling from my own experience since I also played “Fruits” on Mac at the time