https://zisakukarako.blogspot.com/
というブログで、今度は自作カラコロッタをつくってみようということにした。
今度は自作アニマロッタ風ゲームでの反省を生かす予定。
どこまで続くかは不明。
さらに、自作アニマロッタまで作ろうと試みている。
現段階でアニマロッタ5の基本9ゲームを再現した。
制作過程などが密に記されているので参照されたい。
https://zisakuanimarotta.blogspot.com/
2018年11月20日火曜日
2018年11月11日日曜日
ゲームの進展状況94 5ゲーム目の案
ちょっとクリスタル関係の話は後においておいて、5ゲーム目の案がかたまってきている。
今度のゲームは我のたぶんオリジナルゲームである。
それは、5×5マスのビンゴである。
はぁっ?
と思うだろうが、もちろんただの数字をそろえていくだけのビンゴではない。
ゲーム4サンダースマッシュに触発され、新しい案をかんがえついた。
まず、番号がHITすればそのマスは雷マスとなる。そして、その雷マスのたてよこに雷マスがあれば、その挟まれた部分は「感電」してHIT扱いになる。(ただし雷マス状態にはならない)
これをつづけていき、雷マスと感電マスがHITした扱いになり、それでラインを考える、というわけである。5×5マスなので、いちおう1から25をまんべんなく振る予定。
そこで我が以前実証した、1から何番かまでは忘れたが(重要な点なのにこれでは意味ないって)300回くらい任意のi!=jなるi,j番目に対してこれを入れ替えるという操作を繰り返す。
するとだいたい配列がランダムになるという。
このほうが確定操作なうえ、せいぜい300回なので時間的にも問題ない。
今度のゲームは我のたぶんオリジナルゲームである。
それは、5×5マスのビンゴである。
はぁっ?
と思うだろうが、もちろんただの数字をそろえていくだけのビンゴではない。
ゲーム4サンダースマッシュに触発され、新しい案をかんがえついた。
まず、番号がHITすればそのマスは雷マスとなる。そして、その雷マスのたてよこに雷マスがあれば、その挟まれた部分は「感電」してHIT扱いになる。(ただし雷マス状態にはならない)
これをつづけていき、雷マスと感電マスがHITした扱いになり、それでラインを考える、というわけである。5×5マスなので、いちおう1から25をまんべんなく振る予定。
そこで我が以前実証した、1から何番かまでは忘れたが(重要な点なのにこれでは意味ないって)300回くらい任意のi!=jなるi,j番目に対してこれを入れ替えるという操作を繰り返す。
するとだいたい配列がランダムになるという。
このほうが確定操作なうえ、せいぜい300回なので時間的にも問題ない。
2018年11月10日土曜日
ゲームの進展状況93 リーチ表示作成
一応ゲーム内にもリーチが表示されるようにした。
配当があれば「チャンス」、3倍以上で「大チャンス」、10倍以上で「超チャンス」、全けし優先で「全消し」となる。
今回は16番にはいって全消ししたと思うが、この場合はちゃんとリーチでの文字通りの結果になってる。まあなっていなかったならプログラム練り直しなんだが…。
ちなみに最下段は最初から連鎖しないように必ず雷マスが1個だけおかれ、かつオッズアップや配当ブロックは出ないように設定した。
なお、最下段以外の出現率は番号20%、、配当20%、雷60%である。
やっぱり50%を超えないと全消しは難しい?
なお今日は特急で2時間30分かけてちょっとおでかけしたのであまり進んでいない。
配当があれば「チャンス」、3倍以上で「大チャンス」、10倍以上で「超チャンス」、全けし優先で「全消し」となる。
ちなみに最下段は最初から連鎖しないように必ず雷マスが1個だけおかれ、かつオッズアップや配当ブロックは出ないように設定した。
なお、最下段以外の出現率は番号20%、、配当20%、雷60%である。
やっぱり50%を超えないと全消しは難しい?
なお今日は特急で2時間30分かけてちょっとおでかけしたのであまり進んでいない。
2018年11月9日金曜日
ゲームの進展状況92 実際のアニマロッタ5
どうやらラウンドワン梅田でアニマロッタ5がロケテストするらしい。
梅田といえばあのなつかしいアニマロッタ2以降。
たしか当時はアニマロッタ2のロケテストのために梅田に行ったことを覚えている。
しかしやっぱり…。
みるだけにしておくか…。
どうしてもアニマロッタのゲームがやりたいなら、つくればいいだけ…。
しかし成長要素とかは無理なのでなんかむなしい
梅田といえばあのなつかしいアニマロッタ2以降。
たしか当時はアニマロッタ2のロケテストのために梅田に行ったことを覚えている。
しかしやっぱり…。
みるだけにしておくか…。
どうしてもアニマロッタのゲームがやりたいなら、つくればいいだけ…。
しかし成長要素とかは無理なのでなんかむなしい
ゲームの進展状況91 いよいよBET解禁
ついにBETボタンでBETを設定し、ゲームができるにいたるまで成長した。
まだクリスタルの配置や最後のリザルトでの反映は行っていないが。
いよいよ4ゲーム目が形になってきた瞬間である。
その感動?の動画は上のやつ。
雷配置率を多くしているので最初から全消し確定だが、ちゃんとうまく機能している。
なおもちろん原作同様、左全消しで25倍の追加配当、右も同様。
それと途中で消した配当ブロックの配当を合わせたものが最終的な配当となる。
あとはクリスタルをどうするか、そしてリザルト画面の見直しを行う予定。
実は5ゲーム目の案はすでにかんがえているのだ…。
しかし実装するかは不明。
まだクリスタルの配置や最後のリザルトでの反映は行っていないが。
いよいよ4ゲーム目が形になってきた瞬間である。
雷配置率を多くしているので最初から全消し確定だが、ちゃんとうまく機能している。
なおもちろん原作同様、左全消しで25倍の追加配当、右も同様。
それと途中で消した配当ブロックの配当を合わせたものが最終的な配当となる。
あとはクリスタルをどうするか、そしてリザルト画面の見直しを行う予定。
実は5ゲーム目の案はすでにかんがえているのだ…。
しかし実装するかは不明。
ゲームの進展状況90 リーチ処理ほぼ完成
どうやら、ほぼリーチ処理(どの番号に入ればどれくらいのWINになるか)ができた様子。
あとはこれとBET額をひもつけして、いよいよリーチ文字の表示およびタブでのリーチ番号表示操作に移っていく。
ここまでくればかなりゲームとして成り立ってきているといえる。
おそらく今日中には4ゲーム目は配当処理含めて遊べるくらいにはなるのではないかと思っている。
このように、何番に入ればどれくらいの配当がえられるかが一目瞭然。
リーチ処理の例にもれずやっぱり処理は重いが・・・。
実際7,12,25番に入れば本当にたくさん入手できるかは暇な人がいれば実際に紙に書いてやってみるといいかも。たぶん正しいはず。
12,25ははじめの起爆でオッズアップマス(25番)にHITするので最下段の左端の配当が2倍(=2WIN)になる。しかしそれ以外の7番は次の25番オッズアップマスと同時に消えるので配当はまだ1のまま。それでこれら3つは最下段に番号があり、これによって連鎖が期待できる。
それ以外では右側は7,25,12,25が出てすでに手詰まり。
左側も後続の雷2つが消えるが以降はてづまり。なのでこの配当表示は理にかなっている。
ただしまだ全消しボーナスは入れていない。
ちなみにオッズアップに入ると、配当のWIN数が1,2,4,8,16,32とどんどん倍になる。
これはすさまじい効果で10個もあって全部HITすれば(あるいは雷にはさまれれば)1024WINという配当に。オッズアップは多くしてはいけない。あってもせいぜい2マス程度だろう。
これは68マスあり、番号出現率を60%とするならば、40.8マスが平均で番号マスになるのでその中から2マス選ぶということは、つまりはオッズアップ発生率を5%とするのが適切である。
今はテストのためにいろいろいじくっているが。
あとはこれとBET額をひもつけして、いよいよリーチ文字の表示およびタブでのリーチ番号表示操作に移っていく。
ここまでくればかなりゲームとして成り立ってきているといえる。
おそらく今日中には4ゲーム目は配当処理含めて遊べるくらいにはなるのではないかと思っている。
このように、何番に入ればどれくらいの配当がえられるかが一目瞭然。
リーチ処理の例にもれずやっぱり処理は重いが・・・。
実際7,12,25番に入れば本当にたくさん入手できるかは暇な人がいれば実際に紙に書いてやってみるといいかも。たぶん正しいはず。
12,25ははじめの起爆でオッズアップマス(25番)にHITするので最下段の左端の配当が2倍(=2WIN)になる。しかしそれ以外の7番は次の25番オッズアップマスと同時に消えるので配当はまだ1のまま。それでこれら3つは最下段に番号があり、これによって連鎖が期待できる。
それ以外では右側は7,25,12,25が出てすでに手詰まり。
左側も後続の雷2つが消えるが以降はてづまり。なのでこの配当表示は理にかなっている。
ただしまだ全消しボーナスは入れていない。
ちなみにオッズアップに入ると、配当のWIN数が1,2,4,8,16,32とどんどん倍になる。
これはすさまじい効果で10個もあって全部HITすれば(あるいは雷にはさまれれば)1024WINという配当に。オッズアップは多くしてはいけない。あってもせいぜい2マス程度だろう。
これは68マスあり、番号出現率を60%とするならば、40.8マスが平均で番号マスになるのでその中から2マス選ぶということは、つまりはオッズアップ発生率を5%とするのが適切である。
今はテストのためにいろいろいじくっているが。
ゲームの進展状況89 ピクチャの自由変形
我はこのゲームで初めて、パターンとピクチャの自由変形を扱うことになる。
自作ゲームを作りながらさまざまな機能を学べて応用できるのは次ゲーム作成するときにより質のよいゲームを作れるということで、非常にうれしいことである。
パターンはまあ、ウディタに組み込まれたアニメーションコモンを使えばいいのでここでは触れないが、ピクチャの自由変形がついに役立つときが来た。
たぶんなんだが、自分で自由変形コモンをつくることもできるかも。話がややこしくなるので割愛。
これを使えば右端がどのあたりの座標までアニメの右端を持ってくるか指定できる。
これはつまり、雷によるHITの演出の横ラインがどこまで伸びるかを指定できるということである。
すでにマスの座標を返す関数は作成しているので、
右端と左端のマスにこの関数を適用して、あとはちょこっとこれをもとに右上、左上、右下、左下を指定すればいい。
よしこれで横雷問題は解決。
縦雷問題は拡大率は等しく、消えるブロックの上におけばいいだけなのでたぶん難しくは無い。
たしかに下の段の右から3番目から右から8番目までの範囲にアニメーションされているのがわかる。こういう使い方もあるとは…。ウディタを使い始めて8年くらいが経過しているが、はじめてこれを知った。まあ8年といっても扱っている時間はすかすかなので経験はまあふつうくらい。
では次に縦雷演出にうつる。さてそろそろアニマロッタ5の演出をみるか…。
しかしこれ、いろいろピクチャの問題が。ウェイトを入れるといろいろ遅れて後発の雷の処理がうまくいかないのでここは一括処理することに。
上のように、消えるべきマスには落雷するようにした。
結構この2つの作業だけでもなかなか難しい。変数より演出のほうが大変らしい。
さて次はそろそろリーチ処理および配当表示処理にうつっていく予定。
自作ゲームを作りながらさまざまな機能を学べて応用できるのは次ゲーム作成するときにより質のよいゲームを作れるということで、非常にうれしいことである。
パターンはまあ、ウディタに組み込まれたアニメーションコモンを使えばいいのでここでは触れないが、ピクチャの自由変形がついに役立つときが来た。
たぶんなんだが、自分で自由変形コモンをつくることもできるかも。話がややこしくなるので割愛。
これを使えば右端がどのあたりの座標までアニメの右端を持ってくるか指定できる。
これはつまり、雷によるHITの演出の横ラインがどこまで伸びるかを指定できるということである。
すでにマスの座標を返す関数は作成しているので、
右端と左端のマスにこの関数を適用して、あとはちょこっとこれをもとに右上、左上、右下、左下を指定すればいい。
よしこれで横雷問題は解決。
縦雷問題は拡大率は等しく、消えるブロックの上におけばいいだけなのでたぶん難しくは無い。
たしかに下の段の右から3番目から右から8番目までの範囲にアニメーションされているのがわかる。こういう使い方もあるとは…。ウディタを使い始めて8年くらいが経過しているが、はじめてこれを知った。まあ8年といっても扱っている時間はすかすかなので経験はまあふつうくらい。
では次に縦雷演出にうつる。さてそろそろアニマロッタ5の演出をみるか…。
しかしこれ、いろいろピクチャの問題が。ウェイトを入れるといろいろ遅れて後発の雷の処理がうまくいかないのでここは一括処理することに。
上のように、消えるべきマスには落雷するようにした。
結構この2つの作業だけでもなかなか難しい。変数より演出のほうが大変らしい。
さて次はそろそろリーチ処理および配当表示処理にうつっていく予定。
2018年11月8日木曜日
ゲームの進展状況88 初4ゲームプレイ
なんとか、オッズアップにHITするかあるいは雷による消え効果を受けると配当マスが2倍になっていく効果をつけた。
ここでもいろいろ注意すべき点があった。
なお移動時の効果音が一回分多くなってしまう不具合はどうも解消が非常に難しいらしいしたいした問題でもないので後回し。
とりあえずこれでなんとかゲームとして配当が成立することになる。
そしてとりあえずまだBETも配当表示もクリスタルも全然実装していないが、一応他3ゲームと同時にゲーム進行させると以下のようになる。
まあ、たしかにアニマロッタ5のサンダースマッシュに似てないわけではない…感じの出来。
一人で演出つくるのはなかなかに骨がおれるんや…。
今後やるべきことは、このゲームの背景などの充実、雷の演出、そして上に掲げたシステムを他3ゲームと同じように実装。
あとなぜかクリスタルゲット表示の位置がおかしいのでそこも修正。
そろそろねるか・・・
ここでもいろいろ注意すべき点があった。
なお移動時の効果音が一回分多くなってしまう不具合はどうも解消が非常に難しいらしいしたいした問題でもないので後回し。
とりあえずこれでなんとかゲームとして配当が成立することになる。
そしてとりあえずまだBETも配当表示もクリスタルも全然実装していないが、一応他3ゲームと同時にゲーム進行させると以下のようになる。
一人で演出つくるのはなかなかに骨がおれるんや…。
今後やるべきことは、このゲームの背景などの充実、雷の演出、そして上に掲げたシステムを他3ゲームと同じように実装。
あとなぜかクリスタルゲット表示の位置がおかしいのでそこも修正。
そろそろねるか・・・
いいのお
ゲームの進展状況87 だいたいの演出
しかしまだ落雷処理が行われていないので消滅しているのが効果音でしか分からないが、
もとのゲームを知っているならばまあそんなものとわかるだろう。
意味はないがあとからなった雷マスにはちゃんと番号を振るようにしておいた。
本家がそうしているので。別にしなくても関係ないけど。
次はそろそろ雷を帯電させて落とす演出を加えるか…。
しかしこれ、アニメーションとかどうやって実装するんや…?
だが我ははじめてここでアニメーションの方法を知る。
そうや…分割とパターンや!!
実は我、RPGを作成している途中、アニメーションがなぜあのような画像の集合でうまく左上から順に表示されてアニメのようになっているのか見当がつかなかったが、ここへきて初めてアニメーションの方法を知る。
これはつまり、より豪華な演出を(すでにこういうウディタ用アニメーションの素材はRPGを作る過程で何百、何千と持っている気がするので)このゲームで実行できることになる。
よしさっそく縦に落ちる雷のやつをアニメーションさせて、それを縦方向に引き伸ばせばうまくいきそう。横のほうは回転でいいか…。雷の長さは左右両端の雷マスの位置に依存するので拡大率はそれに依存するかたちになるだろう…。
ちなみにまだ配当関連の処理は全然していない。せいぜい配当のマスに200と番号をふっている程度。配当の文字も配置する必要があり、配当入手プログラムも構築する必要がある。
しかし着実になんとなくそれっぽいゲームに近づきつつある。
2018年11月7日水曜日
ゲームの進展状況86 マスがしっかり動く
なんか一括でマスの移動処理をやっていたためいろいろ不具合が発覚。
しかしいろいろがんばって解決しつつあるが、まだ完全ではない。
しかし、とりあえずは変数の移動としてはしっかりとまさにサンダースマッシュと同様の動作をするようになった。ちゃんと雷マスではさまれた部分が消え、そしてまたぼとぼとブロックが落ちてきてどちらも端までいけば再び雷での判定、という風に。
実を言うともうこの時点でPO率などを求める準備はできていることになる。
しかし我は演出込みでこのゲームを作りたいので、ここからは演出をがんばる。
そうしながらも結構いろいろ問題が発生したが、なんとかとりあえず一段落した。
以下は動画であり、この動画でおこなわれている雷による消去、これこそがこのゲームの根幹部分である。あとは演出などをくわえたり配当演出に入っていく。
しかしなぜかたまに右半分が全部消えたりする…?これはなんでや?
しかしこれはとある場所での条件漏れであることが判明。
これを正すことにより直った。あとその他ちょっと変な点もなおし、
どうやらかなりブロックと雷マスの挙動はアニマロッタ5のサンダースマッシュに近くなってきた。
もう実を言うと、あとは演出および配当などの表示をするくらいである。
このプログラム、難しい部分(まぎらわしい部分)も多少はあるが、そこまでおそれるほどのものではない。しかしそろそろウディタでの処理限界にたいして恐れをいだいているのは事実。
さてそろそろアニマの動画から音源でもカットしてくるか…。
いやその前に配当やリーチ処理、HIT時のマスの挙動設定なども重要になってくる。
しかしいろいろがんばって解決しつつあるが、まだ完全ではない。
しかし、とりあえずは変数の移動としてはしっかりとまさにサンダースマッシュと同様の動作をするようになった。ちゃんと雷マスではさまれた部分が消え、そしてまたぼとぼとブロックが落ちてきてどちらも端までいけば再び雷での判定、という風に。
実を言うともうこの時点でPO率などを求める準備はできていることになる。
しかし我は演出込みでこのゲームを作りたいので、ここからは演出をがんばる。
そうしながらも結構いろいろ問題が発生したが、なんとかとりあえず一段落した。
以下は動画であり、この動画でおこなわれている雷による消去、これこそがこのゲームの根幹部分である。あとは演出などをくわえたり配当演出に入っていく。
しかしこれはとある場所での条件漏れであることが判明。
これを正すことにより直った。あとその他ちょっと変な点もなおし、
どうやらかなりブロックと雷マスの挙動はアニマロッタ5のサンダースマッシュに近くなってきた。
もう実を言うと、あとは演出および配当などの表示をするくらいである。
このプログラム、難しい部分(まぎらわしい部分)も多少はあるが、そこまでおそれるほどのものではない。しかしそろそろウディタでの処理限界にたいして恐れをいだいているのは事実。
さてそろそろアニマの動画から音源でもカットしてくるか…。
いやその前に配当やリーチ処理、HIT時のマスの挙動設定なども重要になってくる。
ゲームの進展状況85 マスが動く
ついにマスを動かすプログラムを作成。
各マスにはマス、番号、装飾1、装飾2の4つのピクチャがあるので全部で272個のピクチャがあり、これに対して個別の処理をほどこすことでちゃんと動くように。
以下はなんとかそれが分かりそうなところ。
ちゃんと本家アニマのように、上から落ちてくるブロックのほうが上のほうに表示されるようにわざわざピクチャの番号の向き付けと変数の向き付けを入れ替えて配置したんや…。
ちゃんと上の図でのいちばんしたの段に降りるものは滑らかに色や大きさ、角度が変わるように設定してある。
もちろんこの後同じ処理を行うと、ピクチャ番号が同じ場所に位置するものでも変わっているので、
ここで再びピクチャを読み込みなおす。そうすればまたちゃんとピクチャ番号はもとに戻り、我が書いた命令は再び機能する。
まあこのことはすでに以前のゲームで気づいているんだが…。
各マスにはマス、番号、装飾1、装飾2の4つのピクチャがあるので全部で272個のピクチャがあり、これに対して個別の処理をほどこすことでちゃんと動くように。
以下はなんとかそれが分かりそうなところ。
ちゃんと本家アニマのように、上から落ちてくるブロックのほうが上のほうに表示されるようにわざわざピクチャの番号の向き付けと変数の向き付けを入れ替えて配置したんや…。
ちゃんと上の図でのいちばんしたの段に降りるものは滑らかに色や大きさ、角度が変わるように設定してある。
もちろんこの後同じ処理を行うと、ピクチャ番号が同じ場所に位置するものでも変わっているので、
ここで再びピクチャを読み込みなおす。そうすればまたちゃんとピクチャ番号はもとに戻り、我が書いた命令は再び機能する。
まあこのことはすでに以前のゲームで気づいているんだが…。
ゲームの進展状況84 ピクチャ配置後半
次はとりあえず雷と配当でないところに番号を発生させてみた。
しかしこの段階ではまだ大きさもおかしいし、傾いてすらいない。
なのでここから修正を加える必要がある。
これでなんとなくそれっぽくなったような気がしないでもない。
リーチとかはとりあえずおいておいて、まずはこれをぬるぬる動かすことが最初の目標となる。
しかしこの段階ではまだ大きさもおかしいし、傾いてすらいない。
なのでここから修正を加える必要がある。
これでなんとなくそれっぽくなったような気がしないでもない。
リーチとかはとりあえずおいておいて、まずはこれをぬるぬる動かすことが最初の目標となる。
ゲームの進展状況83 配置だけはそれっぽい
雷15%、配当15%、通常マス70%という設定の下に配置してみた。
これのついでに、この操作を1回だけとして、玉が入ればまたそのときにINする動作の準備をして、同じことが行われないようにするといういわばこれまでのゲームに組み込む準備もちょっとした。
なお、この時点ですでに各マスは変数値を持っている。雷はたとえば100という値、配当は200という値を保持している。
つぎやるべきことは、とにかくなめらかにこのマスたちを移動させること、
また雷によるマス消滅効果を実装すること、そして
番号をふったりすることである。
一応4ゲーム目はまだだが全体として動くことは動く。
これのついでに、この操作を1回だけとして、玉が入ればまたそのときにINする動作の準備をして、同じことが行われないようにするといういわばこれまでのゲームに組み込む準備もちょっとした。
なお、この時点ですでに各マスは変数値を持っている。雷はたとえば100という値、配当は200という値を保持している。
つぎやるべきことは、とにかくなめらかにこのマスたちを移動させること、
また雷によるマス消滅効果を実装すること、そして
番号をふったりすることである。
一応4ゲーム目はまだだが全体として動くことは動く。
しかし。
スクリーンショットがもはやきのうしていない…。
ゲームの進展状況82 ピクチャ配置完了
5での剰余等を利用してスムーズに配置を作った。
ちなみに今後、30から31マス目への変異などは動画などを見るとぬおっと拡大されつつ色が徐々に変化したので、ピクチャを2つ用意して不透明度を(255,0)の組から徐々に(0,255)にしていく方法が思い浮かばれたが、それだとピクチャの管理が面倒なので、一括で処理した。
つまり、上の緑ブロックと青ブロックは「同じ」ものである。
変異するときは、処理時間をかけて拡大処理と色相変更をほどこせばいいだけの話。
あと角度の変更も。
ちなみに本家では落ちてくるもののほうがピクチャとしては上に出てくる。我の定め方によると…。
下に行くほどピクチャが上。つまりはこっちが上にでてくる。うわ
これは非常にやりたくないことだが、
左上からピクチャ番号を60168にして、降順にピクチャ番号をふるしかあるまい…。
これすると変数の値からピクチャの操作をするときにちょっと作業が面倒になることは目に見えているが…。ここはしょうがない…。
いやまてよ。まだ変数に関してなにも宣言していない。
よしこうなったら下段左から5番目を1番として、そこから順にマスに変数をあたえればつじつまがあう。これで変な問題は解決や。
なにしろ後々リーチの文字や配当の文字も付与するので、やっぱり簡潔なほうがいいわけである。
では次は配当などの配置にうつる。
ちなみに今後、30から31マス目への変異などは動画などを見るとぬおっと拡大されつつ色が徐々に変化したので、ピクチャを2つ用意して不透明度を(255,0)の組から徐々に(0,255)にしていく方法が思い浮かばれたが、それだとピクチャの管理が面倒なので、一括で処理した。
つまり、上の緑ブロックと青ブロックは「同じ」ものである。
変異するときは、処理時間をかけて拡大処理と色相変更をほどこせばいいだけの話。
あと角度の変更も。
ちなみに本家では落ちてくるもののほうがピクチャとしては上に出てくる。我の定め方によると…。
下に行くほどピクチャが上。つまりはこっちが上にでてくる。うわ
これは非常にやりたくないことだが、
左上からピクチャ番号を60168にして、降順にピクチャ番号をふるしかあるまい…。
これすると変数の値からピクチャの操作をするときにちょっと作業が面倒になることは目に見えているが…。ここはしょうがない…。
いやまてよ。まだ変数に関してなにも宣言していない。
よしこうなったら下段左から5番目を1番として、そこから順にマスに変数をあたえればつじつまがあう。これで変な問題は解決や。
なにしろ後々リーチの文字や配当の文字も付与するので、やっぱり簡潔なほうがいいわけである。
では次は配当などの配置にうつる。
2018年11月5日月曜日
ゲームの進展状況81 固定ピクチャ配置
とりあえずまずは、以後絶対に動かないとみられるピクチャから配置していく。
本家のものを参考に、青の横ラインをy座標550で配置。
次ゲーム開始まで…のロゴの後ろ側に、青い線が配置された。ちゃんとこのピクチャの右端はのちにゲームタブを8個つくっても食い込まないようにしている。
次は坂を配置する前に、まずはでかい青ブロックが横に4個ずつ置けるかどうか試す。
拡大率80%にすればしっくりくる。まあこれは仮配置なので座標だけ覚えておく。
あとは簡略のために、68マス全てのマスの位置を記した関数というものを作る定番の話。
なるほど…。こういう感じにすればとりあえず斜めの坂を配置できそうか…。
なお左右の対称性から右側の中心座標などは計算により求まる。よってい右半分の作業は非常に楽に済むということが分かる。
たとえば左側で座標(400,300)ならば軸x=640対称とするならば座標(880,300)とすればよいということ。これはもうプログラムでは640-xを640にプラス、つまり1280-xが右側のx座標でy座標は不変というものを立てればいいだけで、別に書くほどのことではないと思った。
そうして、とりあえず所定の個数の坂を配置した。
たしかにこれで枠組みとしてはある程度分かりやすくなったしそこそこの全体像がつかめた。
さて次はなにをするか。
各マスの番号をよばれたときに、その中心座標を返すプログラムをつくることである。
これはめんどい。
もう一度いうがめんどい。
しかしがんばって34個分、つまり左を作った。傾きや種別はまだだが。
35マス目以降は、それをnマス目とするとn-34マス目とx=640対称なので、
これはさっきも言ったとおり(x,y)->(1280-x,y)というR^2->R^2写像を指定するだけ。
これのおかげで右部分はほとんどやることなしに一気に配置できた。
まだ青マスがなかったり、角度がおかしいのはまだ未設定なため。まもなくこれのちゃんとしたバージョンを作る。明日学校なので寝る。
本家のものを参考に、青の横ラインをy座標550で配置。
次ゲーム開始まで…のロゴの後ろ側に、青い線が配置された。ちゃんとこのピクチャの右端はのちにゲームタブを8個つくっても食い込まないようにしている。
次は坂を配置する前に、まずはでかい青ブロックが横に4個ずつ置けるかどうか試す。
拡大率80%にすればしっくりくる。まあこれは仮配置なので座標だけ覚えておく。
あとは簡略のために、68マス全てのマスの位置を記した関数というものを作る定番の話。
なるほど…。こういう感じにすればとりあえず斜めの坂を配置できそうか…。
なお左右の対称性から右側の中心座標などは計算により求まる。よってい右半分の作業は非常に楽に済むということが分かる。
たとえば左側で座標(400,300)ならば軸x=640対称とするならば座標(880,300)とすればよいということ。これはもうプログラムでは640-xを640にプラス、つまり1280-xが右側のx座標でy座標は不変というものを立てればいいだけで、別に書くほどのことではないと思った。
そうして、とりあえず所定の個数の坂を配置した。
たしかにこれで枠組みとしてはある程度分かりやすくなったしそこそこの全体像がつかめた。
さて次はなにをするか。
各マスの番号をよばれたときに、その中心座標を返すプログラムをつくることである。
これはめんどい。
もう一度いうがめんどい。
しかしがんばって34個分、つまり左を作った。傾きや種別はまだだが。
35マス目以降は、それをnマス目とするとn-34マス目とx=640対称なので、
これはさっきも言ったとおり(x,y)->(1280-x,y)というR^2->R^2写像を指定するだけ。
これのおかげで右部分はほとんどやることなしに一気に配置できた。
まだ青マスがなかったり、角度がおかしいのはまだ未設定なため。まもなくこれのちゃんとしたバージョンを作る。明日学校なので寝る。
ゲームの進展状況80 8ゲームモードに拡張
…さて、演出面にうつる。しかし、マス配置をするのは容易ではない、…というよりあまりに面倒。
なぜなら、斜めになっているからである。無理やり角度からcosとsinを使って表すにしても、せいぜい幅は5マスなのでその価値が薄い。
…となると、もはや全部手動で入力するしかない。これがやっぱり一人でやるときのつらいところ。
あと、マスには傾きがあるので、これはまあ、回転処理を使えばいいだけの話。
さて、そろそろ画像の処理にうつるとする…?
まずは素材が必要。まだロケテストなので画像が少ないが、とあるサイトで撮影された画像を利用しよう。加工とかそういうのはもはや地道にやるしかない。
とりあえず青ブロックを抜き出して、あとは拡大と色調変換で緑を作り出す。
雷ブロックもがんばる。
そして作ったのが下。
こんな感じでとりあえず作っていく。
あとは番号だが、これはまあこだわらないしワンダーチャンスの番号的なものでいいだろう…。
いや、
それよりまずは4ゲーム目の作成に移る必要がある。
というわけで、ゲームタブを小さくして4ゲーム目が入るようにする。
そうしたのが以下。一応3ゲームバージョンもとっておいてある。
ご覧の通り、4つ目のゲームはアニマロッタが「サンダースマッシュ」なので「サンダーデストロイヤー」にしておいた。ロゴ作成ツールはありがたい。
もちろん現時点では何もつくっていないので、タブをおしても何も起こらない。
とりあえずまずは背景を設定し、あとはボタン効果によって4ゲーム目をいったりきたりできるようにする必要がある。
実は、上記のようにするとよこにスペースがあいており、実質8ゲーム投入することができる。
我の作成するかもしれない8ゲーム同時進行はまさに圧巻である。まあ実装されればの話だが。
何ヶ月も前の作品なのでもうピクチャ番号がどれとか覚えていないが、とりあえずゲームの種別ごとに10000ごとでわけていたと思う。
ピクチャはたぶん60000台がかなりあいていたと思うのでそれを使おうかと思う。
ただし60001は枚数フレームとしてつかっているっぽいので61001から使おうかと思っている。
背景は61000で、ピクチャの下2桁とマスの変数を合わせやすくする。
しかし…。
このゲームの作成もそうすぐできるわけではない。とりあえず背景が必要なのである。
しかしまだ現時点で使えそうな背景が無い。それはまた後で考える。
とりあえず
基準のラインをy座標550で設定することにする。
青いラインらしいのでペイントでそれをつくる。あとはピクチャの配置にうつっていくので、
また別の記事となる。とりあえず4ゲーム目を導入する準備はできた。
なぜなら、斜めになっているからである。無理やり角度からcosとsinを使って表すにしても、せいぜい幅は5マスなのでその価値が薄い。
…となると、もはや全部手動で入力するしかない。これがやっぱり一人でやるときのつらいところ。
あと、マスには傾きがあるので、これはまあ、回転処理を使えばいいだけの話。
さて、そろそろ画像の処理にうつるとする…?
まずは素材が必要。まだロケテストなので画像が少ないが、とあるサイトで撮影された画像を利用しよう。加工とかそういうのはもはや地道にやるしかない。
とりあえず青ブロックを抜き出して、あとは拡大と色調変換で緑を作り出す。
雷ブロックもがんばる。
そして作ったのが下。
こんな感じでとりあえず作っていく。
あとは番号だが、これはまあこだわらないしワンダーチャンスの番号的なものでいいだろう…。
いや、
それよりまずは4ゲーム目の作成に移る必要がある。
というわけで、ゲームタブを小さくして4ゲーム目が入るようにする。
そうしたのが以下。一応3ゲームバージョンもとっておいてある。
ご覧の通り、4つ目のゲームはアニマロッタが「サンダースマッシュ」なので「サンダーデストロイヤー」にしておいた。ロゴ作成ツールはありがたい。
もちろん現時点では何もつくっていないので、タブをおしても何も起こらない。
とりあえずまずは背景を設定し、あとはボタン効果によって4ゲーム目をいったりきたりできるようにする必要がある。
実は、上記のようにするとよこにスペースがあいており、実質8ゲーム投入することができる。
我の作成するかもしれない8ゲーム同時進行はまさに圧巻である。まあ実装されればの話だが。
何ヶ月も前の作品なのでもうピクチャ番号がどれとか覚えていないが、とりあえずゲームの種別ごとに10000ごとでわけていたと思う。
ピクチャはたぶん60000台がかなりあいていたと思うのでそれを使おうかと思う。
ただし60001は枚数フレームとしてつかっているっぽいので61001から使おうかと思っている。
背景は61000で、ピクチャの下2桁とマスの変数を合わせやすくする。
しかし…。
このゲームの作成もそうすぐできるわけではない。とりあえず背景が必要なのである。
しかしまだ現時点で使えそうな背景が無い。それはまた後で考える。
とりあえず
基準のラインをy座標550で設定することにする。
青いラインらしいのでペイントでそれをつくる。あとはピクチャの配置にうつっていくので、
また別の記事となる。とりあえず4ゲーム目を導入する準備はできた。
ゲームの進展状況79 サンダースマッシュの内部処理1
マスは68個。したがって用意すべき変数は68個。前の失敗を生かして、今度はその68個にさまざまな情報を入れることにする。
下2桁を番号(雷だけのマスは0番、配当マスも0番としておく)として、百の位を普通のマスか、雷か、配当かの区別を行う。ただし配当マスには「配当WIN」という情報もあるので、これ用にまた変数68個を作っておく。
それで空白となったマスはマイナス1を代入する。これでOK。
また、処理の都合上、たとえば左のセクションは左上から1マス目…として進む順に番号をつける。
右のセクションは右上から1マス目…としていく。
なのでたとえば40番目というマスは、右のセクションの上から2段目のもっとも左のマスということに。
このほうがあとあと処理で楽にいくのは明白である。
プログラムのおおまかなながれとしては、
ボールの番号を取得し、(ここはデジタル抽選せざるを得ない)
各マスの下2桁呼び出し、そして一致するものがあれば、雷マスに。すなわち百の位をたとえば1などにしておく。ただしもともと雷のものは操作しない。
あと演出で注意すべきは、雷マスでもともと番号だったものはそれを残すことが必要。
つまり、ここの段階で百の位が1ならば先天的雷マス、2ならば後天的雷マスと設定すればよいことが分かる。演出が関係なければこの操作は必要ない。
あとオッズアップだが、まあ適当に設定しておいて、千の位にそのようなフラグをたてておけばよい。あ…どちらかというと最上位の位取り出しのほうが容易なのでマスの種別を千の位にしようか・・・。
オッズアップにすれば別個配当マスの変数68個に対して全てを2倍。0はもともと0なので、2倍しても変わらない。いや~これは楽で助かる。
さて次は「雷落とし」である。
これは上記のマスの定めた規則によると、
31~34、65~68マス目の雷マスが重要になる。
ここは操作がしやすいように、31,32,33,34,68,67,66,65を1,2,3,4,5,6,7,8にうつす写像(ラベル付け)を定義しておいてそのラベル付けの1から初めて最初にくる雷と、8から始めて最初に来る雷を取得し、その間のマス全部を空白(-1という値)にすることにより操作は終了。ほとんど即座に思いつくほど簡単な処理らしい。(まあ8個なので、ラベル付けするまでもないか…?)
その後は左セクションは各マスの変数を全部1個ずつ次の変数の枠にシフトさせる。このとき
情報の保存のために、後ろの番号(33マス目)から処理することに注意。でないと1マス目からやると、全部その1マス目の番号に置き換わるので。
で、ちゃんと移動させたあとはマイナス1という空白になる部分があったりすることにも注意。
この移動は、34マス目が空白でなくなるまで続く。そうすれば一連の流れは終了。
あと注意すべきことは雷の落下演出。これは雷効果で消えるマスの間に雷があっても落雷するので。まあこれも上記の下8マスの情報で分かるので問題は無い。
あとはこれを繰り返すだけ。実に簡単。アニマドロップに比べて。
さあいよいよこれを実践するのみ。
下2桁を番号(雷だけのマスは0番、配当マスも0番としておく)として、百の位を普通のマスか、雷か、配当かの区別を行う。ただし配当マスには「配当WIN」という情報もあるので、これ用にまた変数68個を作っておく。
それで空白となったマスはマイナス1を代入する。これでOK。
また、処理の都合上、たとえば左のセクションは左上から1マス目…として進む順に番号をつける。
右のセクションは右上から1マス目…としていく。
なのでたとえば40番目というマスは、右のセクションの上から2段目のもっとも左のマスということに。
このほうがあとあと処理で楽にいくのは明白である。
プログラムのおおまかなながれとしては、
ボールの番号を取得し、(ここはデジタル抽選せざるを得ない)
各マスの下2桁呼び出し、そして一致するものがあれば、雷マスに。すなわち百の位をたとえば1などにしておく。ただしもともと雷のものは操作しない。
あと演出で注意すべきは、雷マスでもともと番号だったものはそれを残すことが必要。
つまり、ここの段階で百の位が1ならば先天的雷マス、2ならば後天的雷マスと設定すればよいことが分かる。演出が関係なければこの操作は必要ない。
あとオッズアップだが、まあ適当に設定しておいて、千の位にそのようなフラグをたてておけばよい。あ…どちらかというと最上位の位取り出しのほうが容易なのでマスの種別を千の位にしようか・・・。
オッズアップにすれば別個配当マスの変数68個に対して全てを2倍。0はもともと0なので、2倍しても変わらない。いや~これは楽で助かる。
さて次は「雷落とし」である。
これは上記のマスの定めた規則によると、
31~34、65~68マス目の雷マスが重要になる。
ここは操作がしやすいように、31,32,33,34,68,67,66,65を1,2,3,4,5,6,7,8にうつす写像(ラベル付け)を定義しておいてそのラベル付けの1から初めて最初にくる雷と、8から始めて最初に来る雷を取得し、その間のマス全部を空白(-1という値)にすることにより操作は終了。ほとんど即座に思いつくほど簡単な処理らしい。(まあ8個なので、ラベル付けするまでもないか…?)
その後は左セクションは各マスの変数を全部1個ずつ次の変数の枠にシフトさせる。このとき
情報の保存のために、後ろの番号(33マス目)から処理することに注意。でないと1マス目からやると、全部その1マス目の番号に置き換わるので。
で、ちゃんと移動させたあとはマイナス1という空白になる部分があったりすることにも注意。
この移動は、34マス目が空白でなくなるまで続く。そうすれば一連の流れは終了。
あと注意すべきことは雷の落下演出。これは雷効果で消えるマスの間に雷があっても落雷するので。まあこれも上記の下8マスの情報で分かるので問題は無い。
あとはこれを繰り返すだけ。実に簡単。アニマドロップに比べて。
さあいよいよこれを実践するのみ。
ゲームの進展状況78 アニマロッタ5の新ゲーム
さて、そろそろやろうか…。アニマロッタ5の新ゲーム、サンダークラッシュ。…サンダースマッシュだった。
ゲームの詳細はなんか、一番したの段で雷にはさまれるとそこが消えて、だんだんぼとぼとブロックが落ちていく、というもの。
このゲームを我のアニマロッタ風ゲームに組み込みたいとかかんがえているわけである。
しかしそのためには、まずは配当ブロックやかみなりなどのある程度の規則的な配置を考えねばならない。
そこで動画などをみてみる。
まあとりあえず、なんとなく各段には配当ブロックが1個あり、雷ブロックがだいたい1個あるらしい。
こんなものはループ処理とランダム処理を使ってすぐにプログラムでどこのブロックをこれにするかは非常に簡単。ただし1段目には配当ブロックはない。1段目の雷ブロックは…よくわからん。
2段目のものは配当0.2倍、3段目、4段目は0.4倍、5段目0.6倍、6段目、7段目1.0倍。
ほんで左と右それぞれで全けしで25倍。両方でたぶん50倍だろう…。
さて、次に処理の重さである。
我は正直ビンゴボンバー(2ゲーム目)のような128マスビンゴをつくってしまい、処理を重くし、変数を増やしすぎて若干後悔…?おとなしくアニマのビンゴファームにしとけばよかった…。
しかしこのゲーム、マスは68個らしい。うち雷ブロックがだいたい12個くらい?となるとマスは56個で、そこから配当ブロックをひくとだいたい50個弱。
動画でみると、だいたい番号にかぶりはないが、あるものもある。
なのでかぶりに関してはプログラミングはしないでおく。これ結構処理に時間食うので。
ちなみにこの25個をランダムに並べる操作、我はmathematicaで一度シミュレートしており、
たしか任意のi,j番目を入れ替える操作を200,300回くらいすればだいたいランダムになってくる、という結論を得ていたと思う。
普通にまず25個からえらんで、次にまた25個から選び、先ほどの番号と違えばOK、そして…とするとかなり面倒。
さてじゃあ内部処理はどうすんねんというのは次のページへ。
ゲームの詳細はなんか、一番したの段で雷にはさまれるとそこが消えて、だんだんぼとぼとブロックが落ちていく、というもの。
このゲームを我のアニマロッタ風ゲームに組み込みたいとかかんがえているわけである。
しかしそのためには、まずは配当ブロックやかみなりなどのある程度の規則的な配置を考えねばならない。
そこで動画などをみてみる。
まあとりあえず、なんとなく各段には配当ブロックが1個あり、雷ブロックがだいたい1個あるらしい。
こんなものはループ処理とランダム処理を使ってすぐにプログラムでどこのブロックをこれにするかは非常に簡単。ただし1段目には配当ブロックはない。1段目の雷ブロックは…よくわからん。
2段目のものは配当0.2倍、3段目、4段目は0.4倍、5段目0.6倍、6段目、7段目1.0倍。
ほんで左と右それぞれで全けしで25倍。両方でたぶん50倍だろう…。
さて、次に処理の重さである。
我は正直ビンゴボンバー(2ゲーム目)のような128マスビンゴをつくってしまい、処理を重くし、変数を増やしすぎて若干後悔…?おとなしくアニマのビンゴファームにしとけばよかった…。
しかしこのゲーム、マスは68個らしい。うち雷ブロックがだいたい12個くらい?となるとマスは56個で、そこから配当ブロックをひくとだいたい50個弱。
動画でみると、だいたい番号にかぶりはないが、あるものもある。
なのでかぶりに関してはプログラミングはしないでおく。これ結構処理に時間食うので。
ちなみにこの25個をランダムに並べる操作、我はmathematicaで一度シミュレートしており、
たしか任意のi,j番目を入れ替える操作を200,300回くらいすればだいたいランダムになってくる、という結論を得ていたと思う。
普通にまず25個からえらんで、次にまた25個から選び、先ほどの番号と違えばOK、そして…とするとかなり面倒。
さてじゃあ内部処理はどうすんねんというのは次のページへ。
2018年11月2日金曜日
ゲームの進展状況77 まとめて発射
1ゲームが9球ということで長いので、発射を3、2、2、1、1というふうに分けた。
それに際し、ちょっとプログラムをいじくった。
なにをしたかというと、これまで単体に対してHIT処理を行わなかったものを複数個に対して行えるように改造した。
それにより、本家と結構同じくらいのスピードでのプレイが可能となった。
後、雷珠の実装がバグっていたのを修正。
しかし残念なのは、この自作ロッタ、変数を使いすぎたというのが問題。
今なら思うが、一つの変数に2つ以上の意味を持たせておくべきだったと思っている。
何しろ色々これらの操作をするのが面倒なので。
後大量にピクチャを使っている関係から、もうどれがどれか把握できていない。
最近ちょっとまた自作アニマロッタ風ゲームをやり始めたのだが、自分で作っているのに案外面白かった。なかなか興奮させてくれるし。
なんか、いつかはBGM、効果音聴取班やプログラミング班、グラフィック作成班とかができてみんなで作れれば嬉しいと考えたりもするがそれはさすがに厳しい。
理論上は我一人でアニマロッタのプログラムはほぼ組めるんだが・・・。
なお現在は東京に遊びに行っている。インドアスカイダイビングしてきた。
初日はこれ以外に大宮などに行く。
2日目は東北周辺を観光しつつ新潟まで行く予定で、3日目は群馬を観光しつつ軽井沢で休憩してそのまま上越地方から金沢経由で我の住んでいる場所へ帰ってくる予定。
それに際し、ちょっとプログラムをいじくった。
なにをしたかというと、これまで単体に対してHIT処理を行わなかったものを複数個に対して行えるように改造した。
それにより、本家と結構同じくらいのスピードでのプレイが可能となった。
後、雷珠の実装がバグっていたのを修正。
しかし残念なのは、この自作ロッタ、変数を使いすぎたというのが問題。
今なら思うが、一つの変数に2つ以上の意味を持たせておくべきだったと思っている。
何しろ色々これらの操作をするのが面倒なので。
後大量にピクチャを使っている関係から、もうどれがどれか把握できていない。
最近ちょっとまた自作アニマロッタ風ゲームをやり始めたのだが、自分で作っているのに案外面白かった。なかなか興奮させてくれるし。
なんか、いつかはBGM、効果音聴取班やプログラミング班、グラフィック作成班とかができてみんなで作れれば嬉しいと考えたりもするがそれはさすがに厳しい。
理論上は我一人でアニマロッタのプログラムはほぼ組めるんだが・・・。
なお現在は東京に遊びに行っている。インドアスカイダイビングしてきた。
初日はこれ以外に大宮などに行く。
2日目は東北周辺を観光しつつ新潟まで行く予定で、3日目は群馬を観光しつつ軽井沢で休憩してそのまま上越地方から金沢経由で我の住んでいる場所へ帰ってくる予定。
登録:
投稿 (Atom)
新しいアニマ系ゲームの作成に伴うブログ移転
https://zisakukarako.blogspot.com/ というブログで、今度は自作カラコロッタをつくってみようということにした。 今度は自作アニマロッタ風ゲームでの反省を生かす予定。 どこまで続くかは不明。 さらに、自作アニマロッタまで作ろうと試みている...
-
JPCは、大量のボールで抽選するアニマドロップ風のゲームにしようと考えた。 そのためには、まず形状(本物は板?状)を考える必要があり、 そして次に落下の判定が必要。 上とつながっていないドロップを全部落とす、というもの。 これについて、いい案が思い浮かんだ。 まず全...
-
我はついにBETタイムを設定し、さらに右側のゲームタブにリーチ情報を付け加えた。 リーチは、3倍以上、10倍以上、50倍以上とシンプルに分けられていて、リーチが5個以上あれば流れるようにスライドするという、本家とおなじもの。
-
ちょっと画面がさびしいので、ドロップがどれくらいの確率で生成されるか書き加えてみることにした。…リーチ処理は処理が重すぎて断念。またいずれ。 これでプレイヤーは次何がどんな確率で生成されるのか期待を持てる。 右側には全消しの回数や特定のマスで大量消えを示すものや、GE...