コミュ障だから明日が僕らをよんだって返事もろくにしなかった

何かを創る人に憧れたからブログをはじめたんだと思うよ

今日もゲームをつくれずにブログを書いてしまったという懺悔

僕はゲームをつくれなかった

はい、おはようございます。僕です。今日も中身のないブログを書いてしまったので、今後そういったことのないように反省のためにブログを書いてしまいました(???)。さて、見出し通りですね。今日はゲームをつくろうと思ったのですよ。

これで
comigo.itch.io

Ct.jsは、2Dゲーム制作エンジンで、高品質なドキュメント、アセット管理のためのビジュアルツール、スマートなコードエディタなどが1つのIDEに統合されています。

Ct.jsはゲーム開発の初心者に適したエンジンで、プログラミングコースで無料で使用することができます。Ct.jsは、ウェブやデスクトップ用のゲームをすべてct.jsで作って公開することができるので、経験豊富な開発者にも適しています。

こういったやつ。簡単に2DゲームがつくれるIDEだそうです。


まあゲームをつくるかどうかは謎なんですけども、そういうのがあったらとりあえず中身を見ておきたくなるじゃないですか*1。なので触ってみてあわよくばゲーム作れたらいいなとか思ってドキュメント読んでたらそれだけで時間が過ぎてすまったのでブログ書いて現実逃避してるって次第です。


触ってみた

起動するとこんな感じ。
f:id:andron:20210826210005p:plain
Project、Textures、UI、FX、Sounds、Types、Roomをいじることでできるっぽい。Textures、UI、FX、Sounds、Roomあたりは素材を読み込ませて使えばなんとかなるっぽい感じ。動作させるキャラクターをいじるTypesの部分がコード書くやつっぽい。

Typesの見た目はこんなん。
f:id:andron:20210826210353p:plain

ただコード書くだけなのかと思ってたらなんかいくつか分かれててよくわからんってなったドキュメントみたらこういった仕様らしい。
Making Games: Space Shooter | ct.js Documentation

On Stepイベントは描画の前に毎フレーム発生し、Drawはルーム内の全てのOn Stepイベントの後に発生して新しいフレームを描画します。On Createは新しいCopyをスポーンしたときに起こり、On DestroyはCopyが殺されたときにDrawイベントの前に起こります。


動作とかその辺についてのコアライブラリはこの辺り見ておけばいけるっぽい。
Basic concepts | ct.js Documentation
コード自体はライブラリが柔軟に対応しているのとイベントの管理があんな感じなのもあって条件分岐で機能付け加えていけばなんかゲームっぽい何かが作り上げられるようになっているようです。JavaScriptだけども多分Luaっぽいノリで書けそう。


んで、動作とかコアライブラリ見ればいいって書いたけどもプロジェクト側から読み込ませる必要あるっぽいんですよね。それでそういうの管理しているっぽいCatmodsってのがあるんですよ。
f:id:andron:20210826210559p:plain
Catmodsってとこにゲームに使えそうなモジュールがデフォルトで詰まっているらしいのだけども「何入っているかよくわかんね」なので何個かチュートリアルゲーム作らんとわからなそう…。さくっと何かつくるのはまだ時間かかりそうだなあ……。こういうの大体UIに慣れるのに時間かかる。そしてこのぐらいのノリだと「Unityでいいんじゃね?」とかなったりする。なかなか難儀よのう……。



おわり

*1:簡単にゲーム作れるって書いてあるし……