C言語を使ったPlaydate向けゲーム開発(エア実装編)

crisp-game-lib-portableのポータビリティを検証するために、Playdate用実装を作ることにした。実機を持ってないのに。 Playdateは黄色い筐体と横についたクランクがキュートなコンパクトなゲーム機だ。日本からもプレオーダーできるが今から頼んでも届くの…

移植性の高いミニゲームライブラリを目指すぞ

ミニデバイス向けミニゲームライブラリcrisp-game-lib-portableがM5StickC PLUSに加えてAdafruit PyBadgeでも動くようになった!2つのデバイスで動くので移植性が高い!完成! とは言えないのは分かっている。そもそもM5StickC PLUSもPyBadgeも同じ Arduino…

アマチュア向けゲーム開発環境を13年前と比較すると

昨今の自作ゲーム向けハンドヘルドゲーム機を調べたついでに、13年前の2009年にアマチュア向けゲーム開発環境について書いていたことを思い出した。 せっかくだからハンドヘルドゲーム機以外についても、ここ13年でどういう変化があったか、知っている範囲で…

自作ゲームが動かせるハンドヘルドゲーム機いろいろ

ちょっと前に自作ゲームを動かせる環境・デバイスとしてどんなものがあるのかな?と思ってリストアップしたことがあった。 ちょっと前じゃなかったわ。2009年だから13年前だったわ。 ちょうどスマホが出てきたところで、PDAはもう消えた頃。携帯コンシューマ…

M5StickC PLUSでミニゲームを動かそうとして久々にC言語と格闘

JavaScriptのゲームライブラリcrisp-game-libで量産したミニゲームを、PCやスマホだけでなくて、何か小さなデバイスでも遊んでみたい。そう思って、移植性の高いC言語でライブラリを再実装してみている。 画面とボタンが付いていて入手が容易な小さなデバイ…

絵日記の絵を書くノリで、ミニゲームを作って貼る、ミニゲーム日記というのはどうだろう

ソンソンを1ボタンゲーム化しようとした結果、操作は上移動のみ下移動は穴まかせになった https://t.co/qS5NROfaOF pic.twitter.com/nL3KAneo3N— ABA (@abagames) 2022年8月28日 カプコンアーケード2ndスタジアムを遊んでいる。2ndはかの名作ソンソンが無料…

仮にゲーム自動生成AIができたとして、我々はどのような文章で、作って欲しいゲームをAIに伝えるだろう

One would hope that in ten years time there's no longer static content because everything is generated on the fly. 画像生成AIであるMidjourneyのファウンダーDavid Holzが、ゲームから静的なアセットは無くなり、AIがオンザフライで作った各種アセッ…

プレイヤーを楽しくさせるための演出を加えてゲームを「ジューシー」にするという用語の適切な訳語が欲しい

ゲームはその根幹のルールが楽しければそれで十分、見た目は最低限、音なんて無くて良い、ということに同意する人はほとんどいないと思う。ゲームはそのベースとなるルールの他に、それを盛り上げるためのプレイヤーの視覚、聴覚への刺激、演出が不可欠だ。 …

文芸的diffでソースコードを解説する

プログラムの解説文章をソースコードに混在して表記し、そこから解説記事を生成する、文芸的プログラミングという手法がある。 文芸的プログラミングはソースコードに強く結びついた形でドキュメントを管理することができ、ソースコードの解説を記述するため…

昔のゲームのBGMっぽいものを自動生成したい

昔ってのはゼビウスとかディグダグとか、1980年代前半までさかのぼるくらいの昔。この頃のレトロアーケードゲームのBGMは、4~8小節くらいの短いフレーズを繰り返すものがあった。 自作ミニゲームのBGMとしてそういったBGMが欲しい、できれば自動生成したい…

ゲーム作りをパターン化して1年で139個のミニゲームを作る

このページの上から139個が今年の分だ。こうして並べてみるのは楽しいな。ゲームをたくさん作ることでゲーム制作のスキルアップを!みたいな気概は無いので、ヤマザキ春のパンまつりのシールを集めるのと同じような楽しさだが。でも、作って、Twitterに放流…

今年111のワンボタンゲームを作って分かった面白いゲームを作る方法

たくさん作ることかな! 上記のページに作ったワンボタンミニゲームの一覧がある。Twitterにゲームを放流した時に付いたFavとRTの合計でソートして、左上から多い順に並べている。なので、ある程度客観的に面白い順に並んでいる、はず。この上位に上がってい…

ワンボタンゲームをたくさん作ったので、その作り方をおさらいしたい

English version: How to realize various actions in a one-button game はじめに 自作ゲームライブラリcrisp-game-libを使ったミニゲームを最近たくさん作っているが、特に多く作っているのがワンボタンゲームだ。ここで言うワンボタンゲームは、レバーに…

ミニゲームに物語性を加えることで得られるコク

自作ライブラリcrisp-game-libを使ったミニゲーム作りは、まだ継続して行っている。 そんな中、最近作ったゲームの評判が良かった。 タイミングよくトラックにひかれて異世界転生して両方の世界のダイヤを逃さず集めよう https://t.co/OpNsgnQWOC pic.twitte…

1日1個、11日で11個のミニゲームを作る

そしてTwitterに放流する。 赤は先読み、青は自機狙い。弾は避けて、$は取って https://t.co/9eWdp6C8TG pic.twitter.com/DtSLXoF4ke— ABA (@abagames) 2021年4月29日 複数車線を一度に飛び越えてもいいじゃない、カエルだもの https://t.co/s6NnMAilJQ pic…

残りゲーム制作体力10%な人のためのずぼらゲームライブラリcrisp-game-lib

を目指してまた自作ゲームライブラリを作っている。 ゲーム制作体力が無いならゲーム作りをやめればいいのだが、ウン十年とゲームを作り続けているゲーム制作ジャンキーはそんなことでは立ち止まれないので、より短時間で体力が尽きる前にゲームを完成させる…

個人サイトをリニューアルして自作ゲーム一覧を作ったら250個くらいあった

ABA Games 前々から今まで作ったゲームを整理して、その一覧が見られるようにしたいと思っていたので、覚悟を決めてホームページのリニューアルをした。作ったゲーム(一部ゲームじゃないのもあるけど)は250個くらい。ミニゲームを量産していたのでそれなり…

クイックソート VS 挿入ソート、ファイッ!

昇順に並べたいクイックソートと降順に並べたい挿入ソートが殴り合う動画です pic.twitter.com/YxsN1aSI0A— ABA (@abagames) 2020年1月18日 コードとライブデモはこちら。 アルゴリズムの王道ソートアルゴリズムでコードバトリングをしてみたかったので作っ…

いい感じのビジュアルをランダムになんとなく作り出す

なにかを作った。めざせジェネレーティブアートジェネレータ! クリック/タップで別の絵を作ります。 この手のものの難しさは、 >RTランダムにものを作ると自由度と打率のトレードオフになると思うんですが、この自由度でこの打率はかなりすごい気がします……

マップを書くだけでゲームが作れる環境が欲しかった

ので、テキストでタイルマップを書くとゲームになるrj-10ってのを作った。ブラウザで遊べる。 これを作ろうと思ったのはPix64っていうファンタジーコンソールを見つけたから。Pix64は画像1枚を描くだけでゲームが作れる。ピクセルの色がプレイヤーとか敵とか…

理想のマイコン機械語開発環境を夢見て

PC-6001やMSXの機械語開発時代にREPL (Read-Eval-Print Loop)環境があったらという妄想のもと、Z80のREPLを作った。 ブラウザ上でZ80ニーモニックを実行できるREPL。実用性は無い。LDIRがメモリを埋める様子がたまらん人向け https://t.co/Q3lLMNn7Cq pic.tw…

256文字ゲームくらいならコンピュータが作って欲しい

最近作った256文字ゲームを見ながらこんくらいコンピュータ様が自動的に作ってくれないかと思っている https://t.co/JeRvlRwzqc— ABA (@abagames) 2018年3月6日 あとは2つのゲームのメカニズムを適当に混ぜ合せるっていうアプローチもあるけど、混ぜてゲーム…

JavaScript256文字でのゲーム作り

Tiny Art in Less Than 280 Characters ggplot2で280文字以内で作られた美しい幾何学模様。 sc140 SuperColliderで140文字以内で作られた楽曲群。 Dwitter JavaScript140文字以内でできた作品集。 短いコードで作られた作品は情報がギュッと詰まった感じが美…

JavaScript向けブラウザREPLを試作した、けどREPLってゲーム開発に活用できる?

前にClojureScriptのREPL駆動開発について書いたけど、REPL駆動開発環境自体は別にClojureScriptじゃなくJavaScript向けにもあるんじゃないか、と思ったけどこれが案外見つからない。なのでちょっと試作した。 browser-repl-test 作るのは別に難しくなくて w…

WindowsでClojureScriptのREPLを整備する

結論から言えばIntelliJにCursiveプラグイン入れてfigwheelプロジェクト作るのが簡単そう。 ClojureなどのLisp系列言語では昔からREPLを使った開発がよく行われていて、REPL駆動開発とか呼ばれている。REPLと言うと対象のプログラミング言語の表記を入力する…

倉庫番系列パズルゲームのレベル自動生成

ゲームの自動生成を目指すならばレベル、つまり面のパターンの自動生成もやっておきたい。ゲーム&ウォッチ的な単一の画面で遊ぶゲームはともかく、大抵のゲームは複数の面があったりスクロールしたりするのでレベル自動生成が必須である。 どれだけ質の良い…

Matter.jsをプラグインで拡張する

ちょっと前にlark-matterっていう物理エンジンMatter.jsのレンダラをドット絵っぽくするプラグインを作ったんだけど、その時に覚えたはずのMatter.jsのプラグインによる拡張方法を忘れないうちにメモっておく。 基本的には以下のドキュメントを読めば良い。 …

ブラウザ上でサーバサイドコードをエディット、実行できるGlitch

Glitch jsbinみたいなクライアントサイドJavaScriptをブラウザ上でエディット、共有するサイトはいろいろあるけど、このGlitchはサーバサイドでのコードをエディットして実行できるのが特徴。 とりあえずアクセスした人が適当にセルを埋められる多人数ライフ…

Twitter上でそのまま遊べるアクションゲーム

はタイムライン上でJavaScriptが動かないので原理的にムリだ。なので、 Twitter上でそのまま遊べるアクションゲームを作るには、マウスカーソルが車とか木とかにぶつかったら「ぶつかりました」と自分で言ってもらうゲームオーバー自己申告方式しかないな pi…

無限ミニゲーム生成器を今度は遺伝的プログラミングで作ろうかと

思っていたのだけどやはりうまくいかん。 game-combinator 前回の無限ランダムひどいアクションゲーム生成器への道ではボタンを押した時にゲームに与える影響をランダムに変化させてゲームを生成しようとしていたけど、いまいちゲームにバリエーションが出な…