
Paginated Advancements & Custom Frames — Minecraft Java Edition 1.18.1 - 26.1+
의존성 · 로더: Fabric, NeoForge, Quilt · Minecraft 버전: 1.18.1 - 26.1+ · 모드 버전: 2.8.2 · 필수 의존성: Fabric API, Cloth Config API (2.8.0 이전의…
의존성 · 로더: Fabric, NeoForge, Quilt · Minecraft 버전: 1.18.1 - 26.1+ · 모드 버전: 2.8.2 · 필수 의존성: Fabric API, Cloth Config API (2.8.0 이전의 Fabric/Quilt 및 NeoForge 버전용) 바닐라 발전 과제 인터페이스는 탭 표시를 제한합니다. 표준 창은 너비와 높이가 고정되어 있으며, 단 여섯 개
의존성
· 로더: Fabric, NeoForge, Quilt
· Minecraft 버전: 1.18.1 - 26.1+
· 모드 버전: 2.8.2
· 필수 의존성: Fabric API, Cloth Config API (2.8.0 이전의 Fabric/Quilt 및 NeoForge 버전용)
바닐라 발전 과제 인터페이스는 탭 표시를 제한합니다. 표준 창은 너비와 높이가 고정되어 있으며, 단 여섯 개의 탭만 고려하여 계산되어 있습니다. 각 대형 모드가 자체 진행 분기를 추가하는 대규모 모드 모음을 설치하면, 새 탭이 화면 경계를 벗어나거나 서로 겹치거나 인터페이스에서 완전히 사라지기 시작합니다. Paginated Advancements & Custom Frames 모드는 페이지 단위 탐색, 우선순위 분기 고정 시스템, 내장 디버깅 도구, 그리고 리소스 팩이나 데이터 팩을 이용해 아이콘에 완전히 새로운 프레임을 지원하는 기능을 추가하여 발전 과제 메뉴의 표준 창을 확장합니다.
기술적 작동 원리 및 바닐라 인터페이스 한계 해결
바닐라 클래스 AdvancementsScreen은 발전 과제 창을 렌더링하기 위해 하드코딩된 좌표를 사용합니다(크기는 252 × 140 픽셀). 탭 그리드와 배경 렌더링 같은 제어 요소는 정적인 창 크기에 묶여 있어 높은 모니터 해상도에 맞춘 스케일링이 불가능합니다. 클래스 AdvancementTab 역시 메인 프레임 둘레를 따라 탭 아이콘을 그리기 위한 엄격한 경계를 가지고 있습니다.
Paginated Advancements & Custom Frames는 MixinAdvancementsScreen과 MixinAdvancementTab 클래스에 대한 Mixin 주입을 이용해 클라이언트 그래픽 인터페이스의 렌더링 로직에 직접 변경을 도입합니다. 이 모드는 하드코딩된 상수를 사용하는 대신 인터페이스 초기화를 가로채 게임 창의 현재 크기를 읽어들입니다. 이 데이터를 바탕으로 발전 과제 프레임의 최적 크기가 계산되며, 프레임은 화면의 대부분을 차지하도록 적응적으로 확장됩니다.
시스템은 등록된 모든 탭을 자동으로 개별 페이지로 그룹화합니다(페이지네이션). 알고리즘은 창 너비와 설정된 여백을 고려하는 공식에 따라 창의 상단 및 하단 패널 범위 안에 들어갈 수 있는 최대 탭 수를 계산합니다. 발전 과제 분기 수가 페이지 한도를 초과하면, 모드는 추가 가상 페이지를 생성하고 인터페이스 하단에 대화형 화살표 버튼을 추가합니다. 페이지를 전환할 때 렌더러는 비활성 페이지의 탭을 숨겨, 그래픽 객체로 인한 메모리 과부하를 방지하고 요소 겹침 충돌을 제거합니다.
주요 기능 및 기능성
Paginated Advancements & Custom Frames의 주요 기능은 그래픽 발전 과제 메뉴의 재구성입니다. 이 모드는 탐색을 위한 몇 가지 실용적인 도구를 제공합니다:
· 동적 페이지네이션: 발전 과제 창 하단 모서리에 페이지 전환 화살표를 추가합니다. 자체 과제 사슬을 가진 50개가 넘는 모드가 모음에 활성화되어 있어도, 플레이어는 임의의 개수의 탭을 살펴볼 수 있습니다.
· 탭 고정: 사용자는 어떤 탭이든 즐겨찾기 목록에 추가할 수 있습니다. 이를 위해 각 탭에는 별 모양의 전용 버튼이 마련되어 있습니다. 고정된 탭은 알파벳순이나 게임 내 정렬 순서와 관계없이 자동으로 첫 페이지로 이동하여 목록 맨 앞에 표시됩니다.
· 세션 상태 유지: 모드는 마지막으로 열었던 발전 과제 탭을 기억합니다. 메뉴를 닫았다가 L 키를 통해 다시 열면, 인터페이스는 첫 번째 표준 탭으로 초기화되는 대신 플레이어가 멈췄던 바로 그 탭을 보여줍니다.
· 발전 과제 디버거(Advancement Debugger): 모드 모음 개발자와 퀘스트 제작자를 위한 특수 모드입니다. 구성에서 또는 고급 툴팁을 활성화할 때(F3 + H 키) 작동합니다. 커서를 발전 과제 아이콘 위에 올리면 기술 정보가 담긴 추가 툴팁 창이 표시됩니다: 내부 식별자(예: minecraft:adventure/arbalistic)와 완료에 필요한 트리거(조건) 목록입니다. Ctrl + C 키 조합은 선택한 발전 과제의 식별자를 클립보드에 복사합니다.
설정, 호환성 및 생태계
사용자는 구성 파일을 통해 발전 과제 메뉴의 표시 매개변수를 변경할 수 있습니다. 파일의 위치와 형식은 모드 로더에 따라 다릅니다:
· Fabric 및 Quilt: 설정이 작동하려면 Cloth Config API 라이브러리 설치가 필요합니다. 매개변수는 config 폴더의 paginatedadvancements.json(또는 paginatedadvancements.json5) 파일에 기록됩니다.
· NeoForge: 2.8.0부터의 모드 버전은 NeoForge의 내장 구성 시스템을 사용하므로 추가 라이브러리가 필요 없습니다. 파일은 config 폴더에 paginatedadvancements-client.toml이라는 이름으로 생성됩니다.
구성 파일에서는 다음과 같은 핵심 매개변수를 사용할 수 있습니다:
· showDebugTooltips – 발전 과제 디버깅을 위한 기술 정보 표시를 제어하는 불리언 값(true 또는 false)입니다.
· maxDebugLines – 툴팁 창의 최대 트리거 줄 수를 제한하는 정수로, 요구 사항이 많을 때 텍스트가 화면 경계를 벗어나는 것을 방지합니다.
· disableBackgroundFade – 발전 과제 메뉴를 보는 동안 게임 배경이 어두워지는 것을 비활성화하는 매개변수입니다.
· spacing – 패널에서 인접한 탭 사이의 간격을 조절하는 픽셀 단위 스텝입니다.
· enablePinning – 플레이어가 선택한 탭을 고정하는 것을 허용하거나 금지합니다.
이 모드는 Custom Frames(사용자 지정 프레임) 메커니즘을 통한 아이콘 커스터마이징 시스템을 지원합니다. 기본적으로 Minecraft는 세 가지 프레임 유형을 제공합니다: task(일반 과제), goal(목표), challenge(도전). 모드는 데이터 팩을 이용해 새로운 유형을 만들 수 있게 해줍니다.
새 프레임을 추가하려면 데이터 팩의 다음 경로에 JSON 파일을 생성해야 합니다:
assets/<모드_식별자>/advancement_frame_types/<프레임_이름>.json
파일 내용 예시:
{ |
프레임용 텍스처는 다음 경로에 배치합니다:
· assets/<모드_식별자>/textures/gui/sprites/advancements/<프레임_이름>_unobtained.png – 발전 과제 완료 전 프레임의 모습입니다.
· assets/<모드_식별자>/textures/gui/sprites/advancements/<프레임_이름>_obtained.png – 완료 후 프레임의 모습입니다.
생성한 프레임을 특정 발전 과제에 연결하려면 데이터 팩의 assets/<모드_식별자>/advancement_frames/<파일_이름>.json 경로에 있는 매핑 파일을 사용합니다:
[ |
이 모드는 순수 클라이언트 측 유틸리티로 개발되었기 때문에 서버에 설치할 필요가 없습니다. 복잡한 퀘스트 시스템과 수많은 발전 과제 탭을 추가하는 대형 산업 및 마법 모드(Create, Ender IO, Botania 등)와 완전히 호환됩니다. 구형 로더 Forge 사용자를 위해서는 ForgedPaginatedAdvancements라는 이름의 비공식 적응판 모드가 제공됩니다. NeoForge 26.1+ 플랫폼에서 최신 버전의 모드를 실행하려면 Java 25 런타임 환경의 사용이 필수입니다.
결론
Paginated Advancements & Custom Frames는 대규모 모드 모음에서 치명적으로 작용하는 바닐라 발전 과제 인터페이스의 제한된 공간 문제를 효과적으로 해결합니다. 페이지를 추가하지 않고 주로 창을 스케일링하는 유사 모드 Better Advancements와 달리, 이 모드는 페이지로의 명확한 분할과 편리한 탭 고정을 제공합니다. 이 모드는 내장 디버거와 데이터 팩의 JSON 구조를 통한 새로운 프레임 유형 등록을 위한 유연한 시스템 덕분에 모드 모음 개발자의 작업을 간소화합니다. 유일하게 눈에 띄는 한계는 사용자 지정 그래픽 프레임을 올바르게 표시하기 위해 추가 클라이언트 리소스 팩을 만들어야 한다는 점입니다.
설치
일반적인 설치는 약 5 분 정도 걸려요. 과정은 동일하고, Loader 와 그에 맞는 빌드만 달라요.
- 1Install a mod loader (Forge, Fabric or NeoForge) that matches your Minecraft version.
- 2Download the mod file (.jar) built for that same version.
- 3Place the .jar into your .minecraft/mods folder.
- 4Launch Minecraft with the modded profile and check the mod loads in-game.











