コードはまったく書かず、シューティングゲームを作ってもらった。
まずは、ChatGPT o1に以下のプロンプトでお願いする。
上下左右にスクロールするシューティングゲームを作成してください。
・自機は常に中央に配置し、カーソルキーで上下左右で方向を変えてスクロールします。・全体の広さは3000*3000で端には壁があります。壁に激突すると終了です。また、壁も描画してください。
・敵キャラクターは自機と同じ座標系にいます。敵キャラクターは自機に向かっていますが自機が起動することで、簡単に避けられるようにしてください。
・自機は進行方向に常にミサイルを発射し、ミサイルが敵に当たると破壊できポイントが入ります。
・舞台は宇宙風に。
・ゲームキャンバスのサイズは300*300で。
・スマホでも操作できるよう工夫してください。
・ゲームオーバーになったとき、ハイスコアの場合は名前を入力できるように。名前は10文字まで。また、「リプレイ?」ボタンを用意し、リプレイできるようにしてください。
・HTMLとCSS、Javascriptのみで実現してください。
・ページ全体のデザインはゲームセンターのようにオシャレに。画面右には今までのハイスコア上位5人、本日のハイスコア上位5人表示するようにしてください。
これだけでCSSとJavascriptを含むHTMLを作成してもらった。ハイスコアはローカルストレージに保存してもらうシステム。我ながら適当なプロンプトなので、あまり参考にしてほしくはないが、こんな適当でもなんとかなる。
できたのはこんな感じ。
スマホでも操作できるし、十分な感じ。
ここからの修正はWindSurfで読み込んでAIに細かいお願いをしていく。モデルはCraude 3.5 sonnet。
ハイスコアはMySQLを使い、サーバ側に保存してもらう。そのために必要なテーブル設計もしてもらった。
完成品はこんな感じ。
デザインもかなり良くなった。スコアもばっちり。ゲーム的にはそれほどおもしろくはないが、現時点ではこれでよい。
スマホの場合は、下にボタンが表示される。操作はイマイチだがデザインはよい。
今回はデータベースも使ったので、ある程度サーバ側の知識も必要になるが、データベースを使わないのであれば、ほんと初心者レベルの知識でいけるはず。すごい時代になったもんだ。
WindSurfの修正は変更してほしくない場所も勝手に変更したりするので注意は必要。コツを掴めばもっといい感じに行けると思う。
というわけで、以下から実際に遊べるので、ここまで読んでくれた人はハイスコアを更新しておいてほしい。よろしくお願いします!