설정 및 GUI 연동 (MC 26.2)
이 문서는 Minecraft 26.2 버전의 Item Clumps에 대한 설정 파일 스키마, YACL v3 GUI 연동, ModMenu 진입점 및 월드 우선순위 규칙에 대해 다룹니다.
📊 설정 정보 상자
| 속성 | 값 |
|---|---|
| 설정 파일 경로 | config/item-clumps.json |
| 파일 형식 | JSON (DasikLibrary ConfigHelper로 관리) |
| 현재 스키마 버전 | configVersion: 1 |
| 그래픽 인터페이스 제공자 | YetAnotherConfigLib v3 (YACL) (ModMenu 지원) |
| 클래스로딩 격리 | 지연 리플렉션 (GuiHelper.getOptionalYaclFactory) |
| 우선순위 규칙 | 설정 파일은 새 월드 기본값, 실행 중 월드는 GameRules 적용 |
⚠️ 전역 설정 대 활성 월드 우선순위 규칙
⚠️ 중요 안내:
config/item-clumps.json을 수정하거나 ModMenu GUI에서 설정을 변경하는 것은 새로 생성되는 월드의 기본값을 정의합니다. 활성 월드 또는 기존 월드의 설정을 변경하려면 게임 내/gamerule명령어나 바닐라 게임 규칙 편집 화면을 사용하세요.
📄 JSON 파일 스키마 (config/item-clumps.json)
json
{
"configVersion": 1,
"enableClumping": true,
"maxClumpSize": 9999,
"renderLabels": true,
"mergeRadius": 1,
"labelMinCount": -1
}필드 정의
| JSON 키 | 데이터 타입 | 기본값 | 설명 |
|---|---|---|---|
configVersion | Integer | 1 | 내부 스키마 마이그레이션 추적자. |
enableClumping | Boolean | true | 메가 스택 아이템 뭉침 기능 활성화 여부. |
maxClumpSize | Integer | 9999 | 뭉치 엔티티당 아이템 최대 한도 ($64$ ~ $2,147,483,647$). |
renderLabels | Boolean | true | 뭉치 위에 부유 이름표 수량 라벨 표시. |
mergeRadius | Integer | 1 | 수평 블록 탐색 반경 ($1$ ~ $10$ 블록). |
labelMinCount | Integer | -1 | 수량 라벨 표시 임계값 (-1은 바닐라 최대 스택 수치 적용). |
🖥️ 그래픽 인터페이스 (YACL v3 & ModMenu)
Item Clumps는 YetAnotherConfigLib (YACL v3) 및 ModMenu를 통한 선택적 클라이언트 설정 화면을 지원합니다:
+-------------------------------------------------------------------------+
| ITEM CLUMPS CONFIGURATION |
| |
| [ General Settings ] |
| |
| Enable Clumping ............................................ [ ON ] |
| When true, ground items aggressively merge into mega-stacks. |
| |
| Max Clump Size ............................................. [ 9999 ] |
| The hard cap on items per entity. (Hidden if Stack Size Adjuster on) |
| |
| Render Labels .............................................. [ ON ] |
| Renders holographic count above item clumps. |
| |
| Merge Radius ................................... [───●──────────] (1) |
| Horizontal block search radius (1-10 blocks). |
| |
| Label Min Count ............................................ [ -1 ] |
| Minimum item count before label displays (-1 for vanilla max stack). |
| |
| [ Cancel ] [ Save & Quit ] |
+-------------------------------------------------------------------------+안전한 지연 클래스로딩
YACL이나 ModMenu가 설치되지 않은 전용 서버나 클라이언트에서 크래시가 발생하지 않도록 화면 생성 코드는 GuiHelper.getOptionalYaclFactory 뒤에 안전하게 격리되어 있습니다:
java
// ModMenuIntegration.java (MC 26.2)
public class ModMenuIntegration implements ModMenuApi {
@Override
public ConfigScreenFactory<?> getModConfigScreenFactory() {
return GuiHelper.getOptionalYaclFactory(
"item_clumps",
"net.instantgratification.item_clumps.config.YaclScreenHelper",
"createScreen"
);
}
}