A downloadable game for Windows, macOS, and Linux


About

* IMPORTANT: Please read through the Download & Install Instructions below, located right above the Download section *

Learn to Code RPG is a visual novel game developed by freeCodeCamp.org. In this game, you will teach yourself to code, make friends in the tech industry, and pursue your dream of becoming a developer 🎯

This game features:

  • Hours of gameplay 🎮
  • Original art and music 🎨
  • 1,000+ Computer Science quiz questions 📚
  • 50+ achievements you can unlock 🏆
  • 6 different endings 👀
  • 10+ characters you can make friends with, and an adorable cat 🐱
  • Minigames 👾
  • A renown system, a money system, and fun items you can buy for your cat and to customize your room 🏠

This open-source game is a work in progress and ever-evolving. We will publish major expansions to this game in the coming months, including new music and characters.

This game was made possible by all the kind people who donate to support freeCodeCamp.org. You can help support our nonprofit's mission here.

This game is open source and is currently in beta. If you notice any bugs or have suggestions about accessibility, the interface, the story, or anything at all, please report them by opening GitHub issues.

If you are enjoying this game, please rate the game and leave a comment below.

If you are interested in how we made this game, check out this article.

Credits

Creative Lead Lynn Zheng

KayLa Thomas
Nielda Karla

Coding Lynn Zheng
Writing Lynn Zheng
KayLa Thomas
Music Quincy Larson
Character Art Layerto (Noa Trinh)
Other Graphics Lynn Zheng
Nielda Karla
Quiz Questions & Proofreading Abbey Rennemeyer
Kris Koishigawa
Oliver Eyton-Williams
Estefania Cassingena Navone
Jessica Wilkins
Dionysia Lemonaki
Playtesting Ilenia Magoni
Estefania Cassingena Navone
Naomi Carrigan
Yoko Matsuda
Daniel Rosa
Beau Carnes

Download

Download
LearnToCodeRPG-pc.zip 309 MB
Version 1.5.4 Apr 19, 2023
Download
LearnToCodeRPG-mac.zip 294 MB
Version 1.5.4 Apr 19, 2023
Download
LearnToCodeRPG-linux.tar.bz2 288 MB
Version 1.5.4 Apr 19, 2023

Install instructions

Windows: LearnToCodeRPG-pc.zip

  1. Unzip the file (refer to this Microsoft support article if you have questions)
  2. Open the folder that appears after unzipping
  3. Double click on the application LearnToCodeRPG.exe

Mac: LearnToCodeRPG-mac.zip

  1. Unzip the file by double-clicking
  2. Double click on the application that appears after unzipping. If you run into an error about "an unidentified developer", refer to this Apple support article.

Linux: LearnToCodeRPG-linux.tar.bz2

  1. Unzip the file
  2. Open the folder that appears after unzipping
  3. Run LearnToCodeRPG.sh, you may have to change execution access

Also available on

Development log

Comments

Log in with itch.io to leave a comment.

Viewing most recent comments 1 to 40 of 44 · Next page · Last page
(+1)

Loved it!

I'm on  day 2023-01-16 Monday and chose to listen to music to recharge energy, but seem to be stuck. Can't continue and energy is 27 but not changing. Any suggestions?

(+2)

Is there any way to change to a male character?

cannot save the linux game version

Hi, I love the concept of this.  I wanted to know if there was a way to play this on my iPad. Should I download some sort of Mac OS emulator ? 

same here. unfortunately can't save the game. Love the game otherwise!

- version 1.5

- I am on mac os10.16


[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 <module>

    $ 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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/d/LearnToCodeRPG.app/Con)

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

Full traceback:

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

    $ ui.interact()

  File "/private/var/folders/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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 <module>

    $ ui.interact()

  File "/private/var/folders/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/behavior.py", line 1073, in event

    return handle_click(self.clicked)

  File "/private/var/folders/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/behavior.py", line 1008, in handle_click

    rv = run(action)

  File "/private/var/folders/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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-x86_64/lib/python3.9/site-packages/future/utils/__init__.py", line 441, in raise_

  File "/private/var/folders/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/loadsave.py", line 389, in save

    dump((roots, renpy.game.log), logf)

  File "/private/var/folders/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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/q_/crqf_y3s4915hhyn3vtjtsb80000gn/T/AppTranslocation/B26D755B-5D94-4F81-85F4-805B0B405B8E/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 13:33:41 2022

[/code]

(+1)

i got a error while saving

```

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 <module>

    $ 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 'C:\\Users\\i9shu\\Downloads\\learn-to-code-rpg-win\\LearnToCodeRPG-1.5-pc\\lib\\python3.9\\requests\\__init__.pyc'>)

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

Full traceback:

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

    $ ui.interact()

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\ast.py", line 1131, in execute

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\python.py", line 1061, in py_exec_bytecode

    exec(bytecode, globals, locals)

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

    $ ui.interact()

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\ui.py", line 299, in interact

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\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 "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\core.py", line 4258, in interact_core

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\layout.py", line 1175, in event

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\transition.py", line 53, in event

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\layout.py", line 1175, in event

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\layout.py", line 1175, in event

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\screen.py", line 743, in event

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\layout.py", line 1175, in event

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\layout.py", line 1399, in event

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\layout.py", line 279, in event

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\layout.py", line 1175, in event

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\layout.py", line 1399, in event

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\layout.py", line 279, in event

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\layout.py", line 1175, in event

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\layout.py", line 279, in event

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

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\behavior.py", line 1073, in event

    return handle_click(self.clicked)

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\display\behavior.py", line 1008, in handle_click

    rv = run(action)

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\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 "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\loadsave.py", line 408, in save

    reraise(t, e, tb)

  File "/home/tom/ab/renpy-build/tmp/install.linux-x86_64/lib/python3.9/site-packages/future/utils/__init__.py", line 441, in raise_

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\renpy\loadsave.py", line 389, in save

    dump((roots, renpy.game.log), logf)

  File "C:\Users\i9shu\Downloads\learn-to-code-rpg-win\LearnToCodeRPG-1.5-pc\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 'C:\\Users\\i9shu\\Downloads\\learn-to-code-rpg-win\\LearnToCodeRPG-1.5-pc\\lib\\python3.9\\requests\\__init__.pyc'>)

Windows-10-10.0.22621 AMD64

Ren'Py 8.0.3.22090809

Learn to Code RPG 1.5

Sat Dec 24 20:39:15 2022

```

I'm second to have this on a linux computer

(+2)

Hello! What a cool game. I tried to save it after a while, but got the following error:

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 <module>

    $ 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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/d/LearnToCodeRPG.app/Con)

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

Full traceback:

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

    $ ui.interact()

  File "/private/var/folders/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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 <module>

    $ ui.interact()

  File "/private/var/folders/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/behavior.py", line 1073, in event

    return handle_click(self.clicked)

  File "/private/var/folders/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/display/behavior.py", line 1008, in handle_click

    rv = run(action)

  File "/private/var/folders/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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-x86_64/lib/python3.9/site-packages/future/utils/__init__.py", line 441, in raise_

  File "/private/var/folders/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/d/LearnToCodeRPG.app/Contents/Resources/autorun/renpy/loadsave.py", line 389, in save

    dump((roots, renpy.game.log), logf)

  File "/private/var/folders/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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/w8/sv_ss32j63sdvc85gxyzw3f40000gn/T/AppTranslocation/00E5C053-54D1-4E4D-BAE1-DB6E9316975C/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

Sat Dec 24 18:40:06 2022

(+1)

Seems like a really cool game but I can't seem to save at all. Every time I try to save I get an error message. I'm playing on Mac. Anyone else run into this problem? 

(+2)

Me too!

(+1)

Same here, can't save at all!

can't save the game,too.I am on windows.

Can you put the game's APK on itch i downloaded it from google play and it gets stuck downloading the assets

“LearnToCodeRPG” cannot be opened because the developer cannot be verified. 

Tried to play it on a MacBook Pro....

I don't remember exactly what the button said, maybe "more"? It's beside the cancel/close button. I pressed that, then when it gave me more information it asked me whether or not I wanted to open the file anyway. That's how you open the game. I'm using windows not a mac but I believe it's the same 

APle moment

Gatekeeper doing its job. You can unlock that in the system preferences under Security. There's a radio button that needs to be checked in order to successfully install third party software that doesn't have. I forget which one off the top of my head but it's under the FileVault tab I think?

Sorry I haven't worked support in a long time and it's escaping me now but I know there's an article about it on the Apple Support website.

Hi, there! :D
I have a little issue with the game. 

The graphics look blury (characters and backgrounds)

Don't know if it's a game's bug or my laptop is the trouble maker here. bug or my laptop is the trouble maker here. 

What could it be?
P.D. Nice game, btw. Pretty much enjoying it :D

Game crashing when i go to hackathon with Annika

Windows-10-10.0.17763

Ren'Py 7.4.11.2266

Vendor: 'Intel'

Renderer: 'Intel(R) Q45/Q43 Express Chipset'

Version: '2.1.0 - Build 8.15.10.2413'

When the "Sounds good!" text apears game crashing, but thank you for the game! Its amazing!

(+1)

Great game! Take a breathe, take a day for yourself, you'll be alright. 

How do I change execution access? I managed to unzip the file but I can't run LearnToCodeRPG.sh. Am I supposed to type something into the terminal or is there something in settings

(+3)

If you mean you don't know how to run from the commandline, then type:

./LearnToCodeRPG.sh

If you mean it won't execute, even after you type that, then try:

chmod +x LearnToCodeRPG.sh

If it still won't run, then I'm sorry, but I don't know how else to help.

That worked, thank you 

(+2)(-1)

There's something embarrassing here! emails come saying there are new updates on the game while here the version is always 1.0 as if there was no change!

(+1)

Hi kmbenjel, thanks for the note! The emails you get are about small bug fixes. We will keep the version number as 1.0 until we have major content updates, at which point we will bump the version to 2.0 and so on.

(+1)

bon

(+1)

I just unlocked the completed CS curriculum and applied for cupcake company. After that as I was answering the quiz the game crashed. Here the exact error message:

I'm sorry, but an uncaught exception occurred.

While running game code:
  File "game/script.rpy", line 1282, in script call
    call study_session from _call_study_session_3
  File "game/scripts/labels/quiz_session.rpy", line 41, in script
    $ renpy.say(None, quiz_question.question, interact=False)
  File "game/scripts/labels/quiz_session.rpy", line 41, in <module>
    $ renpy.say(None, quiz_question.question, interact=False)
TypeError: %o format: a number is required, not TagQuotingDict

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

Full traceback:
  File "game/script.rpy", line 1282, in script call
    call study_session from _call_study_session_3
  File "game/scripts/labels/quiz_session.rpy", line 41, in script
    $ renpy.say(None, quiz_question.question, interact=False)
  File "renpy/ast.py", line 923, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
  File "renpy/python.py", line 2235, in py_exec_bytecode
    exec(bytecode, globals, locals)
  File "game/scripts/labels/quiz_session.rpy", line 41, in <module>
    $ renpy.say(None, quiz_question.question, interact=False)
  File "renpy/exports.py", line 1406, in say
    what = what % tag_quoting_dict
TypeError: %o format: a number is required, not TagQuotingDict

Windows-10-10.0.19041
Ren'Py 7.4.8.1895
Learn to Code RPG 1.0
Mon Jan 17 14:23:18 2022
(+2)

You know what I loved most about this game? The constant reminders that you have to take breaks and live a life away from the computer, so as not to burn out and/or go insane.

As someone who tends to push himself to burnout, and who is currently taking the self-study path to becoming a developer, I really needed to hear this. (Even if,  as a game mechanic, it 's sometimes frustrating that you can only do a tiny bit of actual "studying" before your sanity drops dangerously low . . .)

Anyway. I've only played once through so far, but I appreciate what you've done here. Thanks!

im unable to open the .exe
 

Im on windows 11 on a PC and have tried everything I see in the comments. I click on the game and my cursor gets the spinning wheel and then nothing.  

Any suggestions? 

Hi there,

I love the look of this game and can't wait to play it further, but I've encountered a problem.

I'm running Windows 10 Home 10.0.19043 and whether I play the game from the .exe file in the .zip, or download the code from Github and run it through RenPy, the stats aren't working for me. I get this:




and



I have two drives and have tried running the game from both, with no luck.  I've also cleared my saves from AppData and started again - still nothing.

(I also got a crash the first time I tried a minigame, but stupidly didn't save the error logs...)

Any ideas?
(+1)

Hi TeaandOwls,

Thanks for the bug report. Both have been fixed on GitHub and new builds have been uploaded here :)

Shhh now some spoilers about what caused this error: we are working on translations into different world languages so we’ve started extracting strings and interpolating variables.

Best, Lynn

(+1)

Wonderful - it works perfectly now. Thank you, and good luck with those translations! :)

(+3)

I liked this game. I read the story of the programmer behind it in the  freecodecamp blog. I joined tech industry for some time now but I am not a software developer (I am a Network Engineer). With regards to coding & software engineering, although I start with some coding tutorials from time to time and I can do some Python/Git/Linux, there is something that always makes me stop and I don't feel I am leveling up the way I want. This game is a good project that has succeeedd with its purpose, it has motivated me to seriously upgrade my coding skills this 2022. Thanks!

Deleted post
(-1)

click more details, then click run anywa

Deleted post
(+1)(-1)

That message is shown up with every ".exe" file whether the file has virus or not. So you don't need to worry about it so much :)

It shows up because freecodecamp is not a varified developer with Windows. They are legit, just havent gone through the hoops registering yet

You did the right thing by being concerned. It's always good to make sure that what you run is legit and not a virus. If you got the game directly from here, then it should be fine. Always make sure to get software directly from the source, since if you get it from somewhere else, sometimes bad hackers could put malware into the files. The other people here should have told you that, rather than "just click through it" or "no worries." That's not a good habit to have, unless you're 100% sure the executable is legit. This one is, though, so you can click through it.

(+2)

I've been played this game, and I have to tell this game is a great resources for learning how to make an interview and get a dev job, this is great, but maybe you have to change some dialogues in the game, some of those dialogues repeat so many times, for example: in the kitchen with the mom and in her room, with the cat or when she's taking a rest day in her home and she has to decide what she wants to do in her rest day, maybe add more task for this situation, also add more features or other things. 

Congrats!

(+1)(-5)

Just started playing the game and I'm not sure if this falls under accessibility or not but the mom and dad part could be a potential trauma trigger for people who weren't able to trust their parents, or suffered abuse/neglect at their hands. I realize that would require re-writing the whole intro to make those NPCs colleagues or friends or something other than parents. Of course the same could probably be said for colleagues/friends

(+2)

se puede pasar a español o traducir los  subtitulos

(+1)

The game is  really good,  i like how you learn the concepts and also the different endings, :D

GOOD GAME

(+1)

I'm unable to open this game on my Macbook Pro 2012. I have done everything specified in the installation instruction.

The app quits abruptly and displays the following error: https://gist.github.com/godswillumukoro/e0d1576c120e67a54b059804f1e794f6

(+1)

eh , in the linux quizz you ask the same question 2 times???

"which linux command is used to create multiple nested folders?"
which is the 2nd and 3rd question.

(+1)

SMTP,POP (emails are files).
PTP can be used to transfer files.
FTP (this is likely what you mean but the others are not incapable of the same thing)

(+1)(-1)

same kind of issue for the question on which port is used for http...
technically all ports can be used for it.

However, one specific well-known port is most commonly used, so that's the one to always answer.

i dont think the game can teach you how to make RPG, you dont need to learn how to send files to another computer or client and in the screenshot it is suggesting using database (AKA server) to do unnecessary stuff.

a database and a server are not the same at all.
a database stores information where as a server serves files to clients and other servers.

and i have no idea what you mean by this
"i dont think the game can teach you how to make RPG"
i did not once mention anything about making an RPG.

Large databases are often located on their own specific servers, so he's not quite wrong.

(+2)

https://github.com/Tarcaxoxide/Sauce

I have a feeling i wont gain anything from this knowledge wise as i have raise too high to reach but im still very interested to see how the story of the game plays out :)

(+1)

(some answers i guess)

"so java and javascript are different languages?"
> yes.

"wait, which one is for web dev again?"
> technically both can be used for web dev but javascript is the most common of the 2.

"someone may just decide that python 3 is too old-fashioned before i even get a chance to learn it."
> based on my knowledge of the topic, this is unlikely since they are not planning a new version of python but regardless of that XD eh kid i use C++ and assembly and those 2 languages are freaking dinosaurs so it's not the age of the programming languages that matters.

"are they like cousins or something?"
>in a round about way yes, they all stem from 1 languages. the all mighty and powerful C :) just careful if you do dip your toes in C cause that how your hair turns all grey and you get a beard the length of a football field.

I've started playing like 30 mins ago but this is amazing, makes me actually want to give coding another try like mc

(-1)

thats crazy, but, did i NOT ask?

(1 edit) (+1)

This was very intriguing to play. I applaud you guys for trying something like this. Usually when I think of coding, I automatically think of boring courses I took in college, but this actually peaked my interest. I'm not sure if coding is for me, but I showed this game to one of my relatives and they loved it. 

Anyway, here's my attempt to Learn to Code:

Hi Random Robo,

Thanks for making this video and we are glad you enjoyed the game!

(+1)

This game is actually a really neat developer/ programmer simulator and actually teaches about the different programming languages through the quizzes. I only just started learning c# in the last quarter of 2021 and this game actually gives me insight on the different languages more. The story is engaging and it was quite educational for me. Thank you for making this game!

(+1)

Hi Allekid,

Thanks for making this video and we are glad you enjoyed the game!

Hello I'm playing the game and I like it so far! It's really helping me with some basic coding concepts. 

I found a typo in one of the questions.

The question is: "The set of instructions that specifies a computation (in) known as.."

in should changed to "is"

Thank you for creating this game for us coding newbies!

Good catch, thanks!

(1 edit)

Hello, I really love this game and i have a lot of fun playing it. I'm playing it with that build in text to speech feature cus i'm blind, and i've found a problem. When scrolling through the story when there are longer sentences tts just reads the beginning and then cuts it out and reads everything again. It's quite annoying but doesn't discourage me from playing cus i've never played anything cool like that before. I'm happy to test the accessibility of this game and give suggestions, but i have problem figuring github out, that's why i'm writing it here with hope someone from the development team will see this. Thank you for making that game, and good luck!

Hi VIPPotato,

Lynn here - thanks for the comment!

We are working on improving the accessibility features and have created a GitHub issue dedicated to those.

We will keep you posted about updates to the TTS feature :)

when i the game was completing dwnlding from the web it suddenly stopped claiming that it doesnt have permisiion how do i fix this....help me please

(1 edit)

Hi mike.sylevester,

Lynn here - May I ask what’s your computer’s OS? Please follow the instructions below. Let me know if it works and I’d be happy to assist more.

Windows: LearnToCodeRPG-1.0-pc.zip

1. Unzip the file
2. Open the folder that appears after unzipping
3. Double click on the application LearnToCodeRPG.exe

Mac: LearnToCodeRPG-1.0-mac.zip

1. Unzip the file by double-clicking
2. Double click on the application that appears after unzipping. If you run into an error about "an unidentified developer", refer to [this Apple support article](https://support.apple.com/guide/mac-help/open-a-mac-app-from-an-unidentified-developer-mh40616/mac).

Linux: LearnToCodeRPG-1.0-linux.tar.bz2

1. Unzip the file
2. Open the folder that appears after unzipping
3. Run LearnToCodeRPG.sh, you may have to change execution access

my OS is windows10*64-bit

Wow! Amazing game! I will spend a bit of time each day to play this through.

I love the art and UI/UX a lot!

Glad you enjoyed it :D

(3 edits)

Hi, I have installed the app and gave permission to the unidentified developer issue but I have never been able to start the app. It crashes the moment I click to open. I see a screen coming up and it fades out.

On the terminal, the error I get is as follows:

```

Last login: Mon Dec 20 18:09:36 on ttys001

/Applications/LearnToCodeRPG.app/Contents/MacOS/LearnToCodeRPG ; exit;

(base) ahmet@Ahmets-MacBook-Air ~ % /Applications/LearnToCodeRPG.app/Contents/MacOS/LearnToCodeRPG ; exit;

zsh: abort      /Applications/LearnToCodeRPG.app/Contents/MacOS/LearnToCodeRPG

Saving session...

...copying shared history...

...saving history...truncating history files...

...completed.

Deleting expired sessions...none found.

[Proces voltooid]

```

I hope I can play this game and learn soon on my Mac. Thanks a lot for all of your efforts.

Hi ahimek,

Lynn here - thanks for the detailed report.

May I ask about your Mac’s hardware version and OS version? We’ve tested M1 Mac on Catalina as well as older Macs on older OS and they seem to work. 😅

I’ve searched around and this Reddit post mentioned something about the AMD card causing issue. Here is their solution using an Nvidia card.

RenPy needs access to performance counters and is being denied by the default setting. Mine was an NVidia card but there should be a similar setting for you AMD folks.

Open Nvidia Control Panel (Not Experience)

Click on Manage GPU Performance Counters (If the Developer section isn't there, click on Desktop at the top -> Enable Developer Settings)

Click on Allow access to the GPU performance counters to all users

Apply

If this doesn’t work, it’s still possible to play the game by downloading the source code from GitHub and the Ren’Py Launcher app and directly launching the code from Ren’Py. (And if Ren’Py launcher crashes, that’s definitely a hardware or OS problem 😅)

I’ll keep following up on this. Hope you get to play the game soon :D

Hi,

Thanks for the answer and other option.

I do not any graphic cards on this Mac because it is a MacBook Air. If that is a requirement, I will try the other option you mentioned. Other info about my Mac:

  Model-ID:    MacBookAir5,2 ( of Mid 2012)

  Processor name:    Dual-Core Intel Core i5 ( Not Apple M1).

I have a Linux PC where I will try it then before I go with the RenPy.

Thanks again :)

Hi FreeCodeCamp. First of all, Thanks for this accessible game.

there are some issues that I've pointed out.

first. I'm a windows user. and using NVDA screen reader. but in this game, TTS only works with native screen readers, that is narrator in my case. but narrator is not responsive as NVDA is. so, it would be better to give option to the user about choosing the screen reader. specially if user is using windows.

second, currently, it's not possible to change the speed of the TTS from the game. it is better to have this option for the users so they can play the game on their own speed.

third, there was a question in HTML about ins tag, but TTS wasn't speaking the options of that question.

fourth, there could be some shortcut keys to control the volumes of the sound and music. for example, Page Up for increasing the music volume. Page down for decreasing the music volume. etc.

and lastly, in the settings, there should be a slider with percentage in the options like text speed bar, sound volume, and music volume etc. when we increase the volume, it could say, music volume 50%.

Thanks. and again, a lot of appreciations for this accessible video game.

(+1)

Hi arqamgrt,

Lynn here - thanks so much for your thoughtful feedback! We are glad that you enjoyed the game.

I’ve consolidated your feedback into our open GitHub issue about improving TTS. We will work on that :D

Viewing most recent comments 1 to 40 of 44 · Next page · Last page