Skip to content

Necnion8/CraftSwitcher-2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Minecraft Java サーバー 操作管理システム
本体コードは dncore/extensions/craftswitcher にあります


開発中

  • DNC6プラグイン化
  • サーバープロセスの操作ラッパー
  • REST API + WebSocketイベント
  • ファイル管理
  • アーカイブファイルの対応
  • サーバーのインストール
  • バックアップ機能
  • スケジューラ機能
    • データベース
    • タスク
    • 細かいとこ
  • サーバー内連携モジュール
    • 旧版の連携機能を一時的に移植実装
    • v2 連携機能の実装と旧版実装を削除
  • Discordコマンド
  • リリース!

主な機能

  • すぐできる導入
  • Webフロントエンド (Myoko1110さん ありがとう!😆)
  • ファイル操作
  • パフォーマンスモニター
  • スナップショットとバックアップ
  • スケジュール再起動
  • サーバー連携API
  • サーバー本体のダウンロードとビルドツール
  • 操作用 Discord ボット (オプション)
  • DNC6プラグイン拡張機能

環境

  • Python 3.10
  • Linux (推奨)
  • Windows

※ macOSは未確認。おそらく動作?

対応サーバー

サーバー 基本操作 鯖内連携※2 ダウンロード 開発元
Vanilla Minecraft
Spigot 1.8 ~ 1.17 ※1 SpigotMC
Paper 1.8 ~ 1.17 PaperMC
Purpur 1.8 ~ 1.17 PurpurMC
Folia PaperMC
SpongeVanilla SpongePowered
# mod
Forge ※1 Minecraft Forge
Mohist MohistMC
NeoForge ※1 NeoForged
Youer※3 ? ? MohistMC
Fabric FabricMC
Quilt ※1 QuiltMC
Banner MohistMC
# proxy
BungeeCord SpigotMC
Waterfall PaperMC
Velocity PaperMC

※1ビルドが必要ですが、自動でセットアップします
※2旧版連携モジュールで仮対応
※3正式リリースされてないため未確認

導入と起動

# Install
python3 -m pip install -r requirements.txt

# Launch
python3 -m dncore

初回の起動時に以下のファイルが生成されます。

  • ./config/config.yml - dnCore設定
  • ./plugins/CraftSwitcher/config.yml - メイン設定

Discord

Discord機能を利用しない場合は無効にする方法を参照ください。

REST API

REST API は初期設定で http://0.0.0.0:8080/docs に公開されています。

WebSocket

WebSocket クライアントを http://0.0.0.0:8080/api/ws に接続することで、サーバーイベント等を JSON フォーマットで受信できます。

WS 受信

craftswitcher.py
# events ws broadcast このコメント行の以下に実装があります

WS 送信

サーバープロセスへのテキストの書き込み

{
  "type": "server_process_write",
  "server": "lobby",
  "data": "say Hello\r\n"
}

Releases

No releases published

Packages

No packages published

Languages