Home›Java›Mods›chk datapack link
chk datapack link
ModsJava

chk datapack link

Java mod listed for Minecraft 26.x. Downloads from the MC Java Mods app on Android.

by ga170212 · on Modrinth

A Minecraft Fabric bridge mod that connects Chzzk (NAVER live streaming) chat & donation events directly to Minecraft NBT storage and datapacks in real…

⬇ Download on Modrinth
chk datapack link — screenshot 1

🧀 치지직 데이터팩 링크 (Chzzk Datapack Link)

Minecraft Fabric AI Assisted License English Docs

치지직(Chzzk) 라이브 방송의 채팅과 후원 이벤트를 마인크래프트 NBT 스토리지 및 데이터팩과 실시간으로 연동해주는 패브릭(Fabric) 모드입니다.

🌐 English Documentation
⚠️ 안내: 본 모드는 네이버(NAVER)의 공식 모드가 아닌 비공식 오픈소스 서드파티 모드이며, AI 코딩 어시스턴트의 지원을 받아 제작되었습니다.
💡 필수: 본 모드는 치지직 이벤트를 마인크래프트 스토리지로 전달하는 브릿지(Bridge) 모드이므로, 이벤트를 받아 실행할 데이터팩이 필요합니다.


📖 개요

치지직 방송의 채팅과 후원을 마인크래프트 데이터팩으로 받아 처리할 수 있게 해주는 모드입니다.

별도의 자바 코딩 없이 데이터팩 펑션(.mcfunction)만 작성하면 시청자 참여 콘텐츠(채팅으로 블록 소환, 후원 시 몹 소환, 투표 등)를 바로 구현할 수 있습니다.


✨ 주요 기능


📋 요구 사항


🎮 사용 방법

1. 데이터팩 적용하기 (필수)

2. 치지직 채널 ID 확인하기

3. 인게임에서 연동하기


💻 인게임 명령어 목록

명령어 설명
/chklink connect (또는 /chklink start) 설정된 채널 ID로 치지직 연동을 시작합니다.
/chklink disconnect (또는 /chklink stop) 치지직 연동을 해제합니다.
/chklink status 현재 설정된 채널 ID와 연동 상태를 확인합니다.
/chklink testchat <메시지> 가상 채팅을 생성하여 스토리지 및 데이터팩으로 테스트 전송합니다.
/chklink testdonation <금액> <메시지> 가상 후원(치즈)을 생성하여 스토리지 및 데이터팩으로 테스트 전송합니다.

🛠️ 데이터팩 가이드

모드는 치지직 이벤트가 발생할 때마다 스토리지에 데이터를 병합한 후, 해당하는 펑션 태그에 등록된 함수들을 매크로와 함께 실행합니다.
처음 제작하신다면 example_datapacks/chklink_sample 구조를 참고하여 제작해 보세요!

💡 독립 실행 지원: 바닐라의 function #태그와 달리, 태그에 등록된 특정 펑션에서 에러가 발생하더라도 다음 펑션이 중단되지 않고 정상적으로 끝까지 실행됩니다.

1. 펑션 태그 등록하기

💬 채팅 태그: data/chklink/tags/function/chat.json

{
  "values": [
    "chklink:example_chat",
    "chklink:example_chat2"
  ]
}

🧀 후원 태그: data/chklink/tags/function/donation.json

{
  "values": [
    "chklink:example_donation",
    "chklink:example_donation2"
  ]
}

2. 스토리지 NBT 구조 명세

💬 minecraft:chat 스토리지

{
  player_name: "플레이어닉네임", // 방송 연동을 켠 마인크래프트 플레이어 이름
  player_uuid: "12345678-...", // 마인크래프트 플레이어 UUID
  cmd: "설치",                // !명령어 명칭 (예: !설치 sand, 10, 20 -> "설치")
  chat: "sand, 10, 20",       // 명령어 제외 전체 본문
  
  // 쉼표(,) 구분 인자 필드
  args: ["sand", "10", "20"], // 인자 전체 NBT 문자열 리스트
  arg0: "sand",               // 0번째 인자
  arg1: "10",                 // 1번째 인자
  arg2: "20",                 // 2번째 인자
  arg3: "",                   // (없으면 빈 문자열)
  arg4: "",
  arg5: "",
  arg_count: 3,               // 총 인자 개수
  
  sender_nick: "시청자닉네임",  // 치지직 시청자(보낸 사람) 닉네임
  sender_id: "a1b2c3...",     // 치지직 시청자 고유 ID 해시값
  raw_msg: "!설치 sand, 10, 20",// 원본 전체 메시지
  time: 1724123456789L        // 메시지 타임스탬프 (밀리초)
}

🧀 minecraft:donation 스토리지

{
  player_name: "플레이어닉네임", // 방송 연동을 켠 마인크래프트 플레이어 이름
  player_uuid: "12345678-...", // 마인크래프트 플레이어 UUID
  cmd: "미션",                // !명령어 명칭
  chat: "다이아, 10",         // 후원 메시지 내용
  amount: 10000,              // 후원 금액 (치즈 개수 / 원)
  
  // 쉼표(,) 구분 인자 필드
  args: ["다이아", "10"],
  arg0: "다이아",
  arg1: "10",
  arg2: "",
  arg3: "",
  arg4: "",
  arg5: "",
  arg_count: 2,
  
  sender_nick: "후원자닉네임",  // 후원자 닉네임
  sender_id: "a1b2c3...",     // 치지직 후원자 고유 ID 해시값
  pay_type: "CHEESE",         // 결제 타입 (CHEESE 등)
  raw_msg: "!미션 다이아, 10",
  time: 1724123456789L
}

3. 매크로 펑션 작성 예시

💬 채팅 출력 예제: data/chklink/function/example_chat.mcfunction

$tellraw @a [{"text":"$(sender_nick)","color":"yellow"},{"text":": "},{"text":"$(cmd)","color":"aqua"},{"text":"$(chat)","color":"white"}]

💬 채팅 인자 기반 명령어 예제: data/chklink/function/example_chat2.mcfunction

// 쉼표(,) 구분 인자를 활용한 블록 설치 (!설치 sand, 10, 20)
$execute if data storage minecraft:chat {cmd:"설치"} as $(player_name) at @s run setblock ~$(arg1) ~ ~$(arg2) $(arg0)

// 특정 단일 채팅 !명령어 감지 (!다이아, !점프)
$execute if data storage minecraft:chat {cmd:"다이아"} run give $(player_name) diamond 1
$execute if data storage minecraft:chat {cmd:"점프"} run effect give $(player_name) jump_boost 5 2

🧀 후원 알림 예제: data/chklink/function/example_donation.mcfunction

$tellraw @a [{"text":"[후원!] ","color":"green","bold":true},{"text":"$(player_name)님 방송에 ","color":"gray"},{"text":"$(sender_nick)","color":"yellow"},{"text":": ", "color":"yellow"},{"text":"$(cmd)","color":"aqua"},{"text":"$(chat)","color":"white"}," ",{"text":"$(amount)","color":"yellow"},{"text":"원","color":"yellow"}]

🧀 후원 명령어 감지 예제: data/chklink/function/example_donation2.mcfunction

// 후원 명령어 감지 및 금액 조건 (!소환 + 10,000원 후원 시 크리퍼 소환)
$execute if data storage minecraft:donation {cmd:"소환", amount:10000} as $(player_name) at @s run summon creeper ~ ~ ~

🤖 크레딧 (Credits)

📄 라이선스 (License)

This project is licensed under the CC0 1.0 Universal (CC0-1.0) License.


🌐 English Documentation

⬆️ Back to Top

🧀 Overview

Chzzk Datapack Link is a Minecraft Fabric mod that bridges live stream chat and donation events from Chzzk (NAVER live streaming) directly into Minecraft NBT storage and datapacks in real time.

Streamers and map creators can easily implement interactive stream events (such as block spawning via chat, mob summons upon donation, viewer voting, etc.) simply by writing standard Minecraft datapack functions (.mcfunction) without writing any Java code.

⚠️ Notice: This mod is an unofficial third-party open-source project and is not affiliated with NAVER. Developed with AI coding assistance.
💡 Required: This is a Bridge mod that routes incoming Chzzk events to Minecraft storage (minecraft:chat, minecraft:donation). A datapack is required to receive and process these events!


✨ Key Features


📋 Requirements


🎮 How to Use

1. Install a Datapack (Required)

2. Find Your Chzzk Channel ID

3. Connect In-Game


💻 In-Game Commands

Command Description
/chklink connect (or /chklink start) Starts Chzzk connection with the saved Channel ID.
/chklink disconnect (or /chklink stop) Disconnects from Chzzk.
/chklink status Displays the current connection status and saved Channel ID.
/chklink testchat <message> Simulates a chat message and sends it to storage and datapacks.
/chklink testdonation <amount> <message> Simulates a donation (cheese) and sends it to storage and datapacks.

🛠️ Datapack Development Guide

When a Chzzk event occurs, the mod merges data into storage and executes all functions registered in the respective function tag along with macro variables.
Refer to example_datapacks/chklink_sample for an implementation reference.

💡 Isolated Execution: Even if an error or exception occurs in a function registered in the tag, execution does not abort, allowing remaining functions to execute normally.

1. Register Function Tags

💬 Chat Tag: data/chklink/tags/function/chat.json

{
  "values": [
    "chklink:example_chat",
    "chklink:example_chat2"
  ]
}

🧀 Donation Tag: data/chklink/tags/function/donation.json

{
  "values": [
    "chklink:example_donation",
    "chklink:example_donation2"
  ]
}

2. Storage NBT Schema

💬 minecraft:chat Storage

{
  player_name: "PlayerName",   // In-game name of the player who enabled connection
  player_uuid: "12345678-...", // Minecraft player UUID
  cmd: "설치",                // Command name without '!' (e.g. !설치 sand, 10, 20 -> "설치")
  chat: "sand, 10, 20",        // Full message content excluding the command
  
  // Comma-separated argument fields
  args: ["sand", "10", "20"],  // Full arguments string list
  arg0: "sand",                // 0th argument
  arg1: "10",                  // 1st argument
  arg2: "20",                  // 2nd argument
  arg3: "",                    // (empty string if missing)
  arg4: "",
  arg5: "",
  arg_count: 3,                // Total argument count
  
  sender_nick: "ViewerName",   // Chzzk viewer's nickname
  sender_id: "a1b2c3...",      // Chzzk viewer's unique ID hash
  raw_msg: "!설치 sand, 10, 20", // Original raw message
  time: 1724123456789L         // Timestamp (epoch milliseconds)
}

🧀 minecraft:donation Storage

{
  player_name: "PlayerName",   // In-game name of the player who enabled connection
  player_uuid: "12345678-...", // Minecraft player UUID
  cmd: "미션",                 // Command name without '!'
  chat: "다이아, 10",          // Donation message content
  amount: 10000,               // Donation amount (Cheese count / KRW)
  
  // Comma-separated argument fields
  args: ["다이아", "10"],
  arg0: "다이아",
  arg1: "10",
  arg2: "",
  arg3: "",
  arg4: "",
  arg5: "",
  arg_count: 2,
  
  sender_nick: "DonorName",    // Donor's nickname
  sender_id: "a1b2c3...",      // Donor's unique ID hash
  pay_type: "CHEESE",          // Payment type (e.g. CHEESE)
  raw_msg: "!미션 다이아, 10",
  time: 1724123456789L
}

3. Macro Function Examples

💬 Print Chat to Chatbox: data/chklink/function/example_chat.mcfunction

$tellraw @a [{"text":"$(sender_nick)","color":"yellow"},{"text":": "},{"text":"$(cmd)","color":"aqua"},{"text":"$(chat)","color":"white"}]

💬 Argument-Based Block Placement: data/chklink/function/example_chat2.mcfunction

// Place block using comma-separated arguments (!설치 sand, 10, 20)
$execute if data storage minecraft:chat {cmd:"설치"} as $(player_name) at @s run setblock ~$(arg1) ~ ~$(arg2) $(arg0)

// Detect single chat command (!diamond, !jump)
$execute if data storage minecraft:chat {cmd:"diamond"} run give $(player_name) diamond 1
$execute if data storage minecraft:chat {cmd:"jump"} run effect give $(player_name) jump_boost 5 2

🧀 Donation Alert Notification: data/chklink/function/example_donation.mcfunction

$tellraw @a [{"text":"[Donation!] ","color":"green","bold":true},{"text":"To $(player_name): ","color":"gray"},{"text":"$(sender_nick)","color":"yellow"},{"text":": ", "color":"yellow"},{"text":"$(cmd)","color":"aqua"},{"text":"$(chat)","color":"white"}," ",{"text":"$(amount)","color":"yellow"},{"text":" Cheese","color":"yellow"}]

🧀 Donation Command & Threshold: data/chklink/function/example_donation2.mcfunction

// Detect command & donation amount threshold (!소환 with 10,000 Cheese summons a creeper)
$execute if data storage minecraft:donation {cmd:"소환", amount:10000} as $(player_name) at @s run summon creeper ~ ~ ~

🤖 Credits & License

Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

File checked by MCModsHub

These come from our own check of the pack file, not from the source page.

Explore more