鬼滅の刃のゲームを作る(多分 slay the spireみたいなやつ)その4

ドット絵をひたすら描いてました。

その際にモチベーション維持のため、dotpictに登録してアップしてます。

 

モチベーションというのは非常に大切で、

なかなか続かない場合に、他人の目によって活動が継続できるようになります。

他人の目を気にしすぎると、逆効果なので、

そこそこの距離感のSNSを利用するのが良いかと思います。

インスタとかは、私のような陰キャ的にキツイオーラを感じるし、写真UPが中心。

dotpictはさすがにドット絵中心と思うので、こちらを採用しました。

 

dotpict.net

描きつづけていると頭身がでかくなってしまうのは、

多分、表現できる幅が広がったのだと思う。(つまり上達したんだって言いたい)

 

1回目カナヲ

f:id:programming-self-study:20220313123859p:plain

2回目カナヲ

f:id:programming-self-study:20220313123935p:plain

1回目甘露寺

f:id:programming-self-study:20220313124514p:plain

2回目甘露寺

f:id:programming-self-study:20220313124442p:plain

 

 

義勇やカナヲの目を描くのが難しい。

なんていうか、薄目っぽい感じを、1ドットぐらいの猶予で表現せなあかんので、

なんか違う感が出る。

 

逆に、天元、煉獄は目がぱっちりしているせいか、白目がしっくりきて描きやすい。

 

 

鬼滅の刃のゲームを作る(多分 slay the spireみたいなやつ)その3

ドット絵描いた。

とりま、たんじろう。野球の打者みたいなポーズになってしまった・・

f:id:programming-self-study:20220219183926p:plain

前回、甘露寺のアクションゲーム作ったときは、

表情を描くほどの腕前がなかったが、今回は、ある程度表情がつけれた。

 

当然、表情を描くことで、素材作るのは大変になったんだけど。

Slay the Spireのサイズ感に合わせると、表情つけたほうがしっくりきたので、ったので仕方ない…

 

使っているソフトはedge。

高機能ドット絵エディタ EDGE | TAKABO SOFT

 

レイヤは、大体、雑に素体部分から始めて、

肉付けしてって、素体を完成。

武器 → 羽織って感じで重ねてきます。

 

f:id:programming-self-study:20220219184333p:plain

 

羽織を着せた状態にしたほうが描くだけなら効率的ではあるんですが、

影がよくわからなくなってしまうので、素体の影や、体に合わせて、

羽織描いたほうが楽でした。

一応、羽織なしバージョンに切り替えられるメリットがあります

 

武器も手持ち部分がうまく書けないので、刀を直線で向きがわかる程度に、

ガイドを描いておいて、素体の手の部分 → 刀を肉付けして完成って感じで描いてます。

武器も分けておくと、持たせる武器切り替えられたりするんで、

多分、レイヤわけたほうがよさそう。

 

色は、大体edgeのパレットは1行が16色なので、16色以下になるようにしている。

(細かい色は少なくしようっていう方針)

 

あかざ殿。

術式展開の横向きが難しい・・

ピンクのベスト分けるの忘れてた。

f:id:programming-self-study:20220219194205p:plain

ポーズを先にざっくり書いて肉付けしていったんだけど、

参考にしたドット絵が、スト2フェイロンだったので、

もうちょっと、足を広げたほうが猗窩座っぽくなった。

 

引き続き頑張りまーす。

鬼滅の刃のゲームを作る(多分 slay the spireみたいなやつ)その2

ゲームがちゃんと作成できるように、

ゲーム制作の障壁になる部分に対し、どうするかを検討しようと思う。

 

ゲーム制作で、最も重要なことは、作りきることだ。

今回は、遊郭編がいずれ終了し、続編のアニメが出るときに合わせてだせることを目標とする。

とはいえ、続編があまりに早いと困るので、続編の続編ぐらいで考えて、

1年以内に作りきることを目標とする。

 

以下の懸念事項をどのように対応するか方針決め。

 

 ※キャラクターの種類

遊郭編以降なので、天元・煉獄・堕姫・妓夫太郎・下弦

この辺は出さない。

 

メインキャラ=たんじろー、いのすけ、ぜんいつ、(ねずこ)

サブキャラ=柱、カナヲ、ゲンヤ、ゆしろー、たまよ

 → サブキャラが多くならないようにする。

 → ねずこの実装は努力目標

 

 ※マップの種類

Slay the Spire 通りでいいかな

動的マップ生成で、マップアイコンを線でつなぐ。

 

 ※敵の種類

遊郭編以降なので、主に上弦+雑魚鬼中心。

ラスボス=むざん

ステージボス=あかざ、どうま、こくしぼう

 

3ステージぐらいで、考えると、

3ステージ目 : むざん or こくしぼう

2ステージ目 : どうま or あかざ

1ステージ目: かいがく or なきめ

こんなところか・・

雑魚鬼は、10種類いかにしておくと、16種類ぐらい

 

 ※アイテムの種類 

Slay the Spireのレリックという装備品、

ポーションという消耗品のことになる。

 

消耗品は、おにぎりとか、天ぷらとか体力アップ

隊服とか日輪刀は、作中で刷新されているので消耗品でもいいだろう。

 

装備品という概念に隊服・日輪刀は当然だし、

かすがいがらすとかかな・・

 → 無闇にアイテムを増やすのも大変なので、

  レリックは、サポートという概念に変えて、柱とかのサブキャラをここで、

  活用することにした。

 

 ※カードの種類

カードの種類が面白さにつながってしまうので、妥協ができない。

しかし各呼吸とか、技の種類は圧倒的に少ない。

そこでキャラクターコンセプト、および、コンボ重視のカードにすることで、

死に性能が出ないようにする方針でいく。

 

たんじろう

 水の呼吸は、防御性能が高い故に、攻撃性能と防御性能を兼ねたカードにする

 また変幻自在というところを踏まえ、

 あるカードとあるカードを続けて使うことで効果があがるようにする。

 例えば、水車 → 滝つぼと使うと、威力が上がるとか、コストが下がるとか

 

ぜんいつ

 霹靂一閃しかないので、霹靂一閃を連続使用するコンボ重視にする

 霹靂一閃をデッキから引けるカードを持ったり、

 霹靂一閃の6回目にしか使えない、霹靂一閃6連とか

 

いのすけ

 爆裂猛進とか防御捨てる傾向にあるので、

 ウォッチャーのような、怒りモードと、平静モードを切り替えて戦うとか・・

 

ねずこ

 コンポーネント多すぎて、ちょっとキツイかな。保留

 

各呼吸技が、水の呼吸で10種類あるんで、

各キャラクター固有のカードを20種類ぐらいにする。

共通カードを、30種類以下ぐらいにする。

 → 全部で100種類ぐらいになるので、作り方の工夫がいるなぁ・・

 ※たんじろうだけの体験版を視野にいれないときついかな

 

 ※イベント種類

雑魚鬼戦闘、サポートキャラとの出会い、

店(藤の家の行商)、会話イベント系

 

→ 戦闘と、店は気合で頑張るとして、

 会話イベント系は、汎用的に作っておいて、サポートキャラとの出会いとかと兼ねたほうがいいかな。

 

★今後の作業

 

①キャラドット絵

メインキャラ=たんじろう、ぜんいつ、いのすけ

サブキャラ=カナヲ、しのぶ、みつり、義勇、行冥、無一郎、さねみ、げんや

      ゆしろう、たまよ

敵キャラ=16種類

 

②カード

 たんじろう用=水の呼吸、ずつき、スキの糸、ヒノカミ神楽一部

 共通=攻撃、防御、回避、全集中とか

 

とりま目標、30種類ぐらい

 

③プログラム

 タイトル、キャラ選択、マップ、戦闘、店、会話

 エンディング、ゲームオーバー

 

 

 

 

 

 

鬼滅の刃のゲームを作る(多分 slay the spireみたいなやつ)その1

slay the spireみたいなゲーム作りたいなっていう気持ちを持ちながら、

鬼滅の刃遊郭編のアニメを見て、また、鬼滅の刃ゲーにするかと企てる。

 

鬼滅の刃というのは、すごいアニメだ。

子供も大人も釘付けだし、映画の興行収入を塗り替えるし、

連載終了は3年前ぐらいだっけか?

それでアニメだ、グッズだなんだって途絶えない。

 

やはり、ゲームを作るからには、

子供に興味持ってもらいたいし、自分がはまったゲームを混ぜて、

モチベーション上げたいし、って色々混ぜることにしたのだった。

 

さて、軽く設計からやろう。

 

システムの大まかな流れって、結構大事で、

全体でどんなメッセージ機能がいるのか、どこを使いまわそうか、

というところがわかるようになる。

なので、普段ゲームやるときは、きっとこういう作りにしているに違いないと思いながら、プレイすると、一つゲームを楽しむ視点が増えると思います。

 

また、作るときに懸念事項は、※印をつけて後で検討するようにしておくことで、

作成前にドン詰まりポイントがあらかじめ解消する。

特に、イベントやアイテムの種類とか多すぎて、作れなくなったりしないようにしないとね。

 

①タイトル画面/ Slay the Spireと書かれている

 ↓ スタート押す

②キャラクター選択画面

 ↓ 選択すると、キャラクター紹介画面と、決定ボタンが表示

  ※キャラクターの種類

③決定ボタン

 ↓ ステージマップを表示

  ※マップの種類

 ↓ 次に行く場所をクリックすると、イベントが発生する

④イベント発生(詳細は後述)

 ・戦闘(B)   

 ・サブイベント(E)

 ・アイテム取得イベント(I)

 ・お店(S)

 ・キャンプ(回復or カード強化)(C)

 ↓

End ステージ終了条件

 ステージボスを倒す → クリアイベント → 次ステージ or エンディング

 体力が0になった → ゲームオーバー

 

それで、ゲームの中身はイベントでできていることが分かったので、

詳細を書き出す。

 

B戦闘

 ステージボス、エリート(中ボス)、雑魚の3種類があり、

 ※敵の種類

 おおむねマップ選択時に、固定で決まっている

 というか、このゲーム、デッキシャッフルして山札つくったしても、

 いつも決まった並びになるので、敵の種類やイベント、もろもろすべて、

 マップに入った時点ですべて決まっている作りと思う。

 

Eサブイベント

 会話イベント>選択肢決定>

 アイテムゲットだったり、ダメージ食らったり、戦闘だったりが発生

 ※イベント種類

 

Iアイテム取得イベント

 宝箱パカ → アイテムゲット 以上

 ※アイテムの種類 

 

Sお店

 店のラインナップが表示され、クリックすると購入

 金額不足の商品はクリックできない。よって購入できない

 ※カードの種類

 

Cキャンプ

 寝る or カード強化が選べる。

 他にも発生条件を満たせば、カード除去や、アイテムの発掘=アイテムゲット、

 ステータスUPなどのイベントも選択可能になる。

 

んで、懸念事項をまとめる。

 

 ※キャラクターの種類

 ※マップの種類

 ※敵の種類

 ※イベント種類

 ※アイテムの種類 

 ※カードの種類

 

次回は、これらを検討しよう。

slay the spireにはまる

slay the spire というNintendo Switch でインディーズゲームとして売られており、

セールだったのでつい買ってしまった。

 

ざっとどんなゲームかというと、

カードを使って、攻撃・防御と特殊な効果を駆使して戦う、

RPGローグライクとカードゲームが合体したようなゲームです。

 

私は子供にたびたびSwitchを取られるので、

PCで遊べるようにSteam版も買ってしまった。

store.steampowered.com

こんな感じのゲーム画面

f:id:programming-self-study:20220204144026p:plain

カードにはコストがあって、合計コスト3しか使えない状態からスタートし、

コストの範囲内でカードを使って、攻撃・防御・継続した効果などを活用していく。

要するに、弱い攻撃はコスト0とか1で、必殺技みたいな強い攻撃はコスト3とかのイメージかな。

 

f:id:programming-self-study:20220204144444p:plain

戦闘以外は、塔を登っていく感じでマスを選択し、進んでいく。

途中選択したマスに従って、戦闘、アイテムもらったり、店に行ったり、キャンプで回復したりと、イベントが発生する。

 

戦闘後やイベントにより、新しいカード手に入れるので、

それでデッキの強化を図り、カードごとの連携を考えたりするのが楽しい。

 

キャラクターは4人いて、

アイアンクラッドっていう戦士みたいなキャラクターは、

攻撃するカードが豊富にあり、戦闘終了時にHPが回復するので、

ある程度、ガンガン殴り合っていく感じでデッキを組むと思われる。

 

サイレンスは、ガイコツを被った盗賊みたいなキャラで、

毒とか、身かわしとか、カード引いたり、カード捨てると効果があったり、

アイアンクラッドとはちょっと変わった感じで戦える。

 

デフェクトは、ロボットみたいなキャラで、
ビットを発生させることで、カードを使わなくても継続した効果が得られるようにできる。

 

ウォッチャーは、怒りモード、平静モードなどのモードを切り替えながら戦う。

怒ると、攻撃力が2倍になるが、ダメージも2倍になるので、モードを切り替えるタイミングが重要となる。

 

他にも、中ボスやボスを倒すと、レリックという装備品に近いものがあり、

中でも、マナ(カード使用コスト)が上がるレリックをゲットすれば、

さらなるカードの使用が見込めるので、より複雑なコンボが決められるようになる。

 

次回はScratchでSlay the Spireみたいなゲームが作れるように考えてみたい。

Scratchでアクションゲームを作る(完結編)

いろいろ試行錯誤ありながらもなんとか完成しました。

https://scratch.mit.edu/projects/514794638/

 

f:id:programming-self-study:20220121232904p:plain

2段ジャンプとか、溜め攻撃とかアクションもある程度、実装できたし、

お店に入ったときにADVゲーム風の会話パートを導入したりと、いろいろと作ったものも混ぜれました。

 

一番良かった点は、子供に成果物を見せられて、口ばかりで終わらなかったところかもしれません。

引き続き、ゲーム作っていくと思います

Scratchでアクションゲームを作る(重力)

アクションゲームとシューティングゲームの違いは何か・・

それは重力があるかどうかです。

 

↑を押す、アクションゲームもシューティングゲームも自機が画面上に移動します。

その後、アクションゲームは重力に従い、下に勝手に移動しますが、

シューティングゲームは特に下に移動しません。

 

重力は空中にいるときに発生します。

足場など着地しているときは発生しません。

 

足場がない → 空中にいる扱い → 重力あり

ジャンプ → 足場がない → 空中にいる扱い → 重力あり

こういった流れです。

つまり、空中にいるかどうかが重要になります。

 

 

f:id:programming-self-study:20220121230630p:plain


重力は、つねに描画処理の中で繰り返して呼び出すようにする。

 

_is_landingという変数で着地しているかどうかを管理し、

スクロールは、指定した引数分、背景をスクロールさせます。

 

そうすることで、自動的に足場がなくなった際は、下に移動する処理が働く。

つまり、着地していなければ常に、重力がかかるような動きになる。