もみあげあしめ

組み込みとかIoTとか、いろいろ

プチコン大喜利に参加して

プチコン大喜利大喜利ワールドグランプリ)に参加したので
制作の記録を振り返ろうと思う。

f:id:shima_nigoro:20210418153801p:plain:w300

大喜利審査結果は公式サイトで公開中です。
プチコン大喜利ワールドグランプリ結果発表 | プチコン4
#なんと!わたしの作品タイトルが載っています!やったね?!

プチコンって何だ?という方はこちらをどうぞ。

はじめに

目標

モチベーションとしてプチコンの命令をいろいろ使って
作ってみたいと思ったのが今回のゲーム作成のはじまりでした。

これまでに作成したゲームはスプライトの管理が面倒だったので
スプライトの生成、破棄を簡単にできる仕組みを作りたかった。
シューティングゲームのサンプルを作っているうちに思い付いた

具体的な目標は以下の3つ。

  1. PUSH、FIND、REMOVEを使った配列の管理
  2. CALL SPRITEを使ったスプライトの制御
  3. 今後のゲーム制作に使える汎用的な関数の作成

ゲームのプロトタイプ

イカが海を泳ぎまわるゲームを作ろうと思い、とりあえず動きだけ作ってみた。

この時点ではスティックを倒した瞬間に、そちらに傘を向けて泳ぐようになっている。

ゲームのルール作り

ルール1

自由に動けすぎると簡単すぎるので、制約をつけてみる。

3回動くと体力が戻るまで動けなくなる。
体力は1秒で1つ戻る。

ルール2

泳ぐだけだとゲームにならないので、魚と宝石を追加する。

宝石に当たるとスコア追加、魚に当たると一定時間ペナルティ追加。

ルール3

魚と宝石の間にも当たり判定を追加する。

#魚の口元にきた時にだけ宝石は消える

ルール4

水面は安全地帯かつスコア取り放題になるので、お邪魔キャラを追加。
滞在時間が長くなると出現する。

#海賊に襲われた船が、宝石を落としているという裏設定

ルール5

最深部では潜水艦が邪魔をする。
船と同じく滞在時間が長くなると出現する。

#潜水士が水面に向かって宝箱を持っていく予定だったけどボツにした

ルール6

宝石の色をそろえるとボーナスタイムに入るようにする。

#いわゆる無敵状態

ゲームのUI作り

雰囲気作り1

水中だとわかるように泡のエフェクトを追加する。
文字がゆっくり出るエフェクトも追加する。

#泡用のスプライト出しまくり

雰囲気作り2

深さに応じて透明度を変えて雰囲気アップを狙う。

#コールバック関数の一部を変えるだけ

UI作り1

ゲームを始めるのに待ちたくないので、表示は崩さずに
アニメーションだけをスキップさせる。

#DEF化して汎用的に使えるように

UI作り2

画面遷移するときにアイコンがパッと消えるのを隠す。

#画面遷移(切り替わり)のときにヒントを出すため

UI作り3

文字は1文字ずつスプライトにする。

#スプライトにしておけば1文字ずつ自由にエフェクトをかけられる

大喜利の募集が始まってからの変更

プチコン大喜利が始まってからはネタバレしてしまうと
楽しみが減ってしまうと思い、こっそりと機能を追加した。

大喜利ワールドグランプリとしての機能

  1. 表示言語変更機能*1
  2. お題「スマイル」に合わせて、スマイルパワー*2の追加
  3. インタラクティブな遊び方説明の追加#無しでも遊べるのを作りたい

おまけの機能

  1. 得点や宝石を集めた数の記録#魚に宝石を食べられた数も記録される
  2. ゲーム中のアイコン透明度変更
  3. 振動のON/OFF切り替え
  4. 音楽、効果音の音量調整

まとめ

目標は達成できたか

最初にあげた3つの目標は達成できた。
再利用可能な関数や仕組みがあるので、次はもう少し作業が楽になるはず。

製作時間

100時間前後*3
実際にコードを書いている時間は20~30時間くらいで、
仕組みやアルゴリズムを考えたりしているの30時間。
残りが動作を確認することに使ったかなというところ。

おわりに

プチコン4」は無料の体験版が配信されており、
私の作ったゲームたちも無料でダウンロード&プレイできます。

今回作成した「JEWELRY FISH*4」もプチコン4の「作品を見る」から
公開キー【4NAMEE3NJ】を入力することでダウンロードできます。
#ゲームのソースコードも見れちゃうぞ!

プレイした感想を記事のコメントや「しま (@mmag_asym) | Twitter
までお寄せいただけると今後の制作の励みになります!

最後に「JEWELRY FISH」スコアアップのための秘密を公開!

  1. 無敵ボーナスが連続すると、スコアの倍率が維持されます!
  2. スマイルパワーを使っている間はタイムが止まります!

後はあなただけのテクニックを駆使して目指せ600,000点*5です!

プチコン4 SmileBASIC 公式リファレンスブック

プチコン4 SmileBASIC 公式リファレンスブック

  • 発売日: 2020/12/12
  • メディア: 単行本

*1:システム言語、日本語、英語

*2:宝石を集めると魚をスマイルに変えられる謎の力

*3:大喜利の期間中の起動時間からの推定

*4:Jellyfishとかけたダジャレ…

*5:作者の最高記録