手動模式 - LanKuDot/MLGame GitHub Wiki
當 MLGame 以 -m
選項執行時,MLGame 會以手動模式執行遊戲。MLGame 手動模式保留遊戲原本的執行功能,讓遊戲依然可以透過鍵盤來控制,另外還可產生遊戲紀錄檔供訓練機器學習模型使用。只需要遊戲類別提供對應的函式供呼叫,函式 API 詳見遊戲與 MLPlay
類別。
運作流程
MLGame 執行手動模式與機器學習模式的流程相似,差別原本是從機器學習端取得指令,改成由遊戲偵測鍵盤,並回傳對應的指令。從 get_keyboard_command()
取得的指令會被直接傳入給遊戲更新:
遊戲紀錄檔
為了讓遊戲在手動模式中也能夠產生遊戲紀錄檔,遊戲類別仍然需要產生場景資訊,而取得鍵盤指令的函式 get_keyboard_command()
所回傳的指令也要與機器學習模式一樣。換句話說,如果是多人遊戲,那 get_keyboard_command()
回傳的指令也要用 list 儲存起來,像是 [command_1P, command_2P]
。