投稿
☆TAKA☆ ParasolWaddleDee
【制作中のゲーム紹介】 今、アクションアドベンチャーゲームを作っており、試行錯誤の末マップ切り替えが実装できました! まだ作り途中ですが、気になる方はダウンロードをして、色々見てくださると嬉しいです。 【公開キー:QD25SEQ3】
31そうだね
プレイ済み
返信[1]
親投稿
☆TAKA☆ ParasolWaddleDee
この泉、何か秘密がありそうだ…。
2そうだね
プレイ済み
返信[2]
親投稿
ななし 1227hiro
凄すぎる! 試作品とはいえ剣やマップのスクロール、下画面のメニュー、オリジナルBGMなどどれもきちんと出来ています 僕はこんな凄いの作れないな… いろいろ参考にさせて頂きます! 完成楽しみに待っています! (画面写真のようにここまでたどり着きましたよ!)
3そうだね
プレイ済み
返信[3]
親投稿
けい kei0baisoku
凄くいいです!!(^0^) たのしみー(´∀`) 自分もこんな感じのゲームその内作りたいですー(´з`) 写真のところには、Rを押している間あらゆる所をすり抜けるデバッグ機能を自分で作って辿り着きました(^^; 強いて言うなら、マップ切り替え時に一瞬パカッてなるのが惜しいですねー(´ω`)
0そうだね
プレイ済み
返信[4]
親投稿
りょうま R-S1437
こう(画像)書いてあったので、スライドパッドの操作も出来たらいいと思います!
0そうだね
プレイ済み
返信[5]
親投稿
りょうま R-S1437
赤い宝石をタッチすると杖が出てきます。
0そうだね
プレイ済み
返信[6]
親投稿
☆TAKA☆ ParasolWaddleDee
>>ひろきさん そんなに褒めますか!照れちゃうじゃないですか!(//∇//)← そんなことより、迷路お疲れ様です! それと、作り途中のを公開した時は、どんな些細なことでも良いので「ん?」って思った挙動があったら遠慮なく言ってくださいね!
1そうだね
プレイ済み
返信[7]
親投稿
りょうま R-S1437
凄い楽しみ!あと画像のやつは近道ですね。
0そうだね
プレイ済み
返信[8]
親投稿
☆TAKA☆ ParasolWaddleDee
>>けいさん デバッグ機能…!他人のプログラムを改造できるなんてさすがです! (改造もしやすいように、無駄なところを減らし、コメントも沢山書かなくては…!) それと、ご指摘ありがとうございます。自分はいつも十字キー押しっぱなしでスクロールさせていたので気づきませんでした。十字キー入力が無かったら足音は消さないと変ですよね!
1そうだね
プレイ済み
返信[9]
親投稿
☆TAKA☆ ParasolWaddleDee
>>りょうまさん スライドパッドですか! 確かに、バーチャルコンソールのように操作できた方が良いですね。 スライドパッドを十字キーと同等に扱えるプログラムを作ることににチャレンジしてみます! それと、バク報告感謝です。
3そうだね
プレイ済み
返信[10]
親投稿
☆TAKA☆ ParasolWaddleDee
>>りょうまさん 帰る時のためにコッソリ用意しました(笑)
2そうだね
プレイ済み
返信[11]
親投稿
けい kei0baisoku
>☆TAKA☆さん 規模が大きくなってきたら、無敵とかすり抜けとかワープとか、デバッグ機能を作っておくと便利ではかどりますし、楽しいですよ!(^O^) TAKAさんのは整理されて見易く、改造しやs………プログラムが読みやすかったです(^O^) あ、パカッてなるというのは、足音でなく画面のことです。分かりづらくスミマセン(><) 足音はむしろ、移動してるからあっていいと思います。 マップの切り替わり直後に、いっしゅん画面がチラつかないでしょうか? 挙動とプログラム見たところ、BGのスクロールを暗転がはけた後におこなっているためのようでした。 元々ゲームの暗転は、こんな感じのマップの切り替わりとかをプレイヤから隠すために生まれました。 真っ暗になった瞬間に、キャラの移動とかマップのスクロール位置の再セットとかを全部すると良いと思いますよ(^O^)
1そうだね
プレイ済み
返信[12]
親投稿
☆TAKA☆ ParasolWaddleDee
>>けいさん うーん…。このように、15フレームかけて真っ暗にして、8フレーム真っ暗な状態で、15フレームかけてもとに戻すように書いてあり、真っ暗になった瞬間からマップを切り替えるようなプログラムにしたのですが…。たぶん、NEW3DSと旧3DSの処理速度の違いのせいだと思います。 たぶん、どうやったらマップツールで作ったデータを使えるかがサッパリわからなくて、サンプルゲームのMAP描画のプログラムをそのまま引用してきたせいで、このゲームには必要のない、無駄な処理までしてしまっているせいで8フレーム以上かかってしまうんだと思います…。 マップデータを理解しなくてはならない時が来たようです!(><;) (最悪、暗転時間を増やせば良いですが) 詳しく教えて下さってありがとうございます!
1そうだね
プレイ済み
返信[13]
親投稿
けい kei0baisoku
あっ、ほんとだ。 的はずれなアドバイスでスミマセン(><) 確かに私のは旧3DSなんです。 処理負荷の軽減ですかー。うむむむ(´ω`)
0そうだね
プレイ済み
返信[14]
親投稿
☆TAKA☆ ParasolWaddleDee
早速すり抜け機能を追加してみました! メインループの最初の方に6行書くだけです。
1そうだね
プレイ済み
返信[15]
親投稿
けい kei0baisoku
おお!さっそく!(^O^) やっぱりそれが一番シンプルですよね。私も同じようにやりました。 あと、デバッグ機能関係は「IF DEBUG」などで囲んでおいて、プログラムの最初に「VAR DEBUG=1」とだけ書いておくと便利ですよ(^O^) 遊んでもらうために公開するときも1文字変えれば終わるので、忘れたりうっかり直し間違えたりすることもないです。
2そうだね
プレイ済み
返信[16]
親投稿
けい kei0baisoku
乗りかかった船ということで、どこが重いのかまで調べてみました。 旧3DSだとマップ切り替えに22,3フレームかかってましたが、LOADSUBの最後のこの部分で1回5フレームかかってます。ループ4回で20フレームなので、ほとんどここですね。
1そうだね
プレイ済み
返信[17]
親投稿
けい kei0baisoku
一番簡単なのは暗転の時間を伸ばすことですが、今は完全に暗くなってからロードを始めているので、画面に影響がでないように気を付けながら、重い計算はフェードアウトしながら先に始めると今の時間でも間に合いそうです。 もしくは、計算結果のTMPをゲーム起動時に計算して全部持っておいても良いかもしれません。 (1マップ辺りは64KBのようなので、無理じゃないと思います。たぶん。) いずれにせよ、ロード処理の解析は少し必要ですねー(´ω`)
1そうだね
プレイ済み
返信[18]
親投稿
けい kei0baisoku
ついでに、時間を計るのに使った処理です。 使えそうでしたらどうぞ。
2そうだね
プレイ済み
返信[19]
親投稿
☆TAKA☆ ParasolWaddleDee
>>けいさん こんなに詳しく!分かりやすく!丁寧に!教えてくださってありがとうございます!!!感謝をしてもしきれません!m(_ _)m このゲームでは、BGのレイヤーは0と1しか使っていないので、5フレームかかる処理を2回繰り返すだけでOKでした。 それと今まではBGSCALEで1倍で表示してから2倍にしていたところを、最初から2倍で表示するようにしました。 これだけで半分位速くできました! 残るはややこしい部分だけです…。 それとデバッグの賢いやり方も、ためになりました! 本当にありがとうございます。
1そうだね
プレイ済み
返信[20]
親投稿
☆TAKA☆ ParasolWaddleDee
1そうだね
プレイ済み
返信[21]
親投稿
☆TAKA☆ ParasolWaddleDee
そういえば、でんぺんさんのマップツールは範囲指定ができたような…!
1そうだね
プレイ済み
返信[22]
親投稿
この部分をこうするといいかも。 もちろん呼び出し側も変える必要があります。 関数からサブルーチンを呼び出すのが気になったら変える必要があるけど、流れ的にはこんな感じです。
2そうだね
プレイ済み
返信[23]
親投稿
お。ちょうど名前が?! 範囲指定出来ますよ〜。それを使う場合、BGロードのプログラムも公式のはサイズ可変に対応してないので、僕が出してるサンプル(コメントにあります)からロードプログラムを引っ張っちゃってください〜。 ちなみにゲームについて書いてませんでしたが、なかなか本格的でしかも音楽まで自作って凄いですね〜。期待してます! 引き続き頑張ってください〜。
1そうだね
プレイ済み
返信[24]
親投稿
けい kei0baisoku
おお!お役に立てたようで良かったです!(´∀`) 自分が遊ぶのが楽しみな作品だとついつい肩入れを………(´з`) やっぱりデータとか把握してらっしゃる本人だと色々最適化できますね。 ふむふむ、使う範囲に比べてマップのデータがだだっ広いようですね(´ω`) TMP%の内容とBGの範囲との関係を理解したら、今のままでも計算量を4分の1くらいに減らせるかも知れませんね。 (スミマセン、BGは私もちゃんと触ったことなくて(><)) あと、でんぺんさんのマップツールは公式のと互換性もあるので、このあともどんどん作る予定でしたら今のうちに乗り換えておいた方が良いかも知れませんね(^^)
2そうだね
プレイ済み
返信[25]
親投稿
けいさんの言うように期待する作品には肩入れしちゃうのは同感ですね(^^; サイズ可変も出来ますし、マップツールを使うゲームであれば役に立つと思うので是非使ってみてください〜。乗り換えて損はないと思いますよ!(^^; ちなみに上記コードは、どんな速度でも問題ないんじゃないかと思います。(遅い場合は暗転時間が長くはなりますが…) まだ上記コードだとしても高速化しておく分には暗転時間が短くなるとか利点は多いので、今までやってる高速化は無駄にならないと思います。
0そうだね
プレイ済み
返信[26]
親投稿
☆TAKA☆ ParasolWaddleDee
>>でんぺんさん そのコードはマップ切り替えが終わった後に暗転がはける、僕の理想とするコードです!そうやって書けば良いのですね! DEFの範囲を超えるGOSUBのやり方もあるんですね!普通の書き方だとエラーになってしまうので、てっきりできないものだと思い込んでました。 それとDEF内でGOSUBができれば看板を読んでいる間も下画面操作も可能にできます! ロードプログラムも打ち込んでみますね!
0そうだね
プレイ済み
返信[27]
親投稿
DEF内でのGOSUBのしかたは僕も最近知ったのですが、こういう場合は役に立ちますね〜。ただまだ公式に完全にOKなのかはわからない面もあるので、多少自己責任がつきまとってしまいます…。 なので余裕があれば、全体的にGOSUB自体を使わないでDEF化した方がいいのかもしれないとは思うのですが、まあでも大丈夫かなとも思うので使えるものは使ってサクサクと作った方がいいかな、と(^^; 始めはちょっと勘違いしてたんですが、流れを見てみて暗転の意図がわかったので、それを実現出来るのに一番簡単そうな修正を試みてみた感じです。参考になって良かったです〜。 ゲーム期待してます。頑張ってください〜。
0そうだね
プレイ済み
返信[28]
親投稿
けい kei0baisoku
DEF内からのGOSUBは、一応どなたかがツイッターで質問して、スマイルブームさんから「今のところ仕様」とお返事を頂いたそうです。 ただ裏技に近いのと、DEFならローカル変数を使える点からも、長い目で見たらサブルーチンの類いはDEFにまとめるのをオススメしたいですね(´ω`)
0そうだね
プレイ済み
返信[29]
親投稿
Smoothie ryukey-h
これ凄い!よし僕もこんなの作ってみよう! (あれ?どんどん作成中のが増えて行く...)
0そうだね
プレイ済み
返信[30]
親投稿
pinfu ANNAININ
こ、これはスゴい!! いずれは、絵や音楽も自分で作れたらなぁ・・・なんて思っている初心者なのですが、それをもうここまで作っているとは・・・ 完成楽しみです!!
0そうだね
プレイ済み
返信[31]
親投稿
☆TAKA☆ ParasolWaddleDee
>>スムージーさん 「作ってみたいな」という物があったら、今作っている物に組み込んでみてはどうですか? 自分の場合は、このゲームにゲームセンターという施設を作って、そこでミニゲームとして遊べるようにするつもりです(笑)
0そうだね
プレイ済み
返信[32]
親投稿
☆TAKA☆ ParasolWaddleDee
>>pinfuさん 遊んでいただきありがとうございます! なんか、試作品を投稿してモチベーションが物凄く上がりました! すぐに作りたい気持ちは山々なのですが、もうすぐ定期テストがあるのでしばらくは出来そうにないです…。 春休みくらいには完成させる(つもり)ので待っていて下さい!
0そうだね
プレイ済み
返信[33]
親投稿
DEF内からのGOSUBが(一応)仕様という微妙な答えみたいですね〜。 僕も可能ならDEFに置き換えた方がいいと思いますね。DEFならローカル変数が使えるので便利なのはもちろん、普通にグローバル変数を使うことも可能なのでGOSUBでやってることが出来ないという事は(たぶん)ないはずです。 定期テストがあるそうですね。頑張ってください〜。 そして春休みの完成楽しみにしてます。
0そうだね
プレイ済み
返信[34]
親投稿
☆TAKA☆ ParasolWaddleDee
>>でんぺんさん、けいさん DEFに置き換えですか! 最初はDEFでどうやって命令を作るのか訳が分からなかったのですが、今は引数や戻り値の設定や、ローカル変数も使用できるようになり便利だとわかったので、とりあえずこれから作るサブルーチンは、基本的にDEFを使っていきます! アドバイスありがとうございます。 それと、これを通じてプログラマーとしてレベルアップした気がします!(笑)試作品の内に直すことができて本当に良かったです!投稿してみて良かった〜(笑)
0そうだね
プレイ済み
返信[35]
親投稿
けい kei0baisoku
他の人の反応があるとそれだけでモチベーションガラッと上がりますよね(笑)(^O^) モチベーションは大事です(`・ω・´) 私が関数メインの言語でプログラム覚えたからか、サブルーチンはすぐ分かっても関数はなかなかピンと来ない人が多くて意外です………(`・ω・´;) いろいろ試して、プチコンではサブルーチンは関数の下位互換機能だと捉えてます。 サブルーチンにしか出来ないのは、裏技的なのを使わずにGOSUBとかCHKLABELとか、外のラベルにアクセスすることだけかな(´з`)
0そうだね
プレイ済み
返信[36]
親投稿
☆TAKA☆ ParasolWaddleDee
>>けいさん 僕が、ユーザー定義関数でわからなかったことは、引数と戻り値についてでした。初心者講座にもその単語自体は載っていなかったし、特に引数は、色や機能や管理番号の指定など、使い道が全く違うのに同じ「引数」として一括りにされていたので、どうやって自分で設定すれば良いかが分からなかったです。 それとDEFのヘルプのページが2ページもあるので、どちらを参考にするれば良いかも分かりませんでした。(-。-; それに比べて、GOSUBはGOTOと同じで直感的で分かりやすかったです。 多分、初心者に引数について聞いても、「よく分からない」としか返ってこないと思います…。 それと、ヘルプは多少プログラムに慣れれば便利ですが、知識0だとサッパリ分からなかったです…。「あの分かりにくい命令表と同じじゃん!」って思っていました。(^^;
0そうだね
プレイ済み
返信[37]
親投稿
TAKAさんのいわれるようにプチコンのユーザー定義関数がわからないのは説明がわかりにくい面が大きそうな気もしますね。 プログラムに慣れていれば色々と試して使い方がわかるようになりますが、そうでないと説明が全てになるので、説明がわかりにくいというのは結構致命的な気がします。とくにDEFは記述方法が多いですからねー…。 ある意味、他の言語の関数の方が記述が複雑じゃない面もあってわかりやすいかもしれないとすら思います。(もちろん他の言語でも複雑になる場合もありますが)
0そうだね
プレイ済み
返信[38]
親投稿
☆TAKA☆ ParasolWaddleDee
一度わかってしまえば「な〜んだ」程度のものなので、初心者講座やガイドブックでは、実用性のある関数の具体例やDEFの長所などを書いて欲しいです。
1そうだね
プレイ済み
返信[39]
親投稿
けい kei0baisoku
なるほど、引数とか返り値ですね(´ω`) ローカル変数と合わせて「関数内で完結するためのしくみ」なので、確かにそこの概念がピンと来てないとさっぱりかも……… ヘルプのDEFの説明、そう言えば私もさっぱり分からなかったです(^^; 私がプチコン買って一日目は説明書の確認で終わって、二日目はDEFとサブルーチンの違いの検証だけで終わりました(´Д`) 理解できるまで数時間はかかったはず……… そう言えばDEFの有効な使い方とか、簡単にクイズかサンプルみたいな感じで投稿してみたいですねー。確か前にでんぺさんも問題形式で投稿されてましたけど。
0そうだね
プレイ済み
返信[40]
親投稿
☆TAKA☆ ParasolWaddleDee
「DEFの有効な使い方」…良いですね!「GOSUBで良いじゃん」って考えを崩せれば、DEFを使ってみようと思ってくれるでしょうし!
1そうだね
プレイ済み
返信[41]
親投稿
ゆうとん dsi1300
どのくらい作成されていますか?
0そうだね
プレイ済み
返信[42]
親投稿
☆TAKA☆ ParasolWaddleDee
>>ゆうとんさん 制作の進行度合いの事でしたら、まだ全然です…。(> <;) 僕の過去の投稿に「制作日記」というものがあるので、気になったら見てください!ちまちま更新してます( ´ ∀ ` )ノ
0そうだね
プレイ済み