From da32f9e185259f7138aa29737aeda70ff83e7350 Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sun, 30 Nov 2025 18:34:29 -0800 Subject: [PATCH 01/16] Rename display_name from 'TwilioQuest' to 'TerminalQuest' --- levels/javascript/conversations/botanist.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/levels/javascript/conversations/botanist.pug b/levels/javascript/conversations/botanist.pug index 863525f..ab0672b 100644 --- a/levels/javascript/conversations/botanist.pug +++ b/levels/javascript/conversations/botanist.pug @@ -5,7 +5,7 @@ mixin funny_way response#funny_way. You have a funny way of showing gratitude. -conversation(display_name="TwilioQuest Botanist") +conversation(display_name="TerminalQuest Botanist") if lastResponse === "funny_way" statement. What, do you want a medal for demonstrating you're not a complete simpleton? I have none to give, so my acknowledgment of your not-useless programming skills will have to suffice. @@ -24,4 +24,4 @@ conversation(display_name="TwilioQuest Botanist") +funny_way // Flush world state changes, if any -- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState); \ No newline at end of file +- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState); From 0d87ab3125a6d344d9713ce57f9d00ae4e4c9199 Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sun, 30 Nov 2025 18:35:33 -0800 Subject: [PATCH 02/16] Changed references of TwilioQuest to TerminalQuest --- levels/javascript/conversations/botanist_distant.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/levels/javascript/conversations/botanist_distant.pug b/levels/javascript/conversations/botanist_distant.pug index c27e59b..1f5d725 100644 --- a/levels/javascript/conversations/botanist_distant.pug +++ b/levels/javascript/conversations/botanist_distant.pug @@ -17,7 +17,7 @@ mixin can_you_just_tell response#can_you_just_tell. Listen, we're a bit pressed for time - reality unraveling and all that - can't you just tell me your access code? -conversation(display_name="TwilioQuest Botanist") +conversation(display_name="TerminalQuest Botanist") if lastResponse === "how_do_i_do_it" statement. How?! Well, isn't it obvious! You'll need to #[span.highlight extend the energy bridges] connecting the different sections of the lab. There should be a control panel by each bridge section you can use to do it.

It will probably require that you be clever enough to write #[span.highlight JavaScript code that uses conditional logic] - so I won't hold my breath. @@ -68,4 +68,4 @@ conversation(display_name="TwilioQuest Botanist") +how_do_i_do_it // Flush world state changes, if any -- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState); \ No newline at end of file +- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState); From acf2129554dcb0b236e8f41397381bcd1239dc82 Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sun, 30 Nov 2025 18:36:17 -0800 Subject: [PATCH 03/16] Update 'TwilioQuest' to 'TerminalQuest' in cedric.pug --- levels/javascript/conversations/cedric.pug | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/levels/javascript/conversations/cedric.pug b/levels/javascript/conversations/cedric.pug index ba55a36..0ad09a2 100644 --- a/levels/javascript/conversations/cedric.pug +++ b/levels/javascript/conversations/cedric.pug @@ -89,12 +89,12 @@ conversation(display_name="Cedric") statement#default text. Operator - I am pleased you have come to observe our work at the - #[span.highlight JavaScript Test Lab]. TwilioQuest scientists are making + #[span.highlight JavaScript Test Lab]. TerminalQuest scientists are making significant progress unlocking the potential of the JavaScript programming language. speech prosody(rate="110%"). Operator. I am pleased you have come to observe our work at the - JavaScript test lab. TwilioQuest scientists are making + JavaScript test lab. TerminalQuest scientists are making significant progress unlocking the potential of the JavaScript - programming language. \ No newline at end of file + programming language. From 2930148f2f8b81c1fe1d5368d10c06411c9c628d Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sun, 30 Nov 2025 18:37:31 -0800 Subject: [PATCH 04/16] Change references of TwilioQuest to TerminalQuest --- levels/javascript/conversations/scientist1.pug | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/levels/javascript/conversations/scientist1.pug b/levels/javascript/conversations/scientist1.pug index 94b18d8..f98f8e4 100644 --- a/levels/javascript/conversations/scientist1.pug +++ b/levels/javascript/conversations/scientist1.pug @@ -4,10 +4,10 @@ mixin how_get_job response#how_get_job. I understand that this is an important project - how did you end up doing this kind of research? -conversation(display_name="TwilioQuest Scientist") +conversation(display_name="TerminalQuest Scientist") if lastResponse === "how_get_job" statement. - It's definitely not what I imagined I'd be doing after a PhD in molecular biology. And I can tell you it's nowhere near as lucrative as the offers I received from pharmaceutical companies.

But I've never been able to resist the chance to solve a mystery. When the TwilioQuest program recruited me to study a previously unknown substance, how could I refuse? + It's definitely not what I imagined I'd be doing after a PhD in molecular biology. And I can tell you it's nowhere near as lucrative as the offers I received from pharmaceutical companies.

But I've never been able to resist the chance to solve a mystery. When the TerminalQuest program recruited me to study a previously unknown substance, how could I refuse? responses response#lucky_to_have. Well, they're lucky to have you. @@ -52,4 +52,4 @@ conversation(display_name="TwilioQuest Scientist") include scientist1_initial.pug // Flush world state changes, if any -- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState); \ No newline at end of file +- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState); From 87b8750749c24b4c1a639d64a27524876ae6b0ed Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sun, 30 Nov 2025 18:38:24 -0800 Subject: [PATCH 05/16] Rename display name for scientist from TwilioQuest to TerminalQuest --- levels/javascript/conversations/scientist1_final.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/levels/javascript/conversations/scientist1_final.pug b/levels/javascript/conversations/scientist1_final.pug index 844752b..4e3e084 100644 --- a/levels/javascript/conversations/scientist1_final.pug +++ b/levels/javascript/conversations/scientist1_final.pug @@ -8,7 +8,7 @@ mixin sabotage response#sabotage. When I was fixing the final laser, it appeared to have been sabotaged. -conversation(display_name="TwilioQuest Lead Scientist") +conversation(display_name="TerminalQuest Lead Scientist") if lastResponse === "welcome" statement. I hope not! How many reality-threatening crises do you deal with in an average work week? @@ -32,4 +32,4 @@ conversation(display_name="TwilioQuest Lead Scientist") +sabotage // Flush world state changes, if any -- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState); \ No newline at end of file +- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState); From eb65c45cefd673629be2fe2ea905bcbaa9d0cd88 Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sun, 30 Nov 2025 18:39:07 -0800 Subject: [PATCH 06/16] Change display name from 'TwilioQuest Engineer' to 'TerminalQuest Engineer' --- levels/javascript/conversations/scientist3.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/levels/javascript/conversations/scientist3.pug b/levels/javascript/conversations/scientist3.pug index d6e73c1..cedb11c 100644 --- a/levels/javascript/conversations/scientist3.pug +++ b/levels/javascript/conversations/scientist3.pug @@ -5,7 +5,7 @@ mixin thanks response#thanks. Thanks - it was a bit of a run-around, but I'm glad I could help. -conversation(display_name="TwilioQuest Engineer") +conversation(display_name="TerminalQuest Engineer") if lastResponse === "thanks" statement. Bonus points for a loop pun, on top of it all! I'll head out to the experiment room after I finish up in here. @@ -26,4 +26,4 @@ conversation(display_name="TwilioQuest Engineer") +thanks // Flush world state changes, if any -- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState); \ No newline at end of file +- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState); From e14845174247393119042ef9e5e7e37743d4ed86 Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sun, 30 Nov 2025 18:40:07 -0800 Subject: [PATCH 07/16] Change display name for engineer/ scientist from 'TwilioQuest' to 'TerminalQuest' --- levels/javascript/conversations/scientist3_final.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/levels/javascript/conversations/scientist3_final.pug b/levels/javascript/conversations/scientist3_final.pug index 5fc32a1..d1b58a3 100644 --- a/levels/javascript/conversations/scientist3_final.pug +++ b/levels/javascript/conversations/scientist3_final.pug @@ -8,7 +8,7 @@ mixin follow_up response#follow_up. Were you able to salvage the freight from the Infinite Loop? -conversation(display_name="TwilioQuest Engineer") +conversation(display_name="TerminalQuest Engineer") if lastResponse === "welcome" statement. Well, The Cloud needs more people like you. If there's ever anything we can do to help you out, don't hesitate to let us know. From 6238879c8d344e090a0652e84cee9fcb5a055c90 Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sun, 30 Nov 2025 18:41:01 -0800 Subject: [PATCH 08/16] Change display name for physicist/ scientist from 'TwilioQuest' to 'TerminalQuest' --- levels/javascript/conversations/scientist4.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/levels/javascript/conversations/scientist4.pug b/levels/javascript/conversations/scientist4.pug index c245b62..9a81314 100644 --- a/levels/javascript/conversations/scientist4.pug +++ b/levels/javascript/conversations/scientist4.pug @@ -12,7 +12,7 @@ mixin need_key response#need_key. The lead scientist sent me to retrieve your activation code for a laser in the ducktypium experiment room. Do you have it? -conversation(display_name="TwilioQuest Physicist") +conversation(display_name="TerminalQuest Physicist") if lastResponse === "yes_cant_see" statement. Thank goodness, finally, someone noticed I was still in here! The ducktypium explosion caused this matter instantiator to go haywire. I was trying to stabilize it when the machine engaged by mistake, causing #[span.highlight my body to slip out of phase with this plane of the multiverse]!

@@ -59,4 +59,4 @@ conversation(display_name="TwilioQuest Physicist") +yes_cant_see // Flush world state changes, if any -- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState); \ No newline at end of file +- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState); From 5df3e677be4c49f9a52f162514649dc3a550ed1b Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sun, 30 Nov 2025 18:41:58 -0800 Subject: [PATCH 09/16] Change display name for physicist/ scientist from 'TwilioQuest' to 'TerminalQuest' --- levels/javascript/conversations/scientist4_final.pug | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/levels/javascript/conversations/scientist4_final.pug b/levels/javascript/conversations/scientist4_final.pug index a1131e5..9d6dd9a 100644 --- a/levels/javascript/conversations/scientist4_final.pug +++ b/levels/javascript/conversations/scientist4_final.pug @@ -8,7 +8,7 @@ mixin follow_up response#follow_up. Are you feeling okay? You've been through more than your fair share of reality-bending lately. -conversation(display_name="TwilioQuest Physicist") +conversation(display_name="TerminalQuest Physicist") if lastResponse === "welcome" statement. Hah, that seems unlikely. Unless manipulating spacetime like a hunk of Play Doh is your idea of a good time. Though to be fair, that is *my* idea of a good time. @@ -32,4 +32,4 @@ conversation(display_name="TwilioQuest Physicist") +follow_up // Flush world state changes, if any -- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState); \ No newline at end of file +- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState); From 047eedf1c4da9c25ab9772344fa9ea018da39831 Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sun, 30 Nov 2025 18:42:41 -0800 Subject: [PATCH 10/16] Change display name for scientist from 'TwilioQuest' to 'TerminalQuest' --- levels/javascript/conversations/visitor-signin-scientist.pug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/levels/javascript/conversations/visitor-signin-scientist.pug b/levels/javascript/conversations/visitor-signin-scientist.pug index 4b90870..528f2b1 100644 --- a/levels/javascript/conversations/visitor-signin-scientist.pug +++ b/levels/javascript/conversations/visitor-signin-scientist.pug @@ -12,7 +12,7 @@ mixin about response#about. What kind of research are you doing aboard the station? -conversation(display_name="TwilioQuest Scientist") +conversation(display_name="TerminalQuest Scientist") case lastResponse when "about" statement#about From df34004d0c6a62fed378e3e63093bf1de84d5a11 Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Tue, 9 Dec 2025 23:28:45 -0800 Subject: [PATCH 11/16] Change instances of "Twilioquest" to "Terminalquest" --- levels/javascript/objectives/array2D/description.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/levels/javascript/objectives/array2D/description.md b/levels/javascript/objectives/array2D/description.md index d742cd6..4047658 100644 --- a/levels/javascript/objectives/array2D/description.md +++ b/levels/javascript/objectives/array2D/description.md @@ -8,7 +8,7 @@ -Inside one of the secure cargo holds in the **Infinite Loop**, you find one of the security nodes you need to disable to reach the TwilioQuest program's electrical engineer. +Inside one of the secure cargo holds in the **Infinite Loop**, you find one of the security nodes you need to disable to reach the TerminalQuest program's electrical engineer. This node is currently locked down because of two incorrectly configured environment variables, which are contained within a **two-dimensional array**. From 9ea55d433f182263bf004a810c42a5803959bd71 Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sat, 20 Dec 2025 08:11:57 -0800 Subject: [PATCH 12/16] Changed instances of "Twilioquest" to "TerminalQuest" --- levels/javascript/objectives/green-keycard/walkthrough.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/levels/javascript/objectives/green-keycard/walkthrough.md b/levels/javascript/objectives/green-keycard/walkthrough.md index 5b9f598..34542df 100644 --- a/levels/javascript/objectives/green-keycard/walkthrough.md +++ b/levels/javascript/objectives/green-keycard/walkthrough.md @@ -1,6 +1,6 @@ # Twilio Account Setup -The objective here is to [acquire a Twilio account](https://www.twilio.com/try-twilio?utm_source=twilioquest-3) and locate the account credentials you will need to interact with Twilio. These credentials will be stored locally on your computer by TwilioQuest. They will be used to validate and speed your progress through Twilio-related code challenges. +The objective here is to [acquire a Twilio account](https://www.twilio.com/try-twilio?utm_source=twilioquest-3) and locate the account credentials you will need to interact with Twilio. These credentials will be stored locally on your computer by TerminalQuest. They will be used to validate and speed your progress through Twilio-related code challenges. ## Getting your account credentials @@ -19,9 +19,9 @@ You will use these values together as a username and password for accessing the ## Notes on account security -We do not recommend using credentials for a Twilio account used by your own production applications in TwilioQuest. While our validation and automation code are designed to be as unobtrusive as possible, granting TwilioQuest access to your production API credentials could have unforeseen consequences. Consider [creating a new project](https://www.twilio.com/console/projects/create) to use with TwilioQuest specifically. +We do not recommend using credentials for a Twilio account used by your own production applications in TerminalQuest. While our validation and automation code are designed to be as unobtrusive as possible, granting TerminalQuest access to your production API credentials could have unforeseen consequences. Consider [creating a new project](https://www.twilio.com/console/projects/create) to use with TerminalQuest specifically. -The API credentials you provide for TwilioQuest to use can be edited in the **Settings** menu after successfully validating them. You can change or erase them at any time. Open the **Settings** menu while exploring by pressing the *O* key, or clicking on the **Settings** icon on the HUD bar at the top of the screen. +The API credentials you provide for TerminalQuest to use can be edited in the **Settings** menu after successfully validating them. You can change or erase them at any time. Open the **Settings** menu while exploring by pressing the *O* key, or clicking on the **Settings** icon on the HUD bar at the top of the screen. ## Clearing the barrier Enter both your Twilio account SID and auth token in the text fields to your right, and press the *HACK* button. Your credentials will be validated, and if they are correct, you will have prevailed in this challenge. From 9ae95af9e646376a52d2558d833d898149a14718 Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sat, 20 Dec 2025 08:14:01 -0800 Subject: [PATCH 13/16] Changed instances of "Twilioquest" to "TerminalQuest" --- .../objectives/js_declare_variable_multiple/description.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/levels/javascript/objectives/js_declare_variable_multiple/description.md b/levels/javascript/objectives/js_declare_variable_multiple/description.md index 8145617..2e4751f 100644 --- a/levels/javascript/objectives/js_declare_variable_multiple/description.md +++ b/levels/javascript/objectives/js_declare_variable_multiple/description.md @@ -9,7 +9,7 @@ -You notice a chest with supplies intended for Operators in the TwilioQuest program (like you). It should be freely accessible, but it's currently locked down. To access these supplies, you can employ the **configuration override method you used earlier**. +You notice a chest with supplies intended for Operators in the TerminalQuest program (like you). It should be freely accessible, but it's currently locked down. To access these supplies, you can employ the **configuration override method you used earlier**. Create a file called `chestConfiguration.js` in your code folder. Inside this file, declare the following variables to override the security settings for this chest: From 0636accde112e72a5551510e1f63c32d1b14ba6a Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sat, 20 Dec 2025 08:15:04 -0800 Subject: [PATCH 14/16] Changed instances of "Twilioquest" to "TerminalQuest" --- levels/javascript/objectives/js_enable_laser/description.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/levels/javascript/objectives/js_enable_laser/description.md b/levels/javascript/objectives/js_enable_laser/description.md index 429648d..d3977b7 100644 --- a/levels/javascript/objectives/js_enable_laser/description.md +++ b/levels/javascript/objectives/js_enable_laser/description.md @@ -4,7 +4,7 @@ const worldState = levelState.TQ_JAVASCRIPT_WORLD_STATE; # An Incendiary Revelation -The TwilioQuest research team is about to attempt a groundbreaking experiment. Using four prototype molecular stabilization beams, they will be the first scientists to observe **ducktypium**, the mysterious source of JavaScript's power, in a solid form! For the experiment to continue, however, **the malfunctioning fourth laser beam must be rebooted**. +The TerminalQuest research team is about to attempt a groundbreaking experiment. Using four prototype molecular stabilization beams, they will be the first scientists to observe **ducktypium**, the mysterious source of JavaScript's power, in a solid form! For the experiment to continue, however, **the malfunctioning fourth laser beam must be rebooted**. <% if (worldState.room1.passwordFound) { %> From 26f461dbfbf2aab986b1a8d1562e617cc16b95b7 Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sat, 20 Dec 2025 08:16:42 -0800 Subject: [PATCH 15/16] Changed instances of "Twilioquest" to "TerminalQuest" --- levels/javascript/objectives/js_node_workspace/walkthrough.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/levels/javascript/objectives/js_node_workspace/walkthrough.md b/levels/javascript/objectives/js_node_workspace/walkthrough.md index 006a363..d8e784b 100644 --- a/levels/javascript/objectives/js_node_workspace/walkthrough.md +++ b/levels/javascript/objectives/js_node_workspace/walkthrough.md @@ -1,6 +1,6 @@ # Objective Help -To complete this challenge, create a folder on your computer to keep all your JavaScript code files for TwilioQuest. You can create the folder using your OS' graphical tools (Finder on Mac or Windows Explorer), or using a command prompt. +To complete this challenge, create a folder on your computer to keep all your JavaScript code files for TerminalQuest. You can create the folder using your OS' graphical tools (Finder on Mac or Windows Explorer), or using a command prompt. Once you have created a folder, paste the full path to this folder in the text field on the right. Let's say you created a new folder called `quest` to keep your JavaScript code. On Mac, a folder path might look like this: From 2b297e98e5c93c24e5563d6216179fb7e0898cdf Mon Sep 17 00:00:00 2001 From: caleb-p93 <136156828+caleb-p93@users.noreply.github.com> Date: Sat, 20 Dec 2025 08:24:25 -0800 Subject: [PATCH 16/16] Changed instances of "Twilioquest" to "TerminalQuest" --- levels/javascript/objectives/js_unlock_door/walkthrough.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/levels/javascript/objectives/js_unlock_door/walkthrough.md b/levels/javascript/objectives/js_unlock_door/walkthrough.md index 6160eaa..00960f4 100644 --- a/levels/javascript/objectives/js_unlock_door/walkthrough.md +++ b/levels/javascript/objectives/js_unlock_door/walkthrough.md @@ -5,7 +5,7 @@ The goal of this exercise is to familiarize you with creating and executing Java
Step 1: Create a JavaScript code file -You will first need to create a new file on your computer called `sayPlease.js` inside the folder your created as your TwilioQuest workspace. As a reminder, that folder is located here: +You will first need to create a new file on your computer called `sayPlease.js` inside the folder your created as your TerminalQuest workspace. As a reminder, that folder is located here: `<%= env.TQ_JAVASCRIPT_WORKSPACE_PATH.value %>` @@ -70,6 +70,6 @@ After you run the command above, you should see your polite request to Glen prin
-Throughout TwilioQuest, you will be asked to create, edit, and execute code files just as described above. +Throughout TerminalQuest, you will be asked to create, edit, and execute code files just as described above. When your `sayPlease.js` file can run and print out the necessary message, click the *HACK* button to submit your request to IT.