Archiverse Internet Archive
投稿のみ 投稿と返信
前のページ(最近)
121 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41154
次のページ(過去)
返信[9]
親投稿
おちゃめ ochame_nako
まげさんへ 使用していただきありがとうございます。 例えば長目のセンテンスのみ相槌を打つようにするにはTKの値を大きくするだけなので簡単です。 用意されている言葉が「うんうん」「へ~~~~」「なるほど」の3つなのは青い鳥SNSにおいて「『うんうん』『へ~~~~』『なるほど』みたいに自動的に独り言に対して相槌を打ってくれるソフトが欲しい」というのを見かけたためです。
0そうだね
プレイ済み
返信[11]
親投稿
おちゃめ ochame_nako
命令の使い方は命令を入力した後でキーボード右上にある「?」をタッチするとヘルプが出てくるのでそれを見てください。(見ても分からなければまた質問してください) 命令を覚える順番というのは特に決まっておらず「自分に必要な命令」から順番に覚えると良いと思います。 逆に言えば「現在必要に感じていない命令」は特に覚える必要はありません。 とはいえ、ネット環境があるならば公式サイトのリファレンスを見たり、そうでなければプチコン関連書籍(公式ガイド、公式ムック等)を見てどんな命令があるのかをざっくりと眺めておくと良いかもしれませんね。
3そうだね
プレイ済み
返信[10]
親投稿
おちゃめ ochame_nako
すでに覚えている命令から判断するとあと「繰り返し命令」と「入力命令」さえ覚えれば簡単なゲームは十分に作れます。 繰り返しの命令にはWHILE~WEND、REPEAT~UNTIL、FOR~NEXTなどあります。また、GOTO@ラベルによる繰り返しを記述も可能です。 自分が使いやすいものを選んで使用してください。(個人的にはWHILE~WEND派ですが、汎用性の高さからmohさんも書かれているようにGOTOで代用しても良い) 入力に関してはボタン入力をしたいならばBUTTON()、タッチ入力をしたいならばTOUCHですがこれは自分が作りたいプログラムに応じて選んでください。 あと出力命令に関してはPRINTではLOCATE、スプライトではSPOFSを使い「任意の場所に表示する」ということを覚えておくと作れるゲームの幅が広がると思います。
1そうだね
プレイ済み
返信[9]
親投稿
おちゃめ ochame_nako
入力というのはボタン入力、キーボードによる文字入力、タッチによる入力によって使用する命令が変わります。 出力というのが画面出力(=画面表示)、音声出力等があります。画面表示にはプチコン3号ではコンソール、スプライト、BGなどが用意されています。コンソールというのは普通の文字のことでスプライトというのはゲームで良く使われている動作するキャラ、BGというのはゲームの背景のことです。 繰り返しというのは文字通りです。プログラムというのは先頭から順番に実行して最後まで実行したら自動的に終了してしまうためゲームオーバーになるまでゲームを続けるためには繰り返し処理が必要不可欠となります。
1そうだね
プレイ済み
返信[8]
親投稿
おちゃめ ochame_nako
何が「必要最低限の命令」なのかは人によって(もっと言えば作りたいプログラムによって)変わります。 しかし、プログラムというのは大きく分けて入力、出力、繰り返し、判断・分岐によって構成されているためそれぞれの命令を最低1つ覚えるということが必要最小限だと個人的には思います。
3そうだね
プレイ済み
返信[5]
親投稿
おちゃめ ochame_nako
A=A+1とINC Aでは大差ないように見えるしINCの方が微妙に遅いので「要らない子」に見えますが使い方次第では便利です。 例えばAボタンを押した回数を数えるのにA_BUTTON_COUNTという変数名を使用している場合にはA_BUTTON_COUNT=A_BUTTON_COUNT+1とする必要がありますが、INCを使えばINC A_BUTTON_COUNTで済みます。(長い変数名の時に便利!) また、INCは+と比べて少し遅いのですが、激遅の配列変数と比べたら遙かに高速であるためA[I]=A[I]+1をINC A[I]と記述すると配列変数の読み出しが2回から1回へと減るため2倍近く高速化が可能です。(配列変数使用時に高速化!) とはいえ、ナツキさんも書いておられるように自分が好きな方を使えば良いだけだと思います。
11そうだね
プレイ済み
返信[7]
親投稿
おちゃめ ochame_nako
ツララさんへ 「わかる」「それな」「やべえ」「マジで」くらいあれば十分でしょうか?
0そうだね
プレイ済み
返信[6]
親投稿
おちゃめ ochame_nako
QSPというのは最初からQSPとして作り始めるようなイメージを持つ人も多いと思いますが、まずはこのような「普通に動作するプログラム」から作り始めます。 いきなりQSPを作ったらバグだらけになってしまうし思うように短縮も難しいため仕様を定める必要があるためです。(逆に言えば仕様の範囲内でどんどん処理を省いたりして短縮したりする) QSPに限らず、「プログラムの短縮や高速化をしたい」という人はいきなりそれを行うのではなくまずは自分にとって分かりやすいプログラムが出来てから行うと良いでしょう。 今回の場合だとメインルーチンが短くリスト短縮をした際に余裕があったため試作品には無かったハカセのSPを画面表示したり等の画面レイアウトの工夫もQSPでできる範囲内でいろいろと行っています。
0そうだね
プレイ済み
返信[5]
親投稿
おちゃめ ochame_nako
これが初期段階の試作品プログラムです。(画面レイアウト以外は完成版と全く変わっていません) QSPのリストを見ても何をしているのかさっぱり分からないという初心者の人はこちらのプログラムを参考にしてみてください。
1そうだね
プレイ済み
返信[4]
親投稿
おちゃめ ochame_nako
ちなみにマイクが反応している時は画面が点滅しているため分かりやすくなっていると思います。 なお相槌を打つ準備ができたら画面が赤くなります。 画面左上の数字はデバッグ用の数字(左がマイク反応時間、右が無反応時間)です。上記の変数の値を変えた際に正常に動いているかどうかの確認にでも使ってください。(マイク反応時間は一定以上の無反応時間で0にクリアされます) 
0そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
返す言葉が3種類では少ないという人はDATAにどんどん付け足してください。冒頭の変数Mがメッセージの種類となっているので例えば5種類に増やしたらM=5と変更してください。 現時点で最適に調整しているので特に問題はないと思いますが、変数TK、SLの値を変えると相槌を打つタイミングが変わります。小さい値にすればするほど相槌を打ちやすくなります。 TKが相槌を打つまで必要な時間、SLが言葉を発し終わってから相槌を打つまでの時間を示しています。(TK=0、SL=0とすると「タイミングを考慮せず暴発してしまうため小さければ良いというものではない) 変数LVでマイクの反応を変えることができます。小さい値にすればするほど敏感に反応します。発音時に適度に画面が点滅するようにプレイヤーの声の大きさや周囲の音に応じて調整してください。(常時点滅しっぱなしや大声を出さないと反応しないと正常な動作ができない)
0そうだね
プレイ済み
返信[2]
親投稿
おちゃめ ochame_nako
簡単に言えば、貴方が独り言を言ったらタイミングをみて「うんうん」「へ~~~~」「なるほど」とランダムで相槌を打つだけのプログラムです。 QSPながらタイミング良く相槌を入れるように工夫しています。 独り言を聞いてくれる相手が欲しい人はぜひ使ってみてください。
0そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
これがプログラムリストです。 公開キーは【 4R2PB4R3 】です。 見ての通り画面表示とデータでプログラムの半分くらいを占めているため実質的な制御部分はQSPの半分くらいの小さなプログラムです。
0そうだね
プレイ済み
プレイ日記
おちゃめ ochame_nako
久々のQSP、「あいのて QSP」です。似非音声入力によってプチコン3号が貴方の話し相手になってくれます。 《 会話例 》 おちゃめ「うわっ!おならが出ちゃった」 あいのて「へ~~~~」
13そうだね
プレイ済み
返信[14]
親投稿
おちゃめ ochame_nako
別に四角いりんごでも問題ないのですが広く知れ渡った形状の方が多くの人に認知されやすいと私は思います。 こんな単色のシンプルなドット絵でもりんごと認知してくれる人が多いでしょう。 田型のキャラを主人公にして巨大化するりんごを倒すシューティングというのも良さそうですね。
1そうだね
プレイ済み
返信[12]
親投稿
おちゃめ ochame_nako
頭を大きくお尻を小さくすればりんごっぽく見えるかもしれません。 あとりんごは表面に光沢をつけると瑞々しく見えると思います。
2そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
特別なAI機能をつけない限りはRPGの敵キャラの思考は乱数で問題ないと思います。 例えば直接攻撃、特技1、特技2、特技3という4つの行動パターンがあるならばそれをまずはIFで記述すれば良いですね。処理の効率化は一旦普通に動作するものができてそれで不満があったときに行うと良いでしょう。 行動パターンが4種類だとしたらA=RND(4)としてAの値を元に行動パターンを実行でも良いのですが行動パターン0(直接攻撃)が40%、特技1が20%、特技2が30%、特技3が10%のようにモンスターごとに異なる確率で特技を出すのもそれっぽくてよさそうだですね。 これが難しければまずは最初に書いたように均等に行動パターンをIFを使って行うプログラムを作ると良いと思います。
2そうだね
プレイ済み
返信[2]
親投稿
おちゃめ ochame_nako
自作命令は便利ですが、どうやって作ったらいいのか分からないのであればDATAを使わず自分が作りやすいやり方でモンスター1体、プレイヤー1人のシンプルなものから作ると良いと思います。 1対1ならば交互にターンが回ってくるためIFの羅列で問題もありません。 作っていくうちにデータ数が増えてIFの羅列に限界を感じたら何をDATAで記述するのかが判断可能になるでしょう。
3そうだね
プレイ済み
返信[11]
親投稿
おちゃめ ochame_nako
RPGを作る際に重要なのはどんなRPGにしたいのかということです。 複雑な処理というのもプログラムの処理速度等を考慮しなければ単純な命令の羅列で実現可能な場合も多いためまずはどのような処理をしたいのかをイメージすることが重要です。 その際にスプライトを使わないと実現が難しいものであればその時にスプライトを勉強すれば良いです。 スプライトを覚えておけば何かの役に立つという時点で勉強するよりも実際にこういう場面で必要だから勉強するという方が身に付き方も格段に上がると思います。 「まずは戦闘画面から」という具体的なものが出ているならばもう一歩進めてどのような戦闘画面にするのかを考えてみましょう。 一気に駆け足で登る必要はなく一歩一歩ゆっくりで構わないのです。 諦めない、やる気を失わないならば「やりたいこと」は実現可能だと思います。
1そうだね
プレイ済み
返信[10]
親投稿
おちゃめ ochame_nako
技術というのはやりたいことがあればどんどん向上します。 やりたいことというのは自分が分からないことを積極的に調べたり試したりということが苦もなく行えるため結果的にそれが技術向上に繋がるということです。 したがって、まずはやりたいことをどんどん見つけてやってみてください。 とはいえ、やりたいことが現在の自分の技術よりも遙か上の場合は可能になるまでかなりの時間がかかるため「どれだけ時間がかかってもできるようになりたい」という強い気持ちが必要になります。 そこまで「強い気持ちはない」というのであれば「やりたいことの具体性が見えていて部分的には分かるけど分からないところもある」くらいのものをやれば問題ありません。 私も今までに作ったことのないものを作るとなると「分からないこと」があります。頭の中で考えても分からないような場合は実際に作って試してみれば粗方解決可能です。
0そうだね
プレイ済み