Archiverse Internet Archive
投稿のみ 投稿と返信
前のページ(最近)
1137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154
次のページ(過去)
返信[12]
親投稿
おちゃめ ochame_nako
れいさんの疑似乱数(※X-Yが負数の場合が考慮されてないのでABSを付けました) ACLS PNLTYPE "OFF" X=0:Y=0  FOR I=0 TO 9999   FOR J=0 TO 9999    GOSUB @RND:A=R*256:GOSUB @RND:B=R*256    GPAGE 0:GPSET A,B,15:GPAGE 1:GPSET A,B-192,15   NEXT  NEXT END 下記に続く
0そうだね
プレイ済み
返信[11]
親投稿
おちゃめ ochame_nako
私の疑似乱数 ACLS PNLTYPE "OFF" X=0:Y=0  FOR I=0 TO 9999   FOR J=0 TO 9999    GOSUB @RND:A=X*256:GOSUB @RND:B=X*256    GPAGE 0:GPSET A,B,15:GPAGE 1:GPSET A,B-192,15   NEXT  NEXT END @RND Y=(Y+0.1)%1.1X=(X*117+Y)%1:RETURN
0そうだね
プレイ済み
返信[10]
親投稿
おちゃめ ochame_nako
残念ながらその値だとランダム性は極めて低い粗悪な疑似乱数になっています。 私が作ったものは固定小数点の特性を活かしモアレが少なくシードがどんな値であっても周期は1800万以上を保証されていて線形合同法の割にはランダム性が高くなっています。 線形合同法の場合は周期が長くてもランダム性が低いものになりがちですが私が作ったものはプチコンの標準RND関数レベルは確保されています。 これは実際にプロットしてみれば一目瞭然です。(下記は256x256のサイズにプロットするmkII用プログラム) 私が作った方はリストの長さは半分以下で速度は約2倍(乱数発生部分のみの比較)という優れものというのが分かるでしょう。
0そうだね
プレイ済み
返信[17]
親投稿
おちゃめ ochame_nako
プチコンで共同開発って初代プチコンの頃から多くの企画が立ち上がっていますが成功例が全くないんですよね。 これは共同開発そのものが難しいというよりもすでに書かれているようにそれをまとめる人の手腕が問われるからです。残念ながら「自分では作れないから多人数で作れば自分が作りたいものが作れるだろう」という考えで企画を立ち上げる人が大半になっています。
2そうだね
プレイ済み
返信[8]
親投稿
おちゃめ ochame_nako
ちなみにmkIIではたったこれだけで周期1800万以上の疑似乱数を発生できます。 Y=(Y+0.1)%1.1X=(X*117+Y)%1 プチコン3号ではシードIDの設定が可能になったので不要になってしまいましたが。
0そうだね
プレイ済み
返信[7]
親投稿
おちゃめ ochame_nako
 プチコンのRND関数は初代およびmkIIでは私の検証では線形合同法に手を加えたものだと感じました。やはり、速度面では線形合同法はかなり有利ですからね。  私がmkIIで作った速度と短さ重視の自作疑似乱数ルーチンも線形合同法の改良版を使っていて1画面プログラムなどで実際に活用しています。mkIIまでは乱数列を指定できなかったので同じ乱数列の乱数を発生させることで面データの自動生成を行っています。
0そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
「プチコン3号入門講座」でネット検索してみましょう。
3そうだね
プレイ済み
返信[4]
親投稿
おちゃめ ochame_nako
あおごんさんが作ったWAVRECを使って女の人にA、I、U、E、O(以下略)を録音してもらってそれを使って音声合成させるプログラムを作るという手もあります。ただし、なめらかに発音させるのはかなり難しいと思います。
2そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
即興で作ったストップウォッチプログラムです。適当に改造して使ってください。
1そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
動作させているのが旧3DSかNew3DSかを判別するNEW3DS関数です。New3DSならばTrue、旧3DSならばFalseを返します。 これを使えばNew3DSで動作させた時だけ画面をリッチにさせたりとかの差別化が可能です。 DEF NEW3DS()  M=MAINCNT  FOR I=1TO 25000:NEXT  RETURN MAINCNT-M<3 END
4そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
私は「どこよりも詳しく分かりやすいプチコン3号入門講座を書く」というのを頑張ってはいるもののMiiverseだと外部サイトのリンクを張れないのでせっかく書いてもここで質問している人には伝わらないんですよね。(Miiverseでは検索性が悪く文字数が少なく文字のフォント変更もできず図表による説明もしにくいため自サイトで説明するのが一番) そういう意味ではプログラムで書くというのはベターな選択肢でしょう。定期的に公開キーを書いていけば検索性が悪いことはカバーできますね。
6そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
すでに誰かがプチコンで作ったものを真似て作るよりは自分が作りたいものを作る方が楽しいと思いますよ。
0そうだね
プレイ済み
返信[13]
親投稿
おちゃめ ochame_nako
私は頭の中にあるプチコンエミュレータで動作しているのをイメージしながらそれをコーディング(プチコンの命令に置き換え)している感じです。頭の中に描きたいものをイメージしてそれを絵で表現するのと何ら変わりません。 絵の場合は多少間違っても許容できますが、プログラムの場合は間違えるとエラーやバグとなるためそういう面では絵よりも厳格さが求められますね。 したがって、具体的なイメージができるか否かがプログラムを作る際には非常に重要になってきます。
0そうだね
プレイ済み
返信[10]
親投稿
おちゃめ ochame_nako
Aボタンを押している間だけ音を鳴らすというのであれば「Aボタンを押した瞬間に長音鳴らす」「Aボタンを離した瞬間にその音を止める」という処理を行えばいいです。 WHILE 1  IF BUTTON(2) AND 16 THEN BGMPLAY "@150T1<<C"  IF BUTTON(3) AND 16 THEN BGMSTOP 0 WEND BGMPLAYはデフォだとトラック0なのでトラック0指定でBGMSTOPを行えばBGMPLAYでBGMを鳴らすのを中断させることなくAボタンを押した時の音だけ停止ができます。
1そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
私がプチコンmkIIで作ったワイヤーフレームプログラムは回転行列による座標計算込みで立方体は120fpsくらい出ました。ポリゴンだと20fpsくらいです。 プチコン3号ならば最適化すれば旧3DSでもその5~10倍くらいの速度は出ると思います。
0そうだね
プレイ済み
返信[12]
親投稿
おちゃめ ochame_nako
説明書にも書いてあるし、私のプチコン3号入門講座でも詳しく書いていますが、プチコン3号ではグラフィックページ(GRP)が0~5の6ページ分あります。 デフォルトではそのページ4がスプライトに設定してあるというだけであってスプライトのページは自由に割り当てることが可能です。(ACLSを実行するとその設定は初期化される)
1そうだね
プレイ済み
返信[7]
親投稿
おちゃめ ochame_nako
確かに公開キーのタイプミスやアップデートによる変更を考えるとコメントの方が無難ですね。 私は最初の投稿はスクショを入れたいので3DSで投稿しあとはPCで投稿するというパターンが多いのですが、3DSで多くの文字は入力しにくいため少ない文字数で説明が可能なプログラムは元の投稿、説明がそれなりに必要なプログラムはコメントで公開キーを書いています。 それを誘導目的と感じるならばその程度の人(コメントもろくに読まない人)だと思います。
0そうだね
プレイ済み
返信[7]
親投稿
おちゃめ ochame_nako
16行のLOAD "GRP0:KYARA",0でGRP0以外(1~5の範囲)にロードすればOKです。 その際にはSPPAGEでそのロードしたGRPページに変更するのをお忘れなく。 ちなみにGRP4にロードした場合は最初から用意されているスプライトキャラを上書きしてしまいますが、ACLSを実行すれば元に戻るので大丈夫です。
0そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
自分が欲しいものは自分で作るというのは楽しいですよ。 簡易的な電子辞書ならばこんな感じで作れます。 使う命令はINPUTとPRINTとIF~THEの3つだけです。 INPUT "えいたんご";EN$:JP$="" IF EN$="pen" THEN JP$="ペン" IF EN$="book" THEN JP$="ほん" IF EN$="apple" THEN JP$="りんご" IF JP$=="" THEN PRINT "がいとうするたんごはみつかりませんでした" IF JP$!="" THEN PRINT "にほんご:";JP$ 現在は3語しか登録されていないけどIFを増やすだけでいくらでも登録単語は増やせます。 BASICに慣れたらデータはREAD~DATAを使って配列変数で管理したりとか別ファイルに保存して拡張性を高めるというようにすると良いでしょう。
2そうだね
プレイ済み
返信[14]
親投稿
おちゃめ ochame_nako
 私が最初に作ったのは30年少々前に作った100m走ゲームです。2つのボタンを交互に押して画面上のキャラをゴールまで移動させるのにかかったタイムを競うだけのゲームですが自分でプレイして熱くなりました。  昔の8bit機は処理速度が遅くてBASICではリアルタイム処理をさせるのが難しかったですがそれでもできる範囲内で工夫していろいろなゲームを作りました。それが今でも私のプチコンプログラムで活かされていると思います。(交互押しの画期的な方法はその時に自分の力だけで考えたもの)  私がプチコン3号で最初に作ったプログラムは発売日の11月19日に作ったNEW3DS()関数です。これはNew3DSと旧3DSのどちらでプチコン3号を動作させているのかを自動識別するプログラムです。 このNEW3DS関数を使えばNew3DSで動作時のみ画面のクオリティを上げるなどの処理も可能です。
0そうだね
プレイ済み