「げげ、人間!?」

上海アリス幻樂団様の東方project「東方風神録」に登場するキャラクター、河城にとりのbotです。
アイコン画像は「えるるのだいあり」様よりお借りしております。


<基本機能>

■半自動follow/remove
 ・フォロー
  1.@KawashiroNitoriをフォローします。
  2.にとりに“followして”とリプライするとフォローされます。(“followして”の発言は5分間隔で確認しています)

 ・リムーブ
  “removeして”とリプライするとフォローを外されます。

 ※あなたのpostが非公開の場合は、フォローされるときだけで結構ですので、公開設定への変更をお願いします。
  (一度にとりにフォローされれば、非公開設定でもリプライを飛ばせます)
 ※Twitterが重いときは、安定するまでお待ちのうえ、再度リプライをお願いします。

■つぶやき
 1時間ごとに、にとりが適当につぶやきます。

■ニュース
 1時間ごとに、「きゅうり」「河川」「河童」「科学」「ロボット」「家電」に関するニュースをGoogle Newsから検索し、そのうち一つをpostします。
 外の世界がよく分かっていないため、全く関係ないニュースを拾うこともあります。

■正時報告
 毎時0分になると、にとりが正時を報告します。
 機械いじりに夢中になりすぎて、報告が遅れるときもあります。

■好感度
 にとりはあなたに対する好感度を持っています。ただし人見知りをする河童なので、初期好感度はそれほどありません。
 あなたの発言によって好感度が増減することがあります。

 好感度確認方法:“私のことどう思う?”とリプライ(僕、俺でも可)
  ・「盟友」を含む返答→あなたと打ち解けています
  ・「人間」を含む返答→あなたとは顔見知りです
  ・どちらも含まない→あなたに人見知りしています

 ちなみに、以下の事が発生してもにとりはあなたを覚えていますので、好感度に変化はありません。
  ・あなたがIDやユーザ名を変更する
  ・にとりにremoveされる(再度followされたとき、元の鞘におさまります)

■あだ名
 にとりの好感度が「顔見知り」以上のとき、以下のリプライによりあだ名設定ができます。
 ・“「○○」って呼んで” :呼んでもらうあだ名(30文字以内)を指定します。(あだ名は必ず「」でくくってください)
 ・“あだ名はいらない” :あだ名設定を解除します。
 ・“あだ名を呼んで” :あなたの今のあだ名を確認します

 特定の表現をあだ名に指定すると、にとりは怒ってしまいます。

■リプライ
 にとりに話し掛けると、リプライを返してくれます。
 また、あいさつや特定の言葉には公開発言でも反応する場合があります。
 (↑好感度が低いうちはあまり反応しません)

 公開発言への反応がいらない場合は、以下のリプライで設定します。
 ・“リプライいらない” :あなたの公開発言に反応しなくなります。
 ・“リプライほしい” :上記の設定を解除します。

 RTを含む発言、自分宛てではないリプライには反応しません。

■緊急連絡
 先頭 にとりへ。 をつけて公開発言すると、にとりが自分へのリプライと判断して反応します。
 (例:にとりへ。きゅうりあげる ←「@KawashiroNitori きゅうりあげる」と同等)

 反応する言葉は、以下のリプライで変更できます。
 ・“「○○」に反応して” : にとりへ。 の代わりに反応する言葉(10文字以内)を指定します。

 TLにいないにとりに至急リプライを送りたいときに役立つかもしれません。
 ただしあくまでも公開発言ですので、ご利用は計画的に。

■イベント
 XBOX360でいう「実績」、PlayStation3でいう「トロフィー」のようなものです。
 あなたが様々な条件を満たすたびに、にとりからDM(ダイレクトメッセージ)が届きます。
 これらのイベントが発生すると、にとりの好感度がある程度上昇します。

 DMの書式は、「にとりからのメッセージ【イベント名】(イベント発生条件)」です。

 ※内容が同じで数字・回数を増やしただけのイベントはありません。
 ※「にとりをremoveする/にとりにremoveされる」ことを前提としたイベントはありません。
 ※条件を満たしても、相互フォロー状態でない場合はDMが送られません。
 ※同じイベントの発生条件を何度満たしても、DMが送られるのは最初の1回のみです。


<コミュニケーション>

■きゅうり
 にとりの大好物であるきゅうりをあげます。また、にとりからきゅうりをもらうこともできます。
 あなたは最初きゅうりを3本持っており、以後約24時間ごとに自動的に1本収穫します(手持ちのきゅうりが増えます)。
 ただし、所持上限は15本です。

 にとりに以下のリプライをすることで、きゅうりのやりとりができます。

 ・“きゅうりいる?” “きゅうり食べる?” など :あなたが今持っているきゅうりの本数をにとりが教えてくれます。

 ・“きゅうりあげる” “きゅうりどうぞ” など :にとりにきゅうりを1本あげます。
  (きゅうりを1本も持っていないのにあげようとすると、にとりは機嫌を損ねます)

 ・“きゅうりちょうだい” “きゅうりください” など :にとりからきゅうりを1本もらいます。
  (好感度が低いと、渋られたり断られたりするかもしれません)
  (同じ人にあげるきゅうりは、一日に3本までです)

■相撲
 相撲が得意なにとりに、相撲勝負を挑みます。
 使用する技は、「押し倒し」「押し出し」「突き倒し」「突き出し」「寄り倒し」「寄り切り」の6種類です。
  (「押す、突く、寄る」 と 「倒す、出す」 の組み合わせです(寄り切りのみ例外))

 にとりに以下のリプライをすると相撲をとります。

 ・“はっけよい(技名)”
  例:「はっけよい押し出し」「はっけよい突き倒しだ」「はっけよい突き出し!」等

 技名を打つのが面倒だという方へ:
 ・“はっけよい” で終わるリプライをすれば、あなたの技はランダムに決まります。
  例:「はっけよい」「とりあえずはっけよい」等
   NG→「はっけよい!」(!が入っているため)

 -勝敗-
 技を以下の順に並べ、あなたが選んだ技のすぐ右隣をにとりが選んだ場合のみ、あなたが勝利します。(河童は相撲が得意なのです)
  押し倒し→押し出し→突き倒し→突き出し→寄り倒し→寄り切り→押し倒し…
  例:あなたが「突き倒し」を選んだ場合、にとりが「突き出し」を選ばない限り負けてしまいます。

 なお、一度相撲をとった後は、にとりが15分ほど休憩します。
 その間に相撲を申し込んでも、「少し休ませて」と返されます。

 Q:じゃあ勝率は1/6しか無いの?
 A:この相撲、運否天賦じゃない…。それはされおき、深いことを考えず運だめしに使うのも面白いでしょう。

■機械の改造
 にとりに機械を預けて、あなたの指示通りに改造してもらいます。
 1回改造を頼むごとにきゅうりを1本消費します。
 改造には30分かかります。
 改造開始から30分経過後、あなたの最初の発言(公開/にとりへのリプライを問わず)に対し、にとりが改造結果をリプライします。

 1台の機械は複数回改造できますが、改造を重ねるたびに機械がもろくなっていきます。
 万が一機械が壊れてしまった場合、これまでの改造は全てパーになります。
 その場合にとりは機械を応急修理しますが、元と比べて改造は成功しにくくなっていることでしょう。

 -改造依頼-
  ※基本
   ・“「××」を…く改造して”  例:「冷蔵庫」を温かく改造して
   ・“「××」を…に改造して”  例:「炊飯器」をゴージャスに改造して
    「××」(機械名)をにとりに預け、指示した形容詞のように改造してもらいます。 (機械名と形容詞はどちらも10文字以内

  ※応用
   ・“…く改造して” :機械名を省くと、いま預けている機械に改造を重ねます。
   ・“「××」を改造して” :形容詞等を省くと、改造内容はにとりにお任せします。
   ・“改造して” :両方省くと、いま預けている機械にお任せで改造を重ねます。

 -機械変更-
   ・“「△△」を…く改造して” :別の機械名を指定すると、「××」を返してもらい、新たに「△△」を預けて改造してもらいます。

 -機械をあげる-
   ・“「××」をあげる”  例:「冷蔵庫」をあげる (形容詞は不要です。NG→「温かい冷蔵庫」をあげる)
    いま預けている機械をにとりにあげます。 あげた機械は、にとりが暇なときに使ってくれるかもしれません。


<付録>

■更新履歴
 2010/3/10
  ・にとりに大勢の方が正時報告を促し、返信が140文字を超えたときに何も投稿できなかった件を修正しました(分割して投稿するようにしました)。
 2010/2/28
  ・「機械の改造」機能を追加しました。
 2010/2/25
  ・「緊急連絡」機能を追加しました。
 2010/2/15
  ・霧雨魔理沙@dazeko)と会話するようになりました。
 2010/2/14
  ・バレンタインチョコをにとりとやり取りできていました。(2/14限定)
 2010/2/12
  ・鍵山雛@Yakujin_sama)と会話するようになりました。
  ・「はっけよい○○」に既定の6種類以外の決まり手を入力した場合、はっけよい単体と同じ効果(6種類の決まり手からランダム)になるよう変更しました。
 2010/2/11
  ・「あだ名」機能を追加しました。
  ・にとりの好感度を確認するコマンドを追加しました。
  ・公開発言に反応させないコマンドを機能を追加しました。
 2010/2/3
  ・相撲勝負に負け続けたとき、連敗記録を表示するようにしました。
  ・にとりから一日にもらえるきゅうりの本数が、翌日になってもリセットされない件を修正しました。
 2010/2/1
  ・フォロワーさんごとに、きゅうりの所持上限を15本、にとりから一日にもらえる本数を3本までとしました。
 2010/1/31
  ・「相撲」機能を追加しました。
 2010/1/28
  ・1分以上の遅延が発生した時、TLに反応できなかった件を修正しました。
 2010/1/26
  ・RT/QT/MT避けをより厳密にしました。(「RT 」は回避していましたが、「RT:」に反応した件を修正しました)
  ・上記の反応により、にとりの発言に「@KawashiroNitori」が含まれたとき、無限ループに陥ってしまう件を修正しました。
 2010/1/24
  ・「followして」の前に何か文字列があるとき、にとりが反応しなかった件を修正しました。
  ・きゅうりの本数を確認するためのキーワードを若干追加しました。
  ・にとりがきゅうりのお礼を言う際、累計受け取り数(一日分)を報告するようにしました。
  ・にとりが正時報告をサボっている間、リプライした人を完全に無視する場合があった件を修正しました。
 2010/1/23
  ・「@KawashiroNitori followして」のスペースが全角のとき、にとりが反応しなかった件を修正しました。
  ・にとりにフォローされていない人がにとりにreplyしたとき、【「followして」以外には反応しない】という旨を返信するようにしました。
  ・にとりにフォロー依頼を送った際、Twitter側の問題でフォローに失敗したときはその旨を返信するようにしました。
 2010/1/20
  ・公開

■実装予定
 ・好感度ごとのリプライ変化
 ・にとりに何かを作ってもらう機能
 ・他のbotとの会話

■参考にさせていただいたサイト
 プログラミングができなくても作れるTwitter botの作り方
 ものおき@はてな
 銀さんのbot ~不完全~
 8bitnote
 SDN Project
 大相撲の決まり手一覧 - Wikipedia

■動作環境
 サーバ環境:Amazon EC2 (small instance)
 ソフトウェア:Fedora、Apache、PHP、PEAR MDB2、MySQL

■連絡先
 ご意見・ご要望などがございましたら、以下の連絡先までお気軽にお知らせください。
  ・にとりにDMを送る
  ・@red765にリプライかDMを送る