Archiverse Internet Archive
投稿のみ 投稿と返信
前のページ(最近)
1128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148154
次のページ(過去)
返信[11]
親投稿
おちゃめ ochame_nako
私も上記で数当てゲームやじゃんけんゲームを挙げましたが、でんぺんさんと同じく自分が作りたいものを作るのがベターだと思います。 詳しくは以前書いた私のコメントを参照。 https://miiverse.nintendo.net/posts/AYMHAAACAAADVHjC4ii-vw
1そうだね
プレイ済み
返信[6]
親投稿
おちゃめ ochame_nako
りょうまさんへ じゃんけんゲームが奥深いというよりはどんなゲームであっても真面目に考えれば奥深く「じゃんけんゲームでさえこれくらいの考えるべき余地がある」ということです。 きのっこさんへ プログラミングの醍醐味はアルゴリズムを考えることにありますよね! それさえできればコーディングは単純作業なので退屈です。(処理速度や短さに拘ればまた楽しめますが)
2そうだね
プレイ済み
返信[2]
親投稿
おちゃめ ochame_nako
というわけで、皆さんぜひじゃんけんの思考ルーチンについて考えてみてください。 プログラムが作れる人は思考ルーチンだけではなく完成品のプログラムを用意、作れない人(作る時間のない人)はこういう思考ルーチンはどうかなという日本語による詳細説明だけでも良いです。(「ネタバレ」投稿を推奨しますが、今回は気軽に参加してもらうためそれを必須にはしません) 私が作ったじゃんけんゲームは3月22日の23時に公開します。 プチコンmkIIで作った1画面プログラムをプチコン3号に移植予定です。(今回の主要目的が思考ルーチンなので見た目には拘らない予定)
1そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
そもそも、じゃんけんの思考ルーチンなんてものは存在するのでしょうか? コンピュータが思考ルーチンの情報源として使用可能なのはプレイヤーが過去にどんな手を出したのかということです。 つまり、それを使うことで思考ルーチンを作ることが可能です。 しかし、どのように使うかで大きく変わってきます。 例1:プレイヤーがグーを出す割合が非常に高い→コンピュータはパーを出す確率を高くする これだと、グー、グー、グー、チョキ、チョキ、チョキ、パー、パー、パーのような手を出した場合にはどれも同じ確率で出していると認識されてしまいます。 例2:プレイヤーが前回グーを出した→それに勝てるパーを出す確率を高くする これだとグーを出したあとには高確率でパーを出すと分かってしまうのでプレイヤーはチョキを出せば高確率で勝てます。
1そうだね
プレイ済み
投稿
おちゃめ ochame_nako
プログラミング初心者向けのゲームとして定番といえば「じゃんけんゲーム」があるのですが、初心者向けとはいえコンピュータとの対戦ゲームです。 コンピュータとの対戦型のゲームにおいては思考ルーチンが必要不可欠です。 そして、その思考ルーチンがゲームの面白さに多大な影響を与えます。 じゃけんゲームの思考ルーチンといえば下記のようなものが大半でしょう。 A=RND(3) といってもこれは「思考ルーチン」と呼べるレベルのものではなく勝つか負けるかは完全に運任せです。 例えばプレイヤーがずっとグーだけを出し続けても勝率は50%前後になります。 もちろん、いくら考えた手を出そうとも勝率が上がるわけではありません。 では、皆さんでじゃんけんの思考ルーチンについて考えていきましょう。
10そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
Godotさんへ 1行目をBEEP 70:WAIT 13:BEEPOFFにすると・・・
0そうだね
プレイ済み
返信[5]
親投稿
おちゃめ ochame_nako
アクセルとエンジンブレーキが8~12行、スライドパッドによる進行方向切り替えは13行です。
0そうだね
プレイ済み
返信[2]
親投稿
おちゃめ ochame_nako
数当てゲームやじゃんけんゲームとかはどうでしょうか? じゃんけんゲームでもちゃんと作るならば決して簡単ではありませんよ。 表示にスプライトやグラフィックなどを使ったり、コンピュータにまともな思考ルーチンを付けたり、勝敗判定を短くするなどができれば初心者は卒業でしょう。
1そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
0.2を0,2と入力しています
1そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
Lejenneさんへ twitterで欲している人が居たので作ったBEEPOFF命令ですが、こんなネタ用途にしか使えません(笑)
1そうだね
プレイ済み
返信[7]
親投稿
おちゃめ ochame_nako
€(ò∀ó€)Ξ sさんへ デフォルトでそういう命令が搭載されるのは歓迎したいです。 私はver.3.1.0で新規に増えたCLASSIFY関数、GTRI命令、GPUTCHR命令、システム変数HARDWAREに関しても同じような機能を持つ命令をすでにDEFで作っていましたので。
0そうだね
プレイ済み
返信[4]
親投稿
おちゃめ ochame_nako
私はプチコンmkIIでレイヤー機能付きお絵かきソフトを作りましたが、別々のGRPに描いたものを特定のGRPにGCOPYすれば簡単に実現できます。 GCOPYする順番を変えることでレイヤーの重なり順を変えることができます。 ただし、GRPは透明と不透明しか選択できないので透明度を変えたいならばスプライトを使うしかないですね。(GRPも単一レイヤーならば擬似的に透明度を変えることは可能ですがレイヤーそのものの透明度は変えられない)
0そうだね
プレイ済み
返信[4]
親投稿
おちゃめ ochame_nako
ちょうどフェードイン、フェードアウト命令を昨晩作りました。私の活動から見てください。 「FADEOUT 300」とするだけで5秒(300フレーム)で真っ暗にできます。
0そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
スライドパッドで進行方向を決めてAボタンがアクセルならばこんな感じになりますね。
1そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
スライドパッドの8方向移動ならば私が作ったDSTICK関数がおすすめです。これを使えば十字ボタンと同じように使えます。 あと8方向移動はスライドパッドで出来るので前進操作には別途ボタン操作は不要なのではないでしょうか?
0そうだね
プレイ済み
投稿
おちゃめ ochame_nako
やばい
7そうだね
プレイ済み
返信[5]
親投稿
おちゃめ ochame_nako
ユウ・フブキさんへ 私もmkIIでは任意の色を重ねるルーチンやフェードアウト、フェードインルーチンを作りましたがすべてのパレットを変更するのはかなり重い処理でした。 パレットのないプチコン3号では普通ならばピクセル単位で処理する必要がありそうに思えますがSPCOLORで半透明スプライトが使用できることが分かればそれを画面の最前面に置くことで画面全体を自由な色に変えることができるのが分かります。 このプログラムではデフォルトスプライトの中から白の四角を使ってそれを左右視差や表示優先順位を考慮したものになっています。 ここまでできれば最初のコメントにあるようにSPANIMで簡単にフェードイン、フェードアウトが可能になります。
0そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
上記のWAITを入れる変更をしたものはこんな感じです。
0そうだね
プレイ済み
返信[2]
親投稿
おちゃめ ochame_nako
注意しないといけないのはSPANIMによる自動処理のためフェードアウトとフェードインが連続する場合には誤動作防止のためにはサンプルプログラムにようにWAITを入れた方が良いです。 DEF内にWAITを入れなかったのはせっかくのバックグランド処理であるため勿体ないと感じたためです。 フェードインとフェードアウトを時間をおかずに連続処理する機会もあまりないと思うので必要な方はFADEIN、FADEOUTのDEF内の処理のENDの前の行にWAIT TMを入れてください。
0そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
FADEIN、FADEOUT命令は「FADEIN 120」のように何フレームでフェードイン、フェードアウトするかを指定できます。 VARCOLOR命令は画面の色を任意の色から任意の色へ変化させます。 例えばホワイトアウトにしたければ「VARCOLOR RGB(0,0,0,0),RGB(255,255,255),120」のように最初の色(この場合は透明色)、最後の色(この場合は白)を指定すればSPANIMで中間色は自動的に処理されます。 変化させなくてもいいので任意の色を重ね合わせたいという場合はSETCOLOR命令を使うと良いです。 SETCOLOR RGB(160,0,64,200)のようにすれば海中にいるみたいな表現ができます。
1そうだね
プレイ済み