Redstone Tweaks 0.6 for Minecraft 1.16.2
Pre-release! THIS MOD IS STILL IN BETA !
To avoid potential world corruption or other issues, please use this mod on a fresh world or a backup of your world.
Changes in 0.6.1
Since this is the first public release, a comprehensive list of all features can be found below.
Installation
- Download and install Fabric for 1.16.2.
- Put the mod jar in the
/.minecraft/mods/
folder. - Launch the Fabric installation and enjoy the mod!
*Fabric API is NOT required.
**Compatibility with other mods is NOT guaranteed.
Functionality
Every Redstone Tweaks feature is accessible through the /tweak
command. The general syntax of the command is /tweak <SettingsPack> <Setting> [<newValue>]
. If no value is given the current value is returned.
A settingspack is a collection of settings. While most settingspacks contain settings for a single block, like repeaters or sticky pistons, there are also settingspacks for global settings and bug fixes.
Settings
All settings are server-side and stored /redstonetweaks/settings.txt
inside the world save.
Some settings are available for many blocks. To avoid repeating the same information a description of those settings is given below.
delay
: delay of a block in ticks. If the block has both a rising and a falling edge, the delay can be changed for both individually using the following syntax:/tweak <SettingsPack> delay [<risingEdge>] [<fallingEdge>]
. Otherwise the delay can be changed with the default syntax:/tweak <SettingsPack> delay [<newValue>]
.lazy
: if a block has delay, it usually checks for power both on the initial neighbor update and when it is ticked after the delay. Enabling thelazy
setting will make the block forgo that last check and change state solely based on its current state.
An example of this behavior is repeaters. In vanilla, repeaters are lazy on the rising edge. This allows them to react to pulses shorter than its delay. A repeater will power on even when given a 0 or 1 tick pulse, whereas comparators and torches cannnot.power
: the output strength of a power component, split into weak and strong power. Weak power is picked up directly by other redstone components, while strong power is only detected through solid blocks. The power of a block can be changed using the following syntax:/tweak <SettingsPack> power [<weakPower>] [<strongPower>]
.quasiConnectivityDown
,quasiConnectivityEast
,quasiConnectivityNorth
,quasiConnectivitySouth
,quasiConnectivityUp
,quasiConnectivityWest
: when enabled, a block checks for power to its neighbor in the given direction. By default onlyquasiConnectivityUp
is enabled for pistons, droppers and dispensers.randomizeQuasiConnectivity
: when enabled, quasi connectivity works randomly in all directions the regular quasi connectivity setting is enabled.tickPriority
: tick priorities influence the update order of blocks that have delay. Values between -3 and 3 can be given, where the lower the value, the higher a block's priority on the tick-list. If the block has both a rising and a falling edge, thetickPriority
can be changed for both individually using the following syntax:/tweak <SettingsPack> tickPriority [<risingEdge>] [<fallingEdge>]
. Otherwise thetickPriority
can be changed with the default syntax:/tweak <SettingsPack> tickPriority [<newValue>]
.
A list of every settingspack and its available settings can be found below.
Activator/powered rail
activator_rail
, powered_rail
delay
lazy
powerLimit
: the maximum distance power will flow through the rails, measured from the source.tickPriority
Bubble column
bubble_column
delay
tickPriority
Button
stone_button
, wooden_button
delay
power
tickPriority
Command block
command_block
delay
tickPriority
Comparator
comparator
additionMode
: when enabled, turns subtract mode into "addition mode", meaning the comparator's output is the sum of the side input and the back input.delay
redstoneBlocksPowerSides
: when enabled, redstone blocks can power the sides of comparators.tickPriority
facingDiodeTickPriority
: the tick priority of a comparator facing another comparator or repeater.
Detector rail
detector_rail
delay
power
tickPriority
Dispenser/dropper
dispenser
, dropper
delay
lazy
quasiConnectivityDown
,quasiConnectivityEast
,quasiConnectivityNorth
,quasiConnectivitySouth
,quasiConnectivityUp
,quasiConnectivityWest
randomizeQuasiConnectivity
tickPriority
Gravity blocks
gravity_block
delay
: the delay in ticks before gravity affected blocks start falling.tickPriority
Hopper
hopper
delay
: for hoppers,delay
acts as a multiplier on the vanilla delay. This will change in the future.
Lava
lava
delay
: the default tick rate of lava spreading.netherDelay
: the tick rate of lava spreading in the nether.tickPriority
Leaves
leaves
delay
tickPriority
Lever
lever
delay
power
tickPriority
Magenta glazed terracotta
magenta_glazed_terracotta
isPowerDiode
: when enabled, power directed at this block can only flow in the direction of the arrow at the top of the block. Additionally, power from a redstone wire on top of the block will only flow in the direction of the arrow at the top of the block.
Note block
note_block
delay
: the number of ticks before it plays a note.lazy
tickPriority
Observer
observer
delay
disable
: disables observerspower
tickPriority
Pistons
normal_piston
, sticky_piston
connectsToWire
: when enabled, redstone wire will connect to any of its sides other than its face, even when retracting.delay
: the delay in ticks before the piston starts extending/retracting.doBlockDropping
(for sticky pistons only): when enabled, sticky pistons will drop the block they're pushing if given a short pulse.fastBlockDropping
(for sticky pistons only): when enabled, sticky pistons will instantly place the block they drop, rather than allowing it to complete its movement (enabled by default).forceUpdateWhenPowered
: when enabled, any pistons that are powered but unable to push will receive an update each tick until they are able to extend.hasFullSolidSides
: when enabled, brittle blocks like rails, doors, torches, etc. can be placed on any side of the piston base, whether it's extended, retracted or retracting.headUpdatesOnExtension
: when enabled, neighbor updates are sent to blocks adjacent to the piston head at the start of the extension (enabled by default).ignoreUpdatesWhenExtending
: when enabled, pistons ignore all neighbor updates when extending. This means they will always complete the extension before they are able to start retracting, even when given a short pulse.lazy
quasiConnectivityDown
,quasiConnectivityEast
,quasiConnectivityNorth
,quasiConnectivitySouth
,quasiConnectivityUp
,quasiConnectivityWest
randomizeQuasiConnectivity
speed
: the number of ticks it takes for a piston to extend/retract. As withdelay
, it is possible to configure the speed on the rising and falling edge individually using the following syntax:/tweak <SettingsPack> speed [<risingEdge>] [<fallingEdge>]
.tickPriority
pushLimit
: the maximum number of blocks a piston is able to move.
Pressure plates
stone_pressure_plate
, wooden_pressure_plate
delay
power
tickPriority
Redstone block
redstone_block
power
Redstone lamp
redstone_lamp
delay
lazy
tickPriority
Redstone torch
redstone_torch
burnoutCount
/burnoutTimer
: a redstone torch must depowerburnoutCount
number of times withinburnoutTimer
amount of ticks to burn out.burnoutDelay
: the number of ticks for which the torch will be burned out.delay
lazy
power
softInversion
: an implementation of the Bedrock Edition behavior by the name of "soft inversion", where redstone torches attached to a piston base depower if the piston is powered.tickPriority
burnoutTickPriority
: the tick priority of theburnoutDelay
.
Redstone wire
redstone_wire
delay
directionalUpdateOrder
: when enabled, redstone wire will update neighboring blocks in a directional order (the same as redstone torches) rather than a locational order.invertFlowOnGlass
: when enabled, power can flow from a wire block on top of glass down to wire blocks next to the glass block, but not from a wire block next to glass up to a wire block on top of the glass (in vanilla it's the other way around).randomUpdateOrder
: when enabled, redstone wire will update neighboring blocks in a random order rather than a locational order. This setting will override thedirectionalUpdateOrder
setting.slabsAllowUpConnection
: when enabled, redstone wire next to slabs (and other non-full blocks) can visually and logicall connect to wire blocks on top of that block (enabled by default).tickPriority
Repeater
repeater
delay
lazy
power
tickPriority
facingDiodeTickPriority
: the tick priority of a repeater facing another repeater or comparator.
Scaffolding
scaffolding
delay
tickPriority
Target block
target_block
delay
: the default delay before turning off after being hit.persistentProjectileDelay
: the delay before turning off after being hit by a persistent projectile (arrows, tridents).tickPriority
persistentProjectileTickPriority
TNT
tnt
delay
: the number of ticks between the tnt being ignited and it spawning a tnt entity.fuseTime
: the number of ticks between the tnt block spawning a tnt entity and the tnt entity exploding.lazy
tickPriority
Tripwire hook
tripwire_hook
delay
power
tickPriority
Tripwire
tripwire
delay
tickPriority
Water
water
delay
: the tick rate of water spreading.tickPriority
Weighted pressure plates
heavy_weighted_pressure_plate
, light_weighted_pressure_plate
delay
tickPriority
weight
: the number of entities needed for the pressure plate to emit a power of 15.
Bugfixes
bug_fixes
For any bug, a link to its report on the Mojira bug tracker can be queried through /tweak bug_fixes <BugID> report
.
MC-54711
: "Quick pulses get lost in some repeater setups"MC-120986
: "Comparators do not update correctly in some cases"*MC-136566
: "When a piston retracts an active observer and is immediately repowered, it does not extend."MC-137127
: "Observers do not react to pulsing pistons correctly when they're retracting an observer facing away from it."MC-172213
: "Redstone components lose 1 tick of delay when (de-)activated by a player input"
*Only the cases where blocks are moved are fixed.
Global
global
delayMultiplier
: multiplies the delays of all blocks by the given value.doBlockUpdates
: when enabled, allows the world to send out block updates.doStateUpdates
: when enabled, allows the world to send out state updates.doComparatorUpdates
: when enabled, allows the world to send out comparator updates.doubleRetraction
: a reintroduction of the 1.3-1.8 behavior known as "double retraction" or "jeb retraction", where sticky pistons are able to retract other retracting pistons in certain situations.randomizeBlockEvents
: randomizes the order in which block events are processed.randomizeScheduledTickDelays
: randomizes the delays of any ticks that are scheduled.randomizeTickPriorities
: randomizes the tick priorities of any ticks that are scheduled.showProcessingOrder
: when an interval larger than 0 is given, the world tick is broken down in steps that are executed at the given interval. An label at the top left will display the current world tick, the world that is currently being ticked, and the task that is currently being executed.
showNeighborUpdates
: when used in combination withshowProcessingOrder
, any neighbor updates will be scheduled and executed one by one. A box will be rendered at the location that is receiving the block update. A yellow box signals a block update, a blue box signals an observer update, and a red box signals a comparator update. The white box is the notifier, while the white outline box is rendered at the source of the neighbor update.
This feature was heavily inspired by this video by Eddxample.