89 lines
2.2 KiB
Markdown
89 lines
2.2 KiB
Markdown
# 🤖 DiscordBot
|
|
|
|
마인크래프트 서버 이벤트를 Discord로 전송하는 NeoForge 모드입니다.
|
|
|
|

|
|

|
|

|
|
|
|
---
|
|
|
|
## ✨ 주요 기능
|
|
|
|
- 💬 **채팅 연동** - 게임 내 채팅을 Discord로 전송
|
|
- 🚪 **접속/퇴장 알림** - 플레이어 접속/퇴장 알림
|
|
- ⚔️ **사망 메시지** - 플레이어 사망 시 알림 (한국어 번역)
|
|
- 🏆 **발전과제 알림** - 발전과제 달성 시 알림 (한국어 번역)
|
|
- 🖥️ **서버 시작/종료** - 서버 상태 변경 알림
|
|
|
|
---
|
|
|
|
## ⚙️ 설정
|
|
|
|
`config/discordbot.toml`
|
|
|
|
```toml
|
|
[discord]
|
|
webhookUrl = "YOUR_DISCORD_WEBHOOK_URL"
|
|
```
|
|
|
|
---
|
|
|
|
## 📡 Discord 메시지 형식
|
|
|
|
### 채팅 메시지
|
|
|
|
> **플레이어명**: 메시지 내용
|
|
|
|
### 접속/퇴장
|
|
|
|
> 🟢 **플레이어명**님이 서버에 접속했습니다.
|
|
> 🔴 **플레이어명**님이 서버에서 퇴장했습니다.
|
|
|
|
### 사망 메시지
|
|
|
|
> ☠️ **플레이어명**님이 좀비에게 사망했습니다.
|
|
|
|
### 발전과제
|
|
|
|
> 🏆 **플레이어명**님이 발전과제 [돌 시대]를 달성했습니다!
|
|
|
|
---
|
|
|
|
## 🛠️ 기술 스택
|
|
|
|
| 기술 | 설명 |
|
|
| -------------------- | --------------------- |
|
|
| **NeoForge** | Minecraft 모딩 플랫폼 |
|
|
| **Kotlin** | 주 개발 언어 |
|
|
| **Discord Webhooks** | Discord 연동 |
|
|
| **Gson** | JSON 직렬화 |
|
|
|
|
---
|
|
|
|
## 📁 구조
|
|
|
|
```
|
|
DiscordBot/
|
|
├── src/main/
|
|
│ ├── kotlin/com/beemer/discordbot/
|
|
│ │ ├── command/ # 명령어 처리
|
|
│ │ ├── config/ # 설정 관리
|
|
│ │ ├── discord/ # Discord 웹훅
|
|
│ │ ├── event/ # 이벤트 핸들러
|
|
│ │ ├── util/ # 유틸리티 (번역)
|
|
│ │ └── DiscordBot.kt # 메인 모드
|
|
│ └── resources/
|
|
│ └── META-INF/ # 모드 메타데이터
|
|
└── build.gradle
|
|
```
|
|
|
|
---
|
|
|
|
## 🚀 빌드
|
|
|
|
```bash
|
|
./gradlew build
|
|
```
|
|
|
|
빌드된 JAR: `build/libs/discordbot-1.0.0.jar`
|