Archiverse Internet Archive
投稿のみ 投稿と返信
前のページ(最近)
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22154
次のページ(過去)
返信[4]
親投稿
おちゃめ ochame_nako
フォルダで公開ではなくファイルで公開する場合にはマニュアル添付という方法を採ることはできません。 しかし、プログラムリストにREM(')を使って書けば問題ありません。  ちなみに私はプチコンmkIIでQRコードが導入されてから現在のプチコン3号に至るすべての公開ソフト(1画面プログラムやQSPのようなごく小規模のものも含む)においてプログラムの末尾にマニュアルを記述しています。 なぜ、先頭ではなく末尾かというとマニュアルの加筆修正によってプログラム本体のエディタの行番号が変わらないためです。 つまり、マニュアルは末尾の方が融通が利きやすいわけです。(個人の考え方にもよるため必ずしも末尾の方が正しいというわけでもない)
0そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
これだと無駄に画面を占有されてしまうという問題がありますが、使い方を覚えたという人のために上画面は描画の全体表示用として使用することもできます。(下画面でズームを使い上画面の全体イメージを見ながら描くというプチコン3号のお絵かきソフトではよくあるタイプと同じ感じになる) 確かに実行中に使い方が確認できるのが一番なのですが、ダウンロードしたファイルやフォルダで完結すれば問題はないためマニュアルを添付するという解決方法もあります。 これも、HTMLというかハイパーテキストみたいな感じの高性能なマニュアルでなくてもテキストだけのマニュアルでもいいです。 添付する場合にはマニュアルであることが分かるようなファイル名にすると良いですね。 PCソフトではREADME.TXTというファイル名がよく使われます。
0そうだね
プレイ済み
返信[2]
親投稿
おちゃめ ochame_nako
そもそも「そのゲームやツールを使いたい人=プログラムを読みたい人」ということはないためプログラムを読めば分かるというのはできるだけ避けたいところです。 そのためにまず考えられるのはヘルプ機能の搭載です。 ツールの中にはヘルプ機能を搭載しているものもありますがGUIでヘルプを作るとなるとそれだけで結構大変です。 しかし、コンソールで表示するだけならば非常に簡単です。 私の簡易毛筆も下記のような操作説明が上画面に常時表示されています。  ◎簡易毛筆 ver.2.3.0 【 9KS33X31 】
0そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
まず、考えられるのが公開時に詳しい操作説明や解説を書くということです。 自分のWebサイトを持っている人はそこで記述するのもありでしょう。 単純に考えるとこれで問題はないのですが、Miiverseは11月8日に終了するためMiiverseで使い方を解説しても11月8日以降はそれを見ることはできません。 しかし、実際は最初に公開キーを使ってダウンロードだけしておいてあとでじっくり使いたいという場合も多いと思いますが後から解説したページを見つけるのも困難です。 「使い方なんてプログラムリストを見れば分かる」という人もいるでしょうが、数10行の短いプログラムならばともかくとして数千行になるとプログラムを読むだけでも大変です。 また、QSP等の文字数制限プログラムは非常に可読性が悪いプログラムが多いためこれもプログラムリストを読んで使い方を知るのは大変です。
0そうだね
プレイ済み
プレイ日記
おちゃめ ochame_nako
他の人が作ったゲームやツールをダウンロードしてみて「遊び方(使い方)」がよく分からないという経験をした人も多いでしょう。作る側は熟知していても初めて使う人はそうではありません。 せっかく便利なツールを作っても「使い方がよく分からない」という理由で使ってもらえないということにもなりかねません。 では、どうしたらよいのでしょうか?
9そうだね
プレイ済み
返信[5]
親投稿
おちゃめ ochame_nako
私は片手で0~1023の1024通りを表現できます。
2そうだね
プレイ済み
返信[21]
親投稿
おちゃめ ochame_nako
このことを踏まえてIF T THENを見てみると「Tの値が0の時はTHEN以下を実行せずTの値が0でない時は実行する」ということが分かります。 今回の場合だと変数Tはタッチ時間を示しており負数になることはないため「画面をタッチしているならばTHEN以下を実行する」という意味のIF文になっています。 これはIF T>0 THEN と記述したのと同じ意味になるのですが、「T>0」の部分の値(論理式の値)がプチコン3号では条件を満たす時には1になり、満たさない時には0になっているのです。 IF文がどんな時にTHEN以下を実行するのかを知っておくと色々な判定をするときに役立つと思います。
0そうだね
プレイ済み
返信[20]
親投稿
おちゃめ ochame_nako
IF T THEN についてですが、IFというのは条件式がtrue(成立)かfalse(不成立)かでTHEN以下を実行するか否かが決まるというのはご存じだと思います。 しかし、プチコン3号においてはtrueというのは0以外の値、falseというのは0を示します。 要するにIF 3 THEN ~のように0以外の値を記述するとTHEN以下を実行し、IF 0 THEN ~のように0を記述するとTHEN以下は実行しないということです。
0そうだね
プレイ済み
返信[19]
親投稿
おちゃめ ochame_nako
SPROT  12時起点 時計回り XとYを入れ替えたATAN  6時起点 反時計回り 回転の向きが逆なのは角度の頭にマイナスを付ければ良いですが、それだけではなく12時起点と6時起点の整合性を取る必要があります。 これには180度足せば良いのですが、そんなことをしなくてもタッチ座標の差分を取る際に基準点座標とタッチ点座標を入れ替えてやれば良いのです。(本来はTX-IXとTY-IYなのだけどIX-TXとIY-TYをすることで180度回転と同じになっている) これによって、何も追加せずに180度回転したのと同じ効果を得られます。
0そうだね
プレイ済み
返信[18]
親投稿
おちゃめ ochame_nako
軸の正負というのは分かりにくい言い方だったのでもっと分かりやすい言い方にすれば ATANは時計の3時方向を起点にして時計回りの角度、SPROTは時計の12時の方向を起点にして時計回りの角度となります。 ATANで角度を求める際にはATAN(Y,X)となりますが、これをATAN(X,Y)としてX軸とY軸を入れ替えた場合にはATANの角度計算の起点が6時方向となります。2つの時計を用意して6時と3時が重なるようにするには1つの時計を裏返す必要があります。つまり、X軸とY軸を入れ替えるというのは起点が6時方向になるだけではなく求まる角度が反時計回りの角度になるということです。
1そうだね
プレイ済み
返信[15]
親投稿
おちゃめ ochame_nako
こういちさんの方法で問題はないのですが特殊なやり方(プログラムを短くする手法を取っている)であるため普通のやり方も書いておきます。 まず、タッチした場所から角度を割り出すにはATAN(Y,X)とします。 この場合のX,Yは基準点からの差分となるため回転の基準点の座標が160,120ならばATAN(120-Y,160-X)となります。この角度がどの部分の角度かは図の通りX軸の正方向を基準に時計回りの角度となります。 しかし、スプライトの回転の基準点はY軸の負の方向です。つまり、90度の違いがあるわけです。そのため求めた角度に90度足したものがSPROTの指定角度となります。 SPROT 0,DEG(ATAN(120-Y,160-X))+90というわけです。
2そうだね
プレイ済み
返信[11]
親投稿
おちゃめ ochame_nako
こういちさんが書いているように簡易関数電卓QSPは基本的にはQSPで作られた関数電卓なのですが、アプリをどんどん追加可能なOSもどきとしても使うことができます。(詳しくは下記リンク参照) https://miiverse.nintendo.net/posts/AYMHAAADAAADV44SsdcFYg 基本的にDEFを呼び出すプログラムを動作させるスロットとDEFを置いているスロットが一致する場合はCOMMON DEFではなくDEFで問題ないのですが、簡易関数電卓はQSPでありながらプチコン3号のすべての関数や演算子に対応させるため別スロットでプログラムを動作させています。 そのためアプリはCOMMON DEFで追加する必要があるわけです。
0そうだね
プレイ済み
返信[9]
親投稿
おちゃめ ochame_nako
《 注意 》 この自作関数を作った後で公式にBIN$が加わりました。そのため普通に実行するとDuplicate functionエラーとなります。 これを改善するにはファイル中のBIN$の部分をBIN53$などの別の関数名に変更する必要があります。(BIN64$の中にも2箇所BIN$が使われているためその2箇所も同じ名前に変更する)
0そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
質問です。 3つ目の質問が見あたりません。
6そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
十字ボタン以外のボタンを押している間は十字ボタンの操作(キャラ移動)を無効化したいのであれば十字ボタン判定をIF B<#A THENとENDIFで囲めば良いだけだと思います。 要するに十字ボタンの値は#Aの値より小さくなるためその値を示す時だけボタン判定を行うわけです。 他のボタンを押している時は十字ボタン操作のIF文は実行されないのでキャラ移動の判定部分は自由に行ってもらって構いません。
2そうだね
プレイ済み
返信[46]
親投稿
おちゃめ ochame_nako
とはいえ、今の時代は無料で使える開発環境が無数にあるためいくら選択肢が他に無いコンシューマ向けの開発環境とはいえ9800円ではプログラミングによほど興味がある人やマニアが買って終わりだったでしょうね。 これだけの広がりを見せたのも1000円という破格値であったことが大きいです。(今はさらに安い500円) New 2DS LL本体とセットで買っても2万円でお釣りが来ます。これはかつてのポケコンの入門機であるPB-100やPC-1245と同レベルの価格です。 価格が安くなって困る人は値下げ直前に買った人くらいでしょう。(早く買った人は差額分以上は楽しめているので気にならない) それ以外の人にとってはメリットしかなく今後もじわじわとユーザーが増えていくと思います。 ユーザーが増えれば作品を公開する際のモチベーションアップにも繋がりますが今後は反応できる場所の問題が出てきますね。
3そうだね
プレイ済み
返信[45]
親投稿
おちゃめ ochame_nako
BlackSoftさんへ 今まで市販されたコンシューマ向け開発環境はいくつかありますがプチコン3号、BIGとの比較対象とするならば「GAME BASIC for SEGASATURN」(セガサターン用)が12800円(シリアルケーブル付属)、「BASIC STUDIO」(プレステ2用)が9800円あたりとなるでしょうね。(BASIC STUDIOは特に付属品はないものの初心者向けの入門漫画も付属していた) それを考えるとパッケージ販売ならば9800円だったとしても決して高価ではないというのが私の考えです。 (続く)
1そうだね
プレイ済み
返信[2]
親投稿
おちゃめ ochame_nako
私はプチコン3号→PCのテキスト転送はNAGIさんのこのツールを使っています。 https://miiverse.nintendo.net/posts/AYMHAAADAAB2V0f1XfzeAQ 環境に左右されず確実に転送が可能であるため使い勝手は良いのですが、転送はスクショ経由で行うためMiiverseのサービスが終了したら使えなくなるのが残念でなりません。
1そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
私が使っているのは旧3DS、New 3DS、New 3DS LL、2DSです。(旧3DSはver.3.0.0での動作確認専用) 旧とNewの比率は2:2です。(旧には2DSを含み、NewにはNew 2DS LLを含むとする) 3DSシリーズの国内における販売比率は旧がNewの3倍くらい(2017年3月末現在で1785万台:546万台でこれに直近5ヶ月分の販売台数を足すと概ね3:1くらいになる)となっていて現行稼働を考えても旧の方が多いのではないかと思いますが、プチコン3号はNewの恩恵が極めて大きなソフトなのでこのコミュ内でのアンケートだったらもしかしたらNewの方が比率が多いかもしれないですね。
1そうだね
プレイ済み
返信[2]
親投稿
おちゃめ ochame_nako
関数の引数に使用している変数やOUTの後の変数のローカル変数は最初に代入を行った時点で型が確定します。 このプログラムの場合はデータの最初が整数になっている変数はそれ以降整数型変数として動作してしまいます。 もしも、整数や小数が混在したデータを読み込ませたい場合はA#=0.0:B#=0.0などのようにDEF内で変数の初期化処理を行えばすべて実数型変数として使用することができます。(#や%というサフィックス記号は何の意味も持たない)
3そうだね
プレイ済み