箱庭ゲームを作りたい

ユニットが仕事するのを眺めるのがメインのミニスケープゲームを作りたい。
で、いざどうゲームを作ればいいのか考えたときに、思った以上にゲームの作り方がわかってないのに気づかされた。 ゲーム作るの、むつかしいね。

少しずつでいいから実装していこうと思う。 作り方がわからない機能は、わかる方法で実装しようと思う。

 

Ace of Seafood プレイ後の感想

どんなゲームかの紹介はいろんなサイトに詳しいので省略します。
感想のまとめを先に書くと

  • 序盤が面白さのピークで、クリア前後はだれる。
  • 紹介記事は多いけど、まともな攻略サイトが見つからない!

という感じです。

序盤が面白さのピークで、クリア前後はだれる

説明がめんどいのでスクリーンショットを貼るけど、ゲーム開始直後のテンポはすごくいいです。 このためだけに買う価値はあります。

20161211095352_1 20161215170808_1 20161215170850_1 20161215170934_120161215170756_120161213103650_120161215171750_1

ただ、このゲームは拠点にいる敵(魚など)を倒していくゲームなんですけど、私の場合はクリアし後も倒せない敵が存在して、もやもやした気分になりましたね。

その敵が倒せないのが私のプレイスキルが足りないのか、ユニット(魚の種類)の相性が悪いからなのかがゲーム中ではわかわなかったし、 もし相性のよい味方ユニット(魚など)を成長させる必要があるんだとしても、相性を試したいユニットを育成するには時間がかかるしで 「めんどい」 って思ってしまった。

それから、ゲームをクリアすると、ちょっと強い敵勢力が出現するんだけど、これが倒せなくて 「勝てねぇ! もういいよ!」 って思った。 個人的にはプレイ後は気持ちよくゲームを去らせてほしい。

あとは、味方ユニットの活躍を認識しにくいのも、ちょっと気になる。 TPS 視点で自分以外を注視してるわけじゃないので、味方ユニットを成長させても、その活躍がわかりにくい。 (仕方ない気もするけど)

紹介記事は多いけど、まともな攻略サイトが見つからない

ゲーム開始直後の意外性とかはすごく良いせいか紹介記事は多い。でも、まともな攻略サイトが見つけられなくて、後半に 「あれ? クロマグロとサンマが倒せなくね?」 ってなったときに、どうすればいいかわからなくなってしまった。 いい攻略サイトがほしい。

このゲームだけに限った話じゃないんだけど、プレイヤーが工夫してなんとかなるうちは楽しい。 でも、倒せない敵に遭遇してしまったときに 「ゲーム自体にヒントがある」 または 「攻略サイトに対処方法が載っている」 のどちらもないと、とてもつらい。 というか、そのプレイヤーにとってのゲームはそこで終わる。

Ace of Seafood は中盤以降の難易度を上げすぎた感があって、そこは私には合わなかった。

 

Plantera をプレイした感想

そういえば、こんなゲーム買ってたんだっけ? ということで、ついつい Plantera というゲームを始めて、クリアまでしてしまいました。

20161208220218_1

出てくるキャラクタが魅力的で、いい感じです。
ゲーム自体は、野菜や木を植えて、できた果実などを収穫するというクリッカーゲームです。 クリッカーゲームなんですけど、青いユニットが自動で収穫してくれるし、果物が実って木から落ちる様子が見てて飽きなかったりと、ほのぼのとした気分で眺めていられます。

20161208220239_1

はっきり言ってゲーム自体にに深みはないんですけど、適当なプレイ時間で全実績が取れるし、あとくされなくアンインストールできるあたりとか、とてもいいと思います。

20161208220246_1

ゲームのニュースも「今回はこういう変更したんだ。みんなありがとう、これからもよろしくね」みたいな感じで、読んでて好感が持てるし、私はこのゲームが好きです。

こういうゲーム作りたいです!

Infinifactory をプレイ

Humble Bundle で 3D パズルゲームの Infinifactory を購入したので遊んでみた。
ゲーム自体は出現するブロックを目的地まで移動させるように道を作る感じです。

20161123203132_1
初期状態
20161123203143_1
ベルトコンベアで道を作った後

置けるブロックの種類はステージが進むにつれて増えていくようだ。

で、このゲームステージまでにチュートリアルを兼ねたオープニングがあるんだけど、これが思わせぶりですごくいい感じだった。

20161123200707_1

オープニングはこんな感じで夜道を運転してるところから始まって、そのあと…。

おっと、今回はここまでにしようと思います。

透過メガネっぽいアプリ作り

「すけすけゴーグルくん」アプリの記事を見て「あ、これなら私にも作れるかも」って思ったので作り始めた。 画像処理の勉強も兼ねようと思ったので、「実践コンピュータビジョン」(O’REILLY) を見ながら進めた。

作る前の準備

まず、どう作るか考えた。

透過なしの場合の描画内容

ーーーー  ← メガネのフレーム画像
ーーーー  ← カメラで取得した画像

透過する場合の描画内容

ーーーー  ← レンズ部分に透過画像をはめ込んだ画像
ーーーー  ← メガネのフレーム画像
ーーーー  ← カメラで取得した画像

ここまでで、透過前、透過後、そしてメガネの画像が必要そうなのがわかった。
で、必要な素材を「いらすとや」さんで探してきた。

ushi ushi_naked glasses

いらすとや さん、ありがとう!
次に、適当な Web カメラがないのに気づいたので、最寄りのビックカメラで一番安いやつを買ってきた。

cheap_web_camera

なんだろな、ここまで準備がガバガバだと、「本当に思いつきで始めたんだなー」って自分で客観視できて良いです。

作り始めた

私が勉強していく過程でわかったこととかを説明し直すのは面倒なので、作業途中のスクリーンショットだけ貼っていきます。

ushi_sift_matching
同じ画像で SIFT 特徴量を用いたマッチングをしたはずなのに、対応位置がずれてショックを受けたときのスクリーンショット。

ushi_sift_matched_fixed
ふて寝した後で見なおしたら、あっさり修正できたときのスクリーンショット

ushi_match_matched
ホモグラフィーとか RANSAC を使って、モニタをカメラで撮った画像に対して検出できた画像の枠を青色で描画してみたときのスクリーンショット。 それなりに動作してちょっと嬉しかった。

transparent_niku
最後に、眼鏡内に透過後の画像をはめ込むようにして、実際に動作させたときのスクリーンショット。 縮小してない画像に SIFT を適用して処理が激遅だったり、アフィン変換が RGB 画像だと失敗する理由がわからなくて、透過画像が白黒になったりしている。

とりあえず、動作したことにした!

まとめ

  • 実践コンピュータビジョンの内容に沿って進めたら、それなりに動作して嬉しかった。
  • ちゃんと動くものを作るなら、何かの AR ライブラリを利用して作るのが簡単だと思う。
  • 和牛の垂れ幕が透けても、あまり嬉しくないのがわかった。

今回の記事のソースコードとかは、以下にあります。
https://bitbucket.org/satofumi/transparent_glasses

「勝ったら実力、負けたら運」についての考察

ゲームで負けると悔しい。  何度やっても負け続けると、そのゲームではもう遊ばなくなってしまうだろう。 長く楽しめる要件として「負けたときの理由を自分以外に転嫁できる」は大事な要素だと思う。

多対多のゲーム(MOBA)の場合

そういう見方をしたときに、多対多の MOBA は「勝ったら実力、負けたら味方のせい」が成り立ちやすいと思う。 Heroes of the Storm を例に上げると Warrior x 1, Assassin x 3, Support x 1 という構成だったときに、

「Warrior が 仕事してなかった」
「Assassin が突撃して死にすぎた」「Support の回復が悪かった」
「集団戦で 1人だけ集まるのが遅くて 4 vs 5 で負けた」
「私が揃う前に集団戦を始めて 4 vs 5 で負けた」

など、各々の立場で他人への批判ができる。 1 人で敵5人の集団に突撃するようなクソ Assassin にさえ「味方がついてこないのが悪い」という言い訳が可能になる。

その批判が適切なことも当然あるし、20 分くらいのゲームにおいては各人が少しずつ批判されうるプレイングになるのも確かだ。

1対1のゲームの場合

負けたときの理由は「相手が強かった」「自分が弱かった」というのが実際のところで、言い訳としては「ユニット、戦略の相性が悪かった」などになる。

負けたときにリプレイを見て「よし、ここが悪かったから次はこうしよう」と切磋琢磨できる人や、相手を出し抜いて勝ったときの楽しさが忘れられない人が遊んでいるように思う。

1人でやるゲームの場合

ソシャゲに多いパズルゲームなんかを想定して書く。 こういうゲームは基本的にはプレイヤーが勝てるように、あるいは敗北がない設計になっているように思う。 それは、負けたときの言い訳が「自分が下手だった」「必要なアイテム、ユニットを持っていないのに挑戦した」くらいしかできないからだ。

実際には、プレイヤーが勝てるステージを何度もプレイできるようになっており、プレイするうちにユニットのレベルが上がって次のステージがクリアできるようになる、という設計で、ゲームの寿命を伸ばしているように思う。

ただ、何度も同じステージをプレイしていると飽きてしまうので、そのあたりの調整はすごく大変だと思う。

まとめ

負けたときに「下手だから負けた」以外の言い訳ができると、ゲームとしての寿命は長くできると思う。 作りたいゲームを考えるときには、こういうのを意識していこうと思った。

負けたときに他人のせいにしてしまうのは、「自分が他人に親切にしたことは覚えてるけど、親切にされたことは忘れがち」という心理も絡んでいるのかもしれない。

 

HTC Vive を注文したので、いろいろ準備することにした

知人宅で HTC Vive を体験させてもらって

「これは良いものだ!」

って思ったので、HTC Vive を注文した。
だが、PC に必要なスペックすら調べずに購入したので、調べたりしたことを書いていこうと思う。

調査前になんとなく理解していることは

  • 部屋を片付ける必要がある。
  • 5年前の PC ではなく、割とよさ気な PC を用意する必要がある。
  • 次世代の VR が発表されたら、それも買えばよい。

ということくらい。

HTC Vive の公式ページを見てみよう

見てみた。
トップページは英語だったけど、FAQ ページは日本語で表示された。

  • GPU:NVIDIA® GeForce® GTX 970 または AMD Radeon™ R9 290以上
  • CPU:Intel® Core™ i5-4590 または AMD FX™ 8350以上
  • RAM:4 GB以上
  • 映像出力:HDMI 1.4 または DisplayPort 1.2以上
  • USBポート:USB 2.0以上 1ポート
  • オペレーティングシステム:Windows® 7 SP1, Windows® 8.1以降、Windows® 10

(上記は http://www.htcvive.com/jp/support/faqs/GUID-ABA623FC-B51F-43F7-B2B5-D4C83A37C992.html より抜粋)

とりあえず、GPU と CPU は良い物を使え、という風に理解した。 それ以外は今どき USB 2.0 未満な環境は少ないだろうし、特に気にしないでよさそうだ。

次は、この要件を満たしたモデルの PC を買うか、今の PC の CPU, GPU を更新するかを決めないといけない。

使いたい GPU, CPU を決めて値段をまた調べたら続きを書こうと思う。

承認欲求を満たしながら開発するために

ソフトウェア開発のプロジェクトを進める上で、仕様やコードのレビューを行い、不明な点を相談して決めたりする。 そうやって、曖昧だったタスクを明確な個別タスクに落としこんでいくと最終的には個人でやるタスクになる。  個別タスクを達成したときに、

「できたー!」
「できたか! よし、宴じゃ! 宴の準備じゃ!」

ってなる職場なら承認欲求も満たされ、気分を切り替えて次の個別タスクの開発に取り組めるかもしれないが、実際は違う。 現実の開発では個別タスクを達成しても、集中している周囲の人間の邪魔にならないように軽く休憩したりするくらいだろう。

ソフトウェア開発は、コーディングの段階になると集中して開発する必要があるため、孤独で静かな作業になる。 集中した時間それ自体は、達成感と心地よい疲労感を得られる。 ただ、本来は課題を達成した直後に「やったね」「おめでとう」「やればできると思っていたよ」などの賛辞があるべきだ。 現代人は、もっと承認欲求を満たされなければならないと思う。

そして、現代人の承認欲求を満たすために開発されたのが「クエリちゃんのタスク管理」だ。

query_first_message

解説しよう。 これは、普通のタスク管理システムに見えるかもしれないけど、登録したタスクを完了するとクエリちゃんが褒めてくれる凄いシステムだ!

開発を終えてタスクを終了のボタンを押す、その緊張が弛緩するタイミングで「やったのデス!」とか「すごいのデス!」と褒められると、

「あぁ〜〜、これが承認欲求が満たされるというやつか〜」

ってなる。 このシステムを使ってると、自分の承認欲求が満たされるのは当然として、他人を褒めることの大切さも理解できます。  つまり、自他共栄の雰囲気を自然に広めることができるのです!

まぁ、冗談はここまでにして言いたかったことをまとめると

  • 褒められるのは、いいぞ!
  • もっと他人を褒めよう。
  • クエリちゃん、ありがとう。

ってなる。
これからも、少しずつでもいいから自分の環境を改善していきます。

クエリちゃんのタスク管理
http://hyakuren-soft.sakura.ne.jp/query_manager/

「Among the Sleep」をプレイしてみた

今回はホラーゲームの「Among the Sleep」です。
日本語化 Mod を導入してプレイしました。

どんなゲームなの?

赤ん坊の視点で行動するホラーゲームです。 オープニングから赤ちゃんプレイを強要されるあたり、かなりマニアックなゲームと言えます。

2015-12-31_00002

ゲーム中では、高速移動できる「ハイハイモード」と物をつかんだりできる「よちよち歩きモード」を切り替えながら操作します。 ステルスゲームのノリで「こちら、イーグル。 よちよちモードに移行する」とか脳内ナレーションをしながらプレイすると、よりいっそう楽しめます。
トラップっぽい何かに対して「これはブービートラップ、いや、ベイビートラップか?!」などとナレーションするのもオススメです。

さて、冗談はここまでにして。
このゲームですが、ホラー要素としての音楽や効果音、光量の演出はわりと私好みです。 ゲームクリアまで数時間ですが、その間に 2回ほど鳥肌が立ったりしました。

2015-12-31_00004 2016-01-02_00001

難を言えば、ところどころで「で、どうしたらいいの?」っていう状況に陥りやすかったことでしょうか。 (単に「TAB キーを押すと入手したアイテムが使える」というのに気づかなかっただけとも言います)

こういうホラーゲームは「移動したいけど、怖いから移動したくない」っていう葛藤状態を維持できるかがネックになると思うので、何をすればいいのかわからない状況になるとその葛藤が崩れて没入感がなくなる気がしてて、

(「本能」と「理性」の関係)
こわい vs 進まなければならない

なれてきた vs 進みたいけど進み方がわからない

こわくない vs 進めないのでイライラする

ってなっちゃうので、もっとうまく誘導してほしかったなー、と思います。
ともあれ、ホラー要素もストーリー要素も楽しめたゲームでした。

好きなところ

  • ちゃんと怖い
  • ストーリーをちゃんと伝えきれている

嫌いなところ

  • 暗すぎたりして周囲がわからないシーンがある
  • まれに行き詰まる
  • 最初の1周しか楽しめない…(仕方がないけど)

まとめ

赤ちゃんプレイのホラーを楽しみたい人は買ってみよう!

「100% Orange Juice」をプレイしてみた

Steam で買ったゲームをプレイしていく企画です。 今回は 「100 % Orange Juice」 をプレイしました。

どんなゲームなの?

人生ゲームのルールをシンプルにして対戦できるようにしたボードゲーム風のなにか。  バトルやカードがある。

2015-12-31_00001 2015-12-31_00002

「移動してバトルがあって、カードも使える」って聞くと面白そうなんだけど、これが全然おもしろくない。 というよりも良くも悪くもドキドキ感がない

プレイしてて「絵がかわいくて音楽があってエフェクトが良くても、面白くないゲームは存在する」ということを実感した。 今まで「ソシャゲは絵がユーザに媚びてるかわりにゲームとしては微妙なものも多い」って思ってたけど、その主張は取り消したい。 このゲームに比べると、世間のソシャゲはすごく、すごく面白い。

なんというか、カルドセプトと人生ゲームを組み合わせて良い点と悪い点を対消滅させて「楽しくなく、苦痛でもない」という雰囲気を出すことに成功している稀有な例だと思う。 イライラしているときにこれをプレイすると冷静になれそう。

良かった点も書くと、ゲーム後の報酬を使って新しいカードを購入するときはドキドキしたし、ゲームが進行しているのを眺めてて苦痛すぎないのも確か。 「ガチャ」が簡単にドキドキさせる仕組みとして、とても有効なのが確認できた。

好きなところ

  • プレイしてて無心になれる点。 他の何かのアイディアを練るのによさそう。
  • 私もゲームを作りたい、という気分にさせてくれるところ。
  • このゲームするなら「カタン」やりたい、って思わせてくれるところ。
  • 絵がかわいい。
  • カードを買う瞬間はドキドキする。

きらいなところ

  • サイコロを振ったり選択のためにクリックが必要なところ。
    • いっそのこと全自動でいいと思った。
      • 全自動をつきつめるとクリッカーゲームになるのかもしれない。

まとめ

Steam のレビューに「フレンドと遊ぼう」ってのが多かったけど、ほかのゲームで遊んだ方がいいと思った。

「カタン」やろうぜ!