BaBa Is You Wiki

DONE is a remove-type property. If something is DONE, the object flies off into the air and is removed. If ALLISDONE is formed, a secret ending is played.

  • ALLISDONE only plays the ending in the main game. In custom levels, it WINs the level and gives a special stamp. In levelpacks, it also boots you back to the main menu.
    • The specific trigger to have this occur is to have an all is done rule, even if inactive due to a condition, and to done at least as many objects as there are total objects in the level (only counting the ones that are in all). For this purpose, done stacks.
  • Forming ALLISDONE in the main game also causes Text TEXT 0.gif to be DONE as well. In custom levels and levelpacks, however, the rule behaves like every other Text ALL 0.gif rules and text remains on the screen.
  • Forming ALLISDONE with conditions (e.g. ALLNEARBABAISDONE) will trigger the DONE ending in the main game if every object on the level fulfills said condition (e.g. every object is NEAR a Baba). In custom levels and levelpacks, this WINs the level.
  • DONE is unaffected by SAFE and does not trigger HAS, as it doesn't actually destroy an object.
  • LEVELISDONE has the visual effect of every object in the level flying up as if it was DONE, but actually behaves as expected (essentially destroying the level).
  • DONE interacts in few unexpected ways with 3D:
    • If all objects that were 3D are DONE, game switches back to 2D perspective. This differes from other ways of destroying 3D object (e.g. DEFEAT or EMPTY), which leave first-person view active.
    • DONE's destruction effect plays realtively to screen, making it appear above everything in 3D view and rotate with perspective.

Appears in Levels:


  • In past versions of the game, DONE was strange in the order of operations, in which objects were tagged as being done and then only later actually removed. This caused lua errors to interrupt an undo midway through.