Skip to main content
GTMC
  • Preface
    • 00Introduction
    • 01Update Concepts and Update Types
    • 02Continuous Block Updates and Analysis Methods
    • 01Tick and Inter-Tick Timing
    • 02A First Look at Intra-Tick Timing
    • 03Scheduled Ticks and Scheduled Tick Components
    • 05Block Entities
    • 06Block Events
    • 01Masa Gadget
    • 02Litematica Tutorial
  • 附录
  • A.Stacks
  • B.Glossary

Table of contents

  • Preface
    • 00Introduction
    • 01Update Concepts and Update Types
    • 02Continuous Block Updates and Analysis Methods
    • 01Tick and Inter-Tick Timing
    • 02A First Look at Intra-Tick Timing
    • 03Scheduled Ticks and Scheduled Tick Components
    • 05Block Entities
    • 06Block Events
    • 01Masa Gadget
    • 02Litematica Tutorial
  • 附录
  • A.Stacks
  • B.Glossary
Loading article content
Loading
Loading article
GTMC

Graduate Texts in Minecraft

"Curiosity in 'cubic' inch."

Preface

Articles
25
Authors
12
Revised
August 2026

Community

  • About
  • Authors
  • Team
  • QQ Group

Participate

  • Contribute
  • Editorial Policy
  • Issues

Source

  • Repository
  • CC BY-NC-SA 4.0
  • Apache-2.0

Not an official Minecraft product. Not affiliated with Mojang Studios.

Contributors retain copyright. Article content is released under CC BY-NC-SA 4.0 with attribution preserved through article metadata and source history.

© 2024–2026 GTMC Collectiveec529be

GTMC

  • Articles
  • PDF
  • Glossary
  • About
  • Authors
  • Preface
    • 00Introduction
    • 01Update Concepts and Update Types
    • 02Continuous Block Updates and Analysis Methods
    • 01Tick and Inter-Tick Timing
    • 02A First Look at Intra-Tick Timing
    • 03Scheduled Ticks and Scheduled Tick Components
    • 05Block Entities
    • 06Block Events
    • 01Masa Gadget
    • 02Litematica Tutorial
  • 附录
  • A.Stacks
  • B.Glossary

Table of contents

  • Preface
    • 00Introduction
    • 01Update Concepts and Update Types
    • 02Continuous Block Updates and Analysis Methods
    • 01Tick and Inter-Tick Timing
    • 02A First Look at Intra-Tick Timing
    • 03Scheduled Ticks and Scheduled Tick Components
    • 05Block Entities
    • 06Block Events
    • 01Masa Gadget
    • 02Litematica Tutorial
  • 附录
  • A.Stacks
  • B.Glossary
Loading article content
Loading
Loading article
CH 01Block Update
Path: BlockUpdate/连续的方块更新及其分析方法.zh.md
hotpad100c+4
Word count: 1,653
Est. read time: 8 min
Last edited: 2026-08-01
Contributors:
  • hhotpad100c
  • ttanhHeng
  • BBFladderbeanawa
  • GGudu-Z
  • SSDU-Little-River
Created:
2024-12-14
Last edited:
2026-08-01
URL:
https://www.techmc.wiki/en/articles/block-update/continuous-updates
Reuse
CC BY-NC-SA 4.0
A strange update chain
A strange update chain

02 Continuous Block Updates and Analysis Methods

This section teaches deeper update mechanisms in Minecraft and how to analyze update order.

1 General Block Update Behavior

Blocks always emit updates in the order of NC update first, PP update second. To deeply understand update theory, you must grasp one concept: an update is not a single event, but a "process".

The diagram is as follows:

plaintext
Block A:├── Emit NC update│ ├── NC update triggered some events│ │ └── These events triggered more events│ └── These events finished running│ * NC update complete *└── Emit PP update ├── PP update triggered some events └── These events finished running * PP update complete *
// SYNTAX_HIGHLIGHT

For example, when Block A emits an NC update, it updates Block B. At this point, B changes state and emits an NC update. The update process is as follows:

plaintext
├── Block A emits NC update│ ├── Block B receives NC update│ ├── Block B changes state│ ├── Block B emits NC update│ │ └── Nothing happens│ │ * Block B NC update complete *│ └── Block B emits PP update│ └── Nothing happens│ * Block B PP update complete *│ * Block A NC update complete *└── Block A emits PP update └── Nothing happens * Block A PP update complete *
// SYNTAX_HIGHLIGHT

The commonly discussed NC update order refers to the sequence in which NC updates are emitted, and PP update order similarly refers to the sequence in which PP updates are emitted. From the diagrams and examples above, we can see that in more complex updates, the PP update order can also be approximately considered as the sequence in which block NC update processes complete.

2 Update Methods in Minecraft

We will use some clear, simple examples to help you gradually understand how this complex update process occurs.

For example, consider the BUD rail chain below. What will happen when A1 is updated?

// IMG_LOAD
Example

2.1 Analysis Method for Update Order

To understand updates, we need to first set aside updates

Imagine you are someone with OCD, and right now you are holding many torches in a mine cavern.

Because you have OCD, you will strictly follow these rules:

  1. You place a torch at every block you walk to
  2. At each block, you search for available blocks in the order West, East, Down, Up, North, South
  3. If there is a block you can walk to, enter it immediately
  4. When there is no path forward, walk back
  5. When walking back, pick up the torches you placed
  6. When walking back to a junction, if there are other directions not yet checked, continue checking them

Following the rules above, let's see how you would explore the cavern below:

// IMG_LOAD
Cavern Analogy
  1. Initially, you are at A1, so you place a torch at A1
  2. You start searching for paths in the order West, East, Down, Up, North, South, and you find a block to the west
  3. You enter this block (B1), place a torch, continue checking → find a path to the west, enter C1, place a torch, check → path to the west, enter D1, place a torch
  4. At this point you check in the order West, East, Down, Up, North, South and find no paths, so you pick up the torch and walk back (enter C1)
  5. You already checked west, so you check East, Down, Up, North, South, find no paths, pick up torch, return to B1
  6. East, Down, Up have no paths, but when you check North you find a path, so enter (C2), place a torch
  7. After checking, you find no paths, pick up torch return to B1
  8. B1 has no more paths after checking, pick up torch return to A1. You start checking other directions.
  9. There's a path to the east, enter B3 place torch → path to the east, enter C3 place torch
  10. No more paths, pick up torch return to B3 → no paths, pick up torch return to A1
  11. Check remaining directions, path to the south, enter B4, place torch
  12. No paths, pick up torch return to A1
  13. A1 has no remaining paths, pick up torch, exploration complete

This process of exploring the cavern is the update process, where "placing torches" corresponds to emitting NC updates (pushing onto the stack), and picking up torches corresponds to emitting PP updates (popping from the stack). As for what this "stack" means, you can refer to Appendix - Terminology Explanation → Stack and Call Stack, and this update method is depth-first search (DFS).

Recommended to watch with BiliBili-tanh_Heng: NC Update × Depth-First Search.exe

Let's understand the update process in the example in a more visual way. We can view the pushing of NC updates onto the stack as "progressively going deeper", and the popping of NC updates from the stack, which is PP updates, as "progressively returning". So, let's redraw the diagram above in a more visual way and add some more nodes:

// IMG_LOAD
Node Diagram

The diagram shows the update chain after A1 emits an update. The top is the north side.

From the diagram, we can clearly see:

NC update order: A1->B1->C1->D1->C2->B3->C3->B4

PP update order: D1->C1->C2->B1->C3->B3->B4->A1

Imagine the update behavior as a point that starts from A1, moves according to a certain update order, and "doesn't turn back until hitting a wall". Then, the movement path of this point forms the arrows shown in the diagram. The process of progressively going deeper is pushing onto stack or NC update, and the process of "turning back" is popping from stack or PP update.

Note that this analysis simplifies PP updates. This is because typically, PP updates do not cause continuous block updates1. To analyze PP updates, the method is similar to NC updates—analyze from the stack perspective.

3 Common Update Order Analysis

3.1 BUD Rail Chain Update Order Analysis

Let's try to analyze update order with a practical example:

// IMG_LOAD
Rail Example

When rails change state, they emit NC updates first, then PP updates. The diagram shows a chain of rails in BUD state, with rails 1-5 oriented east-west. Question: After the note block is pressed, what are the NC update and PP update orders for the rail extinguishing?

When the note block is pressed, it emits an NC update. The adjacent rail 1 receives the NC update, changes its own state, emits an NC update, updating rail 2, then 3 and 4. At rail 4, it first updates rail 5 on the east-west side. After rail 5 receives the update, it changes its own state and emits an NC update. There are no subsequent NC updates, so rail 5 then emits a PP update. Return to rail 4, which then updates rails 6 and 7 on the north-south side. Go deeper to rail 6, which emits an NC update; then go deeper to rail 7, which emits an NC update. Rail 7 finishes updating and emits a PP update. Return to rail 6, which emits a PP update. Return to rail 4, which emits a PP update. Then return to rails 3, 2, 1, which emit PP updates.

Therefore,

NC update order is: 1 -> 2 -> 3 -> 4 -> 5 -> 6 -> 7

PP update order is: 5 -> 7 -> 6 -> 4 -> 3 -> 2 -> 1

4 Analysis Considering NC Update Direction*

This section is not commonly used; readers may choose to skip it.

// IMG_LOAD
Rail Example 2

The rail chain direction in the diagram is as marked, with the rail chain oriented north-south. We will use the northernmost rail as an example to analyze its NC update order in different directions.

NC updates are emitted in the directional order of West, East, Down, Up, North, South. When the northernmost rail extinguishes, it first emits west and east updates—nothing happens; then emits down and up updates—nothing happens; then emits a north update—nothing happens; finally emits a south update, updating the south rail, and subsequent updates can be analyzed using the method described above.

If we create a BUD device on the north side of this rail, then this BUD device will be updated first, and then the south rail will undergo continuous NC updates.

And if we consider the order of NC updates to the block above among the NC updates in six directions, then it is from north to south, that is, from near to far.

Let's reconsider the example in 2.3.1:

// IMG_LOAD
Rail Example

The note block is at the westernmost end of the 1-5 rail chain. Consider only the NC updates of the 1-5 rail chain.

When the note block is pressed, rail 1 receives the update and extinguishes, first emitting a west update—nothing happens; then emitting an east update, updating rail 2, rail 2 starts updating... After rails 2, 3, 4... finish updating, rail 1's east NC update is complete, and rail 1 continues to update down, up, north, south.

At this point, if we consider the order of NC updates to the block above, it becomes 5, 4, 3, 2, 1, which is from far to near.

Then readers might wonder: since the order of NC updates also needs to consider directionality, what is the point of learning the order of emitting NC updates in 2.3.3?

There are two uses:

  1. Used to analyze PP updates. Usually when we use rail chains, we use observers to detect, so this is actually to help us analyze PP updates.
  2. The directionality of NC updates builds on 2.3.3. Only by understanding 2.3.3 can you better understand directionality.

5 Exercise

In the second example above, we did not consider rails 6 and 7. Readers can try to analyze the order of NC updates to the block above for the entire BUD rail chain when considering rails 6 and 7.

Answer: 5 -> 4 -> 6 -> 7 -> 3 -> 2 -> 1

Footnotes

  1. Elements like walls and fences change state after receiving PP updates and emit PP updates. These types of blocks may trigger continuous block updates caused by PP updates. However, this is not within the scope of typical analysis. ↩

Prev
Update Concepts and Update Types
NextMicro Timing
Tick and Inter-Tick Timing
CH 01Block Update
Path: BlockUpdate/连续的方块更新及其分析方法.zh.md
hotpad100c+4
Word count: 1,653
Est. read time: 8 min
Last edited: 2026-08-01
Contributors:
  • hhotpad100c
  • ttanhHeng
  • BBFladderbeanawa
  • GGudu-Z
  • SSDU-Little-River
Created:
2024-12-14
Last edited:
2026-08-01
URL:
https://www.techmc.wiki/en/articles/block-update/continuous-updates
Reuse
CC BY-NC-SA 4.0
A strange update chain
A strange update chain

02 Continuous Block Updates and Analysis Methods

This section teaches deeper update mechanisms in Minecraft and how to analyze update order.

1 General Block Update Behavior

Blocks always emit updates in the order of NC update first, PP update second. To deeply understand update theory, you must grasp one concept: an update is not a single event, but a "process".

The diagram is as follows:

plaintext
Block A:├── Emit NC update│ ├── NC update triggered some events│ │ └── These events triggered more events│ └── These events finished running│ * NC update complete *└── Emit PP update ├── PP update triggered some events └── These events finished running * PP update complete *
// SYNTAX_HIGHLIGHT

For example, when Block A emits an NC update, it updates Block B. At this point, B changes state and emits an NC update. The update process is as follows:

plaintext
├── Block A emits NC update│ ├── Block B receives NC update│ ├── Block B changes state│ ├── Block B emits NC update│ │ └── Nothing happens│ │ * Block B NC update complete *│ └── Block B emits PP update│ └── Nothing happens│ * Block B PP update complete *│ * Block A NC update complete *└── Block A emits PP update └── Nothing happens * Block A PP update complete *
// SYNTAX_HIGHLIGHT

The commonly discussed NC update order refers to the sequence in which NC updates are emitted, and PP update order similarly refers to the sequence in which PP updates are emitted. From the diagrams and examples above, we can see that in more complex updates, the PP update order can also be approximately considered as the sequence in which block NC update processes complete.

2 Update Methods in Minecraft

We will use some clear, simple examples to help you gradually understand how this complex update process occurs.

For example, consider the BUD rail chain below. What will happen when A1 is updated?

// IMG_LOAD
Example

2.1 Analysis Method for Update Order

To understand updates, we need to first set aside updates

Imagine you are someone with OCD, and right now you are holding many torches in a mine cavern.

Because you have OCD, you will strictly follow these rules:

  1. You place a torch at every block you walk to
  2. At each block, you search for available blocks in the order West, East, Down, Up, North, South
  3. If there is a block you can walk to, enter it immediately
  4. When there is no path forward, walk back
  5. When walking back, pick up the torches you placed
  6. When walking back to a junction, if there are other directions not yet checked, continue checking them

Following the rules above, let's see how you would explore the cavern below:

// IMG_LOAD
Cavern Analogy
  1. Initially, you are at A1, so you place a torch at A1
  2. You start searching for paths in the order West, East, Down, Up, North, South, and you find a block to the west
  3. You enter this block (B1), place a torch, continue checking → find a path to the west, enter C1, place a torch, check → path to the west, enter D1, place a torch
  4. At this point you check in the order West, East, Down, Up, North, South and find no paths, so you pick up the torch and walk back (enter C1)
  5. You already checked west, so you check East, Down, Up, North, South, find no paths, pick up torch, return to B1
  6. East, Down, Up have no paths, but when you check North you find a path, so enter (C2), place a torch
  7. After checking, you find no paths, pick up torch return to B1
  8. B1 has no more paths after checking, pick up torch return to A1. You start checking other directions.
  9. There's a path to the east, enter B3 place torch → path to the east, enter C3 place torch
  10. No more paths, pick up torch return to B3 → no paths, pick up torch return to A1
  11. Check remaining directions, path to the south, enter B4, place torch
  12. No paths, pick up torch return to A1
  13. A1 has no remaining paths, pick up torch, exploration complete

This process of exploring the cavern is the update process, where "placing torches" corresponds to emitting NC updates (pushing onto the stack), and picking up torches corresponds to emitting PP updates (popping from the stack). As for what this "stack" means, you can refer to Appendix - Terminology Explanation → Stack and Call Stack, and this update method is depth-first search (DFS).

Recommended to watch with BiliBili-tanh_Heng: NC Update × Depth-First Search.exe

Let's understand the update process in the example in a more visual way. We can view the pushing of NC updates onto the stack as "progressively going deeper", and the popping of NC updates from the stack, which is PP updates, as "progressively returning". So, let's redraw the diagram above in a more visual way and add some more nodes:

// IMG_LOAD
Node Diagram

The diagram shows the update chain after A1 emits an update. The top is the north side.

From the diagram, we can clearly see:

NC update order: A1->B1->C1->D1->C2->B3->C3->B4

PP update order: D1->C1->C2->B1->C3->B3->B4->A1

Imagine the update behavior as a point that starts from A1, moves according to a certain update order, and "doesn't turn back until hitting a wall". Then, the movement path of this point forms the arrows shown in the diagram. The process of progressively going deeper is pushing onto stack or NC update, and the process of "turning back" is popping from stack or PP update.

Note that this analysis simplifies PP updates. This is because typically, PP updates do not cause continuous block updates1. To analyze PP updates, the method is similar to NC updates—analyze from the stack perspective.

3 Common Update Order Analysis

3.1 BUD Rail Chain Update Order Analysis

Let's try to analyze update order with a practical example:

// IMG_LOAD
Rail Example

When rails change state, they emit NC updates first, then PP updates. The diagram shows a chain of rails in BUD state, with rails 1-5 oriented east-west. Question: After the note block is pressed, what are the NC update and PP update orders for the rail extinguishing?

When the note block is pressed, it emits an NC update. The adjacent rail 1 receives the NC update, changes its own state, emits an NC update, updating rail 2, then 3 and 4. At rail 4, it first updates rail 5 on the east-west side. After rail 5 receives the update, it changes its own state and emits an NC update. There are no subsequent NC updates, so rail 5 then emits a PP update. Return to rail 4, which then updates rails 6 and 7 on the north-south side. Go deeper to rail 6, which emits an NC update; then go deeper to rail 7, which emits an NC update. Rail 7 finishes updating and emits a PP update. Return to rail 6, which emits a PP update. Return to rail 4, which emits a PP update. Then return to rails 3, 2, 1, which emit PP updates.

Therefore,

NC update order is: 1 -> 2 -> 3 -> 4 -> 5 -> 6 -> 7

PP update order is: 5 -> 7 -> 6 -> 4 -> 3 -> 2 -> 1

4 Analysis Considering NC Update Direction*

This section is not commonly used; readers may choose to skip it.

// IMG_LOAD
Rail Example 2

The rail chain direction in the diagram is as marked, with the rail chain oriented north-south. We will use the northernmost rail as an example to analyze its NC update order in different directions.

NC updates are emitted in the directional order of West, East, Down, Up, North, South. When the northernmost rail extinguishes, it first emits west and east updates—nothing happens; then emits down and up updates—nothing happens; then emits a north update—nothing happens; finally emits a south update, updating the south rail, and subsequent updates can be analyzed using the method described above.

If we create a BUD device on the north side of this rail, then this BUD device will be updated first, and then the south rail will undergo continuous NC updates.

And if we consider the order of NC updates to the block above among the NC updates in six directions, then it is from north to south, that is, from near to far.

Let's reconsider the example in 2.3.1:

// IMG_LOAD
Rail Example

The note block is at the westernmost end of the 1-5 rail chain. Consider only the NC updates of the 1-5 rail chain.

When the note block is pressed, rail 1 receives the update and extinguishes, first emitting a west update—nothing happens; then emitting an east update, updating rail 2, rail 2 starts updating... After rails 2, 3, 4... finish updating, rail 1's east NC update is complete, and rail 1 continues to update down, up, north, south.

At this point, if we consider the order of NC updates to the block above, it becomes 5, 4, 3, 2, 1, which is from far to near.

Then readers might wonder: since the order of NC updates also needs to consider directionality, what is the point of learning the order of emitting NC updates in 2.3.3?

There are two uses:

  1. Used to analyze PP updates. Usually when we use rail chains, we use observers to detect, so this is actually to help us analyze PP updates.
  2. The directionality of NC updates builds on 2.3.3. Only by understanding 2.3.3 can you better understand directionality.

5 Exercise

In the second example above, we did not consider rails 6 and 7. Readers can try to analyze the order of NC updates to the block above for the entire BUD rail chain when considering rails 6 and 7.

Answer: 5 -> 4 -> 6 -> 7 -> 3 -> 2 -> 1

Footnotes

  1. Elements like walls and fences change state after receiving PP updates and emit PP updates. These types of blocks may trigger continuous block updates caused by PP updates. However, this is not within the scope of typical analysis. ↩

Prev
Update Concepts and Update Types
NextMicro Timing
Tick and Inter-Tick Timing