Files
minecraft-scala-plugin-temp…/README.md
mii443 4b2e24f6b9 Initial commit: Minecraft Scala Plugin Template
- Complete Scala SpigotMC plugin template
- Docker development environment
- Sample commands (/hello, /info) and event handlers
- Development scripts for easy server management
- Comprehensive README and documentation

🤖 Generated with Claude Code
2025-06-18 00:40:53 +09:00

119 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Minecraft Scala Plugin Template
🎮 ScalaでSpigotMCプラグインを開発するためのテンプレートです。
## 特徴
- 🛠️ **Scala + SpigotMC**: ScalaでMinecraftプラグインを開発
- 🐳 **Docker開発環境**: 簡単にテスト用サーバーを起動
- 🔄 **ホットリロード**: プラグインの変更を即座に反映
- 📦 **完全なビルド環境**: sbtでのビルドとパッケージング
## クイックスタート
1. **テンプレートをクローン**
```bash
git clone https://github.com/yourusername/minecraft-scala-plugin-template.git
cd minecraft-scala-plugin-template
```
2. **開発サーバーを起動**
```bash
./dev-server.sh start
```
3. **Minecraftクライアントで接続**
- サーバーアドレス: `localhost:25565`
- オフラインモードで動作します
## 開発コマンド
```bash
# サーバー起動(プラグインも自動ビルド)
./dev-server.sh start
# プラグイン再ビルド+サーバー再起動
./dev-server.sh restart
# サーバー停止
./dev-server.sh stop
# ログ確認
./dev-server.sh logs
# Minecraftサーバーコンソールにattach
./dev-server.sh attach
# サーバーのbashシェルに接続
./dev-server.sh console
# 完全リビルド
./dev-server.sh rebuild
```
## プロジェクト構造
```
minecraft-scala-plugin-template/
├── src/main/scala/com/example/plugin/
│ └── MinecraftScalaPlugin.scala # メインプラグインクラス
├── src/main/resources/
│ └── plugin.yml # プラグイン設定
├── build.sbt # sbtビルド設定
├── docker-compose.yml # Docker設定
├── Dockerfile # サーバーイメージ
├── dev-server.sh # 開発用スクリプト
└── README.md
```
## サンプル機能
このテンプレートには以下のサンプル機能が含まれています:
### コマンド
- `/hello` - 挨拶メッセージを表示
- `/info` - プレイヤー情報を表示
### イベントハンドラ
- プレイヤー参加時のウェルカムメッセージ
- プレイヤー退出時のログ出力
## カスタマイズ
### プラグイン名を変更
1. `build.sbt` の `name` を変更
2. `src/main/resources/plugin.yml` の `name` と `main` クラス名を変更
3. パッケージ名とクラス名を変更
### 新機能の追加
1. `src/main/scala/com/example/plugin/MinecraftScalaPlugin.scala` を編集
2. 新しいコマンドやイベントハンドラを追加
3. `./dev-server.sh restart` で変更を反映
## ビルド
### 手動ビルド
```bash
sbt clean package
```
### JAR出力場所
```
target/scala-2.13/minecraft-scala-plugin_2.13-1.0.0.jar
```
## 要件
- Docker & Docker Compose
- Java 8以上sbt用
- Minecraft Java Editionテスト用
## ライセンス
このテンプレートは自由に使用・改変できます。
## 参考資料
- [SpigotMC API Documentation](https://hub.spigotmc.org/javadocs/spigot/)
- [Bukkit Plugin Tutorial](https://bukkit.fandom.com/wiki/Plugin_Tutorial)
- [Scala Documentation](https://docs.scala-lang.org/)