Terminal

From Dave and Bambi Wiki
Revision as of 15:50, 20 June 2024 by MaxDimo (talk | contribs)
Jump to navigation Jump to search
The terminal screen in-game when first loaded.

The terminal, also referred to in the game as the Vs Dave Developer Console, is a secret feature in Vs. Dave and Bambi used to access bonus songs and text snippets about the game's lore and characters. It was first introduced in the 3.0a release and was expanded in the 3.0b update; some further changes have been made to its source code since then, but have not yet accompanied any release of the game. Its primary gameplay purpose is to unlock Exploitation, the most difficult song and finale of the mod, while the rest of its contents are optional.

Description

When it is accessed for the first time in-game, a black screen with green horizontal lines displays that reads out the following text:

> bin/plugins/AntiCheat.dll: No argument for function "AntiCheatThree"

> Redirecting to terminal......‎

The screen then does a sliding-fade transition to the terminal. The terminal is designed like a command line interface, especially Windows command prompt. Similar to the software, the terminal is a black screen with white Fixedsys text containing a header at the top that reads "Vs Dave Developer Console[Version 1.0.00001.1234] All Rights Reserved.". In the current source code, the header's string of numbers instead reads [Version 1.0.00001.1235].[1] The header text is erased if the player uses clear, though the screen will scroll downward if inputs exceed the length of the viewport. Beneath it is a text input area where the player can enter commands.

Pressing any key input plays a sound. A slow, ominous ambient track accompanies this screen on loop. Sounds were introduced in 3.0b.[2][3]

The terminal's code is primarily contained within the file TerminalState.hx, which can be viewed along with the rest of the Vs. Dave 3.0b source code on GitHub.[4] The command help text and some error messages are stored in terminalList.txt, which has several language localizations.[5] Currentmost changes to these files can be seen in the main repo[6][7]; the latest modification was made on December 29th, 2022.[8]

Usage

The terminal is accessible after beating Story mode. Unlocking it requires pressing the 7 key four times: first in the Story menu, which unlocks the joke week; then in Supernovae, which takes you to Cheating; then in Cheating, which takes you to Unfairness; lastly in Unfairness, which takes you to the terminal. After the terminal has been discovered, another method of access will unlock for the player, where it will then also be found in the Console menu in Freeplay under the "ENTER TERMINAL" option.

Both externally and in the source code, inputs are identified as commands (a certain prefixed word) and arguments or parameters (specifications to be used for commands). Each command has a certain number of arguments it can accept. The commands are as follows:

  • admin:
    • "Shows the admin list, use grant to grant rights."
    • Using this command with the parameter grant and the name of a .dat character file triggers various game events. This is the command necessary for unlocking Exploitation. In 3.0a, it had 8 keywords; in 3.0b, one was removed, reducing it to 7.
    • Error messages: "No version of the "admin" command takes 1 parameter(s)." - only using "admin grant" or misspelling "grant"; "[input].dat is not a valid user or character." - using a non-keyword value for the character parameter
  • characters:
    • "Shows the list of characters."
  • clear:
    • "Clears the screen."
  • help:
    • "Displays this menu."
    • Returns a list of valid commands and their functions.
  • open keyword (3.0b):
    • "Searches for a text file with the specified ID, and if it exists, display it.".
    • Replaced texts in 3.0b. It has 37 keywords initially available to the player and 7 additional keywords unlocked after using the vault command, totaling to 44.
  • secret mod leak (pre-3.0a):
    • "No providing such leaks."
    • This command only existed in development and was not usable in 3.0a[9] or 3.0b[10]. In the current source code, it has been re-added to take the player to the You Can Think Pad minigame.
  • texts keyword (3.0a):
    • Functionally identical to open. It had 14 keywords.[11] Was replaced by open in 3.0b.
  • vault (3.0b):
    • "Store valuable files here. Takes 3 key parameters seperated [sic] by spaces.".
    • Unlocks 7 additional keywords for the open command when all three parameters are entered. These are free, p.r.a.e.m, and reflection, which can be typed in any order. If these are not inputted correctly, it returns an error message stating "Invalid keys. Valid keys: "
  • welcometobaldis:
    • In 3.0a, this command took the player to the You Can Think Pad minigame that preceeds Roofs. In 3.0b, it was changed to only output the text "This was fun while it lasted but do it the intended way now plz k thx". In the current source code, the command has been removed entirely.

In total, there are 49 possible inputs in 3.0b and 22 in 3.0a.

Commands

admin

Using the admin command on its own outputs the following text:

[Username]
To add extra users, add the grant parameter and the name.
(Example: admin grant exbungo.dat)
NOTE: ADDING CHARACTERS AS ADMINS CAN CAUSE UNEXPECTED CHANGES.

The command will display the user's PC name, if available. If it is not, it will instead display the name "User354378".

admin grant gives administrator permissions to various characters. The 7 keywords are as follows:

  • admin grant dave.dat:
  • admin grant bambi.dat:
  • admin grant tristan.dat:
  • admin grant expunged.dat: Aggressively spams the terminal screen with glitching effects and messages from Expunged gloating and mocking the player before crashing the game. Reopening it will reveal that the game has been altered significantly, replacing the program title with Vs. Expunged. The only option given to the player is to play the newly-unlocked Exploitation, which they must beat in order to reverse the changes.
  • admin grant moldy.dat:
  • admin grant exbungo.dat:
  • admin grant recurser.dat

open

open holds the bulk of Vs. Dave's story and character information, its contents of which are often informally referred to in the community as the "3.0(b) lore" (as separate from 3.0a, which lacked many of the current keywords with the most significant lore implications). It is highly heterogeneous in subject matter and in-universe authors. It shares 8 keywords with admin grant:

  • open dave:
    • Forever lost and adrift.
      Trying to change his destiny.
      Despite this, it pulls him by a lead.
      It doesn't matter to him though.
      He has a child to feed.
  • open bambi:
    • (3.0b)
      A forgotten GOD.
      The truth will never be known.
      The extent of his POWERs won't ever unfold.
    • (3.0a)
      A forgotten god.
      The truth will never be known.
      The extent of his powers won't ever unfold.
  • open tristan:
    • The key to defeating the one whose name shall not be stated.
      A heart of gold that will never become faded.
  • open moldy:
    • Let me show you my DS family!
  • open recurser:
    • (3.0b)
      A being of chaos that wants to spread ORDER.
      Despite this, his sanity is at the border.
    • (3.0a)
      A being of chaos that wants to spread order.
      Despite this, his sanity is at the border.
  • open exbungo:
    • [FAT AND UGLY.]
  • open expunged:
    • (3.0b)
      [FILE DELETED]
      [FUCK YOU!]
      • In the source code, this line has a comment stating "[THIS AND EXBUNGOS FILE ARE THE ONLY ONES I HAVE ACCESS TO UNFORTUNATELY. I HATE IT]".
    • (3.0a)
      The End. They weren't created by a beast.
      They were created by the one who wanted power the leeeeeeeeeeeeeeeeeeee
      [DATA DELETED]
      [FUCK YOU!]
  • open boyfriend:
    • (3.0b)
      LOG [REDACTED]
      A multiversal constant, for some reason. Must dive into further research.
    • (3.0a)
      LOG -1:
      Beep skeedoop bop! Skeep leep. Skadeep!

Another 14 keywords are numbers consisting of logs written by Dave across the span of several years. Two of the keywords contain different text in the source code than the final build of the game.

  • open 1:
    • LOG 1
      Hello. I'm currently writing this from in my lab.
      This entry will probably be short.
      Tristan is only 3 and will wake up soon.
      But this is mostly just to test things. Bye.
  • open 2:
    • (3.0b)
      LOG 2
      I randomly turned 3-Dimensional again, but things were different this time...
      I appeared in a void with
      random red geometric shapes scattered everywhere and an unknown light source.
      What is that place?
      Can I visit it again?
    • (3.0a)
      [DATA CORRUPTED]
  • open 3:
    • (3.0b)
      LOG 3
      I'm currently working on studying interdimensional dislocation.
      There has to be a root cause. Some trigger.
      I hope there aren't any long term side effects.
    • (3.0a)
      [DATA CORRUPTED]
  • open 4:
    • (3.0b)
      LOG 4
      I'm doing various tests on myself, trying to figure out what causes the POLYGONization.
      It hurts a lot,
      But I must keep a smile. For Tristan's sake.
    • (3.0a)
      LOG 4
      I'm currently working on studying interdimensional dislocation.
      There has to be a root cause. Some trigger.
      I hope there aren't any long term side effects.
  • open 5:
    • (3.0b)
      [FILE DELETED]
    • (3.0a)
      [DATA CORRUPTED]
  • open 6:
    • (3.0b)
      LOG 6
      Not infront of Tristan. I almost lost him in that void. I- [DATA DELETED]
    • (3.0a)
      LOG 6
      My interdimensional dislocation appears to be caused by mass amount of stress.
      How strange.
      Maybe I could isolate this effect.
  • open 7:
    • LOG 7
      My interdimensional dislocation appears to be caused by mass amount of stress.
      How strange.
      Maybe I could isolate this effect somehow?
  • open 8:
    • (3.0b)
      [FILE DELETED]
    • (3.0b source code)
      LOG 8
      Hey, Muko here. Dave recently called me to assist with the PROTOTYPE.
      It's been kind of fun. He won't tell me what it does though.
  • open 9:
    • [FILE DELETED]
  • open 10:
    • LOG 10
      Working on the prototype.
  • open 11:
    • [FILE DELETED]
  • open 12:
    • (3.0b)
      [FILE DELETED]
    • (3.0b source code)
      LOG 12
      The prototype going pretty well.
      Dave still won't tell me what this thing does.
      I can't figure it out even with the
      blueprints.
      I managed to convince him to take a break and
      go to Cicis Pizza with me and Maldo.
      He brought Tristan long as well. It was fun.
      -Maldo
  • open 13:
    • [FILE DELETED]
  • open 14:
    • LOG 14
      I need to stop naming these numerically its getting confusing.

A third category of keywords consist of singular words, some less clear as to who wrote them.

  • open god | artifact1:
    • Artifact 1:
      A stone with symbols and writing carved into it.
      Description:Its a figure that has hundreds of EYEs all across its body.
      Notes: Why does it look so much like Bambi?
  • open eye:
    • Our LORD told us that he would remove one of his eyes everyday.
      He tells me that he's doing this to save us.
      That he might one day become unreasonable and we need to have faith in ourselves.
      ...
      Please, I promise you that's what he said. I-I'm not lying.
      Don't hurt me.
  • open lord:
    • A being of many eyes. A being so wise. He gives it all up to ensure, that the golden one will have a bright future.
  • open artifact2:
    • Artifact 2:
      An almost entirely destroyed red robe.
      Description: A red robe.
      It has a symbol that resembles Bambi's hat, etched on it.
  • open artifact3:
    • Artifact 3:
      A notebook, found on the floor of the 3D realm.
      Notes: I haven't bothered with the cypher yet.
      I have more important matters.
  • open artifact4:
    • \"Artifact\" 4:
      A weird email, with attached images that use the same cypher as Artifact 3.
      Notes: Who sent this?
  • open deleted:
    • The unnamable never was a god and never will be. Just an accident.
  • open prototype
    • Project <P.R.A.E.M>
      Notes: The SOLUTION.
      Estimated Build Time: 2 years.
  • open solution
    • I feel every ounce of my being torn to shreds and reconstructed with some parts removed.
      I can hear the electronical hissing of the machine.
      Every fiber in my being is begging me to STOP.
      I don't.
  • open stop:
    • A reflection that is always wrong now has appeared in his dreams.
      It's a part thats now missing.
      A chunk out of his soul.
  • open order:
    • What is order? There are many definitions. Recurser doesn't use any of these though.
      They want to keep everything the way they love it.
      To them, that's order.
  • open power:
    • [I HATE THEM.] [THEY COULD'VE HAD SO MUCH POWER, BUT THEY THREW IT AWAY.]
      [AND IN THAT HEAP OF UNWANTED POWER, I WAS CREATED.]
  • open birthday:
    • Sent back to the void, a shattered soul encounters his broken <reflection>.
  • open polygonized | polygon | 3D:
    • He will never be <free>.
  • open p.r.a.e.m:
    • Name: Power Removal And Extraction Machine
      Progress: Complete
      Notes: Took longer than expected. Tristans 7th BIRTHDAY is in a month.

The words contained in angled brackets - p.r.a.e.m, free, and reflection - are the arguments necessary for the vault command. When the command is used, the additional 7 keywords are revealed, and are case sensitive:

  • open cGVyZmVjdGlvbg
    • (3.0b)
      [BLADE WOULD'VE BEEN PERFECT. BUT DAVE HAD TO REFUSE.]
    • (source code)
      [BLADE WOULD'VE BEEN PERFECT. THE GOLDEN WARRIOR. BUT DAVE HAD TO REFUSE. HE HAD TO LIE TO ME. LIAR. LIAR.][12]

help

help returns exactly the following text:

(3.0b)
help - Displays this menu.
characters - Shows the list of characters.
admin - Shows the admin list, use grant to grant rights.
clear - Clears the screen.
open - Searches for a text file with the specified ID, and if it exists, display it.
vault - Store valuable files here. Takes 3 key parameters separated by spaces.

(3.0a)
help - Displays this menu.
characters - Shows the list of characters.
admin - Shows the admin list, use grant to grant rights.
clear - Clears the screen.
texts - Searches for a text file with the specified ID, and if it exists, display it.

External materials

davetabase-birthday

davetabase-mysterious-email

davetabase-artifact3

Story

Trivia

  • The background music that plays in the terminal screen is a file titled TheAmbience.ogg.[13] There are several noteworthy things about this file.
    • TheAmbience is a slowed-down version of the beginning of Recursed. It is unknown whether this was selected arbitrarily or for a specific meaning.
    • This file has additional metadata that the rest of the game's music and sound files lack. Its artist name is "Universe #55553", its track title "Ambience", its album title "Secrets Unlocking", its track number "55553", its DATE "20XX", and its comments "this universe is... interesting. to say the least". This is one of the few references to a date in the timeline of the Vs. Dave universe.
  • Two unused terminal keypress sounds are present in the source code. The one that is actually used is titled terminal_space.ogg, while the others are terminal_key.ogg[14] and terminal_bckspc.ogg[15], which are pitched-down versions of the space sound. Commit history shows that all three files were intended to be used respectively for general keypresses, for the spacebar, and backspace[16], but all were removed from TerminalState.hx in the 3.0a release.[17] terminal_space was later re-added in 3.0b.[18]
  • secret mod leak and welcometobaldis share the same help text.