Edit: this is because of the sandbox mode in the itchio client.
I get this error when try to save on macOS Big Sur, downloaded through the itch.io store app. It worked when downloading manually. I tried the 0.5c version.
[code]
I'm sorry, but an uncaught exception occurred.
While running game code:
File "renpy/common/00action_file.rpy", line 372, in __call__
renpy.save(fn, extra_info=save_name)
Exception: Not saved - no valid save locations.
-- Full Traceback ------------------------------------------------------------
Full traceback:
File "renpy/common/_layout/screen_load_save.rpym", line 35, in script
$ ui.interact()
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/ast.py", line 914, in execute
renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/python.py", line 2028, in py_exec_bytecode
exec bytecode in globals, locals
File "renpy/common/_layout/screen_load_save.rpym", line 35, in <module>
$ ui.interact()
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/ui.py", line 297, in interact
rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/core.py", line 2702, in interact
repeat, rv = self.interact_core(preloads=preloads, trans_pause=trans_pause, **kwargs)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/core.py", line 3518, in interact_core
rv = root_widget.event(ev, x, y, 0)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/layout.py", line 998, in event
rv = i.event(ev, x - xo, y - yo, cst)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/transition.py", line 47, in event
return self.new_widget.event(ev, x, y, st) # E1101
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/layout.py", line 998, in event
rv = i.event(ev, x - xo, y - yo, cst)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/layout.py", line 998, in event
rv = i.event(ev, x - xo, y - yo, cst)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/screen.py", line 714, in event
rv = self.child.event(ev, x, y, st)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/layout.py", line 998, in event
rv = i.event(ev, x - xo, y - yo, cst)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/layout.py", line 244, in event
rv = d.event(ev, x - xo, y - yo, st)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/layout.py", line 998, in event
rv = i.event(ev, x - xo, y - yo, cst)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/layout.py", line 244, in event
rv = d.event(ev, x - xo, y - yo, st)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/layout.py", line 998, in event
rv = i.event(ev, x - xo, y - yo, cst)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/layout.py", line 244, in event
rv = d.event(ev, x - xo, y - yo, st)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/behavior.py", line 962, in event
return handle_click(self.clicked)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/behavior.py", line 897, in handle_click
rv = run(action)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/display/behavior.py", line 320, in run
return action(*args, **kwargs)
File "renpy/common/00action_file.rpy", line 372, in __call__
renpy.save(fn, extra_info=save_name)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/loadsave.py", line 437, in save
location.save(slotname, sr)
File "/Users/dawars/Library/Application Support/itch/apps/knightly-passions/Knightly_passions.app/Contents/Resources/autorun/renpy/savelocation.py", line 429, in save
raise Exception("Not saved - no valid save locations.")
Exception: Not saved - no valid save locations.
Darwin-20.5.0-x86_64-i386-64bit
Ren'Py 7.3.5.606
Knightly Passions 0.5c
Thu Dec 2 15:12:45 2021
[\code]