Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions levels/javascript/conversations/botanist.pug
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand All @@ -24,4 +24,4 @@ conversation(display_name="TwilioQuest Botanist")
+funny_way

// Flush world state changes, if any
- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState);
- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState);
4 changes: 2 additions & 2 deletions levels/javascript/conversations/botanist_distant.pug
Original file line number Diff line number Diff line change
Expand Up @@ -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.<br/><br/>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.
Expand Down Expand Up @@ -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);
- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState);
6 changes: 3 additions & 3 deletions levels/javascript/conversations/cedric.pug
Original file line number Diff line number Diff line change
Expand Up @@ -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.
programming language.
6 changes: 3 additions & 3 deletions levels/javascript/conversations/scientist1.pug
Original file line number Diff line number Diff line change
Expand Up @@ -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.<br/><br/>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.<br/><br/>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.
Expand Down Expand Up @@ -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);
- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState);
4 changes: 2 additions & 2 deletions levels/javascript/conversations/scientist1_final.pug
Original file line number Diff line number Diff line change
Expand Up @@ -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?
Expand All @@ -32,4 +32,4 @@ conversation(display_name="TwilioQuest Lead Scientist")
+sabotage

// Flush world state changes, if any
- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState);
- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState);
4 changes: 2 additions & 2 deletions levels/javascript/conversations/scientist3.pug
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand All @@ -26,4 +26,4 @@ conversation(display_name="TwilioQuest Engineer")
+thanks

// Flush world state changes, if any
- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState);
- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState);
2 changes: 1 addition & 1 deletion levels/javascript/conversations/scientist3_final.pug
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand Down
4 changes: 2 additions & 2 deletions levels/javascript/conversations/scientist4.pug
Original file line number Diff line number Diff line change
Expand Up @@ -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]!<br/><br/>
Expand Down Expand Up @@ -59,4 +59,4 @@ conversation(display_name="TwilioQuest Physicist")
+yes_cant_see

// Flush world state changes, if any
- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState);
- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState);
4 changes: 2 additions & 2 deletions levels/javascript/conversations/scientist4_final.pug
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand All @@ -32,4 +32,4 @@ conversation(display_name="TwilioQuest Physicist")
+follow_up

// Flush world state changes, if any
- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState);
- setState('TQ_JAVASCRIPT_WORLD_STATE', worldState);
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
2 changes: 1 addition & 1 deletion levels/javascript/objectives/array2D/description.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
</ul>
</div>

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**.

Expand Down
6 changes: 3 additions & 3 deletions levels/javascript/objectives/green-keycard/walkthrough.md
Original file line number Diff line number Diff line change
@@ -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

Expand All @@ -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.
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
</ul>
</div>

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:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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) { %>

Expand Down
Original file line number Diff line number Diff line change
@@ -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:

Expand Down
4 changes: 2 additions & 2 deletions levels/javascript/objectives/js_unlock_door/walkthrough.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ The goal of this exercise is to familiarize you with creating and executing Java
<details>
<summary>Step 1: Create a JavaScript code file</summary>

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 %>`

Expand Down Expand Up @@ -70,6 +70,6 @@ After you run the command above, you should see your polite request to Glen prin

</details>

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.