スキップしてメイン コンテンツに移動

HSPでブラウザゲーム「猫の日スロット222」をリリース



猫の日、222と聞いて、誰でも思い浮かぶのがスロットだと思います。

豆まき陰陽師をリリースしたあと、あまり作業がはかどらず悶々としていた私にとってはそんな安直なネタでもとても魅力的に感じたのです。
とにかく何か作りたい!リリースしたい!みたいなときってありますよね?あれです。

作ったときの手順

最初からスロット、しかも数時間で作れるもの、という枠が決まってあったので、手軽さでは最高峰と思われる HSP3Dishでやりました。
ブラウザや android や iOS に対応している開発環境の中では圧倒的に手軽だと思います。

まずはイメージを固めるためにも、ぺたぺたと InkScape で画像を作りつつ、同時に画面レイアウトも決めていきました。

わりとここに時間をかけました。
ふわっとした状態で作ってもどうせ作り直しなので、画面レイアウトをきっちり決めて、タイトル>プレイ>結果のシーンでどのように表示するかを決めました。

ゲームとして連続して遊んでもらえるように COMBO をつけることにしました。
あと、最近はやりのサーバルちゃんと手巻き寿司の作り方で有名な台無しにしちゃう男の人をモチーフに使いました。
プレイした人にふふっと1秒でも笑ってもらえたらいいなと思っています。

ぐるぐる回転の実装

なので実装は、作られた設計図のとおりに作られた画像を配置するという機械的なものでした。
今回のメインともいえるスロットの機能だけは、実装を始めてから頑張って考えました。

このスロットは、去年に作った「エレベータースロットガール」とは異なり、ドラム回転するスロットを表現する必要があります。
そのため、画像をピクセル単位でずらす必要があります。

スロットに表示する絵柄は1つでその枠にぴったりはまるようになっています。
それが少しずつ下にずれていってぐるぐると決められた絵柄のパターンが回るようにします。
今回は、それぞれの枠ごとに5枚の絵柄が並んでいてそれがぐるぐると回っている仕様にしています。

スロットを表示する枠の中には、最大で2枚の絵柄が表示されます。
絵柄を下から順にA,B,C,D,Eと並んでいるイメージです。
最初にAがでてきて、数ピクセルずつ下にずれていきます。その上にBの最後のほうが表示されます。
今回の実装では、現在表示する絵柄とその縦軸の表示オフセットを保持することで、スロットのぐるぐるを表現できました。
表示オフセットの分だけ、その次の絵柄の後半部分を表示します。



スロットをとめたときの処理

あともうひとつ悩んだのは、スロットを停止したときの表示処理です。
最初はずれたままにしておいたのですが、それだとちょうどAとBが半分ずつ枠に表示されているときに、どっちなのかすごくわかりづらかったんです。
最初は、○と×でも表示すればいいかなと思ったんですが、それよりも枠に1つの絵がバシッと表示されたほうが気持ちがよさそうでした。
そこで、面積が多く表示されているほうを表示するようにしました。

リリース準備

あとはHSPをブラウザ用に変換する作業です。
レンタルサーバにあげて試すとメモリが足りないといわれました。
デフォルトの16MBではたりず17MB必要だったみたいです。
ツールの設定はMB単位です。警告に表示されるB単位では無効扱いになるので注意しましょう。

あとHSP3Dishで注意することといえば、mes のずれと await のずれがあります。
文字列描画の mes はスタンドアローンとブラウザでは文字の幅が違うようで、最初は画面にまったく文字が表示されずあせりました。
だいたいのテキストは画像として描画しているのですが、動的に変化する数値は mes を使っています。
ずれても見えるように少し画面中央によせています。

await については「チョコゲット」のころからわかっていることなので、スタンドアローンでは少しゆるい感じで作り、ブラウザでちょうどいい感じにしました。
それでも環境によってはとろとろのスロットになっているかもしれません。
思いつきの対策としては、環境ごとに計測をして調整できるといいかもしれません。

ないものねだりですが、ブラウザ版でもデータのセーブとロードができるといいなぁと思います。もし、すでにあるというならコメントで教えてもらえるとうれしいです。

最後は少しグチっぽくなってしまいましたが、それでもたった6時間ほどでゲームが作れたのは、とても作りやすいHSPのおかげです。


謝辞

結局、2月22日の21時ごろにリリースしました。
もう3時間で22日が終わってしまう(´・ω・`)とランキングはだめかと思っていたのですが、予想以上にアクセスしてもらいうれしいです。
日別ランキングで5位になることができ、たった3時間ほどで225人ものプレイヤーのかたにアクセスしてもらえました。
ツイッターのいいねやRTのおかげです。あと宇宙に数人いるかもしれない貴重なSSRなファンのおかげです。ありがとうございます。

改めましてフリー素材を利用させていただきましたことにお礼申し上げます。

  • M+ FONTS : http://mplus-fonts.osdn.jp/about.html
  • フリー効果音素材・無料効果音 : http://taira-komori.jpn.org/freesound.html


近況

少しこんつめたせいかこのあとの数日は脳みそがハワイかどっかにいってるみたいで、ぼーっとしてました。
ハワイからもどってきてくれたら、何度も挫折しているblenderを勉強してほんの少しだけ使えるようになりたいと思っています。
webglとjavascriptについてももう少し勉強して年末に作っていたキットも完成させたいですが、まだまだ見通しがたっていません。暖かく見守ってください。
頑張ろうとは思っているんですけど、ぼーっとしちゃうんです。
頭の中はいつもプレミアムフライデーな感じなのかな。
でもそういうときはそういうときなりにすごすのがいいと思います。以上です。




コメント

このブログの人気の投稿

QTableView で表を表示してみる

タイトルは駄洒落を狙っているわけではありません。 こんばんわ SakuraCrowd です。 今回は今作っているソフトの経過報告です。 最近のブログのパターンは、 「XXX作ったよ。これがスクリーンショットね。あとこんなこと思ったよ。」 という流れですが、 今日はできていないソフトの部分的な話なので、 いつもよりもプログラムちっくな話になると思います。(´Ծ_Ծ´)メガネノトキハマジメブッテル QTableView は GUIライブラリ Qt のクラスです。 それを Python で使うための PySide というライブラリを使っています。 某表計算ソフト っぽい表の GUI です。 このデータの日付が 09/01 なのでおそらくその日に   QTableView 使うぞ!(`・ω・´) とサンプルデータを作ったのでしょう。 Qt Designer という GUI エディタを使うとポトペタでウィンドウを設計できます。 選択できる GUI の中に QTableView と QTableWidget があります。 どちらも上のような表の GUI です。 QTableWidget は 簡単 に値をいれたりできます。 Qt Designer 上で直接編集 することができるので、 サンプルの表を簡単に作ることができます。 それに対して、 QTableView は Qt Designer 上では値を編集できません。たぶん。 QTableView の強みは MVC の構造 を使えることです。 名前のとおり QTableView は View です。 これにデータを管理している Model オブジェクトを設定して使います。 Model クラスを作る手間がかかりますが、 GUI の細かな操作をしなくても Model に応じた表を表示してくれます。 Model は QAbstractTableModel を 継承 して作ります。 コンストラクタで基底クラスの処理を呼び出し、いくつかの純粋仮想関数をオーバーライドします。 def __init__ ( self , parent= None , *args):...

和風狩ゲー「WildHearts」プレイ日誌(ツイートまとめ)

幻想的な和風のおとぎ話の世界のような雰囲気で始まる、カラクリで戦略が広がる狩ゲー 「 Wild Hearts 」のプレイ感想(主にツイート)のまとめです。 通常価格は1万円近くしますが、Steam のスプリングセールで 85 % オフの 1, 455 円で購入しました。 カラクリは思ったより全然簡単に出せて面白い!幻想的なマップと御伽噺のような獣たち 20250317 https://x.com/SakuraCrowd/status/1901213871937134633 カラクリ(最初はハコ)を一瞬で配置してそれに乗ってジャンプ強攻撃したり、高い壁のぼったりする要素が新しい。 すごく感動したのが、マップのおとぎ話のような幻想的なデザイン。 フィールドには入れる小屋があったり、それを壊されたり、ダイナミックなステージの変化も楽しい #WildHearts 武器強化や図鑑がこれから増えていくのを思うとワクワク!20250316 https://x.com/SakuraCrowd/status/1901215264269906190 武器を細かく強化していけそうなのがわくわくする 野営地に置く鍛冶の施設とかも少しずつ解除して、好きな位置に配置できる あと討伐した敵の情報も倒した数で詳細な情報が見られる #WildHearts 1バトル5分だけどハラハラ!初の武器強化! 20250317   https://x.com/SakuraCrowd/status/1901597289082405135 ハナヤドシを5回狩ると図鑑が詳しくなって、生態の説明の他に、レアなアイテムを落とす部位もわかった。 しっぽの先についている塊に栄養を吸い取られているためにいつも貪欲らしい。 その塊を何とか3回部位破壊して今作れる一番強いからくり刀できた 一戦5分くらいでできるのがいい #WildHearts コハクヌシを倒して氏繁救出!マグマみたいなのは琥珀だったのかー 20250317 鍛冶師のなつめが言っていた、氏繁をコハクヌシから助ける コハクヌシの住処の洞窟の上から声がして、探してたらやられてしまったw そのあとまたその場所に戻ってバトル再開して勝った 氏繁はなんか飄々としていて、まじめななつめとの3人の旅が面白くなりそう #WildHearts カラカラとなったらコダマを探すの...

LibreOffice Writer 文書の差分 (WinMerge x TortoiseGit) + 社畜PCの原因と対策

お久しぶりです。皆様におかれましてはお風邪などをひかれてはいませんでしょうか。 春と秋だけあればいいのにヽ(`Д´)ノとつい思ってしまう SakuraCrowd です。 今日はいつものような製作日記ではなく、ちょっとした役立つメモを書きました。 タイトルにもあるとおり、 TortoiseGit への WinMerge の導入の仕方です。 今まではソースコードくらいしか差分で確認しなかったので、 TortoiseGit 標準の Diff ツールで問題なかったのですが、 LibreOffice の Writer が最近自分の中で便利だと話題になっていて、それを差分表示するためにちょっと調べてみました。 #Writer は、文章書いて、ちょっと絵をいれたり表を作るのに便利だと思います。 #リッチテキストのエディタを探していて、これが一番よさそうな気がしたので使ってます。 それとブログを書くときはあまり長く書かないつもりだった、 Win7 PC が社畜PCになってしまった際の原因と対策も後半に書きました。割と有用な情報かもしれませんので、時間がありましたらご覧下さい。 まずは TortoiseGit で Writer の odt ファイルを管理して、差分も普通に表示させる方法です。 WinMerge(+plugin) 導入手順 すでに TortoiseGit はインストールしてある前提ではなします。 1.信頼と実績の窓の杜様から WinMerge 日本語版をダウンロードします。 WinMerge - 窓の杜ライブラリ 私の PC は 64 ビット版なのでそちらを選びました。 2.WinMerge をインストールします。 フォルダを指定し普通にインストールできます。 インストール直前の設定で TortoiseGit をチェックしておくと自動的に TortoiseGit の利用する Diff ツールの設定を置き換えてくれるようです。 これの設定は TortoiseGit の設定の Diff ツールの項目で確認できます。 3.LibreOffice Writer のファイルを読むためのプラグインをダウンロードします。 ぐぐって出てくる英語版のDLサイトは応答がなかったりしましたが、日本...