ゲームログは,コンソールに出力される以外に,ログファイルに出力することが出来ます.
AIWolfGameを実行する際に,以下のように設定すれば,ログファイル(この例では,PathToLogFile)にゲームログが出力されます.
File logFile = new File(PathToLogFile); AIWolfGame game = new AIWolfGame(gameSetting, gameServer); game.setRand(new Random(gameSetting.getRandomSeed())); game.setLogFile(logFile); game.start();
ただし,コンソールログとは異なる形式なのでご注意ください.
0,status,1,WEREWOLF,ALIVE,GofukuLab 0,status,2,VILLAGER,ALIVE,IPA 0,status,3,MEDIUM,ALIVE,wasabi 0,status,4,BODYGUARD,ALIVE,饂飩 0,status,5,POSSESSED,ALIVE,Y・Y 0,status,6,WEREWOLF,ALIVE,Team Fenrir 0,status,7,VILLAGER,ALIVE,itolab 0,status,8,VILLAGER,ALIVE,iace10442 0,status,9,VILLAGER,ALIVE,CanvasSoft 0,status,10,SEER,ALIVE,働きの悪い村 0,talk,0,2,Skip 0,talk,1,3,ESTIMATE Agent[04] VILLAGER 0,talk,2,10,VOTE Agent[01] 0,talk,3,1,Over 0,talk,4,8,Over ・・・
のような形式になります.
csv形式で,一行が一つのログとなっています.
最初のカラムが日にち,次が行動の種類を表し,その次以降は行動に依存します.
具体的な内容は以下の通りです.
行動タイプ | 内容 | データ |
---|---|---|
status | 各プレイヤーの状態 | 日付.status,PlayerID,役職,生存,プレイヤー名 |
talk | 発話 | 日付,talk,talk_id,話者ID,発話内容 |
whisper | ささやき | 日付,whisper,whisper_id,話者ID,ささやき内容 |
vote | 追放投票 | 日付,vote,投票者ID,投票先ID |
attackVote | 襲撃先投票 | 日付,attackVote,投票者ID,襲撃先ID |
divine | 占い先指定 | 日付,divine,占い師のID,占い対象ID,結果 |
guard | 護衛先指定 | 日付,guard,ボディーガードID,護衛対象ID,護衛対象の役職 |
execute | 追放結果 | 日付,execute,追放者ID,追放者役職 |
attack | 襲撃結果 | 日付,attack,襲撃先ID,襲撃の成否 |
result | ゲームの結果 | 日付,result,村人生存数,人狼生存数,勝利陣営 |
ログのテキストだけ見るのは大変なので,ログビュアも作成しました.
logViewer-0.2.6.zip
こちらをDLして,
Windowsの方はLogViewer.exe
Mac,Linuxの方は,LogViewer.sh
を実行してください.
のようなWindowが開きますので,ログファイルをDrag&Dropしてください.
ログをGUIで確認することが出来ます.
コメントを残す