Brainfugd: Difference between revisions

From Geometry Dash Expanded Wiki
Jump to navigation Jump to search
geometrydash.wiki.gg>Rexster930
mNo edit summary
geometrydash.wiki.gg>Josh994
mNo edit summary
Line 1: Line 1:
{{IB-Level
{{IB-Level
|image      = Brainfugd.png
|image      = Brainfugd.png
|id        = 69434308
|id        = 69434308
|creator    = [[Spu7Nix]]
|creator    = [[Spu7Nix]]
|created    = [[Update 2.1]]
|created    = [[Update 2.1]]
|difficulty = {{EasyDemon}}
|difficulty = {{EasyDemon}}
|stars      = 10
|stars      = 10
|coins      = 3
|length    = 6m 51s (XL)
|length    = 6m 51s (XL)
|objects    = 246,583
|objects    = 246,583
|copytype  = No password
|copytype  = No password
|downloads  = 1.46M
|downloads  = 1.46M
|likes      = 77.1K
|likes      = 77.1K
|rating    = Epic
|rating    = Epic
|coins      = 3
|artist    = [https://lapse.newgrounds.com/ Lapse]
|artist    = [https://lapse.newgrounds.com/ Lapse]
|music      = [https://www.newgrounds.com/audio/listen/482139 Asleep Atop An Atom]
|music      = [https://www.newgrounds.com/audio/listen/482139 Asleep Atop An Atom]
|musicid    = 482139
|musicid    = 482139
}}
}}
'''Brainfugd''' (also known as '''Brainfu''') is a [[Update 2.1|2.1]] Easy Demon level by [[Spu7Nix]], published on 24 May 2021. This level centres on the esoteric programming language [[Wikipedia:Brainfuck|Brainf**k]], an extremely minimal language that uses only eight characters and is notoriously difficult to work with.
'''Brainfugd''' is a [[Update 2.1|2.1]] Easy Demon level by [[Spu7Nix]], published on 24 May 2021. It is a [[Geometry Dash]] re-creation of the [[Wikipedia:Brainfuck|Brainfuck]] programming language, which consists of only eight commands.<br/>
 
Brainfugd and its command line, menu, and visuals were all created with [https://github.com/Spu7Nix/SPWN-language SPWN], a programming language developed by Spu7Nix that compiles text-based code into Geometry Dash triggers. During the initial beta testing phase for SPWN, camila314 developed a prototype Brainfuck interpreter with only four memory cells, which inspired Spu7Nix's implementation of the language.
==Description==
== Brainfuck explanation ==
Brainfugd is a two-player level involving programming in Brainf**k. There are four modes to choose from upon starting the level. Left-click confirms the selected mode, and right-click selects the next mode in the list:
=== Overview ===
*In '''Tutorial''', the level gives a rundown on programming in Brainf**k. Upon completing the tutorial, the player is sent to Challenge mode.
Brainfuck, designed by Urban Müller in 1993 to contain the smallest possible compiler, supplies programmers with only eight commands. Normal Brainfuck compilers have access to a limitless number of memory cells, each containing a single [[Wikipedia:Unsigned integer|unsigned integer]] ranging from 0 to 255. Commands are used to shift the 'selected cell' left or right one step at a time, input numbers into cells, increment or decrement the selected cell, and run commands if the selected cell contains a non-zero value.<br/>
*In '''Challenge''', the player is given six standard challenges and two coin challenges:
=== Commands ===
**Challenge 1: Run any program
The commands have been labelled with text names for the sake of convenience when referring to them on this page; the actual inputs use symbols (as marked in parentheses) instead of names.
**Challenge 2: Create and run a program that outputs 10
# '''Plus ('+'):''' Increments the currently selected cell by 1.
**Challenge 3: Create and run a program that outputs 40 [input command is not allowed]
# '''Minus ('-'):''' Decrements the currently selected cell by 1.
**Challenge 4: Create and run a program that takes a number as input and outputs that number doubled (example: input is 5 -> output is 10)
# '''Move Left ('<'):''' Makes the cell to the left of the selected cell inherit the selected cell status.
**Challenge 5: Create and run a program that takes two numbers as input and outputs their sum (example: input is 6 and 7 -> output is 13)
# '''Move Right ('>'):''' Makes the cell to the right of the selected cell inherit the selected cell status.
**Challenge 6: Create and run a program that takes two inputs and outputs the largest input minus the smallest input (example: input is 3 and 8 -> output is 5)
# '''Input (','):''' Asks the user for an input value; when entered, the input replaces the value in the selected cell.
**Coin 1: Create and run a program that outputs "COIN" [input command is not allowed] [Maximum 27 commands]
# '''Output ('.'):''' Outputs the value of the selected cell.
**Coin 2: Create and run a program that outputs "COIN COIN" [input command is not allowed]
# '''Open ('['):''' Opens a loop.
*In '''Coins''', the player is given the two coin challenges from Challenge mode.
# '''Close (']'):''' Closes a loop.
*In '''Sandbox''', the player can program anything they wish.
=== Running programs and loops ===
The programming interface features an output line, a memory strip, and a command line for the actual code. Right-click shifts the pointer in the command line to the right, looping back to the start after several cells. Left-click either runs the code if the first square in the command line is selected, or cycles through the following commands in any other cell:
Brainfuck programs run from left to right, running each command until the end is reached (excluding cases of the [[Wikipedia:Halting problem|Halting problem]]). The only exception is with Loops, which work in a specific way.<br/>
*'''+''' (Increment selected memory cell)
Each Open must be paired with a Close. Once a program reaches an Open, it checks whether the selected cell's value is zero. If it is, the loop is ended, and the program skips ahead to the Open's corresponding Close. Otherwise, the loop is unlocked; the program advances to the first command inside the loop, moving to the right and repeating the process as needed.
*'''-''' (Decrement selected memory cell)
== Description ==
*'''<''' (Select left memory cell)
=== Modifications ===
*'''>''' (Select right memory cell)
Several changes are made to the programming language in Brainfugd:
*'''[''' (Denote start of loop)
* The Player 1 button changes the current command, and the Player 2 button moves to the next command.
*''']''' (Denote end of loop)
* Output values do not convert to ASCII; instead, 0 corresponds to a space, 1-26 correspond to [https://cryptii.com/pipes/a1z26-cipher/ letters of the English alphabet], and values greater than 27 do not correspond to anything.
*'''.''' ('''Period''', outputs the data in the selected memory cell into the output line)
* The Input command randomly generates a value instead of prompting the player for an input. This system is an anti-cheat to prevent the player from entering their own specific inputs in order to pass a challenge.
*''',''' ('''Comma''', inputs data into the selected memory cell)
** On challenges that require the Input command, the program must satisfy the challenge conditions for three consecutive runs, each with randomly generated inputs.
*'''end''' (Denote end of command line)
* Two extra options for each command entry are available:
*('''Space''', leaves command cell empty)
*# '''Blank ('⠀'):''' Leaves an entry empty. All Blanks are skipped when a program is compiled.
 
*# '''End ('end'):''' Stops the program early. If the player presses the P2 button after placing an End, they will jump back to the start. This is the only way to move left in the command line aside from cycling back from the end of the line.
In standard Brainf**k, incrementing 255 results in 0, and decrementing 0 yields 255. However, Brainfugd does not include this feature. Decrementing from 0 does nothing, and incrementing 255 yields 256.
* Each program is restricted to 40 commands and six memory cells. All programs end automatically once they advance past the 40th command entry.
 
* Memory cells have a lower bound of 0, but do not have an upper bound or wrap around.
The level features abstract and colourful visuals against a black background. These visuals are hidden if Low Detail Mode is enabled.
=== Modes ===
 
Brainfugd contains four modes from the title screen:
The level is 6m 51s in length. To complete the level, the player must complete Challenge 4 or Coin 1. After completing the level, an animation plays in which Spu7nix's logo forms ripples on a surface.
*'''Tutorial''': Provides instructions and sample programs in Brainfuck, explaining the level's modifications.
 
*'''Challenges''': A series of six challenges. Considered the main gameplay section of the level.
==Challenge guide==
*'''Coins''': A pair of challenges that reward [[#User coins|user coins]]. Must be completed in numerical order.
#++++++++++.end
*'''Sandbox''': Allows the player to write their own commands following the [[#Modifications|limitations]] listed above.
#++++++++++.end
Once a mode is chosen, the player may not switch modes without restarting the level.
#++++[->++++++++++<]>.end
=== Challenges ===
#,[->++<]>.end
Brainfugd contains six challenges in Challenges mode, which must be completed in sequential order.
#,>,[-<+>]<.end
# Run any program.
 
# Create and run a program that outputs 10.
==User coins==
# Create and run a program that outputs 40. Input command is forbidden.
Brainfugd contains three user coins.
# Create and run a program that takes an input and outputs its double. For example, if the input is 5, the output is 10.
*To obtain the first coin, the player must complete all six challenges in Challenge mode.
# Create and run a program that takes two inputs and outputs their sum. For example, if the inputs are 6 and 9, the output is 15.
*To obtain the second coin, the player must complete the first coin challenge: make a program that outputs 'COIN'.
# Create and run a program that takes two inputs and outputs their difference. For example, if the inputs are 1 and 4, the output is 3. Must function regardless of which input is greater.
*To obtain the third coin, the player must complete the second coin challenge: make a program that outputs 'COIN COIN'.
Two special challenges in Coins mode are available.
The second and third coins can be obtained in either Challenge or Coins mode.
# Create and run a program that outputs 'COIN' (or the values 3, 15, 9, and 14 in order). Maximum length of 27 commands; input command is forbidden.
 
# Create and run a program that outputs 'COIN COIN' (or the values 3, 15, 9, 14, 0, 3, 15, 9, and 14 in order). Input command is forbidden.
==Gameplay==
To complete Brainfugd, the player must either unlock Coin 1 or complete Challenge 4 before the timer runs out. If the player completes all six main Challenges and at least one Coin challenge incomplete, they will automatically be taken to the Coins mode. If the player completes all eight challenges, they will remain in Sandbox mode until the timer runs out. After completing the level, an animation plays in which Spu7nix's logo forms ripples on a surface.
{{Togglebox
|header = Answer key
|body  = Challenges may have more than one acceptable answer. Commands are grouped into blocks of five for ease of reading; spaces should be ignored while inputting commands.
*'''Challenge 1''': ''Any program''
*'''Challenge 2''': +++++⠀+++++⠀.end
*'''Challenge 3''': ++++[⠀->+++⠀+++++⠀++<]>⠀.end
*'''Challenge 4''': ,[->+⠀+<]>.⠀end
*'''Challenge 5''': ,>,[-⠀<+>]<⠀.end
*'''Challenge 6''': ,>,<[⠀->-[>⠀]<<]>⠀.end
*'''Coin 1''': +++.[⠀->+++⠀++>++⠀+<<]>⠀.>.<-⠀.end
*'''Coin 2''': +++.[⠀->+++⠀++>++⠀+<<]>⠀.>.<-⠀.<.++⠀+.>+.⠀>.<-.
}}
== User coins ==
Brainfugd contains three user coins.<br/>
* The first coin is obtained by completing the first Coin challenge.
* The second coin is obtained by completing the second Coin challenge; by extension, the player must also complete the first of the pair.
* The third and final coin requires the player to complete Challenge 6, clearing the Challenges mode.
== Gameplay ==
{{VC|-xxH2n1D4iY}}
{{VC|-xxH2n1D4iY}}
 
== Trivia ==
==Development==
*Brainfugd was nominated for ''Best Minigame'' in the [[The Geometry Dash Awards|Geometry Dash 2021 Awards]]; it went on to place first with 8,936 votes, or 43.4% of the total.
Brainfugd and its command line, menu, and visuals were all created with [https://github.com/Spu7Nix/SPWN-language SPWN], a programming language developed by Spu7Nix that compiles code to Geometry Dash levels. During the initial beta testing phase for SPWN, camila314 developed a prototype Brainf**k interpreter with only four memory cells, which inspired Spu7Nix's implementation of Brainf**k.
* An extended version of Brainfugd, titled ''Brainfugd PRO'' (69577667), was published four days after the original. The PRO version solely contains the Sandbox mode, with capacity for eight memory cells and 100 commands, as well as a length of 10m 23s.
 
**The PRO version cycles through two options instead of one whenever the Player 1 button is pressed, meaning that the only commands available are Minus, Move Right, Close, and Comma. This makes the level unfeasible for writing programs. It is unclear whether or not the level was designed this way on purpose as a joke.
==Trivia==
*Using the limitations of Brainfugd (40 commands, 6 cells) and ignoring the input command, the largest possible value σ such that a program that outputs σ can be found is <math>\frac{4^{1{,}366}-4}{3}</math>. However, the program will not complete before the timer runs out.
*Brainfugd was nominated for and won ''Best Minigame'' in the [[The Geometry Dash Awards|Geometry Dash 2021 Awards]].<ref>https://www.youtube.com/watch?v=6fi8g5_JSWw</ref>
 
==References==
<references />
[[Category:Classic levels]]
[[Category:Classic levels]]

Revision as of 11:59, 12 September 2026

Brainfugd
ID
69434308
Creator(s)
Created
Attributes
Difficulty
Length
6m 51s (XL)
Objects
246,583
Copy type
No password
Statistics
Downloads
1.46M
Likes
77.1K
Rating
Epic
Audio info
Artist(s)
Music ID
482139

Brainfugd is a 2.1 Easy Demon level by Spu7Nix, published on 24 May 2021. It is a Geometry Dash re-creation of the Brainfuck programming language, which consists of only eight commands.
Brainfugd and its command line, menu, and visuals were all created with SPWN, a programming language developed by Spu7Nix that compiles text-based code into Geometry Dash triggers. During the initial beta testing phase for SPWN, camila314 developed a prototype Brainfuck interpreter with only four memory cells, which inspired Spu7Nix's implementation of the language.

Brainfuck explanation

Overview

Brainfuck, designed by Urban Müller in 1993 to contain the smallest possible compiler, supplies programmers with only eight commands. Normal Brainfuck compilers have access to a limitless number of memory cells, each containing a single unsigned integer ranging from 0 to 255. Commands are used to shift the 'selected cell' left or right one step at a time, input numbers into cells, increment or decrement the selected cell, and run commands if the selected cell contains a non-zero value.

Commands

The commands have been labelled with text names for the sake of convenience when referring to them on this page; the actual inputs use symbols (as marked in parentheses) instead of names.

  1. Plus ('+'): Increments the currently selected cell by 1.
  2. Minus ('-'): Decrements the currently selected cell by 1.
  3. Move Left ('<'): Makes the cell to the left of the selected cell inherit the selected cell status.
  4. Move Right ('>'): Makes the cell to the right of the selected cell inherit the selected cell status.
  5. Input (','): Asks the user for an input value; when entered, the input replaces the value in the selected cell.
  6. Output ('.'): Outputs the value of the selected cell.
  7. Open ('['): Opens a loop.
  8. Close (']'): Closes a loop.

Running programs and loops

Brainfuck programs run from left to right, running each command until the end is reached (excluding cases of the Halting problem). The only exception is with Loops, which work in a specific way.
Each Open must be paired with a Close. Once a program reaches an Open, it checks whether the selected cell's value is zero. If it is, the loop is ended, and the program skips ahead to the Open's corresponding Close. Otherwise, the loop is unlocked; the program advances to the first command inside the loop, moving to the right and repeating the process as needed.

Description

Modifications

Several changes are made to the programming language in Brainfugd:

  • The Player 1 button changes the current command, and the Player 2 button moves to the next command.
  • Output values do not convert to ASCII; instead, 0 corresponds to a space, 1-26 correspond to letters of the English alphabet, and values greater than 27 do not correspond to anything.
  • The Input command randomly generates a value instead of prompting the player for an input. This system is an anti-cheat to prevent the player from entering their own specific inputs in order to pass a challenge.
    • On challenges that require the Input command, the program must satisfy the challenge conditions for three consecutive runs, each with randomly generated inputs.
  • Two extra options for each command entry are available:
    1. Blank ('⠀'): Leaves an entry empty. All Blanks are skipped when a program is compiled.
    2. End ('end'): Stops the program early. If the player presses the P2 button after placing an End, they will jump back to the start. This is the only way to move left in the command line aside from cycling back from the end of the line.
  • Each program is restricted to 40 commands and six memory cells. All programs end automatically once they advance past the 40th command entry.
  • Memory cells have a lower bound of 0, but do not have an upper bound or wrap around.

Modes

Brainfugd contains four modes from the title screen:

  • Tutorial: Provides instructions and sample programs in Brainfuck, explaining the level's modifications.
  • Challenges: A series of six challenges. Considered the main gameplay section of the level.
  • Coins: A pair of challenges that reward user coins. Must be completed in numerical order.
  • Sandbox: Allows the player to write their own commands following the limitations listed above.

Once a mode is chosen, the player may not switch modes without restarting the level.

Challenges

Brainfugd contains six challenges in Challenges mode, which must be completed in sequential order.

  1. Run any program.
  2. Create and run a program that outputs 10.
  3. Create and run a program that outputs 40. Input command is forbidden.
  4. Create and run a program that takes an input and outputs its double. For example, if the input is 5, the output is 10.
  5. Create and run a program that takes two inputs and outputs their sum. For example, if the inputs are 6 and 9, the output is 15.
  6. Create and run a program that takes two inputs and outputs their difference. For example, if the inputs are 1 and 4, the output is 3. Must function regardless of which input is greater.

Two special challenges in Coins mode are available.

  1. Create and run a program that outputs 'COIN' (or the values 3, 15, 9, and 14 in order). Maximum length of 27 commands; input command is forbidden.
  2. Create and run a program that outputs 'COIN COIN' (or the values 3, 15, 9, 14, 0, 3, 15, 9, and 14 in order). Input command is forbidden.

To complete Brainfugd, the player must either unlock Coin 1 or complete Challenge 4 before the timer runs out. If the player completes all six main Challenges and at least one Coin challenge incomplete, they will automatically be taken to the Coins mode. If the player completes all eight challenges, they will remain in Sandbox mode until the timer runs out. After completing the level, an animation plays in which Spu7nix's logo forms ripples on a surface.

Answer key

Challenges may have more than one acceptable answer. Commands are grouped into blocks of five for ease of reading; spaces should be ignored while inputting commands.
  • Challenge 1: Any program
  • Challenge 2: +++++⠀+++++⠀.end
  • Challenge 3: ++++[⠀->+++⠀+++++⠀++<]>⠀.end
  • Challenge 4: ,[->+⠀+<]>.⠀end
  • Challenge 5: ,>,[-⠀<+>]<⠀.end
  • Challenge 6: ,>,<[⠀->-[>⠀]<<]>⠀.end
  • Coin 1: +++.[⠀->+++⠀++>++⠀+<<]>⠀.>.<-⠀.end
  • Coin 2: +++.[⠀->+++⠀++>++⠀+<<]>⠀.>.<-⠀.<.++⠀+.>+.⠀>.<-.

User coins

Brainfugd contains three user coins.

  • The first coin is obtained by completing the first Coin challenge.
  • The second coin is obtained by completing the second Coin challenge; by extension, the player must also complete the first of the pair.
  • The third and final coin requires the player to complete Challenge 6, clearing the Challenges mode.

Gameplay






Trivia

  • Brainfugd was nominated for Best Minigame in the Geometry Dash 2021 Awards; it went on to place first with 8,936 votes, or 43.4% of the total.
  • An extended version of Brainfugd, titled Brainfugd PRO (69577667), was published four days after the original. The PRO version solely contains the Sandbox mode, with capacity for eight memory cells and 100 commands, as well as a length of 10m 23s.
    • The PRO version cycles through two options instead of one whenever the Player 1 button is pressed, meaning that the only commands available are Minus, Move Right, Close, and Comma. This makes the level unfeasible for writing programs. It is unclear whether or not the level was designed this way on purpose as a joke.
  • Using the limitations of Brainfugd (40 commands, 6 cells) and ignoring the input command, the largest possible value σ such that a program that outputs σ can be found is <math>\frac{4^{1{,}366}-4}{3}</math>. However, the program will not complete before the timer runs out.