Kotlin for Forge

Kotlin 언어로 Forge/NeoForge 모드를 만들 수 있게 해 주는 라이브러리. 모드 개발자가 아니라면 그냥 의존성 모드입니다.

📖 소개

Kotlin for Forge는 thedarkcolour가 만든 라이브러리입니다. 모드 페이지의 표현을 그대로 옮기면 — "Kotlin 프로그래밍 언어로 모드를 만드는 데 쓰인다. 모드 개발자가 아니라면, 이건 그냥 의존성 모드다."

하는 일 - Kotlin 라이브러리 셰이딩 — Kotlin 본체, 코루틴, JSON 직렬화 라이브러리, JetBrains 애노테이션을 함께 담아 제공합니다. Kotlin 모드가 여러 개 깔려도 각자 라이브러리를 들고 오지 않아도 됩니다. - KotlinLanguageProvider — Kotlin의 object 선언으로 작성된 @Mod를 Forge가 로드할 수 있게 합니다. - AutoKotlinEventBusSubscriber — Kotlin으로 쓴 @EventBusSubscriber 선언을 자동으로 등록합니다. - 자체 IEventBus 구현 — 함수 참조(::function)로 addListener·addGenericListener를 쓸 수 있습니다. 모드 페이지는 이 점을 비슷한 라이브러리인 Kottle과의 차이로 설명합니다.

제공하는 기능을 반드시 다 쓸 필요는 없습니다. 모드 페이지는 언어 로더를 쓰지 않고 번들된 Kotlin 라이브러리만 가져다 쓰는 것도 가능하다고 밝히고 있습니다.

Kotlin이란 — JetBrains가 만든 언어로, Java와 같은 JVM에서 돌아가고 Java 코드와 함께 쓸 수 있습니다.

라이브러리 모드이므로 게임 안에 추가되는 것이 없습니다. Kotlin으로 작성된 모드가 모드팩에 있으면 함께 들어옵니다.

🕒 이 모드는 언제 쓰는가

Kotlin으로 작성된 모드가 모드팩에 있으면 함께 필요합니다. 사용자가 조작할 것은 없습니다.

📦 어떤 모드팩에서 중요한가

Kotlin 기반 모드가 포함된 Forge·NeoForge 모드팩.

🚀 시작 가이드 — 첫 30분 동안 해야 할 것

1단계 — 모드팩에 포함돼 있는지 확인합니다. Kotlin 모드가 있는 모드팩이면 보통 함께 들어 있습니다.

2단계 — 로더에 맞는 빌드인지 확인합니다. Forge용과 NeoForge용이 따로 있습니다.

3단계 — 그대로 둡니다. 설정할 것이 없습니다.

💡 플레이 팁

  • 임의로 빼지 마세요. 이걸 요구하는 모드가 하나라도 있으면 그 모드가 로드되지 않습니다.
  • 설정할 것이 없습니다. 라이브러리라 사용자가 만질 부분이 없습니다.
  • Kotlin 모드가 여러 개 있어도 이 하나면 됩니다. Kotlin 라이브러리를 셰이딩해 함께 담고 있어서 중복되지 않습니다.

⚠️ 자주 헷갈리는 부분

  • '아무 일도 안 일어남'이 정상입니다. 라이브러리 모드라 게임 안에 추가되는 콘텐츠가 없습니다.
  • 이름이 "for Forge"지만 NeoForge도 지원합니다. 로더별로 빌드가 따로 있습니다.

❓ 자주 묻는 질문

Kotlin이 뭔가요?

JetBrains가 만든 프로그래밍 언어입니다. Java와 같은 JVM에서 실행되고 Java 코드와 함께 쓸 수 있어서, Forge 모드를 Kotlin으로 작성하는 것이 가능합니다.

왜 이 모드가 깔려 있나요?

모드팩 안의 어떤 모드가 Kotlin으로 작성됐기 때문입니다. 그 모드를 로드하려면 이 라이브러리가 필요합니다. 어떤 모드인지는 모드팩 목록에서 확인해야 합니다.

빼도 되나요?

이걸 요구하는 모드가 있다면 안 됩니다. 그 모드가 로드되지 않습니다.

📦 이 모드가 포함된 모드팩