プラグイン「文章/単語/スクリプトを外部CSVファイルで記述する」(2022/06/18)【MV/MZ対応】

バイザン

ユーザー
次は以下のように「\M[]」で文章表示した後に別の文章表示処理があると、
1回目は別々に表示されますが、2回目はくっついて表示されるようになりました。
ご報告ありがとうございます!
再度修正いたしましたのでお手数ですがまたお手すきのときにご確認ください!

1.3.5 2022/05/24 展開された情報が変に残ってしまう問題を修正
 

sasasa

ユーザー
ご報告ありがとうございます!
再度修正いたしましたのでお手数ですがまたお手すきのときにご確認ください!

1.3.5 2022/05/24 展開された情報が変に残ってしまう問題を修正
迅速なご対応、誠にありがとうございます!!

問題なく動作することを確認できました!

この素晴らしいプラグインのおかげで文章の管理がとてもしやすく、フル活用させていただいております!
このプラグインなしでのゲーム開発は考えられません (> <) !大大大感謝です!!
 

sasasa

ユーザー
いつも大変お世話になっております。

新たに文章がくっついて表示される事象を確認しましたので、ご連絡させていただきます。

以下のようにラベルジャンプでもう一度同じメッセージIDを表示しようとすると、くっついて表示されていくようです。

1.PNG

2.PNG

最初の表示

3.PNG

ラベルジャンプ1回目の後の表示

4.PNG

ラベルジャンプ2回目の後の表示
5.PNG
 

nemuimon

ユーザー
はじめましてこんにちは。
たいへんに便利なプラグインだと思います。

ただ、使用していて一点、どうしても:face[顔グラの番号]が有効になりません。

:name[名前, 顔グラのセット名]は反映できて
「名前, 顔グラのセット名」をまとめたメッセージIDでの顔グラフィックの表示もできます。
しかし、顔番号がどうしても反映できません。

ツクールはMVで、csvの編集はエクセル2013、文字コードはSJISです。

何か見落としがあるのでしょうか?
 
すごく使えそうなツールをありがとうございます!

無茶な要望を出しているとは思いますが、
文章を言った言ってないのフラグを立てられたらうれしいです。
文章に対して、1度きりとか1日1回とかの制限が出来たら最高です。
それは配列とかで別の所に持っておくのが良いのだと思いますが、
自分の力不足で量が多いとどうしたら良いのか混乱してしまって…。
 

バイザン

ユーザー
@nemuimon MVで確認しましたがこちらの環境では出ているように思えます。
こちらで確認したのは以下のような文章です。
:name[主人公, Actor1]
:face[1]
セリフ
確認いただく事としては
・顔グラに関連する競合しそうなプラグインを使用していない?
・「[ ]」(角括弧)を使用しているか(「{ }」などではないので注意)
・nameの単語、「:」、数字はちゃんと半角か
・不要なスペースが入っていないか
・「001」のように余分な数字が書いてないか
・このプラグイン以外をはずしてもなるのか
を一度確認していただきたいです。
それでもだめな場合は問題が起きる最小の例文を頂きたいです!
 

バイザン

ユーザー
@ぽいぽいさん ご要望ありがとうございます!
ツクールにはセルフスイッチなるものがあるようなのでそれをうまく使った拡張タグとかあると楽そうですね~
問題はどういう仕様にするか、ですね...
今の状態でも :script コマンドとツクールの分岐処理を併用すれば実現はできますが難しいし管理も大変そうではあります。
また時間が出来たら考えたいと思います!
 

バイザン

ユーザー
以下のようにラベルジャンプでもう一度同じメッセージIDを表示しようとすると、くっついて表示されていくようです。
@sasasa お待たせいたしました!最新版1.3.6に差し替えていただければ修正されると思います!
お手数ですがまたご確認いただけると嬉しいです(他のところで問題がおきてたらまた教えてください!)

同時に、ジャンプ先より後にスクリプトがあった場合でもそのスクリプトも再実行するように改良致しました!
つまり以下のような文章を使用することで、会話の選択によって文章がループした場合にその都度会話回数を増やすことが可能になります。
:script[immediate]
$gameVariables.setValue(3, $gameVariables.value(3) + 1);
:end
\V[3]回目の会話です。

1.3.6 2022/06/17 ラベルジャンプした後に展開情報が残ったままになる問題を修正
        スクリプトも再実行されるように改良
 

nemuimon

ユーザー
バイザン様、早々のご返信ありがとうございます。

そうですね、不要プラグインを排除してテストすべきでした!
ってことで新規にテスト用のものを作成し、同プラグインとYEP_MessageCore.jsだけをオンにしてテストしてみました、、、、

が、結果としてはダメでした。
で、最新版じゃないとダメかも?とYEP_MessageCore.jsも公式よりダウンロードしなおし、ExternMessage.jsも1.3.6をダウンロードしてテストしてみました。

結果としては1.3.6だと通常表示もエラーになってしまいました。

念のため画面のキャプチャを添付します。

どうもやはり:faceを指定したところだけ顔グラフィックが表示されないようです、、、、
 

Attachments

  • plugin.PNG
    plugin.PNG
    26.9 KB · 閲覧: 9
  • csv.PNG
    csv.PNG
    59.5 KB · 閲覧: 8
  • settei.PNG
    settei.PNG
    61.4 KB · 閲覧: 6
  • m1.PNG
    m1.PNG
    127.7 KB · 閲覧: 6
  • m2.PNG
    m2.PNG
    80.7 KB · 閲覧: 5
  • m3.PNG
    m3.PNG
    128.1 KB · 閲覧: 5
  • m4.PNG
    m4.PNG
    80.7 KB · 閲覧: 4
  • m5.PNG
    m5.PNG
    80.7 KB · 閲覧: 4

バイザン

ユーザー
出先なのでまだ検証できてませんが、[Actor1]とface[1]の1の後ろにスペースっぽいものが入ってるような…?
 

nemuimon

ユーザー
たびたびすみません。
とくに急いではいませんので、お手すきの際にご検証いただければで十分です。
念のためcsv内容は下記です。確かに画像だとスペース入っているように見えますねw

ID,テキスト
1,":name[主人公,Actor1]
これが1つめのメッセージ"
2,":name[主人公,Actor1]
:face[1]
これが2つめのメッセージ"
3,":name[PLAYER]
これが3つめのメッセージ"
4,":name[PLAYER]
:face[1]
これが4つめのメッセージ"
5,":name[PLAYER]
:face[FACE_SMILE]
これが5つめのメッセージ"
FACE_NEUTRAL,0
FACE_SMILE,1
PLAYER,"主人公,Actor1"


ちなみに、最新版の1.3.6だと添付画像のようになってしまいます。
以上、ご報告まで
 

Attachments

  • m1b.PNG
    m1b.PNG
    59.7 KB · 閲覧: 4

バイザン

ユーザー
@nemuimon 追加情報ありがとうございます! 調査が完了いたしました!
原因としては「数値のみ」の MessageID が登録されていたことが原因で、:face[1] の「1」がMessageIDとして処理され無効な引数となっていました。
1.3.7 ではフェイルセーフとして無効なMessageIDが登録されていたら事前に例外が発生するようにしました。
ご報告ありがとうございました!

1.3.7 2022/06/18 MessageIDに数値が指定されていたら例外を出すように
        波括弧を間違えて使用していた場合のフェイルセーフも追加
 

バイザン

ユーザー
今更ですが Extern だったり External だったり表記がバラバラだったので「ExternMessage」に統一しました。
 

nemuimon

ユーザー
ご検証ありがとうございます!

CSVのIDを変更したところカンペキに表示できました!!!!

ただし、、、やはり最新の1.37では表示できません。

私としては1.35を使うことで問題はなさそうですが、
参考までに1.35でうまくいったキャプチャと1.37の両画面を添付しておきます。
また、修正したCSVの内容は下記となります。

素晴らしいプラグインをありがとうございます!


ID,テキスト
ivtA,":name[主人公,Actor1]
これが1つめのメッセージ"
ivtB,":name[主人公,Actor1]
:face[1]
これが2つめのメッセージ"
ivtC,":name[PLAYER]
これが3つめのメッセージ"
ivtD,":name[PLAYER]
:face[1]
これが4つめのメッセージ"
ivtE,":name[PLAYER]
:face[FACE_SMILE]
これが5つめのメッセージ"
FACE_NEUTRAL,0
FACE_SMILE,1
PLAYER,"主人公,Actor1"
 

Attachments

  • 135.PNG
    135.PNG
    258.1 KB · 閲覧: 3
  • 137.PNG
    137.PNG
    147.5 KB · 閲覧: 3

バイザン

ユーザー
ただし、、、やはり最新の1.37では表示できません。
貼られた内容で再度検証しましたがこちらでは再現しませんでした。
そのスクリーンショット的には「\M」が抜けているような動作に見えます。
ivtBを参照しているツクール側のイベントエディターのスクリーンショットをもう一度貼っていただけますか?
 

nemuimon

ユーザー
なぜでしょうね~
ちなみに、関係するかどうかわかりませんが、私のツクールmvはsteam版です。

とりあえずエディター設定画面のスクリーンショットを張っておきます。
ただし、同じデータで1.35ではOK、1.36~1.37ではNGです。

また、念のため、このテストデータをオンラインストレージにアップロードしました。
重いのでいろいろ削除したデータですが、こちらでは同じように動きますのでご参照ください。


ちなみに、このデータのダウンロード期間は3日間です。
これがそのまま動くようであれば、なにかこちらの環境のせいかと思われます。
 

Attachments

  • mvSETTEI.PNG
    mvSETTEI.PNG
    62.2 KB · 閲覧: 2

バイザン

ユーザー
@nemuimon こちら原因がわかりましたので修正いたしましました。
原因としてはツクールMVのJavaScriptエンジンでは利用できないコード記述がありそれが原因で正しく動作していませんでした。
開発用ツールであるVSCodeから直接実行していると問題が発生せず気づけませんでした。

ver.1.3.8 で修正されるはずですのでご確認よろしくお願いします!
 

バイザン

ユーザー
フェイルセーフを強化するにあたり、ver.1.3.8より「Fail Safe」パラメータを追加しました。
ロード時間が長くなってきた場合にご利用いただけます。
ただし開発時は無用なバグに悩まされないためにも基本的にONにしておくことを推奨します。
  開発時にこのプラグインに関連する問題に直面した時に事前に察知できるようにいくつかのフェイルセーフを入れました。
  主にMessageIDに無効な文字列が設定されていないかどうかチェックされます。
  しかしMessageIDの数が多い場合はロード時間が長くなる可能性が高いです。
  その場合はプラグイン設定より「Fail Safe」パラメータをOFFにすることで高速化が期待できます。
  リリース時にフラグ設定を見直すと幸せになれるかもしれません。
 

nemuimon

ユーザー
バイザンさま

確認しました!最新版で完璧に動作しました!
いろいろとありがとうございました。

このプラグインを使って、必ずゲームを一本仕上げるよう頑張りたいと思います!
 

sasasa

ユーザー
@sasasa お待たせいたしました!最新版1.3.6に差し替えていただければ修正されると思います!
お手数ですがまたご確認いただけると嬉しいです(他のところで問題がおきてたらまた教えてください!)

同時に、ジャンプ先より後にスクリプトがあった場合でもそのスクリプトも再実行するように改良致しました!
つまり以下のような文章を使用することで、会話の選択によって文章がループした場合にその都度会話回数を増やすことが可能になります。


1.3.6 2022/06/17 ラベルジャンプした後に展開情報が残ったままになる問題を修正
        スクリプトも再実行されるように改良

お忙しいところご対応ありがとうございます!!
最新版で問題が解決されていることを確認できました。大変助かります!!


以下2点、些細な事ですが少し気になりましたのでご報告させていただきます。

①以下のようにジャンプ先がないラベルジャンプに遭遇すると操作不能になるようでした。
 ツクールのデフォルトの動作では、ジャンプ先がない場合は無視される仕様のようです。
a1.PNG

②数値のみではなくスペースのみの場合も「MessageIDは数値のみで登録してはいけません」
というエラーメッセージが表示されるようでした
 
トップ