Reference - CommunalHelper/CommunalHelper GitHub Wiki

Table of Contents

Click to expand Table of Contents

Reference

Dream Refill

CommunalHelper/DreamRefill

One Use: Whether the Dream Refill should be only used once.

Respawn Time: The time taken by the Dream Refill to respawn.

Dream Jellyfish

CommunalHelper/DreamJellyfish

  • Dream Jellyfish (Floating)

Bubble: Whether the entity should hover in the air before being grabbed.

Tutorial: Whether the entity should show the usage tutorial.

Dream Booster

CommunalHelper/DreamBoosterAny

  • Dream Booster (Any Direction)

Segment Dream Booster

CommunalHelper/DreamBooster

  • Dream Booster

  • Dream Booster (Hidden Path)

Hide Path: Hides the path until the player enters the Dream Booster. Plays an audio cue once when entering.

Path Style: The style of this booster's path.

  • 'Arrows' draws two lines forming the tip of an arrow, and indicates the direction.
  • 'Perpendicular lines' draws a single line perpendicular to the path direction.
  • 'Dotted line' draws small lines along the path, regularly leaving gaps.
  • 'Points' draws single pixels.

Proximity Path: Whether the path's opacity is influenced by its distance to the player. If disabled, the path is always clearly visible.

Curved Dream Booster

CommunalHelper/CurvedDreamBooster

  • Dream Booster (Hidden Path, Quadratic Curve)

  • Dream Booster (Quadratic Curve)

  • Dream Booster (Hidden Path, Cubic Curve)

  • Dream Booster (Cubic Curve)

Hide Path: Hides the path until the player enters the Dream Booster. Plays an audio cue once when entering.

Path Style: The style of this booster's path.

  • 'Arrows' draws two lines forming the tip of an arrow, and indicates the direction.
  • 'Perpendicular lines' draws a single line perpendicular to the path direction.
  • 'Dotted line' draws small lines along the path, regularly leaving gaps.
  • 'Points' draws single pixels.

Proximity Path: Whether the path's opacity is influenced by its distance to the player. If disabled, the path is always clearly visible.

Segment Booster

CommunalHelper/SegmentBooster

  • Segment Booster (Hidden Path)

Hide Path: Hides the path until the player enters the Dream Booster. Plays an audio cue once when entering.

Path Style: The style of this booster's path.

  • 'Arrows' draws two lines forming the tip of an arrow, and indicates the direction.
  • 'Perpendicular lines' draws a single line perpendicular to the path direction.
  • 'Dotted line' draws small lines along the path, regularly leaving gaps.
  • 'Points' draws single pixels.

Proximity Path: Whether the path's opacity is influenced by its distance to the player. If disabled, the path is always clearly visible.

Curved Booster

CommunalHelper/CurvedBooster

  • Curved Booster (Hidden Path, Quadratic Curve)

  • Curved Booster (Quadratic Curve)

  • Curved Booster (Hidden Path, Cubic Curve)

  • Curved Booster (Cubic Curve)

Hide Path: Hides the path until the player enters the Dream Booster. Plays an audio cue once when entering.

Path Style: The style of this booster's path.

  • 'Arrows' draws two lines forming the tip of an arrow, and indicates the direction.
  • 'Perpendicular lines' draws a single line perpendicular to the path direction.
  • 'Dotted line' draws small lines along the path, regularly leaving gaps.
  • 'Points' draws single pixels.

Proximity Path: Whether the path's opacity is influenced by its distance to the player. If disabled, the path is always clearly visible.

Held Booster

CommunalHelper/HeldBooster

  • Held Booster (Green)

  • Held Booster (Green, Ticking)

  • Held Booster (Purple)

  • Held Booster (Purple, Ticking)

Path Style: The style of this booster's path.

  • 'Arrows' draws two lines forming the tip of an arrow, and indicates the direction.
  • 'Perpendicular lines' draws a single line perpendicular to the path direction.
  • 'Dotted line' draws small lines along the path, regularly leaving gaps.
  • 'Points' draws single pixels.

Proximity Path: Whether the path's opacity is influenced by its distance to the player. If disabled, the path is always clearly visible.

Speed: The speed of this booster. Defaults to 240.0, which is the default booster speed in vanilla Celeste.

Death Timer: The maximum time the player can wait before starting a dash. If exceeded, the player is killed. Set this option to a negative value to ignore this behavior.

Blink Sfx: Whether the booster should play a beep sound every time it blinks when ticking down.

Spiral Booster

CommunalHelper/SpiralBooster

  • Spiral Booster (Clockwise)

  • Spiral Booster (Counterclockwise)

  • Spiral Booster (Direct, Clockwise)

  • Spiral Booster (Direct, Counterclockwise)

Angle: The angle (in degrees) of the arc along which this booster travels. This value can go above 360° to create a path that continues past a full turn, but that doesn't keep going indefinitely.

The default value is set to 180°, or half a full turn.

Clockwise: Spiral clockwise around the starting position of this Spiral Booster.

Spiral Speed: The speed at which the player spirals around this booster's starting position. The default value is the vanilla red booster speed, which is equal to 240.0.

Begin Time: The time (in seconds) it takes for the bubble to move from it's starting position to the beginning position of the arc or circle. The default value was arbitrarily chosen to be 0.75s.

Delay: The time (in secondes) that is spent waiting between the straight line movement and the arc movement. The default value was arbitrarily chosen to be 0.2s.

Path Color: The hexadecimal color code for the color of this booster's path.

Spiral Dream Booster

CommunalHelper/SpiralDreamBooster

  • Spiral Dream Booster (Clockwise)

  • Spiral Dream Booster (Counterclockwise)

  • Spiral Dream Booster (Direct, Clockwise)

  • Spiral Dream Booster (Direct, Counterclockwise)

Angle: The angle (in degrees) of the arc along which this booster travels. This value can go above 360° to create a path that continues past a full turn, but that doesn't keep going indefinitely.

The default value is set to 180°, or half a full turn.

Clockwise: Spiral clockwise around the starting position of this Spiral Dream Booster.

Spiral Speed: The speed at which the player spirals around this booster's starting position. The default value is the vanilla red booster speed, which is equal to 240.0.

Begin Time: The time (in seconds) it takes for the bubble to move from it's starting position to the beginning position of the arc or circle. The default value was arbitrarily chosen to be 0.75s.

Delay: The time (in secondes) that is spent waiting between the straight line movement and the arc movement. The default value was arbitrarily chosen to be 0.2s.

Path Color: The hexadecimal color code for the color of this booster's path.

Summit Gem

CommunalHelper/CustomSummitGem

  • Custom Summit Gem

Index: Determines the texture and sound used for this gem (clamped within 0 and 7). Must be unique within a room. To use a custom texture, put it at Graphics/Atlases/Gameplay/collectables/summitgems/$mapSID/$roomName/$index.

Attached Wall Booster

CommunalHelper/AttachedWallBooster

  • Attached Wall Booster (Right)

  • Attached Wall Booster (Left)

Left: Whether the Attached Wall Booster should attach to the left sides of solids.

Not CoreMode: Whether the Attached Wall Booster should ignore the current Core Mode and be in Ice Mode when entering the room. This is a legacy option that may not work as expected with different settings for Core Mode Behavior.

Core ModeBehavior: How the Attached Wall Booster should interact with the Core Mode. If set to Toggle, it will respect the current Core Mode and use the default value if the Core Mode is None. If set to Always Hot/Cold, it will completely ignore the Core Mode and always stay in one mode.

Legacy Boost: Makes this Attached Wall Booster apply the expected speed boost to the player. If disabled, the vertical boost is applied twice if the player isn't moving horizontally, due to a bug that was accidentally introduced in 1.11.2. Also, if disabled, this entity is reskinned with a variant of the wall booster textures.

Station Block

CommunalHelper/StationBlock

  • Station Block (Normal, Pushing)

  • Station Block (Normal, Pulling)

  • Station Block (Moon, Pushing)

  • Station Block (Moon, Pulling)

Allow Wavedash: Whether Wavedashing on top of the Station Block is allowed or not even while it's not moving (doesn't bounce you upwards).

Allow WavedashBottom: Similarly to the allowWavedash option, allows an inverted player to wavedash on the Station Block.

Speed Factor: The factor by which the speed of the Station Block is multiplied. This value can only be between 0.1 and 2.

Theme: Aspect theme of the Station Block.

Behavior: Behavior of the Station Block. Pulling will make it move towards you, and Pushing does the opposite. This changes slightly the appearance of the block, depending on the behavior.

Custom BlockPath: This is the path you should specify if you're using a custom texture for the block, leave empty for default textures. It looks for Graphics/Atlases/Gameplay/objects/<path>. The block should be a 24x24 texture, that preferably gets tiled correctly. Example: "catapillie/customStationBlock/custom_block", where the texture is located at Graphics/Atlases/Gameplay/objects/catapillie/customStationBlock/custom_block.png. DON'T add the ".png".

Custom ArrowPath: This is the path you should specify if you're using custom textures for the arrow, leave empty for default textures. It looks for Graphics/Atlases/Gameplay/objects/<path>/small, med, or big. There should be 16 sprites for each size, so 48 in total, labeled like so: small00, small01, 02, 03, etc.. up to small15, and same goes for med and big. The first texture is the arrow pointing UP, the fifth pointing RIGHT, the ninth pointing DOWN, and the 13th pointing LEFT, the other sprites in between are the animation going from one direction to another. You can take a look at how Communal Helper has them setup. Example: "catapillie/customStationBlock/arrow", where the arrow textures are located at Graphics/Atlases/Gameplay/objects/catapillie/customStationBlock/arrow/small00, small01... small15, same for med(00 - 15) & big(00 - 15). This should point to a directory, not an image.

Custom TrackPath: This is the path you should specify if you're using custom textures for the tracks, leave empty for default textures. It looks for Graphics/Atlases/Gameplay/objects/<path>/node.png, trackv.png and trackh.png. There should be 3 textures in the folder you specified in the path, all of size 8x8, called: node.png, trackv.png, and trackh.png. The node.png texture is the point of intersection between tracks. trackv.png and trackh.png are the track horizontal & vertical textures, they should loop over seamlessly. Example: "catapillie/customStationBlock/tracks", where the texture are located at Graphics/Atlases/Gameplay/objects/catapillie/customStationBlock/tracks/node.png, trackv.png and trackh.png. This should point to a directory, not an image.

Wavedash ButtonColor: The hexadecimal color of the allowed wavedash button indicator when it's not pressed. Must not include the hash (#) symbol!

Wavedash ButtonPressedColor: The hexadecimal color of the allowed wavedash button indicator when it's pressed. Must not include the hash (#) symbol!

Dash CornerCorrection: Makes wallbouncing off of this Station Block less precise (by allowing it up to 4 pixels deep into the block horizontally, dashing from the bottom).

Station Block Track

CommunalHelper/StationBlockTrack

  • Station Block Track (Horizontal, No Switching)

  • Station Block Track (Horizontal, Switched On)

  • Station Block Track (Horizontal, Switched Off)

  • Station Block Track (Vertical, No Switching)

  • Station Block Track (Vertical, Switched On)

  • Station Block Track (Vertical, Switched Off)

Multi BlockTrack: Whether this set of tracks can support more than one Station Block.

Horizontal: Whether the track should be handled as a horizontal one.

Track SwitchState: The starting state of the track. "None" will make it unswitchable. "On" will make it turned on by defaul, and "Off" will make it turned off.

Move Mode: This option will determine the behaviour of blocks sitting on this track.

  • "None" : Changes nothing.

  • "ForwardOneWay" : Makes blocks only able to travel along this track if they're moving RIGHT or DOWN.

  • "BackwardOneWay" : Makes blocks only able to travel along this track if they're moving LEFT or UP.

  • "ForwardForce" : If any block can travel along this track in the RIGHT or DOWN direction, they will be force to. Behaviour from "ForwardOneWay" also applies here.

  • "BackwardForce" : If any block can travel along this track in the LEFT or UP direction, they will be force to. Behaviour from "BackwardOneWay" also applies here.

Indicator: Whether this track shows an indicator for its specific Move Mode (only "...Force" moves).

Indicator Color: The color of the indicator.

Indicator IncomingColor: The color of the indicator when a station block is moving towards this Track.

Track Switch Box

CommunalHelper/TrackSwitchBox

  • Track Switch Box (Session Switch)

Global Switch: Whether the level should keep the state of the ON/OFF tracks, even after reloading or dying. If unticked, the state will be reset at every reload.

Floaty: Whether the box should float up and down; this also causes the box to sink down if the player stands on it. If unticked, the box will stay in its place.

Bouncy: Whether the box should bounce away from the player when dashed into.

Custom Cassette Block

CommunalHelper/CustomCassetteBlock

  • Custom Cassette Block (0 - Blue)

  • Custom Cassette Block (1 - Rose)

  • Custom Cassette Block (2 - Bright Sun)

  • Custom Cassette Block (3 - Malachite)

Index: The color of the Custom Cassette Block.

Tempo: The tempo of the cassette music in the room.

Custom Color: Optional hexadecimal color code, visual-only change.

Cassette Falling Block

CommunalHelper/CassetteFallingBlock

  • Cassette Falling Block (0 - Blue)

  • Cassette Falling Block (1 - Rose)

  • Cassette Falling Block (2 - Bright Sun)

  • Cassette Falling Block (3 - Malachite)

Index: The color of the Cassette Falling Block.

Tempo: The tempo of the cassette music in the room.

Custom Color: Optional hexadecimal color code, visual-only change.

Cassette Zip Mover

CommunalHelper/CassetteZipMover

  • Cassette Zip Mover (0 - Blue)

  • Cassette Zip Mover (1 - Rose)

  • Cassette Zip Mover (2 - Bright Sun)

  • Cassette Zip Mover (3 - Malachite)

Index: The color of the Cassette Zip Mover.

Tempo: The tempo of the cassette music in the room.

No Return: Whether the Cassette Zip Mover should return to its starting point or not.

Permanent: Whether this block should lock in place after being triggered.

Waiting: Whether this block requires the player to trigger it each node in the path.

Ticking: Causes this block to tick 5 times at every node before going back to its starting point, unless the player triggers it again. If permanent is true and the player doesn't trigger the Zip Mover in time, it'll lock in place.

Custom Color: Optional hexadecimal color code, visual-only change.

Cassette Move Block

CommunalHelper/CassetteMoveBlock

  • Cassette Move Block (0 - Blue)

  • Cassette Move Block (1 - Rose)

  • Cassette Move Block (2 - Bright Sun)

  • Cassette Move Block (3 - Malachite)

Direction: The direction in which the Cassette Move Block moves.

Move Speed: The speed at which the block moves (accepts any number).

Index: The color of the Cassette Move Block.

Tempo: The tempo of the cassette music in the room.

Custom Color: Optional hexadecimal color code, visual-only change.

Cassette Swap Block

CommunalHelper/CassetteSwapBlock

  • Cassette Swap Block (0 - Blue)

  • Cassette Swap Block (1 - Rose)

  • Cassette Swap Block (2 - Bright Sun)

  • Cassette Swap Block (3 - Malachite)

No Return: Whether Cassette Swap Block should return to its starting point or not.

Index: The color of the Cassette Swap Block.

Tempo: The tempo of the cassette music in the room.

Custom Color: Optional hexadecimal color code, visual-only change.

Cassette Jump Fix Controller

CommunalHelper/CassetteJumpFixController

Persistent: Whether the controller should apply for the entire level, only applies to the current room if this is turned off.

Off: Turns off the fix, regardless of the persistent option.

Manual Cassette Controller

CommunalHelper/ManualCassetteController

Start Index: The color of Cassette Block that should start activated.

Underwater Music Controller

CommunalHelper/UnderwaterMusicController

Enable: Whether to always enable or always disable underwater sound modifiers.

Dash SFX: Whether to also affect the additional in-water dash sound effect.

Timed Trigger Spikes

CommunalHelper/TimedTriggerSpikesUp

  • Timed Trigger Spikes (Up, Default)

  • Timed Trigger Spikes (Up, Outline)

  • Timed Trigger Spikes (Up, Cliffside)

  • Timed Trigger Spikes (Up, Reflection)

  • Timed Trigger Spikes (Right, Default)

  • Timed Trigger Spikes (Right, Outline)

  • Timed Trigger Spikes (Right, Cliffside)

  • Timed Trigger Spikes (Right, Reflection)

  • Timed Trigger Spikes (Down, Default)

  • Timed Trigger Spikes (Down, Outline)

  • Timed Trigger Spikes (Down, Cliffside)

  • Timed Trigger Spikes (Down, Reflection)

  • Timed Trigger Spikes (Left, Default)

  • Timed Trigger Spikes (Left, Outline)

  • Timed Trigger Spikes (Left, Cliffside)

  • Timed Trigger Spikes (Left, Reflection)

Type: Determines the visual appearance of the spike.

Delay: The delay, in seconds, before the spikes come up, after triggering. Spikes take 0.0667 seconds to come up (4 frames).

WaitForPlayer: Setting this to true will make the spike only come up after the player leaves the spike area. Useful for when you need to return to a space in a time limit.

Grouped: Setting this to "Grouped" will trigger all spikes in the line if any spike in the line is triggered. "Grouped" requires Maddie's Helping Hand to work, and will throw an error in its absence.

Rainbow: Makes these spikes rainbow.

Connected Solid Extension

CommunalHelper/SolidExtension

  • Connected Solid Extension (Uncollidable)

Collidable: Whether this extension can be collided with. If turned off, the entity will appear darker and in the background, will basically act like background tiles.

Dream Zip Mover

CommunalHelper/DreamZipMover

Below: Determines whether the Dream Move Block should render below foreground tiles.

No Return: Whether the Dream Zip Mover should return to its starting point or not.

Dream Aesthetic: Optional look for this entity, mostly unused, but left there.

Feather Mode: Whether the Dream Zip Mover has the Dream Block Feather controls enabled.

One Use: Whether the Dream Zip Mover should shatter upon exit.

Refill Count: Number of dashes the Dream Zip Block should refill (-1 for default).

Double Refill: Whether the Dream Zip Mover should refill two dashes, instead of one.

Permanent: Whether this block should lock in place after being triggered.

Waiting: Whether this block requires the player to trigger it each node in the path.

Ticking: Causes this block to tick 5 times at every node before going back to its starting point, unless the player triggers it again. If permanent is true and the player doesn't trigger the Zip Mover in time, it'll lock in place.

Quick Destroy: Makes this Dream Zip Mover shatter a little faster.

Connected Dream Block

CommunalHelper/ConnectedDreamBlock

  • Connected Dream Block (Normal)

  • Connected Dream Block (Feather Mode)

  • Connected Dream Block (Normal, One Use)

  • Connected Dream Block (Feather Mode, One Use)

Below: Determines whether the Connected Dream Block should render below foreground tiles.

Feather Mode: Whether the Connected Dream Block has the Dream Block Feather controls enabled. Connected Dream Blocks only connect with other dream blocks with the same controls.

One Use: Whether THIS Connected Dream Block should make its entire group shatter upon leaving it.

Refill Count: Number of dashes this group of Connected Dream Blocks should refill (-1 for default).

Quick Destroy: Makes this Connected Dream Block shatter a little faster.

Dream Swap Block

CommunalHelper/DreamSwapBlock

Below: Determines whether the Dream Swap Block should render below foreground tiles.

No Return: Whether the Dream Swap Block should return to its starting point or not.

Feather Mode: Whether the Dream Swap Block has the Dream Block Feather controls enabled.

One Use: Whether the Dream Swap Block should shatter upon exit.

Refill Count: Number of dashes the Dream Swap Block should refill (-1 for default).

Quick Destroy: Makes this Dream Swap Block shatter a little faster.

Dream Move Block

CommunalHelper/DreamMoveBlock

Below: Determines whether the Dream Move Block should render below foreground tiles.

Direction: The direction in which the Dream Move Block moves.

Refill Count: Number of dashes the Dream Move Block should refill (-1 for default).

Move Speed: The speed at which the Dream Move Block moves (accepts any number).

No Collide: Whether the Dream Move Block should go through solids.

Feather Mode: Whether the Dream Move Block has the Dream Block Feather controls enabled.

One Use: Whether the Dream Move Block should shatter upon exit.

Quick Destroy: Makes this Dream Move Block shatter a little faster.

Dream Falling Block

CommunalHelper/DreamFallingBlock

  • Dream Falling Block (Chained)

Feather Mode: Whether the Dream Falling Block has the Dream Block Feather controls enabled.

One Use: Whether the Dream Falling Block should shatter upon exit.

Refill Count: Number of dashes the Dream Falling Block should refill (-1 for default).

Below: Determines whether the Dream Falling Block should render below foreground tiles.

No Collide: Whether the Dream Falling Block should go through solids.

Fall Distance: The maximum distance this block can fall before the chains tightens and stops the block (in other words, the chain length).

Centered Chain: Renders only one chain at the horizontal center of this block.

Chain Outline: Whether the chain of this block should have a black outline.

Indicator: Renders below the block a dark transparent rectangle of the path it is going to take when it starts to fall. This indicator might not be visible against dark backgrounds.

Indicator AtStart: Makes the indicator (if enabled) visible before the block is triggered.

Quick Destroy: Makes this Dream Falling Block shatter a little faster.

Chain Texture: The texture for this Dream Falling Block's chain (if chained).

Dream Switch Gate

CommunalHelper/DreamSwitchGate

Below: Determines whether the Dream Switch Gate should render below foreground tiles.

Feather Mode: Whether the Dream Switch Gate has the Dream Block Feather controls enabled.

One Use: Whether the Dream Switch Gate should shatter upon exit.

Permanent: Whether the Dream Switch Gate should stay at its node permanently after being activated for the entire level.

Refill Count: Number of dashes the Dream Switch Gate should refill (-1 for default).

Quick Destroy: Makes this Dream Switch Gate shatter a little faster.

Dream Flag Switch Gate

CommunalHelper/MaxHelpingHand/DreamFlagSwitchGate

Flag: The session flag this switch gate reacts to. Give the same to multiple touch switches and switch gates to group them.

Icon: The name of the icon for the switch gate (relative to objects/MaxHelpingHand/flagSwitchGate), or "vanilla" for the default one.

Persistent: If enabled, the switch gate will stay open when the player dies or changes rooms.

Inactive Color: The gate icon colour when not triggered yet.

Active Color: The gate icon colour when triggered, but the group is not complete yet.

Finish Color: The gate icon colour when the group is complete.

Shake Time: The time (in seconds) the block spends shaking before starting to move. Vanilla value is 0.5 seconds.

Move Time: The time (in seconds) the block takes to move to its destination after shaking. Vanilla value is 1.8 seconds.

Move Eased: Whether the block should slow down before reaching its final position. If unchecked, the block will move at constant speed.

Allow Return: Whether the block should return to its original position if the flag is turned off. Only works if the gate is persistent.

Move Sound: The sound played by the gate when it starts moving.

Finished Sound: The sound played by the gate when it is done moving.

Below: Determines whether the Dream Flag Switch Gate should render below foreground tiles.

Feather Mode: Whether the Dream Flag Switch Gate has the Dream Block Feather controls enabled.

One Use: Whether the Dream Flag Switch Gate should shatter upon exit.

Refill Count: Number of dashes the Dream Flag Switch Gate should refill (-1 for default).

Quick Destroy: Makes this Dream Flag Switch Gate shatter a little faster.

Dream Floaty Space Block

CommunalHelper/DreamFloatySpaceBlock

Below: Determines whether this block should render in the background or foreground.

Refill Count: Number of dashes the Dream Floaty Space Block should refill (-1 for default).

Feather Mode: Whether this block has the Dream Block Feather controls enabled.

One Use: Whether this block should shatter upon exit.

Quick Destroy: Makes this Dream Floaty Space Block shatter a little faster.

Dream Crumble Wall On Rumble

CommunalHelper/DreamCrumbleWallOnRumble

Below: Determines whether this block should render in the background or foreground.

Refill Count: Number of dashes the Dream Crumble Wall On Rumble should refill (-1 for default).

Feather Mode: Whether this block has the Dream Block Feather controls enabled.

One Use: Whether this block should shatter upon exit.

Persistent: Whether this block should remain broken permanently.

Quick Destroy: Makes this Dream Crumble Wall On Rumble shatter a little faster.

Connected Zip Mover

CommunalHelper/ConnectedZipMover

  • Connected Zip Mover (Normal)

  • Connected Zip Mover (Moon)

  • Connected Zip Mover (Cliffside)

Custom BlockTexture: Legacy. Replace this zip mover and use Custom Skin instead. The path to the custom texture for the Connected Block, starting from Graphics/Atlases/Gameplay/objects/. A template is provided in Mods/CommunalHelper/Graphics/Atlases/Gameplay/objects/CommunalHelper/customConnectedBlock. The filename should NOT include the file extension (.png).

Custom Skin: The path to a directory with custom textures for this Connected Zip Mover. This is relative to Graphics/Atlases/Gameplay. If set, this overrides the Theme option. Setting the Cliffside theme is equivalent to setting this field to objects/CommunalHelper/connectedZipMover/cliffside, and customising Colors to match.

Theme: If Custom Skin is not set, this determines the appearance of the Connected Zip Mover. This also determines the sounds used. The Cliffside theme is a custom theme.

Permanent: Whether the Connected Zip Mover should stay completely static after stopping.

Waiting: Whether the Connected Zip Mover should wait for the player at each node. Only useful if has more than one node.

Ticking: Whether the Connected Zip Mover should be ticking at each node, forcing the player to reactivate it within a limited amount of time. Will return to initial position if the player doesn't reactivate it, or locks in place completely if "permanent" is on. Only useful if has more than one node.

Colors: The background and rope colors for this Connected Zip Mover. Setting this value overrides the default values. This is a comma-seperated list of hex codes; the first is used as ther background color, the second as the main rope color, and the third as the lighter rope color (when present). For the Normal and Moon themes, this is 000000,663931,9b6157 by default; for the Cliffside theme, this is 171018,663931,9b6157 by default.

Connected Swap Block

CommunalHelper/ConnectedSwapBlock

  • Connected Swap Block (Reskinnable)

Custom GreenBlockTexture: The path to the custom green variant texture for the Connected Swap Block, starting from Graphics/Atlases/Gameplay/objects/. A template is provided in Mods/CommunalHelper/Graphics/Atlases/Gameplay/objects/CommunalHelper/customConnectedBlock. The filename should NOT include the file extension (.png).

Custom RedBlockTexture: The path to the custom red variant texture for the Connected Swap Block, starting from Graphics/Atlases/Gameplay/objects/. A template is provided in Mods/CommunalHelper/Graphics/Atlases/Gameplay/objects/CommunalHelper/customConnectedBlock. The filename should NOT include the file extension (.png).

Theme: The appearance of the Connected Swap Block.

Connected Move Block

CommunalHelper/ConnectedMoveBlock

  • Connected Move Block (Up)

  • Connected Move Block (Down)

  • Connected Move Block (Left)

  • Connected Move Block (Right)

  • Connected Move Block (Reskinnable)

  • Connected Move Block (Flag-controlled)

Move Speed: The speed at which the block moves (accepts any number).

Direction: The direction in which the Connected Move Block should travel.

Custom BlockTexture: The path to the custom texture for the Connected Block, starting from Graphics/Atlases/Gameplay/objects/. A template is provided in Mods/CommunalHelper/Graphics/Atlases/Gameplay/objects/CommunalHelper/customConnectedBlock. The filename should NOT include the file extension (.png). For adding arrow textures, name the texture for tiles "tileset.png", the arrow textures "arrowXX.png" (00 thru 08), and the breaking "X" sprite as "x.png".

Custom SoundEffect: The path to the custom sound effect for the Connected Block.

Idle Color: The color of the arrow when not moving.

Pressed Color: The color of the arrow when moving.

Break Color: The color of the arrow when breaking.

Outline: Gives this Move Block an outline.

Connected Temple Cracked Block

CommunalHelper/ConnectedTempleCrackedBlock

  • Connected Temple Cracked Block (Persistent)

Persistent: Persistent blocks will stay broken after dying or leaving the room.

Equation Move Block

CommunalHelper/EquationMoveBlock

  • Equation Move Block (Up)

  • Equation Move Block (Down)

  • Equation Move Block (Left)

  • Equation Move Block (Right)

  • Equation Move Block (Reskinnable)

  • Equation Move Block (Flag-controlled)

Equation: The equation used by the Equation Move Block. 0: y = ax 1: y = ax^2 + bx 2: y = ax^3 + bx^2 + x 3: y = asin bx 4: y = acos bx 5: y = ae^bx 6: y = ax^b 7: elliptic, x-scale = a, y-scale = b

Move Speed: The speed at which the block moves (accepts any number).

Direction: The direction in which the Connected Move Block should travel.

Custom BlockTexture: The path to the custom texture for the Connected Block, starting from Graphics/Atlases/Gameplay/objects/. A template is provided in Mods/CommunalHelper/Graphics/Atlases/Gameplay/objects/CommunalHelper/customConnectedBlock. The filename should NOT include the file extension (.png). For adding arrow textures, name the texture for tiles "tileset.png", the arrow textures "arrowXX.png" (00 thru 08), and the breaking "X" sprite as "x.png".

Idle Color: The color of the arrow when not moving.

Pressed Color: The color of the arrow when moving.

Break Color: The color of the arrow when breaking.

Outline: Gives this Equation Move Block an outline.

Activator Flags: The flags which activate this Equation Move Block.

Breaker Flags: The flags which break this Equation Move Block.

Barrier BlocksFlags: Whether Seeker Barriers make this block ignore 'on break' flags.

Constant A: The value of the A constant used in this block's moving equation.

Constant B: The value of the B constant used in this block's moving equation.

On ActivateFlags: Flags set when this block is activated.

On BreakFlags: Flags set when this block is broken.

Wait ForFlags: Makes this block start off invisible and waiting for flags to become visible (and collidable).

Bouncy Panel

CommunalHelper/BouncyPanel

  • Bouncy Panel (Up)

  • Bouncy Panel (Left)

  • Bouncy Panel (Right)

Override AllowStaticMovers: Enable a hack that allows this entity to attach to SolidTiles, among other things.

Orientation: The way this Bouncy Panel faces.

Sfx: The sound that plays when the player bounces off this panel.

Dash Collision Panel

CommunalHelper/DashCollisionPanel

  • Dash Collision Panel (Up)

  • Dash Collision Panel (Down)

  • Dash Collision Panel (Left)

  • Dash Collision Panel (Right)

Orientation: The way this Dash Collision Panel faces.

Dash CollideResult: The type of collision result returned when the player dashes into the solid on which this panel is placed.

Override AllowStaticMovers: Enable a hack that allows this entity to attach to SolidTiles, among other things.

Dream Tunnel Entry

CommunalHelper/DreamTunnelEntry

  • Dream Tunnel Entry (Up)

  • Dream Tunnel Entry (Down)

  • Dream Tunnel Entry (Left)

  • Dream Tunnel Entry (Right)

Override AllowStaticMovers: Enable a hack that allows this entity to attach to SolidTiles, among other things.

Orientation: The way this Dream Tunnel Entry faces.

Depth: The depth value for this entity. Used to make it render below or above other entities.

Frictionless Panel

CommunalHelper/FrictionlessPanel

  • Frictionless Panel (Up)

  • Frictionless Panel (Left)

  • Frictionless Panel (Right)

Orientation: The way this Frictionless Panel faces.

Surface Sound Panel

CommunalHelper/SurfaceSoundPanel

  • Surface Sound Panel (Up)

  • Surface Sound Panel (Left)

  • Surface Sound Panel (Right)

Orientation: The way this panel is facing. Up for changing the top sound index, Left & Right for the climbing sounds.

Sound Index: The index associated with the surface sounds played on this panel.

Chained Kevin

CommunalHelper/ChainedKevin

  • Kevin (Chained, Up)

  • Kevin (Chained, Down)

  • Kevin (Chained, Left)

  • Kevin (Chained, Right)

Chillout: Whether the block should have the large face and get tired after being hit.

Chain Length: The length of the chain holding the block, which will be unable to go past this distance.

Direction: The only direction in which this block will travel.

Centered Chain: Renders only one chain at the horizontal or vertical center of this block, depending on the direction.

Chain Outline: Whether the chain of this block should have a black outline.

Chain Texture: The texture for this Chained Kevin's chain.

Chained Falling Block

CommunalHelper/ChainedFallingBlock

  • Falling Block (Chained)

Tiletype: Changes the visual appearance of this block.

Climb Fall: Whether the block should start falling when the player is climbing it.

Behind: Whether this entity should appear farther behind in the scene or not.

Fall Distance: The maximum distance this block can fall before the chains tightens and stops the block (in other words, the chain length).

Centered Chain: Renders only one chain at the horizontal center of this block.

Chain Outline: Whether the chain of this block should have a black outline.

Indicator: Renders below the block a dark transparent rectangle of the path it is going to take when it starts to fall. This indicator might not be visible against dark backgrounds.

Indicator AtStart: Makes the indicator (if enabled) visible before the block is triggered.

Chain Texture: The texture for this Falling Block's chain.

Chain

CommunalHelper/Chain

Outline: Whether this chain has an outline (black).

Extra Joints: The additional 'chain nodes' this chain has. Used to make the chain longer without distancing the endpoints of the chain any further away from eachother.

Texture: This chain's texture.

Core Mode Music Controller

CommunalHelper/CoreModeMusicController

  • Core Mode Music Controller (Disable)

Params: A list of parameters to change depending on the level's core mode (separated by the comma character ',').

Hot: The values to which the parameters will be set when the core mode is "Hot".

Cold: The values to which the parameters will be set when the core mode is "Cold".

None: The values to which the parameters will be set when the core mode is "None".

Disable: If this is ticked on, this controller will look for every controller with the same parameter list (in order), and disable it (remove it). It also removes itself afterwards.

Heart Gem Shards

CommunalHelper/CrystalHeart

  • Crystal Heart (Shards)

Remove CameraTriggers: Whether the heart should remove camera triggers onces its triggered.

Heart Gem Shards, Adventure Helper

CommunalHelper/AdventureHelper/CustomCrystalHeart

  • Crystal Heart (Shards) [Adventure Helper]

Color: Determines the glow and particle color of the heart as well as its tint if no sprite path is set.

Path: If set, determines what sprite will be used for the heart. The hitbox is not altered! If not set, the fake heart's white heart will be tinted. The sprites of the default 4 hearts are treated differently and they will take the behavior of those. They are the following:

  • 'heartgem0' : A-side, Blue
  • 'heartgem1' : B-side, Red
  • 'heartgem2' : C-side, Gold
  • 'heartgem3' : Farewell, White

Hint Controller

CommunalHelper/HintController

Dialog Ids: A comma separated list of keys into Dialog/<language>.txt for each hint entry.

Single Uses: A comma separated list of numbers, where 0 means the corresponding hint entry can be used multiple times, and anything else means it can only be used once. Defaults to empty string, which means all entries can be used multiple times.

Selector Counter: The name of the session counter that selects the current dialog. Defaults to empty string, which means that there is no counter and only the first hint will be available.

Select NextHint: If true, the selector defined in selectorCounter will be automatically incremented when a hint is shown. Defaults to false.

Input Flag Controller

CommunalHelper/InputFlagController

Flags: Multiple flags can be separated by commas, and sequences of flags can be separated by semi-colons.

Toggle: If enabled, flags will be toggled and the sequence will loop. If disabled, flags will be enable once.

Reset Flags: If enabled, all specified flags will be disabled upon leaving the room this entity is in.

Delay: The minimum delay in seconds between inputs.

Grab Override: Overrides the user's button binding to use the grab bind instead.

Melvin

CommunalHelper/Melvin

  • Melvin (All Strong)

  • Melvin (All Weak)

  • Melvin (Horizontally Weak)

  • Melvin (Vertically Weak)

Weak Top: Whether this Melvin can be dashed into from above.

Weak Bottom: Whether this Melvin can be dashed into from below.

Weak Left: Whether this Melvin can be dashed into from the left.

Weak Right: Whether this Melvin can be dashed into from the right.

Move Block Redirect

CommunalHelper/MoveBlockRedirect

  • Move Block Redirect (One Use)

  • Move Block Redirect (Delete)

  • Move Block Redirect (Reskinnable)

Direction: Determines the direction the Move Block moves after being redirected.

Fast Redirect: Skips the redirect animation.

Delete Block: Breaks the Move Block that goes through.

Operation: The type of operation to apply to the current Move Block speed.

Modifier: The number with which the operation is applied to the Move Block speed.

One Use: Whether this Move Block Redirect can only be used once or not.

Reskin Folder: The path to the folder containing custom sprites required for this entity's reskinning. This folder can contain up to 5 files used in code, unless they aren't found which will cause the entity to use the default one.

Here is a list of the files you'd want to have in the folder:

  • "block.png" is the outline of the redirect entity. It's 3 tiles wide and tall (24 x 24).

  • "arrow.png" is the icon shown for simple redirects, when speed is unaffected.

  • "x.png" is the icon shown for delete mode redirects.

  • "fast.png" and "slow.png" are the icons shown for redirects that increase or decrease speed respectively.

Please note that these images will be recolored in-game and so they must preferably be close to white/grayscale. If you want to use any color, you can set the Override Color and Overrde Used Color to ffffff, so that the colors are not affected.

Override Color: The hexadecimal color code that, if set, replaces whatever color the block originally has. Must not include the hash (#) symbol!

Override UsedColor: The hexadecimal color code that, if set, replaces whatever color the block originally has when it's being used. Must not include the hash (#) symbol!

Move Swap Block

CommunalHelper/MoveSwapBlock

Can Steer: Whether the Move Swap Block can be moved by the player.

Direction: The direction the Move Swap Block moves in upon activation.

Freeze OnSwap: Whether the block will continue moving while swapping.

Move Acceleration: The speed at which the block will move upon activation.

Move Speed: The maximum speed of the block while moving.

Returns: Whether the block will return after swapping.

Swap SpeedMultiplier: The speed multiplier for swapping.

Theme: Unsupported by this entity!

Player Bubble Region

CommunalHelper/PlayerBubbleRegion

No Overlay Lookout

CommunalHelper/NoOverlayLookout

  • Watchtower (No Overlay)

Summit: Whether the watch tower should zoom on the final node or not. Requires nodes to function, otherwise game will crash.

Only Y: Whether the watch tower can only move vertically. If the watch tower has nodes it will still follow CommunalHelper/NoOverlayLookout

Railed Move Block

CommunalHelper/RailedMoveBlock

  • Railed Move Block (Horizontal)

  • Railed Move Block (Vertical)

  • Railed Move Block (Both)

Steering Mode: Represents the way in which you can steer the block using the side buttons.

  • "Horizontal" will enable buttons on the left and right side of the block.
  • "Vertical" will enable one button at the top of the block.
  • "Both" will enable the two above.

Speed: The maximum speed this block can go at.

Reset State Crystal

CommunalHelper/ResetStateCrystal

One Use: Whether the crystal should permanently disappear after being collected.

Synced Zip Mover Activation Controller

CommunalHelper/SyncedZipMoverActivationController

Zip MoverSpeedMultiplier: Speed Multiplier for the controlled Zip Movers.

Color Code: Target color code.

Summit Gem Manager

CommunalHelper/CustomSummitGemManager

Gem Ids: Comma separated list of gemIDs. ID format is $mapSID/$roomName/$index. If no mapSID is provided, the current map will be used.

Melody: NOT Comma separated list of numbers from 0-7 for a custom melody during collection. Defaults to the gem index if not provided.

Heart Offset: Determines where the crystal heart will move to relative to this summit gem manager once all gems are collected.

Redless Berry

CommunalHelper/RedlessBerry

Persistent: Whether this Redless Berry stays with the player, even throughout deaths.

Winged: Makes this Redless Berry winged, meaning that it won't appear if the player was tired at some point in the session.

Dream Strawberry

CommunalHelper/DreamStrawberry

Checkpoint ID: Manually determine what checkpoint section strawberries are visually grouped up in, showing up on the start menu during gameplay and level select. Overrides Everest's automatic berry IDs. (Default= -1)

Order: Manually determine what order strawberries are visually placed in on the start menu during gameplay and level select. Overrides Everest's automatic berry IDs. (Default= -1)

Seeker Dash Refill

CommunalHelper/SeekerDashRefill

One Use: Whether the crystal should permanently disappear after being collected.

Player Seeker Barrier

CommunalHelper/PlayerSeekerBarrier

  • Player Seeker Barrier (No spikes)

  • Player Seeker Barrier (All spikes)

  • Player Seeker Barrier (Up spikes)

  • Player Seeker Barrier (Down spikes)

  • Player Seeker Barrier (Left spikes)

  • Player Seeker Barrier (Right spikes)

Spike Up: Whether the top edge of this barrier acts like spikes.

Spike Down: Whether the bottom edge of this barrier acts like spikes.

Spike Left: Whether the left edge of this barrier acts like spikes.

Spike Right: Whether the right edge of this barrier acts like spikes.

Spiky: [DEPRECATED] Whether all edges of this barrier act like spikes.

Shielded Refill

CommunalHelper/ShieldedRefill

  • Shielded Refill (Two Dashes)

Two Dashes: Whether the refill should give two dashes, instead of one.

Bubble Repel: Whether the player should bounce off the bubble.

One Use: Whether the refill should not reappear after being collected.

Lightning Controller

CommunalHelper/LightningController

  • Simple Lightning Controller

Min Delay: The minimum delay between two strikes.

Max Delay: The maximum delay between two strikes.

Startup Delay: The time waited before any lightning strikes after the controller starts.

Flash: The intensity (brightness) of the flash.

Flash Duration: The duration of the flash in seconds. Leave at 0 for no flash.

Depth: The depth value at which the lightning spawns.

Shake Amount: The shake time. Leave at 0 for no shake.

Sfx: The sound effect event name played when lightning strikes. Enter null for no sound.

Probability: A number between 0.0 and 1.0 that represents the chance of a lightning strike occurring after each delay.

Color: The color of the lightning strikes.

Flash Color: The color of the flash.

UFO

CommunalHelper/UFO

Flings the player and holdables when below, before moving to the next position.

Ray SizeX: The width of the beam within which entities are flung.

Ray SizeY: The height of the beam within which entities are flung.

Move Block Group

CommunalHelper/MoveBlockGroup

Color: The display color of this Move Block group.

Sync Activation: Whether all Move Blocks from this group are bound to activate simultaneously.

Respawn Behavior: Dictates how Move Blocks respawn within this group.

  • Immediate: the Move Blocks respawn immediately, like they normally do outside of a group.
  • Simultaneous: all Move Blocks from this group must have first broken in order for them to respawn.
  • Sequential: each Move Block will only respawn once all the ones that came before it in the group have respawned.

Aero Block Flying

CommunalHelper/AeroBlockFlying

  • Flying Aero Block

  • Flying Aero Block (Initially Inactive)

Inactive: Whether this block should spawn as inactive - that means it's not flying. It will activate once the player touch it. IMPORTANT: if this option is enabled, the first node of this block will define its initial position.

Travel Speed: The speed (in px/sec) at which this block's target moves. Note that this does not directly affect the exact speed of the block, but its target point, which the block constantly smoothly approaches. This field is only useful is this entity has at least one node.

Travel Mode: The type of movement this block will execute.

  • Loop: the block goes to each of its nodes sequentially, and loops around once the last one is reached.
  • Back and Forth: the block goes through each of its nodes sequencially, and then in reverse, and so on forever.
  • With Player: The block does not move until the player rides it. When the player is riding the block, the block moves towards the end of its sequence of nodes, and stops at the end. If the player leaves off the block, it starts going backwards to its starting position.
  • With Player Once: Same as "With Player", except the block turns off at the end of its sequence, and becomes unsable (stops flying).

Start Color: The starting color of this block's progress bar. Only useful when this block has mode WithPlayer or WithPlayerOnce enabled.

End Color: The ending color of this block's progress bar. Only useful when this block has mode WithPlayer or WithPlayerOnce enabled.

Aero Block Charged

CommunalHelper/AeroBlockCharged

  • Charged Aero Block

Button Sequence: Text that describes how the buttons of this block are shown and hidden as the block moves to each node. It is parsed by the entity, so this field must follow a specified format:

For each node, you can have the LEFT, RIGHT, and TOP buttons enabled or not. To combine multiple buttons, use the + operator. For instance: LEFT+RIGHT represents both the left and right button enabled, while the top one is off.

There are other keywords that represent multiple buttons at once: HORIZONTAL, VERTICAL, ALL, NONE:

  • HORIZONTAL = LEFT + RIGHT
  • VERTICAL = TOP
  • ALL = TOP + LEFT + RIGHT
  • NONE: (no buttons)

If you have multiple nodes, you must use the -> operator (a hyphen followed by a right-chevron, aka. "greater than") to indicate that whatever follows is for the next node. For instance: LEFT+RIGHT -> TOP will start the block with the left and right buttons on, and when the blocks moves at the next node, only the top button will be on. You don't necessarily have to write as many -> transitions as nodes this entity has, because the button sequence will just loop back if it reaches its end before the block ends its node sequence. You must not have more transitions than nodes. In such a case, the extra button combinations are discarded.

Every word can be lowercase (they are case-insensitive). Other words that are not LEFT, RIGHT, TOP, HORIZONTAL, VERTICAL, ALL, NONE, will be dismissed and a warning will be printed in the log. Leading & trailing whitespaces are discarded, so feel free to format the string the way you prefer.

Here are more examples of valid sequences:

  • LEFT
  • HORIZONTAL -> TOP + LEFT
  • right->left->tOP->All
  • ALL -> none + LEFT+right -> rIgHt

Check the log if something goes wrong, you'll find the error messages there.

Hover: Whether this block has a hovering "floating" movement to it. If disable, the block stays in place until it needs to move.

Loop: Whether this block's sequence has no ending. When the last node is reached, it loops back around to the initial position.

Active Color: This block's button and screen particles color when it is active (flying).

Inactive Color: This block's button colors when it is inactive.

Aero Block Slingshot

CommunalHelper/AeroBlockSlingshot

  • Slingshot Aero Block

Launch Time: The time in seconds that it takes the block to return after being released. Defaults to 0.5.

Cooldown Time: The time in seconds before the player can push the block again after being reset. Defaults to 0.5.

Set Time: The time in seconds that the player must stop pushing to prepare the block to launch. Defaults to 0.2.

Delay Time: The time in seconds after the block is set that the launch will occur. Defaults to 0.2.

Push Speed: The speed in pixels-per-second that the player can push the block. Defaults to 35.

Push Actions: The actions that the player may perform on the block. Options are None, Push, Pull, or Both. Defaults to Push.

Allow Adjustments: If false, the player cannot move the block once it has been "set" and the timer has started. If true, the player can adjust the block's position while the timer counts down, and it will reset the timer. Defaults to true.

Start Color: The color to tint the progress bar when the player pushes the block from the idle state. This will be lerped to endColor as the player continues to push.

End Color: The color to tint the progress bar when the player pushes the block to the end of the track.

Shapeshifter

CommunalHelper/Shapeshifter

Voxel Width: The width in tiles of the 3D voxel.

Voxel Height: The height in tiles of the 3D voxel.

Voxel Depth: The depth in tiles of the 3D voxel.

Model: A string representation of a 3D-array of characters corresponding to tile IDs. The size of this array is width * height * depth. If this field isn't complete (i.e. its length isn't width * height * depth), the missing character will be implied as '0', or you can set the default value in the defaultTile field (useful for filling the whole 3D-grid if you want to make a trivial 3D block).

You don't have to fill this out manually by yourself. Use Communal Helper's voxel editor by using the ch_make_voxel or ch_fill_voxel command:

  • ch_make_voxel <width> <height> <depth> [model]
  • ch_fill_voxel <width> <height> <depth> [model]

Read more on the Communal Helper wiki, and watch the tutorial video for an explanation of how you can use this entity.

Start Sound: The sound that plays when this block starts moving along a path.

Finish Sound: The sound that plays when this block stops moving.

Start Shake: The strength of the shake when this block starts moving. Also plays short medium rumble on controllers. Leave at 0.0 for no shake nor rumble.

Finish Shake: The strength of the shake when this block stops moving. Also plays short medium rumble on controllers. Leave at 0.0 for no shake nor rumble.

Rainbow Mix: A percentage (0.0 to 1.0) describing how rainbow the block should appear when moving. This helps to recognize shapeshifters that are currently moving (and if rotating, then uncollidable). Leave at 0.0 for no rainbowness. The more this value is close to 1.0, the more rainbow the block will appear, until you cannot see its texture, but only its shape (rainbowed out).

Default Tile: The default tile for this model.

Shapeshifter Path

CommunalHelper/ShapeshifterPath

Duration: How long it takes for shapeshifters to travel along this path.

Easer: The easing mode that atler the feel & smoothness of the movement of blocks taking this path.

Rotate Yaw: How much quarter turns about the YAW axis (the Y axis) the blocks taking this path will make.

Rotate Pitch: How much quarter turns about the PITCH axis (the X axis) the blocks taking this path will make.

Rotate Roll: How much quarter turns about the ROLL axis (the Z axis) the blocks taking this path will make.

Quake Time: The duration (in seconds) of the initial shaking sequence that plays before this block starts moving. Leave at 0.0 for no initial shaking, i.e. instant movement. The initial shaking sequence makes the block slightly shaky for however amount of seconds you specify, and then starts moving. It also plays a continuous shaking sound.

Fakeout Time: How much time (in seconds) should this block spend in the fakeout state. If this value is non-zero, the block will start moving but stop at the beginning of the movement. After the amount of seconds specified in this field, it will resume its movement along the path.

Fakeout Distance: How far away (in pixels) the block should stop for the fakeout state (only useful if fakeoutTime is non-zero). Note that the fakeout movement still follows the path.

Elytra Dash Block

CommunalHelper/ElytraDashBlock

Tiletype: The tile type of this block.

Blendin: Whether this block blends in with foreground tiles.

Permanent: Whether this block should disappear permanently once broken.

Required Speed: The required speed in px/sec by the player in the elytra state.

Elytra Boost Ring

CommunalHelper/ElytraBoostRing

  • Elytra Boost Ring (Unidirectional)

  • Elytra Boost Ring (Bidirectional)

Speed: The value in px/sec that is assigned to the player's speed.

Duration: How long (in seconds) the player is locked in the elytra boost state. While in this state, the player maintains the angle at which it was boosted, and maintains its speed as well. Those cannot be changed until the specified time in this field has elapsed.

Refill: Whether the player's elytra should be refilled when going through this ring.

Bidirectional: Whether this ring can boost the player in both directions. If disabled, the player is always boosted in the direction that this ring points to.

Elytra Refill Ring

CommunalHelper/ElytraRefillRing

Elytra Stop Ring

CommunalHelper/ElytraStopRing

Refill: Whether the player's elytra should be refilled when going through this ring.

Elytra Note Ring

CommunalHelper/ElytraNoteRing

Semitone: The note to play when this ring is crossed. You can input your own integer value if you want to go above or below the range available in the dropdown options. 0 is C4, input negative integer to go below.

Badeline Boost (Keep Holdables)

CommunalHelper/BadelineBoostKeepHoldables

Lock Camera: Upon activation, the camera cannot pan away from the entity.

Can Skip: Badeline will skip to the next position if the player is too far to the right of the current one (100 pixels).

Final Ch9Boost: Whether this boost should be able to end the level, transporting the player to room "end-granny". If the player has a golden berry, and this isn't a golden boost, they are transported to the golden room "end-golden" instead. Requires a Blackhole in the background, does not work if it is in the foreground.

Final Ch9GoldenBoost: Used to indicate that we are in the golden room and boosting out. Prevents the check in finalCh9Boost, and always ends the level if finalCh9Boost is also set.

Final Ch9Dialog: If finalCh9Boost is also set and doesn't go to golden room, this will trigger the Farewell ending dialog.

Glow Controller

CommunalHelper/GlowController

Light Whitelist: A comma-separated list of fully qualified entity class names to apply VertexLights to. Defaults to empty string.

Light Blacklist: A comma-separated list of fully qualified entity class names to remove VertexLights from. Defaults to empty string.

Light Color: The colour to use for the lights, as a hex representation. Defaults to white (FFFFFF).

Light Alpha: The opacity of the light, ranging from 0 (invisible) to 1 (opaque). Defaults to 1.

Light StartFade: The distance from the entity's position at which the light should begin to fade in. Defaults to 24.

Light EndFade: The distance from the entity's position at which the light should begin to fade out. Defaults to 48.

Light OffsetX: The X offset from the entity's position at which to place the VertexLight. Defaults to 0.

Light OffsetY: The Y offset from the entity's position at which to place the VertexLight. Defaults to 0.

Bloom Whitelist: A comma-separated list of fully qualified entity class names to apply BloomPoints to. Defaults to empty string.

Bloom Blacklist: A comma-separated list of fully qualified entity class names to remove BloomPoints and CustomBlooms from. Defaults to empty string.

Bloom Alpha: The opacity of the bloom, ranging from 0 (invisible) to 1 (opaque). Defaults to 1.

Bloom Radius: The radius of the bloom in pixels. Defaults to 8.

Bloom OffsetX: The X offset from the entity's position at which to place the BloomPoint. Defaults to 0.

Bloom OffsetY: The Y offset from the entity's position at which to place the BloomPoint. Defaults to 0.

Poison Gas

CommunalHelper/PoisonGas

Main: Ported from xolimono's Midway Contest map. Creates a region of poison gas where if they stay inside poison for more than 3 seconds, the player dies.

Radius: The radius of the poison gas region, in pixels. Defaults to 48.

Sprite Path: The game will pick a random image from Graphics/Atlases/Gameplay/<spritePath>##.png to display the poison gas region. Images should be 24x24px.

[Strawberry Jam] Bullet Time Controller

CommunalHelper/SJ/BulletTimeController

  • Bullet Time Controller [Strawberry Jam]

Slows down time while the player has dashes.

Timerate: The timerate that the game should run at while the player has dashes, as a multiplier of normal speed.

Flag: If present, time will only be affected if this flag is set.

Min Dashes: The number of dashes required for time to be slowed down.

[Strawberry Jam] Dash Zip Mover

CommunalHelper/SJ/DashZipMover

  • Dash Zip Mover [Strawberry Jam]

A zip mover that moves when the player dashes into it.

[Strawberry Jam] Flag Breaker Box

CommunalHelper/SJ/FlagBreakerBox

  • Flag Breaker Box [Strawberry Jam]

A Lightning Breaker Box that sets a flag when broken instead of turning off lightning in that room.

Flag: The flag to be set or unset

Flip X: Whether the sprite should be vertically mirrored.

Music: Change the currently playing music to this when box is broken. Leave empty to not change song.

Music_progress: The new music progress once box is broken. -1 keeps the same progress.

[Strawberry Jam] Momentum Block

CommunalHelper/SJ/MomentumBlock

  • Boost Block [Strawberry Jam]

Speed: The speed magnitude to impart on the player.

Speed Flagged: The speed magnitude to impart on the player when the given flag is set.

Direction: The angle of the momentum imparted on the player.

Direction Flagged: The angle of the momentum imparted on the player when the given flag is set.

Flag: When this flag is set, the speedFlagged and directionFlagged attributes will be used instead of speed/direction. Leave blank for speed/direction to always be used.

[Strawberry Jam] Photosensitive Flag Controller

CommunalHelper/SJ/PhotosensitiveFlagController

  • Photosensitive Flag Controller [Strawberry Jam]

Sets a flag when photosensitive mode is enabled.

Flag: The flag to set.

[Strawberry Jam] Grab Temple Gate

CommunalHelper/SJ/GrabTempleGate

  • Grab Temple Gate (Open) [Strawberry Jam]

  • Grab Temple Gate (Closed) [Strawberry Jam]

Closed: Whether the gate should initially be closed. This causes this gate to open when others close, and vice-versa.

[Strawberry Jam] Loop Block

CommunalHelper/SJ/LoopBlock

  • Loop Block [Strawberry Jam]

Edge Thickness: How thick this loop block's edges are, measured in tiles.

Color: The hexadecimal color code for this block's tint.

Texture: The path to this loop block's texture in the Gameplay atlas. Leave at default value or empty for the default texture (original texture from Strawberry Jam).

[Strawberry Jam] Solar Elevator

CommunalHelper/SJ/SolarElevator

  • Solar Elevator [Strawberry Jam]

Distance: The height at which this elevator goes.

Time: The time in seconds this elevator takes to move from one floor to the other.

Delay: The time in seconds waited before movement.

Bg Depth: The depth that the background of the elevator will be displayed at.

One Way: Whether this elevator is only used once.

Start Position: Determines which of the two floors is the default.

  • Closest: the default floor is the one closest to the player when the entity is created.
  • Bottom: the default floor is always the bottom one.
  • Top: the default floor is always the top one.

Move Sfx: The sound played during movement. Preferably a looped sound for arbitrary duration.

Halt Sfx: The sound played when the elevator stops.

Requires Holdable: Whether this elevator can only be activated if it can carry a holdable object (for instance, a Theo crystal). If this option is activated, the bubble UI will display a message to indicate that this elevator requires a holdable.

Holdable HintDialog: The dialog ID of the shown message, only useful if this elevator requires a holdable.

Reskin Directory: The path to the directory that contains custom textures for this elevator, starting from "Graphics/Atlases/Gameplay/". Leave empty for default appearance. The directory must contain a "front.png", "back.png", and "rails.png". Missing textures will fall back to the default textures. If something isn't working, check the Celeste console or log.txt for missing texture warnings.

[Strawberry Jam] Exploding Strawberry

CommunalHelper/SJ/ExplodingStrawberry

  • Exploding Strawberry [Strawberry Jam]

Strawberry that explodes when a pufferfish explodes.

[Strawberry Jam] Expiring Dash Refill

CommunalHelper/SJ/ExpiringDashRefill

  • Expiring Dash Refill [Strawberry Jam]

One Use: Whether this refill can only be used once.

Dash ExpirationTime: The amount of time given before the dash is revoked if not used.

Hair FlashThreshold: The threshold ratio that determines when the warning flash begins (0 - 1).

[Strawberry Jam] Air Time Music Controller

CommunalHelper/SJ/AirTimeMusicController

  • Airtime Music Controller [Strawberry Jam]

Activation Threshold: The amount of airtime in seconds required before the music parameter is enabled.

Music Param: The music parameter that will be adjusted by this controller. Its value will be set to 1.0 when the airtime threshold is reached, and is 0.0 by default or when disabled.

[Strawberry Jam] Wormhole Booster

CommunalHelper/SJ/WormholeBooster

  • Wormhole Booster [Strawberry Jam]

Booster that teleports you to the nearest of its kind, or kills you if none exist.

Death Color: The color to use for the booster when it becomes deadly.

Instant Camera: Whether the camera should transition instantly or not.

---------------------- TRIGGERS --------------------------

[Strawberry Jam] Show Hitbox Trigger

CommunalHelper/SJ/ShowHitboxTrigger

  • Show Hitbox [Strawberry Jam]

Shows the hitboxes of specified entities while inside.

Type Names: A comma-separated list of class names of the entities to show hitboxes when player is inside the trigger. Example: Celeste.Player,Celeste.CrystalStaticSpinner,Refill

[Strawberry Jam] Oshiro Attack Time Trigger

CommunalHelper/SJ/OshiroAttackTimeTrigger

  • Oshiro Faster Attack [Strawberry Jam]

Toggles Oshiro attacking in his B-side pattern (every 1.916 seconds) in A-side maps.

Player Visual Modifier Trigger

CommunalHelper/PlayerVisualModTrigger

Creates a visual extension to the player regardless of skinmods. Expands on the Skateboard Trigger from Strawberry Jam.

Revert OnLeave: If true, removes the visual modifier from the player to whatever it was before entering the trigger.

Modifier: Selects a file relative to $ModContent/Graphics/CommunalHelper/PlayerVisualModifiers/ to modify the player with. Check the CommunalHelper github wiki for notes on how to create your own modifier.

Dash State Trigger

CommunalHelper/DashStateTrigger

  • Dash State

Dash State: The dash state to set.

Mode: The changing mode. 'Trigger' changes the dash state when the player enters the trigger. 'OneUse' makes this trigger remove itself when used. 'Field' makes it change the dash state constantly while the player is inside.

Music Param Trigger

CommunalHelper/MusicParamTrigger

  • Music Parameter

Enter Value: The value to which the parameter(s) are set when the player is touching the trigger.

Exit Value: The value to which the parameter(s) are set when the player is outside the trigger.

Param: The name of the affected parameters. You can specify more than one parameter by separating them with a comma (,).

Sound Area Trigger

CommunalHelper/SoundAreaTrigger

  • Sound Area

Event: The name of the audio event that plays inside the trigger.

Switch Track Trigger

CommunalHelper/TrackSwitchTrigger

  • Track Switch

One Use: Allows for only one use of this trigger.

Flash: Whether the screen should flash and shake when triggered.

Global Switch: Whether the level should keep the state of the ON/OFF tracks, even after reloading or dying. If unticked, the state will be reset at every reload.

Mode: Specific switch mode -> (ON & OFF: switch to their corresponding state - ALTERNATE: will switch between ON and OFF.)

Cassette Music Fade Trigger

CommunalHelper/CassetteMusicFadeTrigger

  • Cassette Music Fade

Fade A: Determines the parameter value at the start of the fade.

Fade B: Determines the parameter value at the end of the fade.

Parameter: The name of the affected parameter. Uses "fade" if left blank.

Direction: The direction the music fades in.

Redless Berry Collection

CommunalHelper/RedlessBerryCollection

Cloudscape Color Transition

CommunalHelper/CloudscapeColorTransitionTrigger

Mode: Represents which direction in which the transition works.

Colors From: The array of hex color codes that define the gradient at the beginning of the transition. The values must be comma-separated.

Colors To: The array of hex color codes that define the gradient at the end of the transition. The values must be comma-separated.

Bg From: The hex color code for the background color at the beginning of the transition.

Bg To: The hex color code for the background color at the end of the transition.

Cloudscape Lightning Configuration

CommunalHelper/CloudscapeLightningConfigurationTrigger

  • Cloudscape Lightning Configuration (Enable)

  • Cloudscape Lightning Configuration (Disable)

Mode: Represents which direction in which the transition works.

Enable: Whether lightning should be enabled by this trigger.

Lightning Colors: The array of hex color codes that define the gradient used for the lightning colors. Colors are randomly picked from this gradient.

Lightning FlashColor: The hex color code that defines the lightning's flash color.

Lightning MinDelay: The minimum delay waited for lightning to occur on a cloud.

Lightning MaxDelay: The maximum delay waited for lightning to occur on a cloud.

Lightning MinDuration: The minimum duration of a lightning occurring on a cloud.

Lightning MaxDuration: The maximum duration of a lightning occurring on a cloud.

Lightning Intensity: A value between zero and one that determines how strong a cloud with lightning can flash.

Stop Lightning Controller Trigger

CommunalHelper/StopLightningControllerTrigger

  • Stop Lightning Controller

Configure Elytra Trigger

CommunalHelper/ConfigureElytraTrigger

  • Enable Elytra

  • Enable Elytra (Infinite)

  • Disable Elytra

Allow: Whether the player can deploy its elytra after going through the trigger. The elytra is deployed with a keybind configured in mod settings. Default is W on keyboard, and Left Shoulder on controller.

Infinite: If this trigger enables the elytra, this option will make it so that deploying the elytra does not consume a dash. Note that this can potentially be used to build infinite height (over long distances).

Follow Shapeshifter Path Trigger

CommunalHelper/FollowShapeshifterPathTrigger

  • Follow Shapeshifter Path

Once: Whether this trigger can only be used once. If enabled, this trigger becomes uncollidable as soon it is stepped into.

Shapeshifter ID: A comma-separated list of integer entity IDs of the Shapeshifter entities to move. Invalid values are discared, and warnings will be printed in the log. You can also use this field to input in a single Shapeshifter entity ID. This field is required.

Path ID: Optional field for specifying which path the Shapeshifter(s) will be borrowing. If this is left at -1, each Shapeshifter will look at the first path it finds in their bounds (rectangle). Important: note that the movement along a path for a Shapeshifter is relative. The blocks don't teleport to the beginning of the path, but rather, they apply the movement of the path they follow, starting at their initial position. Note also that shapeshifters that are told to move while they are already moving will simply ignore the request, and keep moving along the path they were already following.

Solar Elevator Level Trigger

CommunalHelper/SolarElevatorLevelTrigger

  • Set Solar Elevator Level

Elevator ID: The entity ID of the elevator to modify in this room. (integer)

Position: Determines which of the two floors the elevator is sent to.

  • Closest: the one closest to the player when entering the trigger.
  • Bottom: always the bottom floor.
  • Top: always the top floor.

Cloudscape

BetaCube

⚠️ **GitHub.com Fallback** ⚠️