投稿記事

2022年 11月の記事 (4)

satofumi 2022/11/29 20:00

NPC をコーディングして領地運営するゲーム開発(エディタでのマップ作成)

今回は、タイルエディタでマップを作るあたりに着手します。

Tiled でマップ作成する


Tiled はタイル画像を用意して、ちょっと設定すればちゃんと動くので大変助かります。
後は、データの保存形式を CSV にしておいて、それを Python スクリプトで好みのフォーマットに変更したらオッケーです。

カスタムステージとしてゲームで表示する

そして、いくつかのエラーを修正しつつゲーム内で表示したものがこれです。


とりあえず描画できていて良い感じです。

まとめと今後の予定

ここから、この中くらいのサイズのマップでゲームクリアを目標実際ににプレイしながら、不具合の修正や未実装の機能を追加していきます。

satofumi 2022/11/22 20:00

NPC をコーディングして領地運営するゲーム開発(エディタについて)

今回はゲーム中で Lua スクリプトを記述するエディタについての話題です。

エディタについて

一応はゲーム内に Lua スクリプトを編集するためのエディタを用意しますが、基本的には VS Code をインストールして使ってほしいと思っています。なぜなら、ゲーム内で私が作り込んでいくエディタを VS Code 並にしようとすると無限に開発コストがかかるからです。

VSCode(Visual Studio Code) について

いろいろ試したところ、Telcent が提供している LuaHelper という拡張機能を使うと VS Code で Lua スクリプトのコード補完や API 表示が実現できました。

↓API の表示例

↓コード補完の例


よい感じです。

そして、エディタを切り替える機能も設定パネルに実装しました。


ここで設定を切り替えると、ゲーム内でファイルをクリックしたときに、選ばれてるエディタでファイルを開く仕組みです。

まとめと今後の予定

次回は後回しにしてきた経験を積むとパラメータが上昇していくあたりに着手して記事を書こうと思います。
がんばります。

satofumi 2022/11/15 20:00

NPC をコーディングして領地運営するゲーム開発(11/15)

どういうゲームかは紹介し終えたので、今後は淡々と開発日記としてやったことを記録していきます。

やったこと

実績の追加

Steam の実績を登録して、それの条件が達成されたときに実績が取得されるあたりを実装しました。
まだ実装してない機能についての実績まわりは未実装ですが、それ以外の「ワールド N をクリアする」とか「じゃがいもを収穫する」とか、そういうのは実装して動作するのを確認しました。よいです。

全てのチュートリアルステージをクリアできるようにした

とりあえず自分でステージのクリア条件を書いて、それを達成できるスクリプトも自分で書きました。これで全ステージがクリアできることが確認できました。よいです。
スクリプトの一部を穴埋めにして「ここに~のコードを書こう」的なコメントの追加は引き続き行います。

まとめと今後の予定

引き続き開発していきます。
残っている大きなタスクは「スキル」と「レベルアップ」要素ですが、これらは仕様もまだ決めてないので、そのあたりからやっていきます。

satofumi 2022/11/08 20:00

NPC をコーディングして領地運営するゲーム開発(チュートリアルの作成)

ゲームシステムの開発と平行して、チュートリアルを兼ねたステージの作成を行っています。というか、そろそろこっちの開発のほうがメインになりつつあります。

チュートリアルの流れ

このゲームは、農民や鍛冶屋、冒険者といったキャラクターの行動を Lua スクリプトで作成するゲームです。そして最終的には育成した冒険者で敵拠点のボスを倒すゲームにしようとしています。
つまり、プレイヤーに求めることとして

  • 各キャラクターのタスクを記述できる。
  • フィールドに追加したキャラクターで食料の生産を適切に行える。
  • 敵拠点からの軍勢を防衛できる。
  • 冒険者の装備とスキルを強化できる。

といった内容があります。そしてこれらは全て Lua スクリプト経由で指示します。
なので、Lua スクリプトについてのチュートリアルを行いつつ、ゲームで用意した API(Application Programming Interface)を使ってキャラクターを操作できるようになってもらう必要があって、それをチュートリアルを兼ねたステージで解説するようにします。

ワールドとステージ

説明すべきことを大きく「生産」「探索」「防衛」に分け、実際にプレイする単位をステージ、複数のステージをまとめたものをワールドと呼ぶことにしました。
例えばこれらがワールド選択とステージ選択のスクリーンショットです。


今はチュートリアルのステージしかありませんが、各チュートリアルを終えたあとに遊ぶためのステージも用意したいです。
最終的には

  • チュートリアルのステージから構成されるワールド
  • チュートリアルの続きからエンディングまで用意されたワールド
  • 各チュートリアルの要素まででプレイできる単発ステージからなるワールド
  • Steam Workshop 経由でダウンロードできるワールド

といったものが並ぶようにしたいです。

まとめと今後の予定

とりあえずはゲームとして動作するようになってきたのですが、キャラクターの能力やスキルアップの概念が未実装だったり、アイテムや装備品のデータ追加が最低限だったり、エフェクも未実装だしで、まだまだ開発途中です。
リリースまでもう少し時間がかかる気がしますが、開発がんばります。

月別アーカイブ

限定特典から探す

記事を検索