Brainfugd: Difference between revisions

From Geometry Dash Expanded Wiki
Jump to navigation Jump to search
m 52 revisions imported: Copied from Official Wiki https://geometrydash.wiki.gg/index.php?title=Brainfugd&oldid=264255 ; contributors: https://geometrydash.wiki.gg/index.php?title=Brainfugd&action=history
Set content classification: community content
 
(One intermediate revision by the same user not shown)
Line 17: Line 17:
  |musicid    = 482139
  |musicid    = 482139
}}
}}
'''Brainfugd''' (pronounced ''brain fudged'') is a [[Update 2.1|2.1]] Easy Demon level by [[Spu7Nix]], published on 24 May 2021. It is a [[Geometry Dash]] recreation of the [[Wikipedia:Brainfuck|Brainf**k]] programming language, which consists of only eight commands.
'''Brainfugd''' (pronounced ''brain fudged'') is a [[Update 2.1|2.1]] Easy Demon level by [[Spu7Nix]], published on 24 May 2021. It is a [[Geometry Dash]] recreation of the [[Wikipedia:Brainfuck|Brainfuck]] programming language, which consists of only eight commands.


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 Brainf**k interpreter with only four memory cells, which inspired Spu7Nix's implementation.
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.


==Brainf**k explanation==
==Brainfuck explanation==
===Overview===
===Overview===
Brainf**k, designed by Urban Müller in 1993 to contain the smallest possible compiler, supplies programmers with only eight commands. Normal Brainf**k 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.
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.


===Commands===
===Commands===
Line 38: Line 38:


===Running programs and loops===
===Running programs and loops===
Brainf**k 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.
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.


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, moves right, and repeats the process as needed.
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, moves right, and repeats the process as needed.
Line 57: Line 57:
===Modes===
===Modes===
Brainfugd contains four modes from the title screen:
Brainfugd contains four modes from the title screen:
*'''Tutorial''': Provides instructions and sample programs in Brainf**k, explaining the level's modifications.
*'''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.
*'''Challenges''': A series of six challenges. Considered the main gameplay section of the level.
*'''Coins''': A pair of challenges that reward [[#User coins|user coins]]. Must be completed in numerical order.
*'''Coins''': A pair of challenges that reward [[#User coins|user coins]]. Must be completed in numerical order.
Line 103: Line 103:
*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. <!-- The program is +++[->+[->+[->++<]>[-<++>]<<]<[->+<]>]>. -->
*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. <!-- The program is +++[->+[->+[->++<]>[-<++>]<<]<[->+<]>]>. -->
[[Category:Classic levels]]
[[Category:Classic levels]]
[[Category:Wiki content status - reviewed community]]

Latest revision as of 00:21, 11 October 2026

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

Brainfugd (pronounced brain fudged) is a 2.1 Easy Demon level by Spu7Nix, published on 24 May 2021. It is a Geometry Dash recreation 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.

Brainfuck explanation

[edit | edit source]

Overview

[edit | edit source]

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

[edit | edit source]

The commands are labelled with text names for convenience 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.

Incrementing past 255 returns a cell to 0, and decrementing past 0 returns a cell to 255.

Running programs and loops

[edit | edit source]

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, moves right, and repeats the process as needed.

Description

[edit | edit source]

Modifications

[edit | edit source]

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 specific inputs 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

[edit | edit source]

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

[edit | edit source]

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 is 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 easier reading; ignore spaces when inputting commands.
  • Challenge 1: Any terminating program
  • Challenge 2: +++++⠀+++++⠀.end
  • Challenge 3: ++++[⠀->+++⠀+++++⠀++<]>⠀.end
  • Challenge 4: ,[->+⠀+<]>.⠀end
  • Challenge 5: ,>,[-⠀<+>]<⠀.end
  • Challenge 6: ,>,<[⠀->-[>⠀]<<]>⠀.end
  • Coin 1: +++.[⠀->+++⠀++>++⠀+<<]>⠀.>.<-⠀.end
  • Coin 2: +++.[⠀->+++⠀++>++⠀+<<]>⠀.>.<-⠀.<.++⠀+.>+.⠀>.<-.

User coins

[edit | edit source]

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

[edit | edit source]






Trivia

[edit | edit source]
  • 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 contains only Sandbox mode, with capacity for eight memory cells and 100 commands, and 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.