From SRB2 Wiki
Jump to: navigation, search

ShufflarB2 is a source code modification for Version 1.09.4 made by Shuffle, showcasing new graphical features, improvements to several gametypes and other miscellaneous gameplay features. It also includes a custom gametype, new actions, new Thing types and custom maps. Several of its features have since been added to SRB2 itself from Version 2.0 onwards.

Current release information


While ShufflarB2 primarily focuses on new engine features, it also includes several custom maps: Hidden Palace is a Single Player map in 2D mode, designed to showcase ShufflarB2's 2D mode improvements. Various community members contributed Match and Circuit maps, some of which had previously been entered in the Official Level Design Contest, and Shuffle himself contributed two Match maps as well.

Six stages for the new Ring Collect gametype are also included in ShufflarB2. All of these are clones of Capture the Flag stages from v1.09.4, but modified to work with the gametype.

Ring Collect

ShufflarB2 includes a custom gametype called Ring Collect. Similarly to CTF, it is played with two teams who each have their own base in the map. The teams must try to return as many rings as they can to their own bases, depositing them to the pair of "ring magnets" placed on their bases. If players are equipped with weapon rings, the seconds remaining on the timer for each weapon ring are deposited as well. For each ring or timer second that is deposited, the player and the team are awarded one point. The team with the most points wins. Rings are deposited by standing on the magnets' platform. While it is possible to deposit rings to the other team's magnets (giving them points), the rate at which they are deposited is much slower. It is also possible to shoot the opposing team's magnets, which will force up to twenty rings out of the magnets and disable them for a few seconds.

After half the time limit for the round has passed, e.g., after two and a half minutes under a five minute time limit, many rings in different colors and sizes will drop from the sky into the middle of the stage. The larger rings are worth more, with the smallest ring being gray and worth ten rings, while the largest ring is red and worth one hundred rings. If the time limit is disabled, these special rings will not be spawned.

The Ring Collect gametype is enabled for a map by adding 8192 to the TypeOfLevel variable in the level header. The ring magnets for each team are placed in a map using the blue and red CTF flag Thing types; in all of ShufflarB2's included Ring Collect stages, the blue and red team have two magnets each.

Level type enhancements

In addition to the new gametype, a number of existing level types have additional features in ShufflarB2:

2D mode

  • Maximum speed has been reduced, and it is impossible to thok.
  • The camera is more dynamic and will tilt behind the player if they are moving.
  • The camera will immediately zoom out if the player is climbing a wall.

Mario mode

Mario mode has been revamped extensively to resemble the gameplay of the original Super Mario Bros. games more closely.

  • Maximum speed has been reduced, and players cannot use any special abilities, including the spindash.
  • Players can jump higher by running before pressing the Jump button.
  • Coins do not work as health protection and are not lost upon being hit.
  • The player starts out small and any hit will kill them. By collecting a Mushroom, they can reach their full size, which allows them to break blocks. Getting hit while big will shrink the player back to small size.
  • The Mushroom, the 1UP Mushroom and the Invincibility Star have been added, all of which are functionally identical to the official Mario games. If used in 2D mode, all three items will move back and forth, and Invincibility Stars will bounce.
  • The HUD is replaced by one based on the HUD seen in Super Mario Bros. This also means that the player's number of lives is not displayed.
  • The Koopa Paratroopa (a Koopa Troopa with wings) was added as a new enemy.

Modified versions of all three acts of the Mario Koopa Blast unlockable are included in ShufflarB2 to showcase these changes and new features.


  • Obstacle collision in NiGHTS is less bouncy.

Graphical features

Emerald Park Zone at night.
  • The Software renderer includes an underwater ripple effect.*
  • In Software, the score tally screen in Single Player displays the last screenshot of the map in the background.*
  • In OpenGL, sprite shadows can be displayed if the console variable shadow is set to "on".*
  • A time-of-day cycle can be added to a map with the TimeOfDay level header variable. If enabled, the brightness and outside sky will change depending on the time of the computer's clock. In OpenGL rendering, the color of the sky will change as well.
  • Other features have been imported from PrettySRB2 (discussion thread), an older source code modification containing OpenGL fixes from SRB2JTE.

* This feature was added to SRB2 in Version 2.0.

Editing features

Thing types

  • Thing type 6970: Flamethrower Wall
  • Thing type 6971: Flamethrower Ceiling/Floor
  • Thing type 6974: Koopa Paratroopa
  • Thing type 6980: Metal Flower 1
  • Thing type 6981: Metal Flower 2
  • Thing type 6990: Mushroom
  • Thing type 6991: 1UP Mushroom
  • Thing type 6992: Invincibility Star



Main article: A_RemoteAction

Tells another Object to perform an action. Var1 specifies the Object that will perform the action. Var2 is used to specify the reference state that contains the action for the target Object to perform. The reference state is not actually executed, only the action is performed. The actor will temporarily make the selected Object its target when calling the reference state's action; the actor's original target (if any) will be restored afterwards.


Main article: A_ZThrust

Thrusts the actor vertically. Var1 determines the magnitude of the thrusting force, measured in fracunits/tic – a positive value will thrust the actor upwards, while a negative value will thrust the actor downwards. If Var2 is set to 1, the actor's previous momentum is lost; if it is set to 0, the previous momentum is retained.


Makes the actor shoot an Object in the same manner as a Rail Ring. Var1 specifies the Object type that is shot, while Var2 specifies the Object type that is used for the trail.


Teleports the actor to the position of its target. If Var1 is set to any value other than 0, the actor's target is teleported to the actor's position instead. If Var2 is set to any value other than 0, the teleported Object will keep its previous momentum; otherwise it will lose it.

Level header elements

See also: Level header


To enable the Ring Collect gametype for a map, add 8192 to the TypeOfLevel value. This value can be combined with other level types.


If specified, a line with "BY: <value>" will be added to the level's title card. This can be used to give credits for a map. It was briefly added to SRB2 in Version 2.0, but removed in v2.0.5.


If set to 1, the map brightness and sky graphics change based on the time of the computer's clock. Two of ShufflarB2's own levels showcased this feature: Emerald Park Zone and Fort Eltsac.


See also: Console


Deletes the last PWAD added to the game. Cannot be used in-game.

removehud <boolean>

See also: Console/Variables > showhud

Toggles whether the heads-up display is shown or not.

shadow <boolean>

See also: Console/Variables > shadow

When enabled, sprite shadows are displayed in OpenGL.

Other features

  • Semicolons (;) are not permitted in player names anymore and will cause instant consistency failure for the person who attempted to do so.
  • Taking a screenshot will not display the "SCREENSHOT SAVED IN <DIRECTORY>" message if the console is closed.
  • The maximum time limit for a round in a multiplayer game is 30 minutes.
  • If you get close to another player, their name will appear on the bottom of the screen.
  • If a player breaks a Super Sneakers Monitor in any level, the music will speed up and have a higher pitch until the effect of the monitor wears off. However, if MIDI music was being played before the power-up was obtained, the normal Super Sneakers jingle music will play instead. This feature was later implemented for SRB2 itself in Version 2.0 as an optional feature for individual levels, set using the level header parameter SpeedMusic.


  • CTF spectators still have a countdown underwater.
  • Dedicated servers crash the game on startup.
  • If any Software user is experiencing the water ripple effect in a netgame, all other Software users will experience it as well.
  • The Whirlwind Shield can be activated repeatedly by pressing the Jump button while the player is in their falling animation, for example after using the Whirlwind Shield normally or after bouncing off a spring. This allows players to launch themselves higher and higher into the air by pressing the Jump button repeatedly.
  • When a player breaks a monitor and stands on top of the broken monitor afterwards, it will kill the player on respawn.
  • If the skin console variable is used with an invalid value, the player will have Sonic sprites but maintain the abilities of the previous skin.
  Modifications [view]
v2.1 Acid MissileDumbventureMystic RealmSRB2KartTortured Planet
v2.0 Botanic SerenitySRB2CBSRB2 RidersXSRB2
v1.09.4 Blue HeavenShufflarB2SRB2JTE
v1.08 SA-SRB2SPMoves