切換
舊版
前往
大廳
主題

關於Discord Music Bot的配置微調+中文化教學

幽冥暗月 | 2018-04-24 01:54:42 | 巴幣 128 | 人氣 9923

大家好,我叫幽冥暗月(也可稱呼我幽月),這次我要來講的東西不多、很簡單,但是需要一些英文能力就是了... (其實根本不需要...030)

相信有在用Discord的各位應該都知道如何製作Discord Music Bot 吧~ 詳細過程就參考andrewhghg大大文章吧~

而此篇的重點來了,此篇是給那些剛接觸Music Bot的人(或看不懂英文的人)的一些簡單設定,現在就讓我們開始吧!
※以下都是用Notepad++進行修改,以非編碼程式修改會出現錯誤,切記!!※

後續設定篇

1.開啟【MusicBot資料夾】→開啟【config資料夾】→打開【options.ini】
2.接下來為各位說明各功能
【CommandPrefix】: 指令前綴,以上圖為例就是 ;play
【BindToChannels】: 讓BOT只接受特定文字頻道的指令  (私人可以考慮使用,公開不建議)
【AutojoinChannels】: 當BOT啟動時自動加入語音頻道中  (看個人喜好)
【DefaultVolume】: 預設音量,默認為0.25,以百分比為單位  (0.01~1.0之間)
【WhiteListCheck】: 是否啟用白名單
【SkipsRequired】: 多少人要求就直接跳過
【SkipRatio】: 需要有多少人投票同意,以百分比為單位    (1.0為全部)
【SaveVideos】: 是否保存影片暫存檔,否時重啟將會清空暫存檔,資料存於audio_cache資料夾
【NowPlayingMentions】:當歌曲開始時是否顯示歌曲資訊
【AutoSummon】: 在擁有者啟動時是否自動加入語音頻道  (BOT需有權限進入)
【UseAutoPlaylist】: 是否在BOT加入後自動播放歌曲  (※注意!點歌後不會停止,需手動刪除)
【AutoPlaylistRandom】: 同上,但每次進入後播放隨機歌曲
【AutoPause】: 是否在伺服器無人狀態下自動暫停,有人後自動恢復播放狀態
【DeleteMessages】:是否自動刪除BOT發送的訊息
【DeleteInvoking】: 是否自動刪除使用者發送的指令
【PersistentQueue】: 是否記憶暫停點,啟用時將會記憶並恢復播放  (重啟BOT也一樣)
【DebugLevel】: 偵錯等級,是否在CMD中顯示資訊  (有分類,分別是INFO,CRITICAL, ERROR, WARNING,# DEBUG, VOICEDEBUG, FFMPEG, NOISY, 與EVERYTHING;INFO是全部)
【StatusMessage】: 顯示Bot的動態資訊

【WriteCurrentSong】: 將所有播放過的歌曲儲存成txt檔,該檔放置於 data→伺服器ID資料夾中
【AllowAuthorSkip】: 允許添加者是否能跳過
【UseExperimentalEqualization】: 是否讓每首歌曲的音量一致
【UseEmbeds】: 使否顯示網址預覽   (不會出現在已經停用預覽連結的使用者上)
【QueueLength】: 單一歌曲名稱顯示長度,這裡以字元為單位
【RemoveFromAPOnError】: 若歌單中有歌曲無法播放是否要移除
【ShowConfigOnLaunch】: 在啟動時顯示Config資料
【i18nFile】: BOT語言設定路徑,等等的中文化會用的到    -請貼上檔案路徑-

中文化篇

※官方已完成中文化,更新完成後config/18n會自動新增zh-TW.json的檔案※

1.首先我們要先打開名為【i18n】的資料夾(路徑: MusicBot/config/i18n),打開後裡面會有一個名為【en.json】的檔案    (zh_TW是我自己做的中文化檔案)


2.下一步是複製【en.json】再貼於此資料夾內並重新命名,名稱要取什麼都可以,不影響中文化
3.用Notepad++打開【XXXX.json】(XXXX是你的名稱),接下來你就會看到一堆英文;但沒關係,我這有懶人包    _(:3 」∠ )_
(原圖)
4.有英文底子的人可以自己嘗試去更改指令回應內容(一些特殊字元例如/n %s %s%% 等直接繞道,不修改),至於英文不好的人就要多多仰賴Google大神了,以下是中文化後的部分成果
(中文化後)


上述的後續配置可以依照個人喜好也可以直接參照我的,本人是無所謂啦~    ╮(╯∀╰)╭
至於中文化的檔案因為還沒完成所以要過段時間再釋出
(已完成,檔案下載連結請點我)  (2018/4/24 下午09:04釋出)
※【cmd-summonserver-response】改成→【cmd-joinserver-response】這樣這指令就有用了
※中文化不是100%全中文,因為json檔也只提供這些而已,以外的中文化須更改另外的檔案※

(2018/4/30更新)

延續之前的話,更改非json檔的中文(也就是100%中文化)就要去碰其他的檔案;至此,再次提供給各位【玩家】需要修改的檔案,它的名稱就是 【bot.py】

1.打開bot.py  (路徑:MusicBot→musicbot→bot.py)


2.使用Notepad++開啟後點擊【尋找】圖示  
3.搜尋那些沒有出現在json檔的指令,並修改BOT回應(請參考下圖修改)

紅圈是需要更改的地方,把裡面的灰色字英文改成中文即可 (※注意!不可刪除【"】符號)

4.以下列出json檔所沒有出現的指令 (※常用,僅限於cmd)
【cmd_pldump】
【cmd_listids】
【cmd_perms】
【cmd_setname】
【cmd_setnick】
【cmd_setavatar】
【cmd_disconnect】
【cmd_restart】
【cmd_shutdown】
【cmd_leaveserver】
【cmd_breakpoint】
【cmd_clean → check】
【cmd_option】
【cmd_karaoke】

5.等到都修改的差不多之後,點擊run.bat開啟BOT測試修改內容是否正確

【完成!】
※我不會放bot.py的懶人包,如果真的是有問題的可以在底下留言或私訊,我盡可能幫你解決※

指令請上網搜尋,這根本不是什麼問題;
還有請仔細看完本文章後再提問,別當伸手黨

(2019/03/26更新)
給那些不知道或更新失敗的巴友一個我更新的方法,因為我本人有動過檔案,所以沒動過檔案的朋友會直接更新,接下來進入我更新的步驟吧~ (ゝ∀・)

1. 開啟資料夾內的update.bat(請一定要使用管理員開啟)


2.視窗會詢問你【因系統發現檔案遭更改,是否還原(初始化)?】,修改過bot.py的人請輸入n
    【※無論如何請輸入y ,這樣才能夠套用官方的中文化檔案※】


3.接著會問你是否要更新? 請輸入y


4.等待更新完,成功 d(`・∀・)b


以上是我每次更新時的步驟,相信只要詢問過Google大神都大概知道想表達的意思,告辭 <(_ _)>

本次【RuntimeError: Could not load an opus lib】問題發生解決方法之一
請將原本內容修改成上述圖片內容即可 (2019/10/18更新)

試驗成果圖

啟動示意圖


這次的教學就到這邊啦~因為我也不是很懂,所以有些問題我可能無法作答,敬請見諒
(P.S.: 正在嘗試如何完全中文化,稍微有頭緒 努力中.....) →  已完成 (´・ω・`)



創作回應

qrere1
好的,感謝您
2020-03-05 17:38:27
나는신사입니다
D:\dc機器人\MusicBot>

想請問一下打開後最後一行卡在這邊 機器人不會進群該如何解決
2020-03-19 08:09:42
幽冥暗月
機器人有上線嗎?
2020-03-20 20:38:21
LUCIFER
不好意思,想請大大幫忙解惑一下,之前明明都可以的,現在卻跑出這個
[ERROR] [LocalAudioTrackExecutor]: Error in playback of WfYO_Q2n-Vk
com.sedmelluq.discord.lavaplayer.tools.FriendlyException: Something broke when playing the track.
at com.sedmelluq.discord.lavaplayer.tools.ExceptionTools.wrapUnfriendlyExceptions(ExceptionTools.java:43)
at com.sedmelluq.discord.lavaplayer.track.playback.LocalAudioTrackExecutor.execute(LocalAudioTrackExecutor.java:103)
at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.lambda$executeTrack$1(DefaultAudioPlayerManager.java:349)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
2020-04-10 12:32:07
幽冥暗月
抱歉 ,因為目前在受訓,只有周末能夠回答您的問題;那想請問您的問題是否解決了呢?
2020-04-11 00:52:32
LUCIFER
還沒,重新下載JAVA和JMUSICBOT都沒用,之前都沒問題的說QAQ
2020-04-11 01:44:43
幽冥暗月
每首歌都這樣嗎?還是只是某些歌曲會這樣而已?
2020-04-11 11:24:20
LUCIFER
今天有新的版本,下載下來一切又正常了 謝謝大俠>_<
2020-04-13 19:33:44

更多創作