質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Pygame

Pygameは、ビデオゲームの製作用に設計されたクロスプラットフォームのPythonモジュールセットです。Pythonでコンピューターグラフィックスと音声を扱うためのライブラリが含まれています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

4225閲覧

pythonでRPGゲームの会話処理

退会済みユーザー

退会済みユーザー

総合スコア0

Pygame

Pygameは、ビデオゲームの製作用に設計されたクロスプラットフォームのPythonモジュールセットです。Pythonでコンピューターグラフィックスと音声を扱うためのライブラリが含まれています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2018/09/05 06:50

python、pygameを使ってRPGゲームの会話処理を実装したいです。
NPCが1文だけ喋る、というのはできそうなのですが、掛け合いをするという部分で躓いています。
やりたいことは

  • フラグが発生したら会話状態に移行
  • テキストファイルから文の読み込み
  • キャラグラと文の描画
  • スペースボタンを押したら次の文に進む
  • 描画したい部分が終わったらゲームの状態を戻す

です。
実際にコードを教えていただけるのもありがたいのですが、私のやりたいことが分かりづらいかもしれません。
実装する上での考え方や、参考になるサイトを教えていただけるだけでもありがたいです。
回答よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

t_obara

2018/09/05 15:57

まずは各機能を一つずつ実装してみてはいかがですか?その上で躓いた点をお聞きになればよろしいかと思います。あまりにも幅広い質問だと回答がつきにくくなるかと思います。
退会済みユーザー

退会済みユーザー

2018/09/07 06:40

ご指摘ありがとうございます。確かに、抽象的すぎる質問になってしまっていました。まずは、やりたいことをさらに細かくして実装してみようと思います。ありがとうございました。
guest

回答1

0

ベストアンサー

RPGはどうしても全体作業ボリュームが増えてしまいがちなので
ボリューム感を決めて、こだわりたい部分だけ決めて作業すると完成させやすいのではないかと。

シナリオに選択肢があるかどうかで変わりますが、「NPCが1文だけ喋る」機能と大きな枠組みは同じですよ。

◆シナリオのデータファイル.json

json

1{ 2 "シナリオID_1": { 3 "発生条件": "", 4 "トーク": ["Aキャラ:ID_1", "Bキャラ:ID_1", "Aキャラ:ID_1"] 5 }, 6 "シナリオID_2": { 7 "発生条件": "", 8 "トーク": ["Aキャラ:ID_2"] 9 }, 10 "シナリオID_3": { 11 "発生条件": "", 12 "トーク": ["Bキャラ:ID_2"] 13 } 14}

トークに入るのは発言の流れ+コマンド情報です。
コマンド情報はディレイや選択肢など。質問者さんが要件として必要な物を追加する必要があります。
シナリオのデータファイルを解析する(parser)部分はチャットボットが参考になるかと。

◆ゲームの登場人物の全キャラのセリフを保持している.json (※ MAP単位でも可)

json

1{ 2 "Aキャラ": { 3 "ID_1": "おはようございます", 4 "ID_2": "こんにちは", 5 "ID_3": "そうですね" 6 }, 7 "Bキャラ": { 8 "ID_1": "いい天気ですね", 9 "ID_2": "%name%さん、おはようございます" 10 } 11}

◆参考情報
【Python入門】JSON形式データの扱い方
json | docs.python.jp


あとはじめてゲーム開発する前に知っておくべきことhow-scope-small-and-start-rightを一度見て頂きたいのですが。
質問者さんが拘りたいポイントだけ作り込む事をお勧めします。

一般論ですがRPGツクールやWOLF RPGエディターのほうが、pygameで作るよりRPGは作りやすいかと。

投稿2018/09/05 19:32

編集2018/09/05 19:51
umyu

総合スコア5846

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/09/07 06:43

わかりづらい質問をしてしまいましたが、回答していただき、ありがとうございます。確かに、RPGツクールのようなツールを使うほうが現実的ですが、プログラミングをやってみたいので、頑張ってみようと思います。JSON形式のデータも活用してみます。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問