「自分で思い通りにエロゲーを作れたら楽しいだろうな~」
漠然とそう考えていた人に朗報です。ChatGPTを使えばプログラムを知らなくても、対話しながら簡単なゲームを作る事ができます。やる作業はコピペとデバッグの繰り返しなので、コードを書けない人でも、今回紹介した手順をマネすればアイデア次第で簡単なゲームを作れます。
文末に実際に遊べるブラウザ野球拳ゲームのリンクを貼っておきました。
それでは見ていきましょう!
必要な物
最低限必要な物は3つです。
● パソコン
● Python(プログラムの種類)
● ChatGPTのアカウント
順番に解説します。
パソコンについて
今回私が使用したOSはWindows10でパソコンを使用しています。PythonはmacやLinuxでもマルチプラットフォームで動く便利なプログラムなのでOSは何でも大丈夫です。
パソコンも7. 8年くらい前に中古パソコン屋さんで1万5千円で買ったノートパソコンです。メモリーを増設して8Gにしました。今回のプログラムならもっともっとロースペックなパソコンでも充分動きます。
Python
次にPython gameというのもいりますから、
公式からダウンロードします。このとき必要なコマンドプロンプトはWindowsのシステムツールから起動できます。ちょっと難しい人は
リンク先で詳しく解説していますのでご参照ください。
上手くいったらコマンドプロンプトの
C:\Users\user>の文字の後に
python3 -m pygame.examples.aliens
とコピペしてエンターキーを押します。
上手くインストールできていたら、インベーダーゲームみたいなのが起動します。
もしPythonが上手くインストールできなくても大丈夫です。記事後半の野球拳ではJavaScriptというプログラムをインストールしなくても動くコードで書きました。
ChatGPT
チャット形式で回答してくれるAIです。人間が話す自然言語だけじゃなくて、プログラム言語も得意です。こちらの
公式ページでGoogleアカウント登録したら使えます。
ChatGPTは無料で使える3.5のバージョンを使います。bingやbardよりもChatGPTの方が対話でコード修正をしやすいです。
ChatGPTでゲームを作ろう
以上で準備は整いましたので実際に作っていきます。漠然と作ると言ってもアレなんでGPT君に質問してアイデア出しを協力してもらいます。
この中ならキャッチザフルーツというのが面白そうです。
GPT君にコードを書いてもらいましょう。
もし、途中で止まっても「Continue generating」ボタンを押せば続きを書きます。
こんな単純な命令なのに、こんなに長いコードを一撃で出してくるとは恐るべしです。
出てきたコードをメモ帳にコピペします。保存場所は自分のパソコンの好きな場所で大丈夫です。コードを貼りつけて保存したらファイルの拡張子をtxtからpyに変えてダブルクリックして起動してます。
なんか、画面下の赤い四角を動かして、上からふってくる白い四角をキャッチするゲームができました。
正直、カセットビジョンレベルのヤベーできです。
自機のグラフィックを作ろう
普通にフルーツが降ってくると思ったんですが、グラフィックは自分で用意しないといけないようです。
まずは自機を赤い四角から男性に変えてみましょう。
男性の画像も、もちろんAI任せです。画像生成サイトの
playground aiで「大きく口を開けて上を向いている男性。白背景」を英訳した文章を貼りつけて作ります。このサイトの使い方はこちらの記事で詳しく解説しています。
すると香ばしい画像がすぐに作成できました。
このままでは使えないので、自機を縮小します。
大きさは赤四角と同じ80×80pixelです。
簡単に画像のリサイズができるサイト「
PEKO STEP」を利用します。直感的に使えて、説明文も下部にあるので参考にしてください。ペイントでも同様の処理ができます。
良い感じで小さくなりました。
画像の形式はPNGファイルがベストです。
今までの手順で作っていれば自然とpngとなっています。画像の拡張子をいちおう確認しておきましょう。
自機を変更してみよう
できあがった男性の変更をするのですが、どこを変えたら良いのかサッパリです。ChatGPTに「赤い四角をaaa.pngファイルに変えたい」と指示して、出てきたコードをコピペして上書きしました。
すると、赤い四角が男性に変わりました。
画像ファイルを置き換えれば自機を好きに変更できるようになりました。
対話しながらゲームを作ります
できたゲームをプレイしていると、何となくファミコンの『忍者ハットリくん』や『いっき』のボーナスステージを思い出しました。
なので、オッサンがフルーツを食べるゲームはやめます。上から落ちて来るオシッコをお口で受け止める内容に変更して、ウンコにあたったらミスする変態ゲームにします。
ChatGPTで自機に当たるとミスになる物をリクエストすれば、自動で爆弾という良いアイテムを提案してくれました。
コードを貼りつけて実行しますが、自機が赤四角に戻っています。そして爆弾は黒四角なので背景に同化してかなり見にくいです。これではまともにプレイできません。
上画像の赤丸のところをよく見れば、ちょっと黒四角と重なって表示されているのが分かります。
ボムになるとゲームオーバーになる処理をリクエストしたり、対話しながら作っていきます。
他にも
● フルーツを取ると点数が加算されていく
● ゲームオーバーになると文字を表示される
このように対話しながら追加してもらいました。
いちおうこれで最低限ゲームとして成り立ちました。
バグで上手く作れない時の対処法
実はゲームオーバーの文字と同時に怒った女性の画像を表示させようとしたのですが、上手く行きませんでした。ゲームオーバーと文字で表示した後に画像をだしたり、画像だけを出したりしてダメでした。
ゲームの根幹部分ではないので、文字だけでいいかと諦めてコードを戻してくださいと指示します。今度はゲームスタート時にいきなりゲームオーバーや、自機しか画面に表示されないなど、バグが頻発して上手くいきません。
いちおうエラーのメッセージをコピペして、こんなエラーが出るんだけど修正してくださいと相談すると対応してくれます。簡単なバグなら治りますが、深刻化する場合もあります。
そんな時はnew Chatで再度始めます。上手く動いた時のコードを貼り、要望を出し続けます。
ChatGPTは何かを付け足して作っていくのは得意そうですが、仕様の変更や、処理を引くコードを書くのは苦手みたいです。
画像フォルダーを作ろう
ゲームのキャラ画像を任意の画像と入れ替えます。今回みたいに3つなら良いのですが、同じフォルダーの同一階層に画像ファイルがたくさんあるとややこしいです。画像(gazou)とローマ字で作ったファイルを用意して、その中に置いたほうが後々いいでしょう。
その場合のコードもGPTに聞きました
ファイル名は別に何でも良いです。
エロゲームの完成
こんな感じでコピペしていき、簡単なエロゲームができました。まあエロゲーというよりバカゲー…いやクソだけにクソゲーか…
クソの画像が強力すぎたので自主規制して、ウンコのマスコットキャラに変更しました。
作ってみた感想
● 本当にAIと対話しただけで作れたのでビックリ!
● バグが頻繁に発生するので逐一修正する根気が必要
● かなり頑張れば固定一画面のゲームなら作れそう
● Pythonコードが分かるようになればもっと複雑なゲームも作れそう
この4点です。
最終的に完成したコードと画像です。
まずは以下の文章をメモ帳にコピペして保存します。
そして拡張子をpyに変更してかくそげー起動します。
画像ファイルもおいておきます。
自機 aaa.png
フルーツ f.png
爆弾 b.png
ゲームの実行ファイルと同一階層に新規フォルダーgazouを作って、その中に保存してください。
野球拳を作りたい!
動きのある動的なゲームは作れたので、静的で性的なエロゲームをこの調子で作りたいです。という訳で、簡単な条件分岐と画像表示をさせて構築してみます。
その条件を満たすエッチなゲームといえば紳士の嗜み野球拳ですよね。ジャンケンして勝てば徐々に女の子が服を脱いでいく仕組みがプログラムっぽいですよね。
まずは画像を作りましょう。セクシーな画像が必要な時は、Pixai.artというAI画像生成サイトが最適です。使い方はこちらの記事で詳しく解説していますので良かったら参照してください。
1. 最初の着衣
2. 上着
3. スカート
4. ブラジャー
5. パンティーを脱いで全裸
最初の状態から4回勝って、パンティーを脱がし全裸にします。全部で5枚の画像が必要ですね。
画像ができましたので、次はChatGPTと対話してゲームの部分を作っていきます。
コードを対話で修正
出てきたコードを動かしましたがエラーが発生しました。
一回の注文で欲張り過ぎたのかな?
ちなみに画像フォルダーが3つある理由は、ランダムで3人と対戦できるようにしたかったからです。
今回のエラーは画像をランダムに表示できるが、ジャンケンゲームが機能しませんでした。このバグを対話して修正していくのですが…
全然うまくいきません…
● 画面が表示されない
● 文字化けする
● ゲームが起動しない
などなど、ドンドン悪い方向にいきました。
ダメな時は1から作り直すのもアリ
画像のバグのせいでジャンケンゲームが上手く機能しているか分かりません。ここは仕切り直して、シンプルなジャンケンだけのゲームを作ってみます。
テキストだけの簡単な処理なので、これは一発で起動してくれました。
これに付け足す形をとります。改善案として画面の左半分にテキスト、右半分に画像を表示させてみます。
しかし、上手く行きません。
さらにド派手なジャンケンゲームにしてくれと頼んでも上手くいきません…
アメリカのジャンケン、ロック、シザー、ペーパーにしようとしたら、ペーパーだけ2つ表示されて後は文字化けと意味不明の画面を出されます。(ペーパーの画像はAIで作ったモノです)
その後も、ChatGPTとしばらく奮闘しましたが、どうにも上手くいきません…
ムカついたのでPythonのコードを分析しながら指示することにしました。与えたプロンプトはこうです。
ですが、それでも上手くいかないです…
前のフルーツキャッチの時も、画像を絡ませると別ウィンドウで表示させたりアホな挙動をしてました。
このままでは堂々巡りでラチがあかないので、PythonからJavaScriptにプログラム言語を変え仕切り直します。
いきなりのコードが入ってないなど、初心者殺しのコードを書いてきます。ですが、ここでJavaScriptに変えたのは結果として良かったです。
私もライターの端くれなので、日頃からブログやワードプレスでhtmlとcssに触れています。そのお陰でJavaScriptなら何となくですが、書いてある事が分かりました。これならイケそうです。
野球拳が何とか完成
その後、悪戦苦闘するのですが、3人からランダムに人を選ぶ部分がどうしてもできませんでした。
そのため、1人と野球拳で勝負して脱がすエロゲームが完成しました。5回勝利した後のループの処理が甘いですが、ちゃんとプレイはできます。
以下のコードをメモ帳にコピペして貼りつけ新規保存します。そして拡張子をhtmlに変更したら、chromeなどのブラウザで起動すると動きますよ。