freeCodeCamp / LearnToCodeRPG

A visual novel video game where you learn to code and get a dev job 🎯
https://www.freecodecamp.org/news/learn-to-code-rpg-1-5-update/
BSD 3-Clause "New" or "Revised" License
1.06k stars 110 forks source link

Can't save game progress on mac #92

Closed imnotsoda closed 1 year ago

imnotsoda commented 1 year ago

Looking forward for reporting a security issue: Please report security issues by following our security policy: https://contribute.freecodecamp.org/#/security

Describe the bug A clear and concise description of what the bug is.

The game is not letting me save the game progress on my mac.

To Reproduce Steps to reproduce the behavior:

  1. Open game on Mac
  2. Play the game
  3. Click save button
  4. Click empty slot in page 1
  5. Then the screen shows up

Expected behavior A clear and concise description of what you expected to happen.

Well I expected it to save the game and let me continue playing until I have to save again.

Screenshots If applicable, add screenshots to help explain your problem.

Screenshot 2022-12-25 at 5 03 12 PM

Desktop (please complete the following information):

Additional context Add any other context about the problem here.

this is the thing that shows up `[code] I'm sorry, but an uncaught exception occurred.

While running game code: File "renpy/common/00gamemenu.rpy", line 170, in script $ ui.interact() File "renpy/common/00gamemenu.rpy", line 170, in $ ui.interact() File "renpy/common/00action_file.rpy", line 383, in call renpy.save(fn, extra_info=save_name) TypeError: cannot pickle '_io.TextIOWrapper' object (perhaps store.requests = <module 'requests' from '/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Con)

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

Full traceback: File "renpy/common/00gamemenu.rpy", line 170, in script $ ui.interact() File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/ast.py", line 1131, in execute renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/python.py", line 1061, in py_exec_bytecode exec(bytecode, globals, locals) File "renpy/common/00gamemenu.rpy", line 170, in $ ui.interact() File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/ui.py", line 299, in interact rv = renpy.game.interface.interact(roll_forward=roll_forward, kwargs) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/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 "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/core.py", line 4258, in interact_core rv = root_widget.event(ev, x, y, 0) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/layout.py", line 1175, in event rv = i.event(ev, x - xo, y - yo, cst) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/transition.py", line 53, in event return self.new_widget.event(ev, x, y, st) # E1101 File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/layout.py", line 1175, in event rv = i.event(ev, x - xo, y - yo, cst) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/layout.py", line 1175, in event rv = i.event(ev, x - xo, y - yo, cst) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/screen.py", line 743, in event rv = self.child.event(ev, x, y, st) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/layout.py", line 1175, in event rv = i.event(ev, x - xo, y - yo, cst) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/layout.py", line 1399, in event rv = super(Window, self).event(ev, x, y, st) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/layout.py", line 279, in event rv = d.event(ev, x - xo, y - yo, st) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/layout.py", line 1175, in event rv = i.event(ev, x - xo, y - yo, cst) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/layout.py", line 1399, in event rv = super(Window, self).event(ev, x, y, st) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/layout.py", line 279, in event rv = d.event(ev, x - xo, y - yo, st) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/layout.py", line 1175, in event rv = i.event(ev, x - xo, y - yo, cst) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/layout.py", line 279, in event rv = d.event(ev, x - xo, y - yo, st) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/behavior.py", line 1073, in event return handle_click(self.clicked) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/behavior.py", line 1008, in handle_click rv = run(action) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/behavior.py", line 329, in run return action(*args, **kwargs) File "renpy/common/00action_file.rpy", line 383, in call renpy.save(fn, extra_info=save_name) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/loadsave.py", line 408, in save reraise(t, e, tb) File "/home/tom/ab/renpy-build/tmp/install.linux-x8664/lib/python3.9/site-packages/future/utils/init.py", line 441, in raise File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/loadsave.py", line 389, in save dump((roots, renpy.game.log), logf) File "/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/compat/pickle.py", line 103, in dump pickle.dump(o, f, pickle.HIGHEST_PROTOCOL if highest else PROTOCOL) TypeError: cannot pickle '_io.TextIOWrapper' object (perhaps store.requests = <module 'requests' from '/private/var/folders/1y/g9gw5v0x7vg4n8kdl93c1rvw0000gp/T/AppTranslocation/A915DC35-7CD8-48D3-A436-DB0D59C0FB66/d/LearnToCodeRPG.app/Con)

macOS-10.16-x86_64-i386-64bit x86_64 Ren'Py 8.0.3.22090809 Learn to Code RPG 1.5 Sun Dec 25 17:03:07 2022 [/code] `

RuolinZheng08 commented 1 year ago

https://github.com/freeCodeCamp/LearnToCodeRPG/commit/c220e63c220cb5ca6b3169b1f771c8524d7d99c1