メインカテゴリーを選択しなおす
ウィザードリィライクのダンジョンゲームを作る!(9):戦闘の流れをつくる。
今回から戦闘、BattleSystemを作っていきます。 基本的な形は、しまづさんの、 youtube.com がベースになっています。 大きな違いは、ソロ戦闘ではなくパーティ戦なので、Player側もEnemy側も複数いるため、かなり処理が複雑になっている事と、各Manager・ControllerとUniRXを使って連携しているところでしょうか。 いわゆる、Model-View-Presenterパターンに似た構造を取っています。(厳密にはちょっと違うけれど・・・) また、しまづさんのyoutubeは、作成時期のせいだと思いますが、Stateパターンの組み方をenumをSwitch分岐して…
ウィザードリィライクのダンジョンゲームを作る!(8):キャラクターの設計をつくる。
今回から戦闘、BattleSystemの本体を作っていきます。 基本的な形は、しまづさんの、 youtube.com がベースになっています。 あたりまえですが、しまづさんのYouTubeは基礎の解説なので、ソロ戦闘です。 自分としては、いずれはウィザードリィみたいに、自由にキャラクターを入れ替えて、 好きなパーティ構成でダンジョンを探索するゲームを目指したいので、 今回作るゲームも、プレイヤー側二人、敵は複数、というパーティ戦で頑張りたいと考えています。 他にも、パーティ戦なので、コマンドを選択したら即実行ではなく、全キャラクターの行動選択→キャラクターの速度順に実行 という形にしていきます…
ウィザードリィライクのダンジョンゲームを作る!(7):カスタマイズ可能なコマンドメニューを作る。
前回までで移動は一段落したので、いよいよ戦闘ができるようにしていきます。 ウィザードリィライクという事で、ターン制のコマンド型の戦闘になるのですが、 そのためには、当然ですが、コマンドを選択するためのコマンドメニューが必要です。 基本形は、しまづさんのYouTube youtube.com の#15で説明されている方法になりますが、 こちらを応用して、汎用性を高めていこうと思います。 尚、 上記のしまづさんのYouTubeシリーズは、一部チャンネルメンバー限定になっています。 『ウィザードリィライクのダンジョンゲームを作る! 』 を書くに当たって、チャンネルメンバー限定部分の内容まで踏み込んで…
ウィザードリィライクのダンジョンゲームを作る!(6):壁判定と扉を開ける仕組みを作る。
今回こそは壁判定と、扉を開けるところまで進みます。🤣 というか、実はほぼ基礎的な仕組みはできていて、要は、特定の座標がなんなのか調べる仕組みを描画に使うのか、移動判定に使うのか。という違いなだけです。 移動する方向・移動先の座標が必要になるのは、前々回くらいの通りです。 なので流れとしては、PlayerController-classで、移動方向や移動先を計算しているWalk関数と、移動に関する描画と消去・実際の移動を行っているWalking関数との間に、壁チェックの関数を追加するイメージになります。 public void Walk(float y) { if(y > 0.4f) { tar…
ウィザードリィライクのダンジョンゲームを作る!(5):ステートパターン導入
前回で、ダンジョンの描画範囲の仕組みまで作成できたけれど、まだ壁や扉お構いなしにどんどん貫通して歩けてしまう🤣 ので、そろそろこれを解決しておこうと思いましたが、 まずはPlayerController-classでしか使っていなかったInputSystemを、今後のためにManagerを作って独立させるのと、 ついでに、習ったばかりのStateパターンを、PlayerController-classに組み込んでおこうと思います。 今後、戦闘やらなんやらで、InputSystemはあちこちのclassで使うようになりますし、PlayerController-classとDungeonManag…
ウィザードリィライクのダンジョンゲームを作る!(4):Playerの移動に合わせてダンジョンの描画範囲を移動させる。
前回で、ダンジョンマップの設計図classのDungeonMap-classの改造と、DungeonManager-classへのObjectPoolの追加が完了したので、いよいよPlayerの移動に合わせて、ダンジョンの描画範囲を移動させる様にしていこうと思います。 描画範囲を移動させるには、Playerの向いている方向や移動方向を把握する必要があるため、PlayerController-classに管理用の変数を追加します。 int player_Direction;//プレイヤーの向き 0:北 1:東 2:南 3:西 Vector3Int targetPosition; 方向管理は最初e…
ウィザードリィライクのダンジョンゲームを作る!(3):複数のObjectPoolをまとめて管理しやすくする。
ウィザードリィライクなゲーム作成。 今回は複数のObjectPoolをまとめて管理しやすくする方法を紹介します。
前回でダンジョンの基本の描画はできたので、今回は更に描画範囲を広げて、よりダンジョンらしくしていこう。 描画範囲を広げるにしても、要は、基本の描画をfor文で回していけば良い。 using UnityEngine; public class DungeonBuilder : MonoBehaviour { public DungeonMap map; [SerializeField]GameObject wall; [SerializeField]int drawingSize;//初期位置の東西南北をどれくらい描画するか void Start() { map = new DungeonMap…
スタジオしまづさんのハイクラスを受講して、ダンジョンの自動生成のやり方を学んだことで、 unityを勉強しようと思いたった元々の目標、ウィザードリィの様なゲームを作ってみたい。という思いが強くなってしまった。 一応、unityを始めて一番最初にダンジョンゲームは作って見たのだけど。。。 https://unityroom.com/games/dungeon20230726 c#を全く知らない状態で、見様見真似で作って見たけれど 狭いダンジョンなのに処理が重い。 コードは無駄が多く、同じ処理を何度何度も書いている始末。 おまけに、プレイヤーがちょっと想定外の操作をすると、簡単にすぐバクる。と散々…
【ウィザードリィ】※おらよー※ころさんのWizardry初体験記【戌神ころね/ホロライブ】
【ウィザードリィ】※おらよー※ころさんのWizardry初体験記【戌神ころね/ホロライブ】 Inugami Korone
黄昏の境界(エロゲー) タイトル :黄昏の境界(18禁) メーカー :ティアラ ジャンル :アドベンチャー(美少女ゲーム) 機種 :Win95/PC-9801 発売年月日:1997年2月20日 ※1 現在パッケージが手元にないからその他の詳しいデータはわからない (昔のPCゲームのパッケージはかさばるから開封後すぐ別の部屋に保管するか破棄する) いやん! Win95やWin98対応のパソコンゲームソフトを久しぶりに引っ張り出してきてWin10で起動するかどうか試しているという話は過去の記事に書いたとおり。 ↓ ↓ ↓ ↓ ↓ tokumei-wa-kazutaro.hatenablog.jp …