15パズルを作ってみた。

アバター
もるも
記事: 54
登録日時: 9年前
連絡を取る:

15パズルを作ってみた。

投稿記事 by もるも » 7年前

あけましておめでとうございます。今年もよろしくお願いします( ´∀` )

ということで新年早々、まずは簡単なものから作り、徐々に自信を取り戻していこうかと。(カブトムシ感
簡単なものなので、ソースファイル分けずにまるっと作っちゃいました。
しかし、やはり作りこんでいくほどに不便になりますね(;^ω^)
↓ソースコード
► スポイラーを表示
ピースをすべてランダムにシャッフルという風ではなく、
動かせるピースをランダムに選んで混ぜていくという方法を使えば絶対解けるだろうと思ったのですが、
私はパズルが得意じゃないので、まったく解けず、クリア不可かどうかがわかりません(笑)
しかもシャッフル具合にたいへんムラがあります(;^ω^)
スクリーンショット (60).png
スクリーンショット (60).png (7.74 KiB) 閲覧数: 301 回
添付ファイル

[拡張子 zip は無効化されているため、表示できません]


アバター
みけCAT
記事: 6734
登録日時: 14年前

RE: 15パズルを作ってみた。

投稿記事 by みけCAT » 7年前

もるも さんが書きました:私はパズルが得意じゃないので、まったく解けず、クリア不可かどうかがわかりません(笑)
最短にこだわらないなら端から順番に埋めていって、端だけちょっと工夫すればできるはずですが…
何がわからないかわからないなあ…

アバター
usao
記事: 1889
登録日時: 12年前

Re: 15パズルを作ってみた。

投稿記事 by usao » 7年前

こういうパズルは解法というかパターンがわかっちゃうと二度と楽しめなくなる
(暇つぶしにすらできない状態になる,というべきか)
気がするので,あえて深く考えないようにしています!
…とか強がってみる.

しかしコレ,
ピースが数字ではないので,元の絵を知っている開発者はともかく,
元の絵柄(並び)が不明な人には一層難易度高いですね.
(フォルダ内に画像があるっぽいが,見たら負けだと思っている)

アバター
もるも
記事: 54
登録日時: 9年前
連絡を取る:

Re: 15パズルを作ってみた。

投稿記事 by もるも » 7年前

>>みけCATさん
残り3枚ぐらいを揃えようとするときに、またまわりのピースを巻き込んでぐちゃぐちゃになる。
の繰り返しなんです(;^ω^)うまく説明できませんが・・・。

>>usaoさん
元の絵が無いのは不親切ですよね・・・。
気軽に遊んでもらうには難しいかなぁ(;´・ω・)
(ゲーム内にこういうミニゲーム的な謎解きパズルがあると楽しかった思い出。)

アバター
いわん
記事: 32
登録日時: 9年前

Re: 15パズルを作ってみた。

投稿記事 by いわん » 7年前

おかしい・・
どうしても解けないパターンに入り込んでる。
どこかが左右逆?・・・ 意外に難問。

アバター
もるも
記事: 54
登録日時: 9年前
連絡を取る:

Re: 15パズルを作ってみた。

投稿記事 by もるも » 7年前

>>いわんさん
元の絵が無いとやはり難しいですよね(;^ω^)
解けない配置判定とか改良の余地がありまくりですね。orz

たいちう
記事: 418
登録日時: 14年前

Re: 15パズルを作ってみた。

投稿記事 by たいちう » 7年前

シャッフルを改善しましょうよ。
任意の2マスを偶数回入れ替えると解ける配置になるはずです。

アバター
usao
記事: 1889
登録日時: 12年前

Re: 15パズルを作ってみた。

投稿記事 by usao » 7年前

> 任意の2マスを偶数回入れ替えると解ける配置になるはずです。

こういう話って,ほんとにそうだと納得できないと実装に踏み切れないですよね.

「ある配置から,任意のマスA,B,C,Dについて{AとB, CとD}なる2か所だけが入れ替わった配置にはできる」
(ただし{A,B}と{C,D}の間に重複が合っても良い:たとえばA=Cとか)
ということを立証できれば良いのだろうけど… うーん… (ググったら負けだと思っている)

アバター
もるも
記事: 54
登録日時: 9年前
連絡を取る:

Re: 15パズルを作ってみた。

投稿記事 by もるも » 7年前

>>たいちうさん
隣り合った数字(ピース)が1回だけ入れ替わっているのは解けないぐらいの知識しかありませんでした(;^ω^)
解けないパターンの回避方法があったのですね。ありがとうございます。

>>usaoさん
とりあえずピースの入れ替えが成功したらカウント、任意偶数回まで達成できたらシャッフル処理完了。
という感じでいってみます(`・ω・´)

アバター
もるも
記事: 54
登録日時: 9年前
連絡を取る:

Re: 15パズルを作ってみた。

投稿記事 by もるも » 7年前

パズルのピースに数字を付け、シャッフルの仕方を変更しました。

隣接した空ピースをランダムに選び数回動かす
        ↓
6回ピースの入れ替えに成功するまで処理を繰り返す。

という感じです。

これで最低限遊べるものになったかな・・・。
とりあえずちゃんと自力で2回クリアしました(笑)



たくさんのアドバイスに感謝します( ´∀` )
添付ファイル

[拡張子 zip は無効化されているため、表示できません]


アバター
いわん
記事: 32
登録日時: 9年前

Re: 15パズルを作ってみた。

投稿記事 by いわん » 7年前

格段に解きやすくなりました。
今のところ解けないパターンは無し。
むしろ物足りないくらいかなw。数字はヘルプで出すくらいでいいかも。