スレ書込み補助スクリプト

Last-modified: 2014-11-22 (土) 01:33:56

ぷそつースレ書込み補助スクリプト だいこん v0.807(仮)べーた版 2014.11.22(土)更新

なにこれ?自動保守ツール?→ちがいます

  • ぷそつーで普段使わないウィスパーのログを利用してスレに書き込むスクリプトだよ
  • 自分から送信した最後のウィスパー履歴を参照して書込みに利用するよ
  • 最後のウィスパー履歴は30秒ごとに確認してキューに貯めるよ
  • キューに溜まった書き込み本文を5分ごとにチェックして書き込むよ
     
    daikon_image.png
     
  • 同じ内容は連続では書き込まない
  • "daikon" とだけウィスするとスルーする←書き込みたくないウィスのあとに打ち込もう
  • このスクリプトが言う「書込み成功」をしんじてはいけない
  • 専用のクッキーファイルを用意するので専ブラやブラウザの忍法帳とは別に独立して利用できる
  • べーた版なのでまともに動かない可能性はあるがどっかの運営みたいに何かファイル消したりすることはない

だうんろーど

とくにりゆーがないかぎり最新版つかってね
v0.807b (http://ux.getuploader.com/vipdepso2/download/978/daikon.zip) ←New!

 

#バージョンアップは基本的に daikon.exe のみ上書きでおk
忍法帳のクッキーファイル cookie.yaml と以前作ったショートカットは使いまわせる
(最初期にうpったアルファバージョンで daikon.ini と post_sound.wav が無い場合はそれもコピーしといて)

つかいかた

  1. まずふくをぬぎます
  2. 事前に書き込みたい本文をゲーム内でだれ相手でもいいからウィスしておいたほうがいい
    (空ウィスはあかんてログに残せ)
  3. daikon.exe のショートカットを作る
  4. ショートカットのプロパティを開いてリンク先に↓こんな感じで半角スペースを空けてから自分のプレイヤーIDを入力する
    (設定ファイルに直接かいてもええで)
    player_id.png
  5. あとはそのショートカットを実行すればおk
    #おそらく最初だけ忍法帳を作成するので2分待つことになる
    この2分間の間にもなんかログが流れちゃうけどウィスのチェックしてるだけなので流されるなよ!
  6. 終了したいときは右上のペケポンでプロンプトそのまま閉じろ
     
  • ゲーム内のオプション→操作設定→キーボード設定→通常/肩越し視点→チャットから
    ウィスパーチャット起動に適当なキー振っとけば一回ウィスするだけで前回の相手にそのまま送れる
  • あとビジフォンのアークスサーチからならログオフ中のキャラ相手でもログに残せるのでサブ垢に空ウィス捗るぞ
     
    wis_to_logoff.png

書込み成功時に効果音がなるよ

  • 書込み大成功でモニカボイスが聞けるようになりました!またきてくれますよね!
    ↑切りたいときは後述の設定ファイルから
  • 付属の post_sound.wav を置き換えればWAVEファイルならなんでも再生できるよ
  • 音ちいせーよ!ってやつは大きいやつも同梱したからリネームして置き換えて使ってね

設定ファイル daikon.ini

  • 基本的にいじらなくても使える
  • 付属の daikon.ini ってファイルをテキストエディタで開いて編集すれば名前欄とかメール欄とか変えられる
  • ログ取得と書込みの間隔を変えたり、書込み成功時のボイス再生消したりできる
設定項目の詳細

ini にコメントかいてるけど見づらいからここにもかいとく

  • プレイヤーIDの指定(デフォルトは"10000000")
    ショートカットでもできるからそっち設定したならここに書く必要はない
    両方にかいてもショートカットのほうが優先される

    player_id = 10000000

  • %USERPROFILE% 以下のログファイルの場所を指定(デフォルトは"\Documents\SEGA\PHANTASYSTARONLINE2\log")
    フツーはいじる必要ないとおもう

    logfile_dir = \Documents\SEGA\PHANTASYSTARONLINE2\log

  • ログファイルの読込みの間隔を秒単位で指定(デフォルトは"30")
    まとめて発言してたくさん書込み本文ストックしたいやつは短くしろ(5秒未満にするとハネられるから注意)

    kankaku(sec) = 30

  • 名前欄の指定(デフォルトは"以下、転載禁止で大根がお送りします")
    スレをみずに書き込んでいる旨が分かりやすいのでデフォ推奨したい

    post_name = 以下、転載禁止で大根がお送りします

    ↑もし空欄にしたい場合は↓こんなかんじでそのまま消せばおk

    post_name =

  • メール欄の指定(デフォルトは"hage")

    post_mail = hage

    ↑もし空欄にしたい場合は↓こんなかんじでそのまま消せばおk

    post_mail =

  • 最初に読みに行くスレッドURL(デフォルトは適当なスレURL)
    設定しなくてもスレタイ検索するけどここで指定しておけば有効なスレURLなら優先して書込みに利用できる

    default_thread_url = http://hayabusa.2ch.net/test/read.cgi/news4vip/xxxxxxxxxx/

  • スレ検索キーワードの指定(デフォルトは"VIPでPSO2")
    半角英字限定だからスレタイが大文字になったりしたらここ弄れ

    thread_search_word = VIPでPSO2

  • 成功時の post_sound.wave の再生のオン/オフ(デフォルトは"on")
    モニカうざいときは off にしといて

    play_sound(on/off) = on

  • ログファイルの読込みの間隔を分単位で指定(デフォルトは"5")
    ばいさるこえーし10分でいいやとかそういうやつ用(5分未満にするとハネられるから注意)

    kankaku(min) = 5

ふぁっつにゅー

v0.807b

  • 設定ファイルを2014年11月現在で使える形に変更
  • おろし大根は使えなくなった(ソース喪失により対応不可能)

v0.807a

  • ブラウザを立ち上げなおして云々のエラーが出ないよう修正 ←New!
    具体的には投稿時刻を投稿直前の30秒前に設定し鯖との時間差によるエラーを回避した
  • oroshi_daikon について謎の EOFError を消すためエージェントの keep_alive を解除 ←New!
    keep-alive 接続がタイムアウト後にソケットからデータを読もうとすると EOFError が出るっぽい
  • oroshi_daikon についてスレ完走時に終了する不具合をエラーがあっても無理やり次スレ探すように修正 ←New!
  • daikon.ini に含まれるVIP用のURLの初期値についてホスト部分を hayabusa から hayabusa5 に変更 ←New!

v0.806

  • daikon.ini の default_target_thread にdat落ちスレを指定していると書き込もうとする不具合の修正
  • XPだとデフォルトではログファイルが見当たらないと言われるのでOSを判定してフォルダを探すよう変更
    自分で daikon.ini に正しいパス("\My Documents")を指定しフォルダが見つかった場合はそのままつかう
  • スレ自動捕捉&自動更新・閲覧&保守警告ツール oroshi_daikon.exe を同梱
    スレタイやURLは daikon.ini の設定を使いまわすので exe を同じフォルダに置いて実行してみて

v0.805

  • 書き込むスレッドを指定できるよう daikon.ini に default_thread_url を追加
    default_thread_url = http://hayabusa.2ch.net/test/read.cgi/news4vip/xxxxxxxxxx/
    別に指定しなくても勝手に探しに行くのでほっといてもいい まずは↑が使えるか見に行くってだけ
  • 以前はスレ取得失敗時に捨てていた書込み本文について保持したまま30秒ごとにスレを探してさまよう挙動に変更
  • 新旧のスレが両方あってもスレ順に関係なく新スレ書き込むように変更
  • スレ取得の内部処理をリファクタリングしてスレ一覧が死亡しても書き込めるコードへ変更
  • >>9までのテンプレに被りかねないレスと>>991からの埋めてしまいかねないレスをやめちゃうように設定
  • 午前9時を越えて利用した場合にログファイルの切替えで読込みが正常に行われなくなる問題を修正

v0.804以前

  • スレタイ検索を部分一致から完全一致に変更し9鯖スレへの書込み回避ができるように
    (あれむしろ退化してね↑)
    daikon.ini の 「thread_search_word = VIPでPSO2」で完全一致なら書込むから「VIPdePSO2」とかになったらココ変えてみろ
  • 日本語のスレタイを ini の thread_search_word に指定するとスレ検出に失敗する問題を修正
    (ついでに上記の初期値を thread_search_word = VIPでPSO2 に変更、ini 使いまわすやつは自分で書き換えといて)
  • スレあるのに見つかんない現象を修正(encodingなんたらエラーも減ったと思う)
  • 午前9時直後の当日のログファイルが無い時間帯において前回の書込み内容で連投してしまう問題を修正
  • チョー軽くなった
  • ログファイルひとつまるまる検索すんのやめた←前回確認から増えたバイト数だけ末尾から読み込むようにした
  • ログ見たりスレ書き込んだりするクラスのインスタンス生成を最低限にした←ちょっぴりかるくなったはず
  • ものすごいアホなコード直した←アホすぎて言えないけどこれだけでCPU負荷1/10くらいになったと思う

いまんとこのもんだい

  • おろしだいこんの保守警告の間隔おかしない←今後使い勝手を考慮して修正
  • 起動してもエラーはいて一瞬で消える←報告が一件しかないため様子見
  • ログの読み込みが突如停止する←報告が一件しかないため様子見
  • ちょっと処理が重いきがする←まだ重いようならスペックか Ruby と nPro の相性の可能性が高いあきらメロン
  • 書込みDAISEIKOやったぁって書き込めてねーじゃんモニカスかよ←ばいさるとか失敗するパターン網羅してない
  • 「VIPでPSO2」が大文字になったり「VIPdePSO2」とかになると対応できないのでファジーな文字列比較を検討中
  • 他にもなんか質問とか機能要望とか変な挙動あったらスレかここのコメントによろ

かいはつかんきょう

Ruby1.9.3 で Mechanize ライブラリとかいろいろ使って ocra で実行ファイルに固めた
ソースは同梱の src フォルダにはいっとるが

同梱のwaveファイルは(C)SEGA ということでゆるして

コメント

  • 凍結していてもコメントかけるかてすと -- 2014-03-05 (水) 16:11:05
    • コメントページが別だからいけるみたいやな -- 2014-03-05 (水) 16:11:47