🍻

DragonRUbyで作ったゲームをWeb上で遊ぶ!

2022/12/20に公開

最近、DragonRubyを使ってゲームを作りました。
今回は作ったゲームをWeb上で遊べるようにしようと思います!

DragonRubyって?

Rubyでゲームを開発できるツールキットです!
https://dragonruby.org/toolkit/game

DragonRubyのここがすごい

  1. Rubyでゲーム開発ができる
    Ruby大好きな人にもってこい!
  2. ホットリロード対応
    rbファイルを変更して保存すると、実行中のゲームに内容が反映されるので
    いちいちゲームを再起動しなくていい!
  3. クロスプラットフォーム対応
    Windows, Mac, Linux, Web, ラズパイ用のゲームにビルドできる!
    課金すれば、ゲーム機用にビルドすることも可能らしいです。

作ったゲームをWebで遊べるようにする

  1. GitHub Pages などお好きな環境に公開先を作ります。
    自分は、render.com の Static Site にしました。
  2. 作成したゲームをビルドします。
    以下のコマンドを実行
    ./dragonruby-publish --only-package
    ./builds/ 内にビルドされたファイルたちがいます。
    今回使うWeb用のファイルは、 ./builds/<ゲーム名>-html5-<多分バージョン>/ の中にビルドされます。
  3. ./builds/<ゲーム名>-html5-<多分バージョン>/ をアップロードする。
    ./builds/<ゲーム名>-html5-<多分バージョン>/index.html が表示されるように設定しましょう。
  4. 完成!
    今回作ったゲームをこちらで遊べるようにしました!
    https://yopparai.onrender.com/

今回作ったゲームのコンセプト

今回作ったゲームのコンセプト、それは
「千鳥足でフラつく自分を頑張って制御する」
です。
ちなみに自分はお酒を飲まないので、全然気持ちがわかりません。

ゲームタイトルを日本語にしたら、文字化けした・・・

先ほどデプロイしたゲームですが、ゲームのタイトルを日本語文字列で設定したところ
titleが文字化けしちゃいました。どうやら、ビルドした時に生成されるJSが自動でtitleをセットしてくれるようなのですが、そこで文字化けしてしまうようです。
どうやって直そう・・・。文字コードもUTF-8になっているのだけれども・・・。
今後の課題です。

最後に

欲望のままに実装したので、人様に見せられるようなコードになりませんでしたが、綺麗にリファクタした暁には公開しますね。その時はくるのか・・・?
Rubyで2Dゲームを作るときの選択肢はいくつかありますが、DragonRubyはホットリロードやクロスプラットフォーム対応なところがすごく魅力的ですね。
クソゲー作りたくなった時にはどんどん作ってみたいと思います。

皆さんもぜひ、DragonRubyを使ってゲームを作ってみてください!

あと 酔っ払いゲーム 、ぜひ遊んでみてください!

Discussion