Skip to main content

puzzle_laser_grid

Emitters project coloured beams; the player rotates mirrors to bend each beam into a receiver that requires that colour. Beams are drawn with particles, client-side.

Fields

FieldTypeDescription
emittersList<LaserEmitterDef>Laser emitters in this puzzle.
mirrorsList<LaserMirrorDef>Mirrors the beams reflect off.
receiversList<LaserReceiverDef>Receivers that must be lit.
maxReflectionsVar<Int>Reflections a beam may make before it stops.
beamDensityVar<Double>Beam particle density per block.
solveSoundSoundPlayed when every receiver is lit.

LaserEmitterDef

FieldTypeDescription
positionVar<Position>World position of the emitter.
colorVar<BeamColor>Beam colour.
directionVar<BlockFace>Initial beam direction.

LaserMirrorDef

FieldTypeDescription
positionVar<Position>World position of the mirror.
rotatableVar<Boolean>Whether players can rotate it by right-clicking.
initialDirectionVar<BlockFace>Starting horizontal direction.
mirrorMaterialVar<Material>Material used for the mirror visual.

LaserReceiverDef

FieldTypeDescription
positionVar<Position>World position of the receiver.
requiredColorVar<BeamColor>Beam colour this receiver requires.

See the shared puzzle fields for lifecycle, timing and trigger options.

How could this be used?

A vault whose door opens once red and blue beams reach their own crystals. Setting a mirror's rotatable to false fixes part of the path and turns the room into a real routing problem.