Ren'Py
Ren'Py is a an open source software engine to create Visual Novels.
It uses an easy to learn script language that allows users to write large visual novels. For more complex functionalities, it supports Python scripting.
Games made with Ren'Py
How it works
Ren'Py uses scripts to create visual novel scenes, similarly to Naninovel. The scripts use commands to direct scenes and menus.

Example script:
label family:
scene bg beach2
with dissolve
"It wasn't long before Mary broke the silence, by asking me a question."
show mary dark smiling
with dissolve
m "I told you a little about my family... but I haven't asked you about yours yet. What's your family like?"
p "When I'm on the island here, I live with my aunt and uncle, but back home, I live with my mother, father, and sister."
m "A sister? Is she older or younger?"
Tip
Dialogue Designer can be used with Ren'Py to create the dialogues.