日刊ほぼ自分用メモ
結局dotabuff最強やんっていうはなし
いろいろ自動化したい!
こうずっとずっとBAN/PICKの数を1st 2nd 3rdごとに取りたいでもdotabuffにないとか考えてて一時期ほぼ手動でやってたけどゲロ作業だったのでどうにか自動化できんかなって考えてました.
がんばって三割程度自動化できる目処がたったのでメモとっとこうっていう状態
リプレイからマッチングの情報を抜き出そう
Gitとかに賢い人らが作ったのがあります
何種類化あったけど一番最初に見つけたとかいう理由でこれ使いました
GoogleGoで記述されてるからなんか気合で環境いれたりしてどうにかする
あるものビルドして使おう
Go触れる人は自分で自由自在に作りましょ
- ~yasha/example/***/***.go
やさしい作者が例として用意してくれてます.ビルドして引数にリプレイファイル指定して実行したらなんかでてくるでてくる
リプレイは steamapps/common/dota2beta/data/replays とかそこらへん
- chat
- チャットのログでてくる
- combatlog
- 何分何秒にだれがどいつをいくら回復させたかみたいなデータ
- entity
- ヒーローの座標とかが全部でてくる
- fileinfo
- チームやら大会やらban/pickとヒーロidあたり
- こいつを流用する
こんなん
ぬきだせ
形が汚いです
ban ban ban ban pick pick pick pick ban ban ban ban pick pick pick pick pick ban ban pick pick
こんなかんじで中括弧にくくられてるから上手いことヒーローidだカンマとかでつないだらcsvにできていいですね
とりあえずてきとうに
if [ -e ${TARGET_REPLAY} ]; then
echo "replay parse"
${YASHA_PATH}/${YASHA_EXE} ${TARGET_REPLAY} > ${OUTPUT_ORIGINAL}#awk original output file
echo "awk output"
cat ${OUTPUT_ORIGINAL} | grep "hero_id" | sed -e "s/^.*: //g" | tr '\n' '\t' | sed -e "s/ $/@/g" | tr '@' '\n' > ${OUTPUT_BANPICK}
else
echo "ERROR : no replay file ${TARGET_REPLAY}"
exitfi
くっつける
フォルダ内のリプレイファイルを全部parseするスクリプトでひっかきまわして連結したらなんかできます
結局手動でやる部分がいっぱい残ってる
- 結局大会のリプレイをポチポチおとして一箇所にまとめるひつようがある
- おええええ
- 無駄なことしてる感じがすごい
- ちゃんとしたDBにしてちゃんとしたら自分で使いたいようにできるかも
NOW ちんちん