Poly 모드 로더 소개
Poly 모드 로더는 Fabric, Forge, NeoForge, Quilt 모드를 한 게임에서 함께 실행하기 위한 Minecraft: Java Edition 모드 로더입니다.
자체 Native API로 만든 Poly 모드도 실행합니다.
게임을 시작하기 전 모드를 확인하고, 실행이 불가한 모드는 로그와 함께 실행에서 제외합니다.
Poly 모드 로더 0.2.0-beta.1는 Minecraft 26.1, 26.1.1, 26.1.2, 26.2(Java 25)에서 실행됩니다. 이 문서의 예시는 Minecraft 26.2 기준입니다.
개발자 미리보기
Poly 모드로 만들 수 있는 것
Poly 모드는 게임 내부 클래스 대신 Native API로 콘텐츠를 추가합니다. Native API에는 Minecraft 타입이 없고, 게임 버전마다 Poly 모드 로더의 게임 계층이 이를 구현합니다.
콘텐츠블록(상태 속성, 블록 엔티티, 메뉴), 아이템과 데이터 컴포넌트, 음식, 투사체, 상태 효과, 게임 규칙, 사운드, 파티클몹과 게임플레이AI 목표, 상자 모델과 애니메이션, 탈것, 자연 스폰, 피해 이벤트, 발전 과제월드월드 저장소, 작업 예약, 코드 바이옴과 지형 생성기, 데이터 차원·구조물, 청크 강제 로드클라이언트키 바인딩, HUD, 모드 화면, 블록 엔티티 그리기, 후처리 셰이더, 동적 텍스처네트워크와 운영페이로드 채널, 동기화 데이터, 명령어와 권한, 리로드 리스너, 데이터 버전, 자동 월드 백업게임 내 테스트모드가 등록한 테스트를 Mojang 게임 테스트 서버에서 창 없이 실행합니다
현재 상태
| 항목 | 상태 |
|---|---|
| Minecraft | 26.1, 26.1.1, 26.1.2, 26.2 (Java 25) |
| 클라이언트·전용 서버 | 둘 다 Poly 모드 로더를 거쳐 시작합니다. 전용 서버는 EULA 확인 단계까지, 클라이언트는 저장된 월드를 여는 데까지 시험합니다 |
| Poly 모드 | poly.mod.json 검증, 의존성 해석, common/client/server 엔트리포인트 |
| Native API | 콘텐츠, 월드·엔티티, 명령어, 네트워크, 클라이언트, 리소스·운영, 게임 내 테스트 (모두 PREVIEW) |
| 클래스 변환 | 사전 계획, descriptor·바이트코드 사전조건 검증, 충돌 거부, 변환 캐시 |
| Forge 모드 | Verified.Poly 모드 로더가 Forge와 FML을 그대로 실행합니다(26.1은 Forge 62.0.9, 26.1.2는 64.1.5, 26.2는 65.1.5). 설치한 런처 프로필과 서버에서도 실행됩니다. 26.1과 26.2에서 인기 Forge 모드를 넣고 클라이언트에서 저장된 월드를 플레이하고 저장한 뒤 나오며(26.2는 40개), 서버에서 월드를 만들고 저장하고 실제 전용 서버를 시작합니다. Fabric 모드와 함께도 됩니다. 빠지는 모드는 Forge도 실행하지 않는 경우뿐입니다. 모드마다 기능을 하나하나 확인하지는 않았습니다 |
| Fabric 모드 | Verified.Mixin, MixinExtras, class tweaker, 중첩 jar, Fabric Loader API가 Fabric Loader에서와 같이 동작합니다. 26.1과 26.2에서 인기 Fabric 모드를 함께 넣고 클라이언트에서 저장된 월드를 플레이하고 저장한 뒤 나올 수 있으며(26.2는 Sodium, Iris, JEI, Fabric API 등 실제 모드 138개와 테스트 모드 2개), 실제 전용 서버도 시작됩니다(26.2는 100개). 모드마다 기능을 하나하나 확인하지는 않았습니다 |
| NeoForge 모드 | Blocked, 곧 지원합니다.필요한 FML 기능을 로그에 남기고 실행에서 제외합니다. 기본값이 꺼진 실험 기능( -Dpoly.neoforge=on)으로 NeoForge 자체를 실행할 수 있으며, 아직 26.2 서버에서만 확인했습니다 |
| Quilt 모드 | Untested, 곧 지원합니다.아직 quilt.mod.json은 읽지 않습니다. fabric.mod.json도 든 Quilt 모드는 Fabric 모드로 실행합니다 |
| 플레이어용 설치 프로그램 | Windows는 .exe, macOS·Linux는 .jar. Minecraft Launcher에 프로필을 추가하고, 전용 서버도 설치합니다 |
자세한 내용은 호환성에, 아직 없는 것은 아직 없는 기능에 있습니다. Fabric 모드와 Forge 모드를 한 게임에 넣는 방법은 Fabric 모드와 Forge 모드 함께 쓰기를 보세요.
설계 원칙
- 게임 타입을 드러내지 않습니다. 모드는
poly-game-api만 봅니다. 게임 버전마다 Poly 모드 로더의 게임 계층(poly-game-v26_2)이 이를 구현합니다. - 실패는 오류 코드로 알립니다. 잘못된 선언은 그 엔트리포인트에서
POLY-…코드와 함께 실패합니다. 코드는 오류 코드 표에 있습니다. - 선언한 변환만 합니다. 게임 코드는 선언된 규칙으로만 바꾸고, 서로 충돌하는 규칙은 거부한 뒤 보고서에 남깁니다.
- 성능은 측정한 결과로만 말합니다. 성능을 보세요.