クラフトワークのみなさんこんにちは。マシーナリーとも子です。今回は新発売のゲーム、『オメガクラフター』を遊んで紹介するぜ!
本作はすっかりジャンルとして定着した、オープンワールドのサバイバルクラフトゲーム。
ゲームの舞台は「謎の妨害プログラムによって開発が難航中の新作ゲームの中」という入れ子構造な感じになっている。このゲーム内という設定が後述のユニークポイントにつながるフレーバーとなっているんだけども……。
※この記事は『オメガクラフター』の魅力をもっと知ってもらいたいPreferred Networksさんと電ファミ編集部のタイアップ企画です。
メーカーはディープラーニングの開発会社
まず、本作の開発を行なったPreferred Networksはゲーム会社じゃなくて、AIのソフトウェア、AI専用のスーパーコンピュータや半導体の開発会社なのだという。確かに公式ウェブサイト見てみるとゲーム感ゼロだわ。
ところで本作『オメガクラフター』の特徴はNPCの相棒・グラミーがいること。
こいつが可愛いながらも本作のキモとなる存在で……例えば特に何もしなくても後ろからついてくるし
敵が近づけば勝手に攻撃してくれる。
AIはそこそこ優秀で、地形に引っかかったまま動かないとか、射撃してほしい時にしてくれないみたいな不自由な感じはない。
だがグラミーは自動で付き従ってくれるだけでなく、プログラミングすることでより具体的な指示を与えることができるんだな。
本作では『Playgram』という、開発元のPreferred Networksが開発した、パズルを組み合わせるようにしてプログラミングできるツールの仕組みを採用している。元は小学生からプログラミングに親しむためのものとして開発されたツールなので、ハードルは非常に低いものになっているぜ。
そもそも普通に遊ぶだけなら自分でプログラムをこさえる必要すらなく、最初から用意されたものを使うだけで十分だったりする。
ここまで読んだゲーマー諸君は
「じゃあプログラミングできる! なんて要素いらなくないか? 命令を与えるだけで良くないか? 余計な操作を増やすんじゃないよ!」
と思うかもしれない。
だがこのプログラミング要素が本領を発揮するのが冒険の拠点となる「街」だ。
工場作ってガンガン素材を作って
街では冒険についてこない代わりに、クラフトなどの作業に従事させられる「街グラミー」を呼び出すことができる。
冒頭のマンガでも言った通り、自分でクラフトをするとまあまあ時間がかかる。
一個あればいい武器や防具ならともかく、素材として使う木の板やインゴットを量産するのはすげえ手間だぜ!
それを街グラミーをプログラミングすることで勝手に量産してもらうというわけだ。
使う機材と材料が入った箱と完成品を入れる箱を指示して…
あとはほっといて冒険に出かける
帰ってきたら量産されてるー!
この街グラミーにどんどん素材やアイテムを量産させて工場を形成していくのが本作の醍醐味と言えるだろうね。
ゲームを進めるごとに必要な素材の種類や数も増えてきて、それらを得るために雇うグラミーを増やして、生産と保管の設備を整えるために街の敷地を拡張して……。
いつしかデカめの工場と化した街の中を、忙しなくグラミーが走り回る様子を見てるとなんとも言えずエモい気持ちが湧いてくるぜ。
プログラミングもやってみる
そうしてグラミーによって自動化されていく工場を眺めていると、ふと思うことがある……。
例えば「木材から矢を作れ!」と命令したグラミーは延々矢を作り続ける。
でも矢とかさ、200本くらいあればとりあえず困らないんだよ。
……
こういう時こそプログラミングの出番か!!
というわけでもうちょっと器用なクラフトをやらせてみることにしよう。
とりあえずまず、「プログラミングの練習として数を数えさせてみるのはどうだろう?」と思った。
グラミーにいま作ってる素材は何個になったのかを逐一報告させるのだ。
こんな感じのプログラムを与えて、ほかのグラミーが完成品を入れている箱を指定すれば箱の中身を数えてくれるんじゃないかな? と思ったんだけども……。
指示を与えたはずのグラミーは微動だにせず、ただただ沈黙するばかりであった。なんでだ。
仕方がないので次は既存のクラフト用プログラムをコピペして、「クラフトをさせる」に相当する箇所を「数える行動」に変更してみた。これでどうだ……?
うおお数えた!!!
箱の中身は「27」! そうだよ! よくできたなお前!!
このあと結果はチャットに吐き出させる形にさらに改造することで、冒険中も鉄のインゴッドがいま何個あるかがわかるようになった。このプログラムが役に立つかどうかはともかく、試行錯誤の末に意図通り機能するのはうれしいものがあるな!
なんとなくプログラム改造のコツはわかったので次は
「ある程度アイテムAを使ったらアイテムBを作る」プログラミングをしてみようとこんな感じのものを制作(3回ミスった)。
うおお!! みごと「肉の在庫があるあいだは肉を焼いて、肉がなくなったら今度はバナナを使ってバナナジュースを作る」プログラムができたぜっ! これを応用すればいろんなクラフトを並行してやらせることができるのでクラフトの効率が上がる……はず!
実際のところ現状のプログラミングでは無駄が多いというか、「指定された行動ができないことの確認」が多すぎていまいち効率が悪い。なのでもっと頭のいいプログラムを組めれば、もっとチャッチャチャッチャと作ってくれそうではある。
このへん、リリースされたら有識者たちによるレシピがガンガン公開されて我々下々はそれをパクる感じで生きていけるんだろうなー。
みんなの作例、待ってるぜ!