コミュニティアイコン プチコン 非公式コミュニティ トピック

アバター
やきはた ◆pmVfuH0n4Kcn
2019/10/4 21:58
協力
焼き畑というゲームを改良したのですが

焼き畑というゲームを投稿したものです。
OFの方に投稿しようと思ったのですが雰囲気が悪いので投稿できませんでした。
NR8XE32D

質問1
十字キーで移動し自動で焼き畑の為に雑草に火をつけるだけのタイムアタックゲームです。
遊んでいただくと分かりますが、焼き畑はタイムアタックが楽しい人にはいいが、どんな手順をとってもクリアできるのでタイムアタックに興味がない人には全く面白くないという欠点があります。

そこでルール1としてある程度成長してる雑草に火をつけると種がはじける設定にしたのですが。
凄い勢いで雑草が増えて凄い勢いで燃やせる設定でゲームを完成したかったのですが。
これにすると無限に終わらないゲームになり、それでは投稿できないと判断し、なんかだらだらゲームが1分も続いてしまうものが出来ました。
帰宅してからずっと調整を続けていたのですがちょっといいバランスを思いつきません。
いいバランスは無いでしょうか?
ってコメントもないゲームにバランス改善を求めるのは何ですが。
達人がいると信じてダメもとで質問です。


次のゲーム生きてる水切り石を実装しようかと考えています。
水切り石
横スク
湖面の上を生きた水切り石が魔物退治に湖面を飛ぶ
水切り石は、空中で自分を回転できる。
着水時、角度で次のジャンプの角度が決まり、ボタンを押すタイミングで飛び出す勢いが増えたり減ったりする。
勢いが増すと空を飛んでる魔物にダメージを与える範囲が広くなる。
です。
このゲームは目があると思いますか?

コメント

アバター
やきはた 2019/10/7 19:03 ◆pmVfuH0n4Kcn
折角アドバイスをいただいたのですがすいません。
私、自分に正直な我儘人間なので水切りの作成の方が楽しくなって焼き畑が手につかない状態です。
今ジャンプ処理→再ジャンプ or 水面に着水 の状態遷移を一気に書き上げるか書くのに失敗するか挑戦する前の所でして。
ジャンプ中池を囲む壁に当たるか当たらないかみたいな処理もあってジャンプに反転も足した感じになってて難易度が上がってます。
慣れた人からしたらとても簡単な処理だと思うのですが私にしたら一気呵成という感じで水切りを考え中です。
水面を少し上下動させた方がなんか画面が綺麗になるかなとかいろいろ考えてます。
でも水面を表現するのに良い画像が標準でないっぽいとかBGFILLでは少し違うなとか。
アバター
高原のな 2019/10/8 17:58 ◆bY8RViwvoODw
「焼き畑」はまた今度で! じーっくり待ってます!

水面表現は難しいですよね。
こういう色々なシーンにおけるグラフィック処理を考えるのに、80年代や90年代のゲームグラフィック挙動とかを、あえてくっきりしたドットの映像で見てみると面白いかもしれません。
ニコニコにある「BGとかスプライトとか色分けしてみた」という動画は大変参考になりました。プチコンはBGとスプライトによる技法ですので、何か活かせることがあると思います
アバター
やきはた 2019/10/9 19:19 ◆pmVfuH0n4Kcn
視聴。
BGとスプライトをやりとりすることでスプライトの不足を補う処理。
凄いですね。
量が多い所はBGで描いて、派手に動かすものだけをスプライトにする感じでしょうか。
こんな高等テクが使いこなせるのはずっと先のことになりそうですが、頭に置いておきます。
休日に水切りの作成が出来たらと思ってます。
ありがとうございます。
アバター
やきはた 2019/10/9 19:42 ◆pmVfuH0n4Kcn
他にもいろいろなテクニックがあるのですね。
高等テクすぎて何が行われてるのか理解が追い付かないのもありますが、たくさんの高等テクによっていろいろなゲームが作られたのかと勉強になります。
アバター
高原のな 2019/10/9 19:46 ◆bY8RViwvoODw
あの時代はスプライトの表示数にかなり厳しい制限があり、様々な制限を回避するために様々な工夫をしていました。今(=プチコン)はそこまで制限はないとはいえ、表現に困ったときには参考になるものはいっぱいあります。プチコン3号以降のグラフィックは性質はサターン似というイメージかなと(個人の印象)。
 波紋とか水の飛び跳ねとかはスプライトの方が自由が効くので向いていそうですね。BGとして参照しているグラフィック面を書き換えるという手法も使えます。こういうテクニックを少し頭の片隅に置いておくと解決のアイデアが浮かぶ時があるので、時々見返しています
アバター
やきはた 2019/10/13 18:08 ◆pmVfuH0n4Kcn
水切り
本日の成果
連続ジャンプでタイミングよくボタンを押しつづけるとどんどんジャンプ力が上がりタイミングが悪いとジャンプ力が下がる実装に成功した

がまだ人に見せられるものではないので公開はまだ先に。

ジャンププログラムは連続押し対策などで長大な入れ子While文という恐るべきものが出来上がった。

書き上げただけで疲れて手直しする気力は残ってないので触りたくない感じ

課題
気持ちよい連続ジャンプの模索(重力加速度の値やマップの広さなど)
動き回る魔物の実装
水面は色塗り四角形を重ねてグラで塗りしただけなので右に動いてるか左に動いているか分からない事に、スプライトで水面を実装しないといけない。
画面がしょぼいが画面周りを改善するのがプログラムで一番大変そうなのであまり触りたくない最小の画面でリリースしたい。

って感じです。
アバター
高原のな 2019/10/13 19:03 ◆bY8RViwvoODw
お! 跳ねる水切りだ!

スクロールがわかりにくい問題は難しいですよね。キャラクターの位置と同じくらい遠くにある近景を用意してスクロールしたりとかしてもいいかもしれません
水中に魚を泳がせたり、カエルがいたらかわいいかも。もっと地味に進んだ距離を描画するだけでもいいかもしれません。あるいは距離ごとに「ただいま○○m」みたいなメーターを一緒にスクロールすれば、大会風? 凝ったことをすると手間ばかり増えるので加減はいると思いますが、動きが見えるとうれしいですよね!

ついリソースばかり作ってしまうわたしは一向に作っているものの完成が見えなくて、動きを作り込んでいくやりかたがいいなと思ったりしています
アバター
やきはた 2019/10/13 19:43 ◆pmVfuH0n4Kcn
独自絵を描くのは絵心が全くないので中々難しいです。

BG機能で巨大な背景を描いて、そこからスクロール位置にあった小さな部分を切り取って拡大して背景として使うみたいなことを考えています。
背景を描くときに何度も切り取って、風景の奥に行くほど段階的に背景の縦縮尺を小さくすれば自然な背景ができるかなと思ってます。

本当は手前にススキ穂とかトンボとか大写しで描いて、中景にジャンプに合わせて見える角度が変わる水面、奥に遠景の田舎とか描きたいですがそんな絵心がないのであり合わせで何とかします。

長大で複雑な構造の入れ子While文でなく、主人公操作関係を関数化して変数で状態遷移を管理し、関数内で動作の分岐処理を書けば拡張性高く書けたと反省してます。
そうすれば
while
主人公の動き処理
敵の動き処理
敵と主人公あたり処理
敵消滅処理
背景処理
wend
で手軽に拡張できたなと思ってます。

今回書いてしまった間違った設計のコード
while
while
水面を左右に移動する処理
wend
ジャンプボタンが押された
while
連続ジャンプ処理
 while
水面下から水面までのジャンプ
wend
while
  空中でのジャンプ処理
 wend
while
水中でもう一度タイミングよくジャンプボタンを押す処理
wend
wend
while
ジャンプに失敗したので水面まで浮上する処理
wend
wend
で拡張性が最悪になりました。
こういうのは条件分岐で変数で管理したほうが良いですね。
アバター
やきはた 2019/10/13 22:03 ◆pmVfuH0n4Kcn
BGに好きな座標にスプライトを回転拡大縮小したものを描いて、BGの好きな部分を切り取って回転拡大縮小の処理を施して別BGに張り付けてと表示用BGを描くと妄想していたのですがプチコン3号ではそのような命令が見当たらないのですね、皆さんどうやって擬似3Dみたいなゲームを作ってるのか謎になってきました。

擬似3Dなんて高度な事じゃなくて背景の建物や木や草を適切な縮尺で描きたいと思っていたのですが。

遠景の手前の家、遠景の中央の家、遠景の奥の家それぞれ縮尺を変えて一枚のBGの上に描こうと思っていました。

こういう事はBG以外の道具を使う必要があるのでしょうか?
アバター
Na 2019/10/13 22:36 ◆QoELVrBXBQCI
>BGに好きな座標にスプライトを回転拡大縮小したものを描いて
BGに描かずスプライトとして表示すればいいじゃないですか。
ちなみにスプライトの手前/奥はZ座標で設定しますよ。

>BGの好きな部分を切り取って回転拡大縮小の処理を施して別BGに張り付けて
BGはそんなに高度なことはできません。
回転拡大縮小はスプライトが得意です。
アバター
高原のな 2019/10/13 22:40 ◆bY8RViwvoODw
ああ、雑に言うと「プチコンの」BGはタイル状に画像を並べることしかできないんですよ
だいたい複雑なグラフィックはスプライトでやってますね

やっている処理の勝手なイメージでは、こりんごさんの「走れアメジス」がいい感じです。
もしBG面の画像をスプライトで使おうとするならば、グラフィック面に画像を書き出して、それを使えばいいんですけど、ちょっと仕組みの説明が大変かもです
アバター
高原のな 2019/10/13 22:45 ◆bY8RViwvoODw
スプライトはグラフィック面の画像を切り出して好きな位置に描画するという機能ですから、そのグラフィック面に違う画像を書き出せば違う描画ができます。
一番お手軽なのは、GPR4面の使わない領域を適当に決めて、GFILLで透明に処理した後、GCOPYでGRP5面→GRP4面で表示したいように並べ替え、SPDEFとかSPSET/SPCHRでその範囲を利用するように処理するといった感じでしょうか。
やり方はGPAGE命令、GCOPY命令、SPDEF命令あたりのヘルプを見たら見えてきそうですね(雑な感じですみません)。
アバター
高原のな 2019/10/13 23:08 ◆bY8RViwvoODw
特徴と使い分けのポイントが各々にあると思うんですが、個人的には、

BG:大量の同サイズ(16px×16px)キャラチップ並べ放題。2Dスクロールの強い味方。レイヤー数・変形方法などに制限があるので使いづらい場面も多いが、うまく使えたら儲け物。BGの補佐役としても下の2つを使ったりする(「BGとかスプライトとか色分けしてみた」にそのあたりのテクニックが詰まっている)。

スプライト:だいたいなんでもできる。ただし、数に制限があるのでステージのオブジェクトとして使うときはBGでできることは全部BGにやらせて、BGが苦手な処理を請け負う。普通は自由に動くキャラに使う。変形自在で軽いので非常に便利。

グラフィック:超なんでもできるが、とにかく重い。重すぎる。スプライトでできないこととか、BGをアニメーションさせるときに使う(スプライトやBGはグラフィック面から指定範囲を切り出して使うという構造のため)。毎フレーム回す処理は本当に最小限に抑える。

といったところ。わたしの中での考え方なんですけどもね。
アバター
やきはた 2019/10/14 7:30 ◆pmVfuH0n4Kcn
成程。
今度の休日グラフィックとBGでできることを調べて色々実験してみます。
グラフィックで何でもできるが重いのですね。
工夫が無数に必要そうです。
ありがとうございます。

高原のなさんはリソース重視の作品とのこと。
どんなゲームを作ってるかちょっと気になってます。
3号で遊べるものでしょうか?

追記
3号で性能不足を感じ始めて何作か作ったらスイッチライト+4号+プチコン公式ブックの購入しようかと思ってます。
4号は色々違うらしいと聞いてますのでその時は0から調べものですね。
アバター
高原のな 2019/10/14 21:05 ◆bY8RViwvoODw
新作に関して投稿してみました〜 あの緑の背景はBGです。本当は動画も見せたいのですが、ちょっと動画は厳しいですね(
今作っているのは、あんな感じのよくある見下ろし視点のゲームです。プチコン4向けに作ってはいますが、完成後に3号に持ってくることも考えています(4が用意できない方をわりと見かけるので、というのと両方向の移植ができるようになるとつよつよになれるかなと思って)

4は、3号と少しだけ変わった部分がたくさんありますが、3号で築いてきたプチコンの機能の使い分け感覚はもちろんのこと、(グラフィック以外の)主要な命令はほとんど変わりませんので、ぜひ4も試してみてください!
プチコン4は、キーボードがあるととても便利ですが、USBで繋げられるものである必要がありますし、Switch Liteの場合はUSB Type-Cでの接続になりますのでご注意(Liteに接続できるかは忘れました)
アバター
やきはた 2019/10/16 19:13 ◆pmVfuH0n4Kcn
ありがとうございます。
投稿してみましたを休日に見ることにします。

来月スイッチを買う予定です。
3号でもまだ手狭感を感じてないので3号で限界を感じる程度の物が作れるようになったら4号に移る予定です。

当面はスイッチでマリオカートでも遊びながら3号で開発します。

フォントを一ドットずつフルカラーで定義できる命令があるんですね。
セルオートマトンとかでリアルタイム2次元配列で水面や炎を計算してフォントの形で表示するとか妄想は膨らみます。
GPUTか何かその辺の命令で一点ずつ水面のきらめきを描画するのも手ですが描画が早いかとか奥行き設定が出来るとか色々考えながら試してみたいと思います。
まあそんな高度な事は、水面を斜めで表示する基本から作成ですが。

スレが長くなってきました。
アバター
やきはた 2019/10/16 19:44 ◆pmVfuH0n4Kcn
検索したらシンプルな式が出てきました。
式の内容を考えた所、2次元配列で水面高さは次のように決定されるようです。

新しい水面高さ=周囲4マスの今の水面高さの平均+今の水面高さ - ひとつ前の水面高さ

っぽいです。
高さを色に置き換えて、まれに小さな乱数を足してやれば結構それっぽい水面の揺らぎが描画できるかも。
計算量や描画が重ければ大きな四角形で大雑把に計算や描画すればいいかなとか考えています。
アバター
やきはた 2019/10/19 18:33 ◆pmVfuH0n4Kcn
今日の成果
ジャンプした時水面を斜め表示するための座標を出せるようにした。
これを元に、水面の擬似テクスチャを現すセルオートマトン計算結果を指定部分に表示する処理への道が見えた。
明日の予定。
水面に擬似テクスチャを表示。
来週の予定。
敵を実装できたらいいな。
なんだかスレが長くなったのでこの辺でこのスレを閉じたほうが良いでしょうか?
アバター
高原のな 2019/10/19 23:22 ◆bY8RViwvoODw
無理に閉じる必要性はないと思います。必要に応じてといったところ
また、違うトピックとして投稿すれば、より人目につきやすくなると思いますし

水切り楽しみにしてます! 水面表現は気になっているので、できたらスクリーンショットなども見てみたいです
アバター
やきはた 2019/10/19 23:51 ◆pmVfuH0n4Kcn
水面難しいです。
休日半日水面の表示だけで時間をつぶしました。
被写界深度擬きはできたのですが。
水面がキラキラ光を照り返す感じができません。
曇り空のよどんだ水を正方形の板で近似しましたみたいな感じになって。
明日作りかけですが一度公開キーあげます。
背景が寂しいので先に遠景になる池のほとりの建物や浜辺をBGで作ろうかと思います。
BGだったら被写界深度は青系指定の乗算で一発でできるはず。
プログラムが長くなってくるとどこに何を書いているか見つけるのが大変になりますね。
のなさんのはシューティングですか、明日ダウンロードして遊んでみます。

コメントを書く

  • こちらは「プチコン3号」「プチコンBIG」など、プチコンシリーズに関する話題を扱ったコミュニティです
  • プチコンシリーズにまったく関係ない書き込みはご遠慮下さい。削除の対象となります
  • こちらにはその他のゲームや雑談のコミュニティはなく、作る予定もありません (ひとりで管理できないため)。ごめんなさい
  • ユーザー登録なしで書き込みができます
  • 秘密の合い言葉は成りすましの防止 (トリップ機能)、書き込みの編集時の本人認証に使用します
  • 秘密の合い言葉に他人に推測されやすい言葉、他サービスと同じパスワードは入力しないでください。
  • 書き込むと、投稿時に入力したお名前と秘密の暗号が記憶され、ログイン状態になります

- WEB PATIO -