両手でのスマホいじりしか出来ないスマホ基地外が、電車でつり革、手すりに掴まらず、他人の足を蹴る、踏むの行為を続けている。
足を踏まれる、蹴られる被害者は多く、大至急、スマホ基地外は電車に乗車できない法律の制定が必要だ。
電車内のアナウンスも、「両手でのスマホ操作は他の方の足を踏む可能性がおおきすぎるためおやめください。車内揺れるため、つり革、手すりにお掴まりください」くらい言うべきだ。
つり革にも手すりにも掴まれない状態で他人の足を何度も蹴る、踏むくらいなら、電車に乗るな。またそういったスマホ基地外を電車に乗せるな。
結局、電通系のやつらに踊らされ反応してる民が損してるだけw
おかげさまで、無事炎上(皆なんらかの反応を)しており、ご本人はご満悦のご様子でございます。
炎上で売名できて仕事がガンガン舞い込むなんて、良くも悪くも、思い通りに反応してくれる人が多くて、世の中なんてちょろすぎますよね。
次回も、炎上をenjoy!
ってすぐ言う奴いるけどさ。
味方してる女もいっぱいいるのに一人でも味方しない女がいるとすぐ言うよね。
リベラルな女もいれば保守的な女もいて、穏健派も過激派もいる。頭がいいのも悪いのもいる。当たり前だけど考え方は一人一人違うんだから敵味方いるのが普通なの。
意思共有体じゃないの。
馬鹿じゃねーの。
結局、皮下注射だけでいい弱い方の抗がん剤とステロイド剤で治療することになって、効いたらいいねって話だったのに、とりあえず4日で肥大化してたリンパ節がわからなくなるまで小さくなってて何これ怖い状態。
とりあえず1週間経ったら先生に見てもらってどうするかって話だけどどうなるかしら。
今まで三浦大知とか湘南乃風みたいなウェーーイって感じの音楽って食わず嫌いしてて聞いてこなかったんだけど,最近平成ライダーにハマって聞き始めたらテンションが上がることがわかった.
なんかウェーーイ系でおすすめあったら教えてください.
急にどうしました?
ゴマ団子(芝団子)
iOS版の新クライアントが導入されたのは12月の頭位であった。この月の頃には僕の所で前から起こっていた、ダンジョンからの帰還操作に時間がかかる、という問題だが、これが帰還操作をしてからだいたい30秒以上かかるようになっていた。この問題は、30秒以上になると通信エラーを起こすという問題に発展しており、通信エラーが起こった時には帰還が失敗することが多くなってきていた。
この問題は新クライアントになる前から観測されており、何度もユーザサポートに問い合わせを行ってはいたのだが特に何も対応されることはなかった。僕としては何度も通信エラーを起こしていればたまに帰還が成功するわけなので遊べないことはない、というような言い訳をしつつ、15分の冒険を行わせるために30分位は帰還しようとして通信エラー、再起動させてまた通信エラー、という事を繰り返していたのである。
さすがにこんな事に時間が取られてしまうのは面白くないと思っていた所で、新クライアントがリリースされ、「お知らせタップ」が知らされるまでは遊ぶこともできなくなり、何故「お知らせタップ」で解決するのかを観測してみたところでスキマの通信が平文で見放題であることに気づいてしまったわけである。そこにやってくる正月休み。なるほどこれは僕に与えられたハックの時間なのですねと僕は正月休みをスキマの解析に当てた。
解析自体は簡単であった。帰還時に時間がかかっているのはクライアント側ではなくサーバ側であることも観測から明らかになった。何故時間がかかるのかは皆目検討がつかなかったが、とにかくサーバ側(多分DBアクセス等をしている)で時間がかかる処理が行われることによって、PHP側のタイムアウト(default では 30秒)にひっかかって50*のサーバエラーが起こる。クライアントは50*が返った事により「通信エラー」を表示する。サーバ側では処理が終わることもあるようだが大半は処理は終わらずそのプロセスごと殺されているようだ。従って、帰還するためのPUTリクエストを送って、失敗したら/login2からセッションキーをもらってもう一度PUT、と繰り返す事で30分(その頃には45分を越え50分位はリトライし続けないと駄目だった)以上かかる帰還操作を自動化することができた。
ここまでで検証作業自体を終了とし、検証で明らかとなった問題(遅いのはサーバ側、30秒以上の処理が行われる事によって50*が発生する、PHPで動いているようだがPHPのtimeoutの初期値は30秒、ワークアラウンドとしてはこの30秒のタイムアウトを60秒とかにすれば当面の問題は回避可能であるが、このままいけば早晩60秒の壁も突破するので根本的な修正が必要)といった事を詳細に書き、Pythonにより自動化された帰還操作を繰り返す(つまりは問題となっている50*のサーバエラーを起こすための)プログラムを添付して、「ここまでやったのでBANするならすればいいよ」と添えてサポートに提出した。
しかして返答としては「BANはしないけど今後はしないでくれる?」という温情あふれるものであり、その後すぐにタイムアウトの設定が増えたらしく30秒で50*が返される事はなくなり、一回で帰還操作が正常に終了するようになり、僕は帰還操作で50分も無駄な時間を奪われる事はなくなった。(といってもその2ヶ月後には60秒の壁が立ちふさがって同じ事が起こったのであるが)
年が明けて5月、一ヶ月後にスキマのサービスが終了することが発表された。先程も書いたように僕は帰還操作がうまくいかないためにまともには遊べなくなっていたが、サービスが終了するのであればこれ以上とりたてて修正を願い出ることもあるまいとそれ以上は特に何も言わないで最後の一ヶ月を過ごした。
振り返ってみるとバグを攻略するという楽しいゲームであった。最後の方では通信の解析を行ってBOTのようなプログラムも作成して非常に楽しんだ(実際、二週間位(一つのイベントが終了するまで)は自分が操作しないでほったらかしておいてもやりたいことはだいたい全部できているようなBOTが作成できた)。今となっては起動してもタイトル画面しか見えないゲームであるが、データが見えなくなるのは寂しいのでとクライアント側に保存されているキャッシュデータ(sqlite形式だった)の中身を閲覧するためのWebアプリを書いたりもしてとても楽しかった。多分運営側としてはいちいちバグ報告と称して長たらしいmailを投げ込んできたり、果ては通信内容を解析してサーバ側の設定を書き換えろと指示するといった迷惑極まりないユーザであったとは思うが、まぁ、終わってしまったゲームであるのでもう何を言ってもいいのかなぁと思ってあけっぴろげに書いてしまった。
また、スキマを最後に開発していた会社はその後解体されて本社に吸収されている。
そういえば、色々とお世話になった2chのスレッドはまだ残っているようである。せっかくなのでスレの方にもこの文書の事は紹介しておこうと思う。
きららファンタジアというスマホゲーで何か大きな問題が起こって大騒ぎになっているというのは Twitter の自分のタイムラインにちらほらと出てきていたので「そうなんだー」程度の認識だったのだけれど、その炎上のまとめと考察(https://smhn.info/201712-kirara-fantasia-cheat)を読む機会があってなるほどこれは大変な問題ですね、と思った。
それで僕は、サービスインからサービス終了までをほぼ全て見守ってきたあのゲームの事を久しぶりに思い出したので懐かしい思い出としてここに書き記しておこうと思う。
そのゲーム、仮にスキマとしよう。そのスキマはスマホゲーによくある隙間の時間を埋められるようなデザインをされたゲームで、大まかにいうと冒険者を組織してダンジョンへと冒険に出かけさせ、持ち帰った財宝を使って冒険者を強化して、また冒険に出かけさせるというサイクルのゲームなのだが、冒険中はユーザは特にすることがなくただ待っているだけという、冒険者を送り出して帰ってきたのを確認するだけの作業をその隙間の時間にやってね、というゲームだった。なお、スキマは単発のゲームというよりは、はるか昔のパソコンで動いていたゲームを始祖とする名のあるタイトル(仮にウィリーとしよう)を冠したゲームで、ルネサンスと名付けられたウィリーブランドの再生プロジェクトのうちの一つであった。僕はそのウィリーが好きだったのでとりあえず遊んでみようとダウンロードしたのであった。
まず、スキマのサービスイン直後だが、オンラインゲーの例に漏れずサービスイン直後に色々な問題を起こしてメンテにつぐメンテでまともに遊べる状態ではなかった。だいたい4,5日はメンテをしたり、たまにサービスしていたり、という感じだったのではないかと思う。そのサービスインから4,5日経ったあたりで、「このままでは安定したサービスが続けられないので長期メンテナンスに入る」といった感じのアナウンスと共に、メンテナンスに入った。このメンテナンスは一ヶ月とちょっとの間続いた。僕はサービスイン初日にはプレイできず長期メンテナンスに入る前に少し遊んだ程度だったのだが、遊んでみた所では「これは酷い」としか言いようがなかった。
まず動作がもっさりとしている。何かのボタンを押すたびに CONNECTING… というダイアログが出て2秒位は待たされる。場合によってはボタンを3,4回押さないと目的の事ができないのに押すたびに CONNECTING… なのである。次にタップに反応しない。ボタンを押すと書いたが押したつもりが押されていない事がしばしばある。この場合は CONNECTING… が出ないのでわかるのかと思いきや、1秒位経ってから CONNECTING… と出てあぁ、押していたのか、とわかったりするようなもっさり具合である(もちろん押していなかった時もあるので1秒後までは押せたか押せなかったを判別できなかったりする)。
また、バグと言っていいであろう謎の動作が多い。ダンジョンに送り出したパーティのダンジョン内部での行動がダンジョンログとして閲覧できるようになっており、そのダンジョンログは直前の3回までのログが観られるようになっているのだが、そのダンジョンログの表示される内容が複数が同じものになっていて実質的には3回のログはみられないであるとか、CONNECTING… が出るタイミングで他の部分をタップしてしまうと高確率でアプリが落ちるであるとか、特定の順番で装備している武器を変更すると攻撃力が最低値に固定されるであるとか、リリース記念かなにかで貰えるキャラがなぜか毎日もらえて同じキャラが増えていくであるとか、まぁ色々な問題があって面食らったものである。
そんな感じでサービスインを迎えたスキマなのであるが、こんなに酷い状態なのではユーザはどんな事を言っているのだろうとコミュニティを探した所、2chにスレッドが立っていた。案の定スキマのバグ報告スレと化しており、「あぁ、このゲームは本当に全然駄目なんだな」とほっとしたのを覚えている。僕はその頃からその2chのスレッドを眺めるようになった。また、こんな状態ではサービスが続けられないのはわかるけれど、一ヶ月程度のメンテナンスでなんとかなるものでもないだろうとも思ったので、せっかくなのでサービス終了まで看取ると面白いのではないかとも考えた。
一ヶ月と少し経った頃、スキマのサービスが再開された。まぁ残念ながら僕の予想は外れておらず、お世辞にもちゃんと遊べるとは言えない状態であった。とはいえ、本来は一回しか貰えないはずのキャラが複数回貰えるであるとかいった所に代表されるゲームとして守られるべきルールのようなものについてのバグの多くは直っており、残っている問題の多くはクライアントアプリ側の問題とサーバ側の負荷対策ができていない問題とみられ、クライアントアプリ側の問題は特定の操作をしなければ落ちはしないしサーバ側の問題はもっさりだけれど待てば処理はしてくれるので一応遊べないことはない状態だとは言えた。それでも、クライアントアプリ側でのUIの不思議な動作(押してるつもりでも押せていない、連打するとクラッシュ)に誘発されたと考えられる進行不能バグを代表とする理不尽な問題は沢山残っており、ユーザとしては不満が渦巻いていた。
そんなスキマではあるのだが、サービス再開の後はウィリーでは有名な人の名前を冠したイベントを行ったり、定期的に期間限定のダンジョンをオープンしたりといった運営を行っていた。もちろんバグはじんわりと直ってはいくのだが、特に劇的な直り方はせず、「俺サービス開始直後からログインできなくなっててまだログインできないんだけど」みたいな事を報告するユーザ(?)も2chでは散見されるという状態で、2chのスレッドは「スキマのバグを踏まないようにプレイするにはどうすれば良いのか」という情報を交換するための機能を果たしていた。
一ヶ月メンテからのサービス再開から3,4ヶ月経った頃、運営会社から開発会社の変更が発表された。曰く、外部の開発会社に制作を依頼して制作したのだが、不都合が多すぎてどうしようもないので開発を自社に引き取るということであった。その後一ヶ月程して「不都合収束クライアント」と銘打ったクライアントが配布される。この不都合収束クライアントで確かにいくつかのバグが修正されはしたのだが、もっさりとした動作が変わるわけではなく(プロトコルもサーバ側も修正されていないようであったので当然ではある)、操作によってはクライアントが強制終了していたのが強制終了はしなくなった、程度の修正であり、これを解決するには根本的な改革が必要であるとみてとれた。
そんなスキマではあったが、何故かサービスは終了せず、サービス1周年の時を迎えた。この時、スキマの開発体制についての発表もあった。現在のスキマのクライアントプログラムは改修を重ねていくが、それと平行して開発ミドルウェアを変更してフルスクラッチでクライアントを作り直している、という発表であった。2chのスレッドではフルスクラッチでクライアントを書き直すということで、バグの根治は当然として、目的の事を行うのに3〜4タップ必要であったりするというUI周りまで手がつけられるのではないか、という事を期待する声が上がったりもした。
また、この1周年の挨拶の3ヶ月後には新クライアントの開発状況は70%と発表された。
この頃からであろうか、僕が遊んでいる環境のみなのか、又は他の人ではあまり現れない問題であったのか、とにかく僕が遊んでいる環境では冒険からの帰還を行おうとすると変に時間がかかるようになった。この問題は何らかの原因で帰還操作が完了するまでの時間が少しづつ伸びていくという問題であった。この問題は後で僕には大きな問題として認識されるようになる。
この頃からは新クライアントを開発しているためなのか、旧クライアントの修正はあまり行われなくなり、定期的なイベントが行われるのみであった。思えばこの頃はスキマの遊び方(このようにするとバグを踏むのでこれはしない、であるとかいった遊ぶための作法)がわかっている人間しかスキマを遊んでおらず、運営側も積極的には宣伝もしていないため新しいユーザも増えなかったため、比較的安定した運営が行われていたのではないかと思われる。
また、恐らくこの頃であると思われるが、2chのスレッドで「スキマは冒険者が冒険をしてきたログを眺めることでそのダンジョンの攻略法を考えたりするゲームなんだけど、あまりにもバグが多すぎるから2chというログを読む事でスキマというゲームを攻略しているよね」といった書き込みが行われるなど、スキマをダンジョン攻略ゲーとして捉えるのではなく、バグ攻略ゲーとして捉えるというユーザが現れていた。
さて、一周年の時に発表された新クライアント開発は、その後3ヶ月程で70%まで出来ていると発表されたが、結局その新クライアントがお目見えしたのは2周年を目前に控えた頃であった。新クライアントのお披露目はAndroidでβテストという形で行われた。言い忘れていたがスキマはiOSでしかサービスされておらず、それまでAndroid版は存在しなかった。僕はAndroidもiOSも持っていたため、βテストに応募し、当選したので遊んでみたのである。
まず、フルスクラッチで制作されると言われていたのでUI周りも変わるのであろうと思っていたのは完全に裏切られた。見た目はほとんど何も変わらず、もちろんUIのタップ回数まで全く同じであった。しかも使用されているフォントが違うために文字が見切れていたりといった問題が発生しており、お世辞にも前のクライアントとくらべて良くなったとは言えなかった。また、恐らくはサーバ・クライアント間のプロトコルも何も変わっていないのか、プロトコルやサーバ側に起因する問題は依然として残っていた(武器や防具を鍛錬すると+の数値が上がるという仕様があるのだが、連続して鍛錬を行うと必ず1以上は上がるはずの鍛錬値が上がらなかったり下がったりするといった問題は残っていた)。また、動作もiOS版と比べるともっさりとした感じが強く、何のために作り直したのかわからないという感想であった。2chのスレッドの中ではこの新クライアントは単に今までの旧クライアントをAndroidに移植したものであり、本物の新クライアントはまだ開発中なのだと言って聞かない人が長いこと存在した程である。
その後、βテストでお披露目された新クライアントは3ヶ月後にAndroidでリリースされ、その後さらに3ヶ月後にiOSでも新クライアントがリリースされた。
鳴り物入りで導入された新クライアントであるが、先程も書いたように、旧クライアントと比べると確かに解決された部分もあるが、サーバ側が関わる問題は全く同じ問題を抱えており、新クライアント特有の問題が多く発見され、実質的には旧クライアントの方がバグが少ないという状態であった。
僕はβテスト以降は特にAndroid版で遊ぼうとはしていなかったため、新クライアントが先行リリースされたAndroid版を遊んでいた人達を眺めていたのだが、Android版で起こっていると2chで報告されている問題がそのままiOS版でも起こるとなると大変だと思って眺めている位には、Android版は阿鼻叫喚の様を呈していた。iOS版での新クライアントのリリースは3ヶ月遅れたが、この間Android版は何度もなんどもアップデートを繰り返し、その度に少しづつバグが修正されていくのをみて戦々恐々としていた。
iOS版の新クライアントがリリースされた直後、僕はスキマを遊ぶことができなくなった。これはゲームを起動した後すぐに「通信エラー」が表示されてタイトル画面に戻されるという問題で、これを回避する方法が全然わからなかったためだ。「あぁ、ログインボーナス貰えてたのがなくなっちゃうなぁ」と思ったのを覚えている。
しかし、この問題については2ch(正確にはTwitter経由であるのでTwitterの誰か)に「お知らせ」をタップしてからだと通信エラーが起こらない、というオカルトじみた書き込みがあり、それを信じてやってみると確かに通信エラーが起こらないということが確認できた。これで僕もスキマをプレイすることができるようになったのである。この時は本当に2chというログを読んでスキマというゲームを攻略している感じがしたものだった。
この時、僕は何故通信エラーが起こるのか、何故「お知らせ」をタップすると通信エラーが起こらないのか、といった事を確認したくなってiOS版の通信を眺めてみることにした。本来であればこのような行為を行うのは自分の主義に反するため、それまでは行わなかったのであるが、突然ゲームがプレイできなくなるというのは大変衝撃であったので、つい出来心で、という感じで眺めてみたのである。
クライアントとサーバ間の通信はHTTP、つまり平文で行われており簡単に通信内容をみることができた。タイトル画面から通信エラーが出るまでの通信内容はだいたい以下のような感じであった。
3. クライアントから並列で何らかの情報を取得するためのGETリクエストを送信
4. 並列で送られたリクエストへの返信をサーバが返すが、その全てに更新された(別の)セッションキーが入っている
6. クライアントで何らかの操作を行おうとしてサーバへリクエストを送信
つまり、3. のリクエストが並列で行われ、サーバが更新したセッションキーが 4. でクライアントに届けられるのであるが、恐らくは届いたセッションキーが前後してしまうことで壊れてしまったと考えられる。
これが、何故「お知らせ」をタップすると解消するのかであるが、実は「お知らせ」を取得するためのURLは http://…../login2 というURLへのGETリクエストであり、かつセッションキーを必要としておらず、このURLからのリクエストの返事にはセッションキーが含まれるという特殊なURLであったのだ。つまり、本来であれば 5. の状態の時には壊れたセッションキーを保持していたはずが、そこで「お知らせ」をタップすることで新しい(正しい)セッションキーを手にすることができるようになり、その後の通信はちゃんと行えるようになったのである(その後の通信では並列にリクエストを投げるパスは僕の観測した範囲では存在しないように見えた)。
この事に気づいたTwitterの人はどうやって気づいたのかはわからないが、よく見つけてくれたものである。ともかく、僕はこの情報に助けられ、スキマを再開することができた。
長くなったので https://anond.hatelabo.jp/20171221020636 へ続く
・現状を悪化させたくない
・失敗するのがまず嫌
結局のところこの辺に行き着くからリスクを抑えることだけ考えれば良さそう
問題はどうしたら振れ幅が小さくなるのか
コレが分からない
120過ぎて童死は人間として欠陥があるわ