投稿記事

コーディングの記事 (86)

竹林ソフト 2023/04/21 20:00

NPC をコーディングして領地経営するゲーム開発(小さなタスクを終わらせていく)

体験版のリリースを目指して、小さなタスクを片付けていきます。

↓作業前の総チケット数と完了チケット数のチャート

やったこと

畑や育成林なんかは農場や伐採小屋を建てると自動で作られる建物なので、プレイヤーがこの畑や育成林をスクリプトから建てられないようにしました。

↓エラーメッセージが表示されるようにしました。

↓コンソールらしくするために等幅フォントに置き換えました。

↓エラー時のみ表示するエラーアイコンが常に表示されていたのを修正しました。

↓乱数シードがプレイし直しても同じになるようにしました。

↓In-Game Editor のファイル名のタブ幅が狭くなっていたのを修正しました。

↓デモ用のタイトル画面に "DEMO" の文字列を追加しました。

まとめと今後の予定

作業前に比べると、それなりにチケットが整理された感じがします。

↓作業後の総チケット数と完了チケット数のチャート

よいです。
体験版用の公開に向けて引き続きがんばります。

竹林ソフト 2023/04/14 20:00

NPC をコーディングして領地経営するゲーム開発(ドキュメントの Web ブラウザでの閲覧)

Lua スクリプトを記述するための API やチュートリアル的なドキュメントの閲覧を、今はゲーム中だけで行えるのですが、これを Web ブラウザ経由でも行えるようにします。デュアルディスプレイでゲーム画面と情報閲覧を分けたいという人向けの仕組みです。

やること

ゲーム中で表示するデータはもう作ってあるので、それを html に変換するスクリプトを作っていきます。

目次を index.html に変換する

こんな感じの yaml ファイルが作ってあるので、これを Python スクリプトで index.html に変換しました。

Categories:
- Name: Tutorial
  Items:
  - editor
  - about_game

- Name: Lua
  Items:
  - lua_basic
  - lua_coroutine
  - lua_module

この Items の中にある editor, about_game なんかの文字列は多言語対応の仕組みで「エディタ」「このゲームについて」という文字に変換されるようにもしました。

ドキュメントを html ページに変換する

ドキュメントは Markdown 形式で記述してあるので、それを Python スクリプトで html ページに変換しました。

API ページを html ページに変換する

API についても yaml ファイルで名前と引数が定義してあるので、これと多言語対応の仕組みとを組み合わせて html ページを生成する Python スクリプトを作成して対処しました。

Categories:
  building:
  - Args: []
    Name: name
  - Args: []
    Name: grid

よいです。

まとめと今後の予定

ここまでで各 html ファイルを生成することはできました。

この作ったページ間での HTML リンクや、レイアウトの調整はまた後でやります。
とりあえず、ページ生成まわりに着手できてよかったです。

竹林ソフト 2023/04/07 20:00

NPC をコーディングして領地経営するゲーム開発(Lua の使い方ドキュメントを書く)

ゲーム中でドキュメントを表示するための仕組みを実装します。

やりたいこと

こんな感じで API を表示する仕組みはもう実装してあります。

ただ、ブログみたいな長めの説明を表示する仕組みはないので実装します。

Unity でドキュメントの項目を処理する

まず、ドキュメントのタイトルをツリービューに表示できるようにしました。

↓ドキュメント名をツリービューに表示する。

よいです。

Unity でドキュメントの内容を表示する

次に表示するドキュメントの作成です。これは Markdown フォーマット記述したファイルを表示できる仕組みにします。

処理概要としては、編集した md ファイルを Python スクリプトで Unity で処理しやすいフォーマットに変換して、それを Unity で読み込んで利用するようにしました。

↓最終的に Unity で表示されたもの

よいです。
レイアウト調整とかコードの予約語の色付けはまた後でやります。

まとめと今後の予定

Markdown フォーマットでドキュメントを作って、それを表示する仕組みを実装しました。これでドキュメントを書けるようになりました。
書くべきドキュメントが多すぎて悩ましいのは、未来の自分にがんばってほしいです。
がんばります。

竹林ソフト 2023/03/31 20:00

NPC をコーディングして領地経営するゲーム開発(ログ表示の追加)

NPC をコーディングして領地経営するゲーム開発です。
今回はコンソールっぽい表示で、エラーメッセージやデバッグログを出力するための UI を実装します。

UI を作る

とりあえず ScrollView を配置して今まで使っていたコンソール表示に見た目を似せました。


よいです。

機能を実装する

あまり考えずに仕様を決めて実装します。と言っても、決めることは「100 行を超えたらスクロールアウトする」くらいです。

↓そして実装して動作したものです。

よいです。
ここに表示したメッセージはログファイルとしての保存もできるようにしようと思いますが、それはまた後でやります。

まとめと今後の予定

懸案だったログ出力用のコンソールを作り直せてよかったです。
やることはたくさんあるのですが、そろそろ体験版を意識した開発をしようと思います。がんばります。

竹林ソフト 2023/03/24 20:00

NPC をコーディングして領地経営するゲーム開発(小さなタスクを終わらせていく)

今回はチケット管理システムで管理しているチケット数を減らすために、気付いたり小さなことや、やれば終わるタスクに着手します。

対処したタスクたち


↑この改行位置だと 1 と 2 の文字が分かれて読みづらくなっていました。
12 の前にスペースを入れてそこで改行されやすくして対処しました。


↑エラーメッセージを表示する Tooltip 中の文字が中央寄せになっていました。
とりあえず左寄せにしました。


↑砦の画像を変更しました。


↑もろもろ表示されると砦と視認しにくくなるけどオッケーだと思います。


↑粉挽き所の画像を変更しました。


↑ギルドの画像を変更しました。


↑杭の画像を変更しました。違和感が少し減りました。

まとめと今後の予定

上記のタスクをこなしたり、重複していた内容のチケットをまとめたりしました。
↓現状でのこのプロジェクトの総チケット数と終了チケット数はこんな感じです。


この総チケットと終了チケット数の差が大きいと見通しが悪いので減らしていきたいです。
今後もたまにはこうやって小さいタスクを終わらせていきます。がんばります。

月別アーカイブ

限定特典から探す

記事を検索