🧩

ブラウザゲームを1から作ってみた【A Puzzle A Day】

2023/06/01に公開

新しく作ったWebアプリの紹介です。
https://shiro46mt.github.io/a-puzzle-a-day/

自己紹介

はじめまして、SHIROです。
特技は「車のナンバーを見て四則演算で10を作る」ことです。特技を生かし(?)、10を作る迷路パズルを考案して公開しています。

https://twitter.com/SHIRO46_app/status/1594218683013820416
https://zenn.dev/shiro46/articles/b0b1fc8151ff36

パズルゲームの紹介

A Puzzle A Dayというパズルゲームをご存知でしょうか?
いくつかのピースを指定された枠の中にはめ込むという、よくあるパズルですが、次のような特徴があります。

  • 枠のマスに1つずつ月(1月~12月)または日にち(1~31)が書かれている。
  • すべてのピースを埋めると、必ず2マス分の隙間ができる。


図はノルウェーの販売会社(後述)のサイトより引用

これにより、ピースの並べ方を変えることで366日分の日付をすべて表現できるようになっています。つまり今日の日付を表示することを目的とすると毎日遊べます。


図はノルウェーの販売会社(後述)のサイトより引用

ノルウェーの数学者が考案したもので、その方が運営する会社が販売もしているようです。

今回は、こちらのパズルをWebアプリとして実装しました。

↓↓↓ Webアプリはこちらから ↓↓↓
https://shiro46mt.github.io/a-puzzle-a-day/

参考にした記事たち

全般

https://chat.openai.com
めっちゃ助けてもらいました。

Webサイト公開

https://zenn.dev/yamaneko_94/articles/3e2ef1f9ba191a
前回、こちらのサービスで独自ドメインを取得したのですが、使用不可になったようです。残念、、
仕方がないので、GitHub Pagesを使用しています。

https://tex2e.github.io/blog/javascript/PWA
PWAとして、スマホのホーム画面に追加できるようにしました。[1]

ライブラリ

https://iwb.jp/javascript-canvas-confetti-animation/
クリアした時の演出として紙吹雪アニメーションを使用しています。

パズルの解き方

https://qiita.com/YottyPG/items/7b1fcab17247619a06d6
https://d.ballade.jp/2021/05/a-puzzle-a-day-solver.html

広告

https://nend.net/mediapartner/
Google AdSenseの審査が通らなくても、こちらの審査は通りやすいらしいです。

脚注
  1. ホーム画面追加の案内をどこかに追加しようと思ってまだ手を付けられていないです。 ↩︎

Discussion