Skip to content

디스폰 타이머 및 수명 계승 (MC 26.2)

이 문서는 Minecraft 26.2 버전의 Item Clumps에 대한 디스폰 수명주기, 틱-초 환산 연산, 최신 아이템 수명 계승 규칙 및 농장 생산 안전장치에 대해 다룹니다.


📊 기능 정보 상자

속성세부 정보
시스템 이름최신 수명 디스폰 보존 시스템
바닐라 디스폰 기준$6,000\text{ 틱}$ ($300\text{ 초} = 5.0\text{ 분}$)
수명 계승 규칙$\text{age}_{\text{merged}} = \min(\text{age}_A, \text{age}_B)$ (가장 최신 아이템 기준)
줍기 지연 규칙$\text{pickupDelay}_{\text{merged}} = \max(\text{pickupDelay}_A, \text{pickupDelay}_B)$ (가장 긴 지연 시간 유지)
대상 필드ItemEntity.ageItemEntity.pickupDelay
방치 시 디스폰 동작새 아이템이 합쳐지지 않으면 기본 5분 타이머 동작 후 디스폰

⏳ 틱-초 환산 연산

Minecraft에서 엔티티 타이머는 초당 20틱으로 동작합니다:

$$1\text{ second} = 20\text{ ticks}$$ $$1\text{ minute} = 60\text{ seconds} = 1,200\text{ ticks}$$ $$5\text{ minutes} = 300\text{ seconds} = 6,000\text{ ticks}$$

바닐라 Minecraft에서는 각 게임 틱마다 ItemEntity의 내부 age 필드가 $+1$씩 증가합니다. $\text{age} \ge 6000$이 되면 아이템은 월드에서 영구적으로 디스폰됩니다.


🛡️ 최신 아이템 수명 보호 규칙

Item Clumps에서 두 아이템이 병합될 때 살아남은 엔티티는 다음을 실행합니다:

$$\text{age}{\text{merged}} = \min(\text{age}{\text{this}}, \text{age}_{\text{other}})$$

  Existing Ground Clump                           Newly Dropped Item
  - Count: 500 Cobblestone                       - Count: 1 Cobblestone
  - Age: 5,800 ticks (4m 50s old)                - Age: 0 ticks (Brand new)
                 │                                              │
                 └──────────────────────┬───────────────────────┘
                                        │ (Item Clumps Merging)

                           Merged Mega-Stack Entity
                           - Count: 501 Cobblestone
                           - Age: min(5800, 0) = 0 ticks (Fresh 5-minute timer)

고효율 농장이 보호되는 이유

  • 바닐라 수명의 문제점: 바닐라에서는 아이템 회수가 느릴 경우, 4분 50초 동안 방치된 기존 아이템에 방금 떨어진 새 아이템이 합쳐지면 10초 후에 전체가 함께 삭제되는 문제가 있었습니다.
  • Item Clumps의 해결책: 대형 몹 타워나 자동 벌목장 등에서 아이템이 계속해서 유입되면 뭉치의 수명이 지속적으로 0으로 초기화됩니다. 따라서 농장이 가동되는 동안에는 아이템이 절대 디스폰되지 않습니다.
  • 방치 시 자동 정리: 농장 가동이 중단되면 바닥에 방치된 뭉치의 수명 타이머가 $0$부터 $6000$까지 자연스럽게 진행되어, 5분 동안 회수되지 않은 아이템을 안전하게 정리하여 월드 용량 비대화를 방지합니다.

🛑 줍기 지연 시간 안정성

플레이어가 손에서 버린 아이템을 즉시 다시 먹어버리는 것을 방지하기 위해 Minecraft는 pickupDelay(일반적으로 40틱 = 2초)를 부여합니다.

아이템이 뭉쳐질 때:

$$\text{pickupDelay}{\text{merged}} = \max(\text{pickupDelay}{\text{this}}, \text{pickupDelay}_{\text{other}})$$

이를 통해 플레이어가 뭉치 위에 의도적으로 아이템을 던졌을 때 지연 시간이 끝날 때까지 인벤토리로 즉시 빨려 들어가지 않도록 보호합니다.


💻 실제 Java 소스 코드 구현

Minecraft 26.2의 ItemEntityMixin.java 출처:

java
// During Complete or Partial Merging:
this.pickupDelay = Math.max(this.pickupDelay, ((ItemEntityMixin)(Object)other).pickupDelay);
this.age = Math.min(this.age, ((ItemEntityMixin)(Object)other).age);

🔗 관련 문서 (MC 26.2)

Official documentation & web portal for Dasik Igaijinn mods.