Splatoon - Bot で二番煎じ
このブログ…生きていたのカッ...!
この記事は Splatoon Advent Calender 11日目の記事…でした。
発熱極めて寝込んでました大変申し訳ございません( ;)
スプラトゥーンのステージ事情
さて皆さん。イカ、してますか?
私はボールド担いでS帯まで登ったものの得意の飽き性が発動してv2.2.0のアップデート後からあまりやっていません…
そんな事は置いておいて、ご存知の通りスプラトゥーンで1度に開催されるステージはレギュラー/ガチマッチそれぞれ2つずつ。
そのステージ構成が4時間毎に入れ替わるようになっています。
このようにゲーム内で4時間毎にシオカラーズのハイカラニュースによって知らせてくれる他、
- 公式イカリング
- ステージ情報bot (@splatoon_stage)
などの手段でステージ構成を知ることができます。(他にもあるかも?)
ステージ情報が知りたい!
という訳で、4時間毎にステージを呟く TwitterBot を作っていました。
デレデレデレッデ~ン ▼レギュラーマッチ デカライン高架下 , タチウオパーキング ▼ガチマッチ(ガチヤグラ) ネギトロ炭鉱 , マヒマヒリゾート&スパ
— ika-stagebot (@ika_stagebot) December 13, 2015
ya so cute 二番煎じ
ステージ情報を教えて!
さてはて、全部で14個あるステージですが、皆さん好きなステージ、嫌いなステージ、ありますよね?
私もホッケふ頭とタチウオパーキングとか、あとヒラメが丘団地も案外好きです。
やっぱり好きなステージで遊びたい年頃の人も多く居るはず。
そこで、「アシスタントツール」として通知をしてくれる。「教えて」くれるものの方がスマートなのでは。と思ったので、こんな機能を付けてみました。
@Ranats85
07時まで ガチマッチ(ガチホコ
が ハコフグ倉庫 で開催されるよ!
— ika-stagebot (@ika_stagebot) 2015, 11月 14
「次の[ステージ名]」とリプを投げつけると、直近12時間(今、次、その次)にそのステージが開催されるか、を返してくれます。
また、ステージでの指定の他、「次(今)のレギュラーマッチ」、「次のガチマッチ」などルールを指定して問いかける事もできるように。
@Ranats85 今から [11時] までのレギュラーマッチのステージは
[アロワナモール] と
[キンメダイ美術館]
ダヨ!
— ika-stagebot (@ika_stagebot) 2015, 11月 15
少しは愛想のあるBotになったのではないでしょうか?
ステージ来たら教えて!
アシスタントツールとしては、遊びたいステージが開催されるとなったら教えるのが常。
ということで、ステージを設定しておいて、開催が発表されたら教えてくれるようにしました。
@Ranats85 通知を設定したヨ!
— ika-stagebot (@ika_stagebot) 2015, 11月 16
これで、4時間毎にステージ情報が更新された時に、設定したステージが入っていたら通知してくれます。
@Ranats85
11時まで ガチマッチ(ガチホコ
11時~15時まで レギュラーマッチ
が キンメダイ美術館 で開催されるよ!
— ika-stagebot (@ika_stagebot) 2015, 11月 18
こんなふうに。
解除は 「:remove」 とリプライ。
私はナワバリクイーン!👑
さらに言えば好きなルール(レギュラー/ガチ、エリア/ヤグラ/ホコ)で遊びたい、という事もありますよね?
ここに来てリプライで全てやり取りするのが少し面倒になったので、通知設定用のページを作りました。
ika-stagebot.herokuapp.com
ちなみにフェスにも対応。
フェスが開催されているよ!
11月21日 12時 ~ 11月22日 12時
お題:山の幸 vs 山の幸
▼ステージ
モズク農園, マサバ海峡大橋, キンメダイ美術館
— ika-stagebot (@ika_stagebot) 2015, 11月 21
中身
使ってるもの
あと omniauth とか twitter とか clockwork とか dotenv とかのgem達。とcsv。
ステージ情報自体は、Mechanize と Nokogiri を使ってイカリングからそのまま取得しています。
Mechanizeめっちゃないず。すごい。
Web部分はRailsを食わず嫌いしてるのでSinatraでページ作って、clockworkでHeroku上にcron動かして、って感じです。
Heroku上では一切ファイル類を保持してくれない & 何か環境変数も弄れないっていう仕様みたいなので、DropBoxApiを利用してファイルの永続化を図っています。
sqlite使えよとか言わない。
あと CSV::Table すごい。
コードが綺麗に整ったらGithubのリポジトリを公開にしようかとは思っていますのでよしなに…
あと全て無料の範囲でやろうとしてたので、Herokuも無料プラン…なので1日計6時間は止まっています。
Galileoか何かでサーバー立てたい。
おわれ
テストもクソもロクにしてない状態ですが、これにて遅ればせながら11日目でした。