カテゴリー
ネットのサービス

Untrusted – JavaScriptをいじって先へ進むRogueライクゲーム

ローグライクゲーム、というジャンルがあります。Rogue(ローグ)を代表とする自動的に生成される迷路・迷宮から脱出するというゲームで、日本で有名なものでも、ネットハック、トルネコの大冒険、チョコボの不思議なダンジョンなど多数あります。

Untrusted は、そのようなローグ風ゲームのバリエーションなのですが、JavaScriptのコードを操作することでパズル的な迷宮を解き、先へ進むというのが最大の特徴です。

untrusted-3

画面左の迷宮で、自分のキャラクター”@”を、階段”□”まで、カーソルキーを使って導かなければいけません。しかし、普通に上下左右に移動しただけでは、出口にたどり着くことはできなくなっています。

そこで、右側のコードに書かれた、迷宮を生成するJavaScriptのコードのうち、書き換えて良いという黒地の部分を変更し、Ctrl+5 で実行するとあら不思議、壁や出口の場所を書き換えてしまうことで、次の階へと進むことができるようになるというわけです。

いかだを使ったり鍵を探したりと、面ごとに違う趣向の障害が配置されています。

その階がどういうトラップなのか、どんな障害が設けられているかというヒントがJavaScriptのコメントとして書かれているので、解く際の参考になるでしょう。

untrusted-2

壁を描画している部分の位置を書き換えるとか、出口の場所を移動するとか、で解ける面もありますが、後の面ではそれらを防ぐようなバリデーション・コードが追加されたりして、同じ手は2度使えないようになっています。

UntrustedのソースコードはオープンソースとしてGitHub上で公開されています。ソースコードを見れば現在のダンジョンが何階あるかはわかってしまうのですが。

# HackerNewsで紹介されたせいで、現在ゲームはちょっと重かったり、正しく動かなかったりすることがあるようです。その場合は、footerにリンクのあるミラーサイトで遊んだり、オープンソースですから自分のところで動かしたりということもできます。

via HackerNews

カテゴリー
fun

ArnoldC – シュワルツェネッガー言語

ArnoldC は、元カリフォルニア州知事にしてアクション映画俳優のアーノルド・シュワルウェネッガー氏の映画の中のセリフをキーワードとした新しいプログラミング言語です。

ハローワールドはこんな感じ


IT'S SHOWTIME
TALK TO THE HAND "Hello, World"
YOU HAVE BEEN TERMINATED

「ショーの始まりだ(バトルランナー, The Running Man)」がbegin、

「手に話せよ(ターミネーター3)」がprint

「お前はターミネートされた(ターミネーター3)」がend

に相当するようです。

こちらにセリフ集、じゃなかった言語仕様があります。

@No Problemo (トルゥー・ライズ)が1、@I Liedが0。

関数定義が

LISTEN TO ME VERY CAREFULLY (関数名)

で、関数からのリターンがあの有名な

HASTA LA VISTA, BABY

となります。

ではfizz buzzでも、と思ったら既にfizz buzz が公開されていました。もう少し短く書けるつもりでいたのですが、だいぶ長いですね。

arnoldc-fizzbuzz

YouTubeに別の人が作ったシュワちゃんの名セリフ160個、という動画があったので、キーワードの元ネタを追求したい方はどうぞ。

via Hacker News