読者です 読者をやめる 読者になる 読者になる

『逆転オセロニア』で逆転を狙えDeNA

ゲームおじさんや。

みんな、「オセロ」って遊んだことあるよな?

最近の若い人……みたいな言い方するんはアレやけど、もし、まだ「オセロ」をやったことがないって人がいたら、一度くらいはやってみて欲しいもんやで。

f:id:gmoji:20170512172632p:plain

実は「オセロ」って、日本人が発案したゲームなんよ。知ってた?

長谷川五郎っていうナイスガイが、高校生のときに思いついて遊んでたのが、広まったもんなんよ。

で、五郎くんのお父ちゃんが英文学者で、どういう名前にすればいいのか相談したところ、シェイクスピアの『オセロ』という戯曲が、最終的な名前として定着したんや。
(『オセロ』は、読んだことはないけど、どうやら白い陣営と黒い陣営が互いに裏切りあってドンパチするお話らしい。)

教養あふれるネーミングセンスやね!
でも、海外では「Reversi(リバーシ)」って名前で定着しとるらしい。

そんなオセロなんやけど、「DeNA」が『逆転オセロニア』ってゲームをリリースしとって、これがまたアツいゲームなんよ!

今回はその話や!


『逆転オセロニア』とは?

f:id:gmoji:20170512173506j:plain

簡単に説明するなら、「オセロ」と「RPG」を組み合わせたゲームや。

『パズドラ』が「パズルRPG」、『モンスト』が「ひっぱりアクションRPG」やとしたら、『オセロニア』は「オセロRPG」やね。

ただ、『パズドラ』が一人プレイ向け、『モンスト』がチームプレイ向けやとしたら、『オセロニア』は対人ゲームになっとる。

遊んでる感覚としては、最近流行りのTCG(トレーディングカードゲーム)に近いね。

スタミナ制ではあるんやけど、他プレイヤーと対戦するときにスタミナを消費する良心的なタイプ。

対人がメインで進んでいって、ランクごとにマッチングするから強プレイヤーに蹂躪されるということもないよ。

『シャドウバース』のようなカードゲームと同じで、勝つほどにだんだん強い人と当たるようになっていく。

ユーザー数が多いのか、マッチングで待たされることも皆無やった。


「7×7」マスのオセロRPG

通常の「オセロ」は「8×8=64」マスの盤面なんやけど、『逆転オセロニア』は「6×6=36」マスの盤面でバトルするんよ。「8×8」やと広すぎて、1バトルが長くなりすぎてしまうからね。

f:id:gmoji:20170512182922j:plain

ルールやけど、「最後に石が多いほうが勝ち」ではなく、「先に相手のHPをゼロにしたやつの勝ち」よ。

石をひっくり返して自分の色にする際に、攻撃が発生して、たくさんひっくり返すほど攻撃力は高くなるので、オセロの実力もけっきょくは大事になる。

でも、純粋なオセロじゃなくて、キャラのスキルやデッキ構成も意識した、まさに「オセロRPG」なんよ。

「角をとる」みたいな普通のオセロでも有利とされとる行動も、キャラクター(駒)の特徴やスキルと密接に絡み合って、文章で説明するのは難しいけど、膨大な選択肢がある。

無限の可能性を感じるやで!


ログインボーナスがザックザック、最近のソシャゲは大変や!

f:id:gmoji:20170512184105j:plain

このゲーム初めてびっくりしたんやけど、「ログボ」くれスギィ!

1日3回、しかもけっこうな量やで!

「ログボ」の他にも、侘び石やら、何やらの記念のボーナスとか、すっごく色々貰ったわ。

対人戦が前提のゲームやから、課金と無課金にほとんど差がつかないように、っていう配慮なんかもしれんね。(実際差がつかない。)

こういうサービスばっかりしちゃうと、儲けがそのぶん減ってしまうんやけど、それは、これからこのタイトルをもっともっと盛り上げようとする意気込みのあらわれなんかもね。

まあそれは、こうでもしないとユーザーが定着してくれないという、レッドオーシャンなソシャゲ業界の事情もあるんやけどね。

こんだけ色んな選択肢があるんやから、「お・も・て・な・し」しないと誰も居着いてくれんのよ。

ユーザー様ってのは残酷なもんやで!


逆転を目論む「DeNA」だからこそ!

f:id:gmoji:20170512185735j:plain

しょうもないゲームばかりつくるDeNAの印象と打って変わって、『逆転オセロニア』は勢いを感じさせるようなアツいゲームやった。

その熱量、伝わってきたやで!

DeNAは、以前、キュレーションメディアかなんかの問題で、こっ酷く怒られとったよね。

「👻肩こりの原因は幽霊やぞ👻」みたいな記事を書いて大目玉ってwww

アホらしいわwww

まあ、こんなブログ書いとるゲームおじさんが言えたことじゃないけどな。


でも、今回の『逆転オセロニア』の猛プッシュは、「崖っぷちから逆転してやるぞ!」っていう意気込みの表れなんかもしれんね。

負けてる時ほど面白い!」がキャッチコピーのドラマチック逆転バトルゲームやからな。

こう書くと笑っちゃうけど、普通にすごくいいゲームやと思うよ。

今までグレーゾーンを突っ走ってきたDeNAの、「これからは白黒つけていく」という意思表明なのかもしれんね。(うまいこと言ったつもり。)


『逆転オセロニア』のインストールはここから。
 

プログラミングと小説執筆にはシナジーがあるのか?ゲームおじさんの創作論

チャオチャオ。調子にのって創作論なんかを書いちゃおうとしているゲームおじさんで〜す。

ゲームおじさんは、いちおうプログラマーとして仕事をしていたこともあるし、とある小説新人賞で三次選考を通過したこともある。

どっちも二流ではあるんやけど、両方の知見は持っているつもり。

そして今回は、「プログラミングと小説執筆にはシナジーがあるのか?」というテーマを論じたい。

プログラミングと小説執筆は近い?

プログラマーの仕事をやってく上で、「可読性」の高いプログラミングを書くってのは大事なこと。

ちゃんと動くものを書くのは前提として、「読みやすい」コードを書けるのが良いプログラマーみたいな風潮はある。(あくまで仕事上の話ではあるけどね。)

だから、「文章力」と「プログラミング能力」が隣接してるって考え方はわりとあるんよ。


プログラマーかつ小説家の人もおるよね。

『すべてがFになる』など、プログラミングの知見を活かして小説を書く「森博嗣」氏とか、最近では『裏切りのプログラム』の「柳井政和」氏とかね。

すべてがFになる THE PERFECT INSIDER S&M

すべてがFになる THE PERFECT INSIDER S&M

裏切りのプログラム ハッカー探偵 鹿敷堂桂馬

裏切りのプログラム ハッカー探偵 鹿敷堂桂馬


で、一時期のゲームおじさんは、「プログラミングをする能力と小説を書く能力はシナジーがあるのかもしれない」と考えながら、両方をこなしてたわけ。

プログラミングと小説執筆にはシナジーがあるのか?

先に結論を言うと、「無い」と、ゲームおじさんは考えてる。

もちろん、人間のあらゆる営為には何かしらの共通点がある、みたいな意味では、お互いの知見が寄与し合うところはあると思うよ。

でも、基本的に、「小説執筆」と「プログラミング」は、反対の性質を持つものやと思うわ。


こう書くと偉い人達に怒られるかもしれんけど、プログラミングは目的が陳腐なほうが上達しやすいんよ。

一方で、小説を書くときは目的を自分で考え出さないといけない

だから、プログラミングのノリで小説を書いてもゴミみたいな内容になるし、小説的な考え方はプログラミングをする際の妨げになるんよ。

別に、どっちのほうが優れているか、みたいな話ではないよ。

プログラミングは「手段」を考えること

プログラミングの第一歩とされる「Hello World」の出力をやったとき、「できたぜ!やったぜ!」と思う人と、「だからどうしたw」と思う人とでは、前者のほうがプログラミング出来るようになりやすいんよね。

これは、上達していっても同じで、ちょっとしたゲームを作るだとか、ちょっとしたアプリを作るみたいなフェーズでも、最初は大したことが全然できんのやけど、そういう「大したことがないもの」に嬉々として取り組める人のほうが、プログラミングできる人は多い。

プログラマーの仕事は目的の設定ではなくて、与えられた課題に対しての最適な手段を追求することやからや。


プログラミングは、目的を達成するための「手段」や。
そして、手段を磨くには、手段そのものを愛する必要がある。だから目的は二の次にしないといけんのよね。

「目的の大事さ」をちゃんと考えてしまうような人に、プログラミングは性質的に向いていないわけよ。人間って万能じゃないからね。

剣を握らなければ おまえを守れない
剣を握ったままでは おまえを抱き締められない
(久保帯人『BLEACH』)

みたいな感じやね。

「手段」に習熟してしまった者は、そういう業(カルマ)を背負うんよ。
プログラマーって、基本的に変なやつが多いもんね。

手段と目的の両立というのは理想

手段を持ってるやつが目的を設定する」みたいなのは、IT黎明期に登場したハッカー達のコンセプトやったんかもしれんね。

ポール・グレアムっていうLispおじさんのエッセイにも、そんなことが書いてあった気がする。

ハッカーと画家 コンピュータ時代の創造者たち

ハッカーと画家 コンピュータ時代の創造者たち

Googleのイケてるヤツらの考え方も、そんな感じかもしれんね。

でも実際、「言うは易し」で、本当のトップクラスがプログラミングを修めるからこそ成り立つ世界なんやろうな。

「手段を持っている人が目的を決めろ」っていう風潮は日本にもあるけど、表面的なところだけを真似しても大変なことになるぞ!

プログラマーの偉い人って、ホントにつまらんことで威張っとったりするからなあ。

「まともなプログラマーが理不尽な要求を受ける系の話」って、ネットでは流行るけど、実際はそんな単純なもんじゃないんよ。

「目的」を決めるフェーズと、それを達成するための「手段」を決めるフェーズは、切り離して考えるのが王道やとゲームおじさんは思うわ。

事業をやる上での「目的」は、金を出した人か、責任を負うことのできる人が決めればいい。

小説は「目的」が明確ではない

じゃあ小説の執筆はどうなんかって言うと、小説は「目的」を念頭に置きながら書いていかんといけんわけよ。

小説の「手段」にあたるものは、みんなが持っとる。
ほとんどの日本人は、日本語を書くことができるだろうし、読んで意味を理解することもできる。

だから、ただ「書く」という点においては、「小説を書ける人」と「プログラミングが書ける人」なら、「小説を書ける人」のほうが圧倒的に多いやろうね。

その代わり、小説ってのは「目的」が明確じゃない。
「これを書けばいい」「これさえやればいい」ってものが一切無い世界や。

プログラミングは、目的を解決するための「手段」なのに対して、小説は、「目的」を産み出していく作業なんよ。

「目的」の大切さ 「手段」の大切さ
プログラミング
小説執筆

図で表せばこうやね。


だから、プログラミング的な発想で、「とりあえず手を動かして」小説を書いても、全然うまくいかんのよ。

以前、プログラマーの知見を活かして小説を書くために、小説をGitで管理するみたいなことをやってみたりもしたんやけど、ダメダメやった。

「何を書くか」っていうのを、手を動かす前から煮詰めるフェーズが、小説には必要なんよね。

「目的」を見つけ出すってのも、とんでもなく大変なことで、だからこそ小説家はいっつも苦悩しとるんかもしれんね。

f:id:gmoji:20170511182552j:plain
(画像は太宰治)

若者の天才ハッカーはおっても、小説家ってのはある程度の年齢じゃないとモノにならんってのも、そういう理由かもね。


手段と目的が同時進行していく場合もあると思うよ。

でもそれは、時代に恵まれた人か、一握りのトップクラスの考え方やろうね。

我々凡人からすれば、「あっちを立てればこっちが立たず」ってなるのが普通よ。

ゲームおじさんの結論

というわけで、小説とプログラミングってわりと正反対の性質のものやってこと。

ただ、創作は個人の才能が大きく、こういう一般論を軽々と飛び越えていく天才が世の中におるってのも事実やけどな。


凡人であるゲームおじさんの最終的な結論としては、「やりたいことがあるときは、まずそれのみに向き合って一生懸命やること」やと思うわ。

「○○をすれば後々○○に有利になる」みたいなことは、あんまり考えんでいいと思う。

自分の一番やりたいことに、できるだけのリソースを投入するんや!

この歳になって思うけど、人生は短い。

ゲームおじさんが「サーバー」について説明するよ

たまには、ゲームおじさんの知的な一面をちらっと見せるために、技術系の話題でもしようかな。


じゃあ、今日のテーマは「サーバー」や。

最近流行りの「マストドン」のインスタンスなんかを立ち上げるときには、サーバー関連の知識は必須やね。

あと、AbemaTVの「亀田興毅に勝ったら1000万円」の企画で、視聴者が殺到してサーバーがダウンしたのも記憶に新しいね。(ゲームおじさんはリアルタイムでは見てなかったけど。)

また、ブログを本格的にやろうとするなら、サーバーの知識はけっこう必要になってくるかもしれん。(はてなブログは何から何まで親切にやってくれるけどね。)

で、今回は、すごくザックリとなんやけど、ゲームおじさんが「サーバーとはなんぞや?」を説明していくわ。


「サーバーサイド」の誕生

「サーバー(server)」って概念は、コンピューターが進化していく過程で産まれたものや。

昔のコンピューターは、「メインフレーム(大型汎用コンピューター)」って言われとるんやけど、ようするに、部屋一面に並べるでっかいコンピューターよ。

f:id:gmoji:20170510200135g:plain
Wikipedia「メインフレーム」から画像引用)

大学の研究室とかにあって、みんなで何かすごい計算とかして、「ワーオ!」って感じやったんや。

その時は、データを保存するところと、操作をするところ(端末)が、一緒やったんよ。


で、「インターネット」とか「パソコン」が出てきて、それぞれが個人用のコンピューターを持つ時代になると、「操作するところと専用の処理をするところを切り離したほうが良くないか?」って発想が出てきた。


そして、「クライアントサイド(操作するところ)」と、「サーバーサイド(処理をするところ)」に別れた。
サービスを受ける側と提供する側って言ったほうがわかりやすいかもしれない。

これを、「C/S(クライアント・サーバ)モデル」って言う。


「クライアント」も「サーバー」も、同じ「コンピューター」ではあるんやけど、それぞれ違う役割をさせるわけよ。

「クライアント(client)」側は、ユーザーの入力と、出力(描画)っていう大役をこなす必要がある。
「サーバー(server)」側のコンピューターは、必要なデータを届けてくれる。

スマホをピャッピャッしたり、キーボードをガチャガチャやったりするのが、「クライアント」。
で、ウェブのテキストとか、ゲームのガチャの内容とかを届けてくれるのが、「サーバー」。


C/SとP2P

「C/S(クライアント・サーバー)」モデルでは、ユーザーが持つ端末の「クライアント」側が「サーバー」にやってほしい処理を要求して、「サーバー」側が要求されたものを提供(serve)する。

だから、「サーバー(server)」って言う名前なんよ。

ちなみに、「サーバー」と「クライアント」に分けない「Peer to Peer(ピア・ツー・ピア)」ってモデルもある。略して「P2P(ピーツーピー)」って言うんやけど、役割分担をせず、対等なコンピューター同士が通信するんよ。

クライアント・サーバー型のネットワークはこんな感じ。
f:id:gmoji:20170510200704p:plain


一方でP2P型のネットワークはこんな感じ。
f:id:gmoji:20170510200654p:plain
Wikipedia「Peer to Peer」から画像引用)

もともとの「分散」っていうインターネット的な考え方からすれば、P2Pが理想なんやろうけど、やっぱり「クライアント」と「サーバー」に分けたほうが、楽やし便利ってことやね。


サーバーとクライアントの具体例

具体的に説明しよう。

例えば、みんなはこのブログ、「インターネット」で見てるわけやろ?

インターネットで、膨大な情報を見ることができるよね。

それは、ウェブブラウザを使って、あなたのパソコンとかスマホの画面に表示させて見るわけやけど、情報自体が手元にあるわけじゃないじゃない?

インターネットでリンクを辿って得られる情報は、どこかのサーバーにあって、それが提供されるから、自分の端末で見ることができるわけよ。

情報の「置き場所」は、それぞれが契約してるサーバーの中にあるわけ。


あと、スマホのアプリゲームも例に出すとわかりやすいかもしれん。

スマホの画面を「タップ」したり「スワイプ」したりしてゲームを操作するやん。これが「クライアント」側の処理や。

そして、新しいステージを読み込んだり、レベルアップしたり、ガチャを回したらキャラが手に入ったりするのが、「サーバー」側の処理や。

ちなみに、ウェブサイトの閲覧と違って、スマホのゲームの場合、画像やテキストを描画する以上の機能が必要になる。
だから、アプリをインストールすることで、クライアント側の処理を豪華にしてるんやね。

ウェブブラウザで遊ぶ「ブラウザゲーム」が、アプリをインストールする「ネイティブアプリ」のゲームになったことで、「パズドラ」や「モンスト」など、動きを取り入れた複雑なゲームが可能になったってわけよ。


サーバーはお金がかかる!

実は、サーバーを運用するのってけっこうなお金がかかるんよ。

消費者からすれば、「インターネットの通信料金」って、契約したら月額いくら、みたいな「定額制」やよね。

でも、企業側は、データのやりとりが増えれば増えるほどお金がかかる「従量課金制」なんよ。

だから、動画なんかをネットで流せば、視聴者は無料で見れたとしても、動画を放送する側は膨大なサーバーの使用料を払わんといけん。

「AbemaTV」は1年で200億の赤字らしいけど、コンテンツの制作費よりも、動画を流すためのサーバー代と通信料で、すごくお金がかかっとると思うね。


サーバーダウンは怖い!

先日、亀田のボクシングのイベントでAbemaTVのサーバーがダウンしたけど、これは普通に大失態や。エンジニアとして一番やっちゃいけないレベルの失敗。

十分に準備していたんやろうけど、何らかの予想外の障害が起きたんやろうね。
AbemaTVは、単純な視聴者数だけじゃなく、視聴者が打てるコメントの処理とかもあるし、あそこまでの規模になると、「これもうわかんねぇな」ってことになっても不思議はないやね。担当した人は災難やったね。

「サーバー」だってOSのあるコンピューターやから、自分たちが今持っとるスマホとかパソコンとかと同じように、思ったとおりじゃない挙動をすることがある。怖いもんやで。


ブログのサーバー

ちなみに、今みんなが見たり、あるいは書いたりしてるブログやSNSのデータも、サーバーに保存されとるわけよ。

ゲームおじさんは、昔はWordPressでブログを書いとったんやけど、WordPressブロガーは、ちゃんと自分でサーバーを借りる必要があるんよ。

まあ、WordPressっていう仕組みはすごくて、記事書いたら自動でアップロードしてくれるし、サーバー側との連動もすごく簡単にできる。
検索すれば、必要な情報はすぐに見つかるし、運用に苦労することはほとんどないと思うけどね。

あと、企業が提供するブログサービスは、レンタルサーバーすら必要ないね。

今自分が使っとる「はてなブログ」っていうサービスは、「株式会社はてな」が用意したサーバーに、全はてなユーザーのデータがあるわけよ。

便利やし楽やけど、生殺与奪を「株式会社はてな」に握られとるってことでもあるわなw


ゲームとサーバー

当然やけど、オンライゲームとかウェブサービスを運用するときは、サービス提供側がサーバーと契約することになるんよ。

サーバーの設計をどうするか、どの言語、フレームワーク、ミドルウェアを使うかなど、色んな選択肢があるよね。

もちろん、そのためのサービスを提供している会社はたくさんある。

VPS(ヴァーチャル・プライベート・サーバー)」か、「AWS(アマゾン・ウェブ・サービス)」のどちらかを使うのが王道やね。

「VPS」は、一つのサーバーの上に仮想的なサーバー環境を作れて、ようは一企業が提供しとるんやけど、登録者が自由にサーバーを設計できるってサービスやね。
「さくらインターネット」とか「GMO」とかが提供しとる。

「AWS」は、あのECサイト「Amazon(アマゾン)」が提供するクラウドコンピューティングサービスで、これも自由にサーバーを設計できる。操作を覚えるのは大変けど、並の企業のVPSよりは圧倒的に高パフォーマンスよ。

天下の任天堂さんも、実はAWSを使っとるんよ。

AWS 導入事例:任天堂株式会社、株式会社ディー・エヌ・エー| AWS


サーバーサイドとフロントエンド

ちなみに、web系のエンジニアは、フロントとサーバー、そしてインフラという分類に別れるらしい。

Webエンジニアの種類は、概ね

  • フロントエンドエンジニア:見える部分を作る人
  • サーバサイドエンジニア:動的な処理を記述する人
  • インフラエンジニア:各種サーバ環境を整える人

に類別できる。
ただし、人によってその担当領域が異なるため、明確な線引はできない。

この「Qiita」にわかりやすく書いてあるね。


ゲーム制作に関しても、モバイルゲームになってからは、フロントとサーバーを切り離して考えたほうが便利なことがほとんどやね。

まあ、ここらへんのことは、区分をしたからどう、みたいな話ではないと思うけどね。


流石に長くなってしまったので、今日のところはこれくらいかな。

普通に消費者としてサービスを使うぶんには、端末のコンピューターとは別に「サーバー」をやるコンピューターがあって、それはサービスを提供する側の企業がお金を払って契約しとるんやなあ、くらいの認識で何の問題もないと思うわ。

ブログ用のレンタルサーバーとか、ゲーム用のVPSについて詳しく書いてもいいけど、もう少し上級者向けの内容になってしまうからね。また次の機会にしたい。

たまには技術系っぽい話題を書いてみるのもいいね。

それじゃあまた。今後もゲームおじさんをよろしくね?