snext1220 / stext

SORCERIAN Text(Web-based Gamebook Engine)
https://www.web-deli.com/sorcerian/text/
3 stars 0 forks source link

【PgFlow】フロチャの表示方法 #216

Closed snext1220 closed 4 years ago

snext1220 commented 4 years ago

https://github.com/snext1220/snext-management/issues/18#issuecomment-667667558 由来のIssueです。

・各シーンのチャート上の「高さ」の設定。プロローグの上にパラグラフができたり、下に降りたり上に登ったりする。チャートの面積を最小化するようにしている?個人的にはどんどん下に下りるチャートの方が見やすいように思う。(作り方にもよるが) ・フローチャート上のシーンのセルをドラッグしても、左右にしか振れないので、繋がりを見るには自由度が足りない。見やすい位置に調節しても、別の編集をすると初期状態に戻ってしまう。

本件、階層型のレイアウトを取るために自動整形しているための現象でした(idに大小の意味がないため、仰る通り、ノード間の距離を最小化するようなアルゴリズムになっていると思われます)。 ライブラリに強く依存しているため、現状改善案を打ち出せていないのですが、漠然と以下の対応を検討しています。

実現可能性も見えていないうえ、できたとしても、かなり大きな修正になるため、まずは備忘録として挙げておくだけになってしまいますが、ご容赦ください(フロチャはなんといってもPgFlowのキモなので、裏方で検討/調査を進めてまいります)。

snext1220 commented 4 years ago

暫定的に、フロチャを以前の形式に戻したうえで、保存時のフロチャ位置を維持できるようにしました(GitHub Pages、.jsonのみ)。自動整形が無効化されているので、.xmlファイルからのインポート時の見た目は改悪されていると思います。ただ、一からフロチャを見やすいように整形していく場合には使いやすくなったのかなと。

使えそうであれば、改善を検討していきたいと思いますが、如何でしょうか。 ただし、自動整形型の方が使いやすいという方も多そうな気がするので、実装する場合には切り替え機能の検討は必要になると思います(=即座にリリースはできない)

toki-sor1 commented 4 years ago

Win 8.1/Chrome 85.0.4183.83(64bit)にて動作確認。 .jsonファイルを読み込み、保存時のフロチャ位置が維持されていることを確認しました。

長編のシナリオだとフロチャがごちゃごちゃになり易いので、「保存時のフロチャ位置を維持」はフロチャを見易くカスタマイズした状態を維持できるところが良いですね。 ファイルを読み込む度にフロチャを見易く並べ直さなくても良いのはかなりの利点です。

短編~中編だと(シナリオの構成にもよりますが)フロチャはそこまでごちゃごちゃにならないので、「自動整形」された方が手間が少なくて良いですね。 .xmlファイルを読み込んだ時もフロチャが自動的に整形されるので、手間もかからず確認も容易です。

正直なところ、どちらもメリットがあって片方だけを選ぶのは難しいですね; 欲張りではありますが維持と自動整形を切り替えられたら良いなと思いました。

Salvadors-cabin commented 4 years ago

Win10+Edge環境で.jsonファイルをロード後に元のフロチャ位置が維持されていることを確認しましたー。 自動整列か維持か、ですが、私は維持に一票ですね。欲を言わせてもらえば、自動整列ボタンを押したときだけ整列してもらえるとよいかも、です。

snext1220 commented 4 years ago

ご意見ありがとうございます! こちら位置の維持についてはまずはアリというご意見が強いようで、まずは導入方向で検討を進めたいと思います。 まだα版的な機能なのと、ちゃなさんにも確認した後、調整の必要があることからリリースはやや先になるかと思いますが、ご了承ください。

欲張りではありますが維持と自動整形を切り替えられたら良いなと思いました。

仰る通りだと思います。 現時点で未実装ですが、設定画面での切り替えを予定しております。 ただ、仕組み上、途中での切り替えは難しいと思われ、シナリオロード時の設定で確定するなど、なんらかの制約は付くものと思われます。今後調整してまいりますが、ご了承くださいませm( )m

cocotori commented 4 years ago

・自動整形モードと手動整形モードを用意する ・2つは、基本独立で途中切り替えはしない

この2点について、賛成です。

いくつか気になることがあるのですが、 現状はjson形式のみ位置を記憶するようですが、 今後xml形式でも記憶できるようになるのでしょうか? それがないと、一度xml形式でリリースしたあとは 修正ができないことになってしまうと思いました。

また、リンク追加等でも自動整形が働いてしまうようで、 位置が崩れてしまうことがありました。 手動整形モードのときはこちらもOFFにはできますか? これができないと、手動整形の意味が半減するかもと感じました。

自動にしろ手動にしろ、シナリオの規模が大きくなってくると 整形の難しさの問題はつきまといますよね・・・ 規模の大きい作品を作られている方々がどのように作っているのか、 もっと知りたいものです。

snext1220 commented 4 years ago

手動整形モードについては、現在α版(というか、モック)のため、位置を完全に固定するためにこの後本格的な開発が必要になるかと思います。よって、リンク追加での自動整形などについては、今後をお待ちいただけますとm( )m

xml形式については記憶される予定です(現在開発中なので変更の可能性あり)。ただし、PgFlowの高機能化によって、次第とxml/jsonの内容は乖離しつつはあります。基本はjsonをマスターとし、本番環境への配置時にxmlエクスポートとしていただくのが無難かと思われます(Editor2Flowの機能などはどうするのかなどの課題はありますが…)。

# json/xmlの同期は最大限はかりますが、そちらに注力するよりも、エディターでないとできない(できにくい)ものをPgFlowへのリクエストとして挙げて戴いた方が建設的ではありそうです。

いずれにせよ、本件は大きな修正にもなりますので、発案元のちゃなさんにもご確認いただいたのち、段階を経ながらの開発になっていくかと思います。暫しお待ち戴けますと幸いですm( )m

olreia commented 4 years ago

ご検討ありがとうございます。 フローチャートの整形はゲームブック作成ツールの肝となる部分で、使い勝手に直結しているので、大変重要な課題だと思います。 技術面を度外視させていただいて理想だけ言うならば、パラグラフ1から垂れ下がりでリンク矢印が極力交差しない形に自動整形して見せてくれる機能があると、パラグラフのつながりのミスで起きるバグ(ゲームブック特有のもので、通常のテストプレイでは見逃しやすい)を発見しやすいのでとても助かります。 手動で整形できるメリットも大きいのですが、人によっては下手に手を入れてぐちゃぐちゃになってしまい一度リセットしたいと思うこともあるでしょうから、悩ましいですね。 今後ともよろしくお願いいたします。

snext1220 commented 4 years ago

ご意見ありがとうございます!

パラグラフ1から垂れ下がりでリンク矢印が極力交差しない形に自動整形して見せてくれる機能があると、パラグラフのつながりのミスで起きるバグ(ゲームブック特有のもので、通常のテストプレイでは見逃しやすい)を発見しやすいのでとても助かります。

はい、仰る通り、これが理想ですね~ ただ、残念ながら、現在PgFlowが採用しているライブラリがそこまでのしくみを持っていないため(idにそもそも大小関係を持たないしくみなので)、現時点では難しいという状況でして。

まずは、手動整形/自動整形の切り替え機能開発を進めつつ、長期的にはライブラリそのものをよりフロチャ作成に適したもので置き換えるということになるかと思います(その時には、かなりの部分を作り替えにはなってしまいますが^^;)。

先の長い話で恐縮なのですが;、ジワジワとでもできるところから進化していければと思っていますので、長い目でお付き合いくださいませm( )m

snext1220 commented 4 years ago

先のコメントで、嘘を書いていました; 階層決定のためのアルゴリズムが決まれば、上から流れるフロチャを自動生成できるかもしれません(現在ライブラリに完全に任せている部分を自作する感じ)。

具体的には、個々のノードに対して、なんらかのルールでlevel情報を付与する必要があります。 # たとえばlevel 1~5まであれば、5階層のフロチャができます。 この辺ご要望のルールなどあれば助かりますが、如何なものでしょうか。

たとえば

のような感じです。この場合は、Scene idはストーリー進行に合わせて昇順に振られる必要があります(シャッフルする場合は最後にする必要があるでしょう)。

あるいは、

など?

また、面倒ではありますが、手動でシーン単位にlevelを入力させることも可能です(であれば、限りなく自分の意図したフロチャを描けるはず)。

より細かなルールを決めていけば、精度の高い判定はできますが、複雑になれば、人間様の手を煩わせるか、描画パフォーマンスに悪影響を及ぼすかもしれません。

システム寄りな話で恐縮ですが、お考えのある方はお寄せ戴けますと幸いですm( )m


開発メモ

レベル再設定ルール:シーン/リンクの追加/削除時にlevelを決定(フロチャ全体を舐めることはしない)

avg(scene) -> number 指定のsceneをtoとするedgeを取得、from値の平均値を算出

snext1220 commented 4 years ago

試験的な実装をしてみました(GitHub Only)。 https://snext1220.github.io/stext/playground/ Scene 0を基点として、その距離で単純に階層付けしています。

現在は以下の手順でご利用ください。

これで階層付けされたシナリオが表示されます。 現時点でもそれなりに上から下に流れるような感じでフロチャが生成されます。 ただ、一部のシナでは問題が出ていることを確認しています(すべてを見たわけではありませんが、wonder、king、slayerなどは不可)。今後精査の必要はありますが、まずは雰囲気ということでご覧いただけますと幸いです。

olreia commented 4 years ago

有り難うございます! 「豊穣の迷宮」で確認したところ、確かにフローチャートがウォーターフォールっぽくなって、視認性が上がりました。 「不思議のソーサリアン」なんかは、リエントリー(同じパラグラフへの回帰)が多いので、元からフローチャートを作りづらい構造なんですよね。そのドラも同じだと思います。 いよいよ(ずっと前から予告ばかりで恐縮ですが)ソーサリアベンジャーズの制作に取りかかりますので、まずは試してみます。 今後ともよろしくお願い申し上げます。 before after

snext1220 commented 4 years ago

@olreia さん:

早速のご確認ありがとうございます! まずは効果が出ていてよかったです~ 今回からフロチャ生成のコアに手を入れているので、ルールさえ明確にできれば、ある程度までは調整も可能かと思います。ご利用いただく中でお気づきの点は、何なりとお寄せください。 #フロチャ再描画時に全体を舐めているので、今後のパフォーマンス維持も課題です。。

「不思議のソーサリアン」なんかは、リエントリー(同じパラグラフへの回帰)が多い

はい、そのうえ、ひとつのパラに出入り30近くのリンクがあるシーンがあったりで、階層を維持できなくなっていました^^; とりあえず現時点では、そうした「集中パラ」を最下層に移動させることで、最低限見た目を維持できるように改めています。

ソーサリアベンジャーズの制作に取りかかりますので、まずは試してみます。

絶賛楽しみにしております! どうぞよろしくお願いいたします~

スタッフの皆さん:

アベンジャーズも本格的に立ち上がるとのことで、制作に活用頂いた方が良いかと思われ。フロチャ機能の正式実装を優先して取り掛かれればと思っております。お忙しい中とは思いますが、Nov Updateに先立って、優先的にご確認いただけますと幸いですm( )m

以下、今後の大雑把な流れです。まずは2. までを完了させ、最低限ご利用いただける環境を用意できればと。

  1. 現在の暫定テスト版でご確認いただく(皆さん)
  2. 問題なければ、本格実装:シーンの追加/削除時に階層付け(リオ)
  3. 動作テスト(皆さん)
  4. 正式公開(リオ)

伴い、問題なければ先の位置固定機能は一旦廃案にしていければと思います(自動生成を優先させた方が使い勝手は良いと思われますし、複数ルールを併存させるのは極力避けたい)。こちらについてもご意見頂ければ幸いです。

toki-sor1 commented 4 years ago

新しいフロチャ表示形式の実装お疲れ様です!

これで階層付けされたシナリオが表示されます。 現時点でもそれなりに上から下に流れるような感じでフロチャが生成されます。 ただ、一部のシナでは問題が出ていることを確認しています(すべてを見たわけではありませんが、wonder、king、slayerなどは不可)。今後精査の必要はありますが、まずは雰囲気ということでご覧いただけますと幸いです。

Win 8.1/Chrome 85.0.4183.102(64bit)にて動作確認。 今までは階層は関係なく、Sceneが下へ下へと繋がる感じでしたが、今回の表示形式では、階層毎にまとめてSceneを表示させているので、ストーリーの流れが分かりやすくなったと感じました。

ただ、逆に見辛くなってしまったシナリオもありました。 少女英雄の場合、今回の表示形式に変換したらめちゃめちゃ縦長のフロチャになってしまいました(ある意味『塔らしいな』と笑いましたがw)。

上でも話題に挙がっているように、リンクが集中するSceneが存在するシナリオや、同じ階層に大量のSceneがあるシナリオ(おたより)など、シナリオによっては今までの表示形式の方が見易いものもありますね。 現時点ではの感想になりますが、新しい表示形式1本に絞るというのは、現時点のルールでは難しそうと思いました。

因みにScene idの付け方が特殊な自作シナリオ(特に双王)では、どうしても想定された表示にはなりませんが、こればかりはシナリオの作り方の問題ですよね。 Scene idの付け方が特殊なシナリオは、今回の表示形式には適さないと割り切っても良いと思います。


  1. 現在の暫定テスト版でご確認いただく(皆さん)
  2. 問題なければ、本格実装:シーンの追加/削除時に階層付け(リオ)
  3. 動作テスト(皆さん)
  4. 正式公開(リオ)

流れも良いと思います!

snext1220 commented 4 years ago

@toki-sor1 さん:

早速のご確認ありがとうございます! まずは、大枠では問題ないようで良かったです~

少女英雄の場合、今回の表示形式に変換したらめちゃめちゃ縦長のフロチャになってしまいました(ある意味『塔らしいな』と笑いましたがw)。

はい、仰る通り、分岐の少ない連なりがあるシナリオでは縦幅は長くなる傾向にあると思います^^;(今回ですと、中盤が長くなり、全体としては縦幅3倍程度になったような感じでしょうか) ただ、分岐の多寡、開始~終了までの最短距離を把握するなど、シナリオの大まかな特性を把握するというフロチャの目的を考えるとあるべきなのかな?とも感じていますが、如何なものでしょうか、か、か...;

もしも目的のシーンへのアクセスがしにくい、という意味ですと、シーン選択ボックスを利用するか、グループ化(フィルター)機能を利用戴くのがベターかな、という気がいたしますし、上記の理由から、フロチャそのものをコンパクト化することにはあまりメリットを感じなかった(=却って傾向が見難くなると感じた)もので;;

#機能の並存も最初は問題ないのですが、将来の修正でほぼほぼメンテが二重化していくので、可能であれば、最大限避けておきたいという意味もあります^^;(前回の位置固定と異なり、今回は階層化そのものが類似した機能なので猶更)

勿論、二本並存絶対不可という意味ではないのですが、目的によっては、表示形式以外の解決方法(シーンへのアクセス方法を改善するなど)があるのかなと考えた次第です。勿論、フロチャそのものもまだ初期段階で、階層決めのルールさえ明確になれば、調整は可能ですので、是非お申し付けくださいm( )m

と、

伴い、問題なければ先の位置固定機能は一旦廃案にしていければと思います

については、問題ありませんでしょうか(汗

Scene idの付け方が特殊なシナリオは、今回の表示形式には適さないと割り切っても良いと思います。

ご了解ありがとうございます! この辺ルールも決められればと思っていますが、現状、99999を超えるidを付けない、ですかね...^^;(桁数以外で、kingで特殊なid採番てされてましたでしょうか?)

若干否定的な意見が多くなってしまいましたが、当然、最後は使い勝手優先!なので、目的を伺いながら良い形に持っていければと思っています~引き続きよろしくお願いいたします!

snext1220 commented 4 years ago

皆さま: 比較的小規模で、現在の本体機能に階層付与ルールを組み込めたので、GitHub Onlyで反映しております。 #これでPgFlowの各種操作によって動的に階層が付与されている状態です(伴い、[TEST]ボタンを削除)。  最悪問題ある場合も、比較的短時間で元に戻せるはず。

未確認の方は、こちらにてご確認戴けますと幸いですm( )m 簡易的な追加なので、slayerレベルだと若干もたつきますが、大概のシナリオではほぼ問題ないと思います(パフォーマンス面が一番心配なので、その辺問題ある場合は適宜調整してまいります)。

cocotori commented 4 years ago

今回の変更がフローにどう影響を及ぼすか、 まだ掴みきれていないのですが、いくつかのシナリオで確認した感じ よくなっているように思いました。

シーン0の潜り込みがなくなったのは、よくなったと思います。 分岐のないシナリオが縦長なのも、 上下を時間軸と考え、 同時に起こることが少ない≒時間の経過が多い と考えれば自然かと思いますし、いいのではないかなと思います。

伴い、問題なければ先の位置固定機能は一旦廃案にしていければと思います

構いません!ルールが何個もあるのは作者さん・システム側ともに負担なので、 自動形成でできるなら可能な限りそちらの方向性でいきたいですね・・・    

# json/xmlの同期は最大限はかりますが、そちらに注力するよりも、エディターでないとできない(できにくい)ものを>PgFlowへのリクエストとして挙げて戴いた方が建設的ではありそうです。

こちらについても異論ありません! 現状ですとわたしはxml形式で保存してリリース後の修正もxml形式でしていますが、 今後、json形式で元データを管理してupする時だけxmlにする、 というのがルール化できれば問題ないと思います。

現状はファイル保存がjson,xml,htmlともに同レベルにあるような印象を受けますので、 xml,htmlは例えば「シナリオ出力」とするなどして、 最後に行うもの、というのをわかりやすくしたほうがいいかもしれないですね。

toki-sor1 commented 4 years ago

お返事ありがとうございます&階層付与ルール組み込みお疲れ様です! デフォルトの状態で今回の階層付与ルールが適用されているのを確認しました~。

ただ、分岐の多寡、開始~終了までの最短距離を把握するなど、シナリオの大まかな特性を把握するというフロチャの目的を考えるとあるべきなのかな?とも感じていますが、如何なものでしょうか、か、か...;

なるほど、フロチャからアクセスすることを考えていたのでちょっと大変なイメージがあったのですが、そうですね、シナリオの特性を把握するという本来の目的を考えると、現在の表示の方が特性が目に見えて分かりやすいですね!

シーン選択ボックスを利用するorグループ化(フィルター)機能を利用する

フロチャからSceneにアクセスする場合、仰るように上記の機能を使うことでフロチャから該当Sceneを探す手間も発生することはなく、私が言っていたような問題も解決ですね…!

#機能の並存も最初は問題ないのですが、将来の修正でほぼほぼメンテが二重化していくので、可能であれば、最大限避けておきたいという意味もあります^^;

確かにメンテの二重化は大きな負担にも繋がるものなので避けたいですし、一つの機能で事足りるのであれば、どこかの段階で方針を切り替えてスッキリさせる必要がありますものね;

伴い、問題なければ先の位置固定機能は一旦廃案にしていければと思います

については、問題ありませんでしょうか(汗

お騒がせしてお手数を掛けてしまい申し訳ありません;; 位置固定機能は一旦廃案&新しいフロチャ表示方法採用、どちらとも問題ありません! よろしくお願いします!


この辺ルールも決められればと思っていますが、現状、99999を超えるidを付けない、ですかね...^^;(桁数以外で、kingで特殊なid採番てされてましたでしょうか?)

はいー、scene idについては明確なルールを決めておくと良いと思います。 まずはリオさんが挙げてくださった99999を超えるidを付けないですね。

kingについては、桁数以外での特殊なid採番はしていないです~。 #ルート分岐でid410102といった99999超えidを頻繁に使っているので、フロチャ表示ではこれが原因で正常に表示できないのだと思います;

snext1220 commented 4 years ago

@cocotori さん、@toki-sor1 さん:

早速のご確認ありがとうございます! 諸々ご賛同戴いており、ホッとしております^^; 過半数のご賛同も戴いているので、これにてまずは作業進めてまいりますね。

以下、個々へのお返事です。

今回の変更がフローにどう影響を及ぼすか、まだ掴みきれていないのですが~~

恐らく時系列(ぽく)なった点が一番かなと思っておりますが、こればかりは使って戴いての感触次第ですかね^^; # @toki-sor1 さん> https://github.com/snext1220/snext-management/issues/20 でも出しておりますが、PgFlowもここ数か月でまた大きく変化していますので、できれば引き続きシナリオ作成通じての検証もお願いいたしたく、今後のご予定についても適宜ご相談させてください。

(余談)システム的には、これまでほぼブラックボックスであったフロチャの描画ルールに手を突っ込めるようになった点はパラダイムシフトで、ルールさえ決めれば(ここが曲者ですが)、より適切なフロチャを生成できるようになった点は非常に大きいと思っています。

ルールが何個もあるのは作者さん・システム側ともに負担なので、自動形成でできるなら可能な限りそちらの方向性でいきたいですね・・・ ... 位置固定機能は一旦廃案&新しいフロチャ表示方法採用、どちらとも問題ありません!

こちらもご賛同ありがとうございます。 では、位置固定機能については、折角作成はしてみましたが^^;、この後大きく要望が出ない限りは、このまま廃案の方向で進めたいと思いますm( )m

今後、json形式で元データを管理してupする時だけxmlにする、というのがルール化できれば問題ないと思います。

こちらhtml形式の制限もあるため、マニュアル側で謳っておりますが、如何でしょうか; https://sorcerian.hateblo.jp/entry/2019/05/03/211951 [9]

# ホントならば、メニュー上でSaveとExportとをわけた方がとも思ったのですが、既にツールバーが結構良い量になっている点、.json形式にNativeとしていることから「いいかな」とそのままにしておりました^^; (.jsonのところでRecommendなどとしても良いかもしれませんが、一寸ニュアンスが違うかもしれませんね...)

フロチャからSceneにアクセスする場合、仰るように上記の機能を使うことでフロチャから該当Sceneを探す手間も発生することはなく、私が言っていたような問題も解決ですね…!

了解です~では、まずは解決ということで^^; シーン選択については以前から地味に話題に上がるので、もし気になる点があれば、いつでもお声がけください!

はいー、scene idについては明確なルールを決めておくと良いと思います。 kingについては、桁数以外での特殊なid採番はしていないです~。

ご回答ありがとうございます! となると、仰る通り、桁数の大きなid値で引っかかっている可能性が高いですね;(PgFlowとしては何もしていないので、ライブラリになんらかの制約があるのかと)

とりあえずSGMLリファレンスのid値にルールを追加致しました! https://sorcerian.hateblo.jp/entry/2018/11/01/211745

olreia commented 4 years ago

皆様お疲れ様です! フローチャートは目下こんな感じで、GBATとかに近い印象になっています。視認性が高くなったのは大変有り難いところです。 ところで、右のパネルで「シーン追加」ボタンを押して新たなシーンを生成してリンクを貼ると、左のチャート画面の位置がずれてしまいます(デフォルト位置に戻る?)。「リンク」タブを操作したときも同様です。その都度、今編集しているシーンが画面外に出てしまうので、ちょっと煩わしいのですが、これは仕様でしょうか?個人的には、選択しているシーンが常に中央に表示される方が良いように思いますが、ご検討いただけると幸いです。 2020-09-14

snext1220 commented 4 years ago

視認性が高くなったのは大変有り難いところです。

長年の課題だったので、まずは一段クリアしたとのこと、本当に良かったです…! とりあえず見切りですが、現在のバージョンで本番環境にも反映済みなので、引き続きご利用くださいませ。

「シーン追加」ボタンを押して新たなシーンを生成してリンクを貼ると、左のチャート画面の位置がずれてしまいます(デフォルト位置に戻る?)

ご連絡ありがとうございます! こちら結構微妙な操作をしているもので、再描画時に表示位置は若干左下方向にズレることを確認しております。ただ、手元の環境では画面から外れるまではいっていないので、解像度、ブラウザーのウィンドウサイズ、チャートの拡大率などが影響しているのかもしれません。。

こちらでも引き続き調整してまいりますが、他の皆さまの環境で如何なものかお教え戴いてもよろしいでしょうかm( )m>スタッフの皆さま

snext1220 commented 4 years ago

「シーン追加」ボタンを押して新たなシーンを生成してリンクを貼ると、左のチャート画面の位置がずれてしまいます(デフォルト位置に戻る?)

こちら、取り急ぎ調整してみました(本番/GitHub双方反映済み)。 如何なものでしょうか??

olreia commented 4 years ago

素早い対応ありがとうございます! ……ええっと、なんか、フローチャートでシーンを選択しても右側のボックスがそのシーン番号に遷移しなくなってしまったようなのですが。。 本番環境で発生して、GitHubでは一度機能したのですが、そのうちに同じ現象が再発しました。 こちらの環境のせいかもしれないので、また明日ハード変更やキャッシュ消去など試してみます。

snext1220 commented 4 years ago

早速のご確認ありがとうございます! フロチャ上選択したシーンの情報が[シーン]タブに反映されない感じでしょうか? だとすると、仰る通り、キャッシュが悪さをしている可能性がありそうな気がしますが、もし異なる現象の場合はお手数ですが改めてお教えくださいませm( )m

olreia commented 4 years ago

キャッシュを削除してみましたが、再発しているようです。 最初に書き始めた限りでは問題なく、シーン追加のボタンもちゃんと機能します。 しかし、選択肢の文言を書くためにリンクのタブを開いてキャプションを入力すると、それ以後、チャートのシーンを選択しても右側の画面が遷移しなくなります。他の方法で表示シーンを動かす方法があるでしょうか?今のところ、その都度シナリオデータをセーブ&リロードして対応していますが……。 あと、何か書き込むとチャートが変なところにずれる現象もたまに起こりますね。発生条件を吟味しきれていませんが。 取り急ぎ、ご報告です。

snext1220 commented 4 years ago

状況のご連絡ありがとうございます!

しかし、選択肢の文言を書くためにリンクのタブを開いてキャプションを入力すると、それ以後

成程!リンクを編集した後の問題でしたか…! 現象確認できました(リンク更新時にエラーが発生していました)。 そして、修正したものを本番環境にも反映しておりますので、お手数ですがご確認いただけますと幸いです。

何か書き込むとチャートが変なところ

サマリーですかね...こちらは再描画が発生する都度、フォーカスしたシーン、またはリンクを中央に来るよう強制していますので、たとえば選択されたシーンがキャンバスの端にあったりすると、目立って移動するように見えるかもしれません。。

olreia commented 4 years ago

おお、光速の対応……! 確認しました。これで自在に編集できるようになりました。有り難うございます! 「リンク」タブを開いてキャプションを入力すると、チャートが変なところに飛ぶ現象だけ、まだ残っているようです。

snext1220 commented 4 years ago

こちらこそ早速のご確認ありがとうございます!!

「リンク」タブを開いてキャプションを入力すると、チャートが変なところに飛ぶ現象だけ、まだ残っているようです。

こちら確認しました。 現時点で、再描画時にリンクそのものにフォーカスすることができないため、リンク元ノードにフォーカスするように改めています(本番環境反映済)。拡大率が高い状態だとズレが目立つ感じですが、リンク元/先のシーンが表示される程度の拡大率であれば、そこまで気にならない程度になったかな、と思いますが、如何なものでしょうか...?^^;

olreia commented 4 years ago

確認しました!有り難うございます。 確かに、拡大率によってズレ幅が変わるようです。私は普段、フルHDのモニターで、各シーンのサマリーがきちんと読める程度に拡大して制作しているので、かなり拡大率が高いため、再描写でチャートが一画面以上ずれることがしばしばあります。ただ、ちょっと拡大率を下げたらほとんどずれなくなったりもするので、かなり環境による差が大きいのかもしれません。 今日明日はお休みしますが、引き続き制作を続けていきますので、今後ともよろしくお願い申し上げます。

snext1220 commented 4 years ago

早速のご確認ありがとうございます!

再描写でチャートが一画面以上ずれる

成程...そこまでずれると確かに辛いですね... 少々演算を見直し、カメラの中央座標をリンクの中心に来るように改めてみました(本番環境反映済)。 何度もお手数ですが、お手すきの時にでもご確認いただけますと幸いです。

今日明日はお休みしますが、引き続き制作を続けていきますので、今後ともよろしくお願い申し上げます。

はい~お互い無理せず進めていきましょう!こちらこそ今後ともどうぞよろしくお願いします!

olreia commented 4 years ago

素早い……もう脱帽です……!

その後ちょっとだけ作業したところですが、既にあるシーンにリンクを張り、リンク元から「リンク」タブを開いて「キャプション」の文字列を弄った瞬間(テキストボックスにカーソルを置いた段階では何も起きず、「次へ」の「へ」をデリートした瞬間)に、左のチャートがずれるようです。私の環境だとチャート画面が真っ白になってしまい、あれこれドラッグしたりマウスホイールで拡大縮小を繰り返すうちにチャートの端っこが見える感じです。何度か試したところ、どうも拡大率は維持されたままチャートマップの遙か下方に飛ばされるようです(何度も上から下へマウスドラッグを繰り返すと、チャートの下端が画面上から出てきました)。 引き続き頑張ります!

snext1220 commented 4 years ago

拙速な作業で申し訳ありません; 他の作業を行っているときに肝心のコードが無効化されてしまった?ようです。。 先ほど修正して今度こそ直ったと思うのですが、如何でしょうか。。(本番環境にも反映済みです) 何度も申し訳ありません;;

olreia commented 4 years ago

どんまいです。。 その後しばらく作業を進めましたところ……いい感じですよ!全く違和感なく制作できています。 本当にありがとうございます!

snext1220 commented 4 years ago

おぉ、良かったです~ こちらこそ何度もお手数をおかけしましてスミマセンでした;; 引き続きよろしくお願いいたします!

olreia commented 4 years ago

不具合(?)報告です。 敵とフラグ、アイテム、実績の登録がうまくいきません。 一通り作成した後にテストプレイしようとすると、下記のようにエラーが出ました。 コードを間違えたかなと思い、一旦シナリオデータを保存して、旧作を読み込んでちょっと調べてから、先ほど保存したデータを再読み込みすると、作成した一連の敵、フラグ、アイテム、実績データが消えていました。 2020-09-20

今日は何か作成したはずのデータが消えるなあ、と思ってたんですよね。途中でPlayground Editorに変えたりしてたので、間違って古いデータから作業を再開してしまったのかもと思っていたのですが。。 先日までに作成していたf16、m02、r04までのデータは消えていないので、ここ最近の改訂で何か問題が発生したのかもしれません。 お手数ですが検証いただけると幸いです。 このままだとちょっと作成が難しい状況ですので。。。

以下は上記の現象を確認する以前にメモしていたものです。関係あるかは不明で、上記に比べると大きな問題ではありませんが。 >フラグを作成しても、リンクタブの条件式設定の際に左に開くメニュー上にフラグ一覧が反映されません。また、ここで一度フラグを選んでしまうと、後で別のシーンで同じ動作を行う際に再選択しても条件式が生成されません。一度「フラグを選択」を選ぶと、条件式にそのまんま「フラグを選択」と表示され、これを消去してから選び直すとうまく生成されます。能力値などのデータ参照でも同じ現象が起きます。

snext1220 commented 4 years ago

ご連絡ありがとうございます!

うむむ、結構致命的な挙動ですよね... 手元で確認してみたのですが、情報消失、フラグ一覧作成されない、がいずれも再現せず(Editorとの移動やシャッフルなど、諸々やってみたのですが…)、なんらかの条件依存になっているように思えます。

お手数ですが、問題発生した時のコンソールの状態をキャプチャなどでお送りいただくと共に、現在のシナリオデータ(.jsonファイル)をUp戴いてもよろしいでしょうか。お手数をおかけします。。

コンソールについては-> https://sorcerian.hateblo.jp/entries/2018/06/18

olreia commented 4 years ago

お手数をおかけします。 エラーの出た状態ではテストプレイを起動できなかったので、とりあえず各変数のIDだけ入れてテストしてみました。 すると、それからは特に何事もなかったかのように動作しています。 ただ、リンクの条件式を設定しようとすると、左側のタブのところに新しく設定したてのフラグが表示されないという現象が残っています。ちょっと怖いですね。。 とりあえず作業を続けていきます。 現時点での進捗を添付します。よろしければ味見してみてください。 stext (66).zip

snext1220 commented 4 years ago

シナリオデータありがとうございます! とりあえず戴いたデータでフラグの追加/削除、テストプレイなどしてみたのですが、現時点では問題なく動作しているようですね...こちらではリンクの条件式についても問題なく新フラグが反映されているようでした;

他の皆さま>恐縮ですが、皆さんの方でもご確認いただき、もしなにか現象出るようであれば、お手数ですが、操作手順&コンソールの画像など戴ければ幸いですm( )m

@olreia さん>少々使いにくいかもしれませんが、当面はブラウザーのコンソールを開いた状態で作業戴くと、なんらかのタイミングで発生するエラーを確認できるかもしれません。。

こちらでも引き続き見てまいりますが、どうぞよろしくお願いいたします。

olreia commented 4 years ago

おはようございます。 うーん……昨日の現象が再発しました。 制作を進めてテストプレイを起動したところ、新たに加えたモンスターや実績の情報が参照できないというエラーが表示されます。 現時点ではPGFlow上にはモンスターデータが残っています。(昨日はこれを確認せずにセーブ&リロードしたらデータが消えていました) 画面キャプチャとデータを添付します。 お手数をおかけしますが、検証をお願いいたします。 stext (72).zip

snext1220 commented 4 years ago

恐縮です。 こちら~(2).jpgについてですが、コンソール上、エラーが表示されている箇所をキャプチャ戴くことは可能でしょうか(赤文字で表記されている箇所があるかと)。

# こちらでも不足している敵情報、アイテム情報などを入力しているのですが、当方入力の内容だとそのまま問題が解消してしまうため、なにかしら入力された情報にエラー原因があると思われます... # 戴いた.jsonファイル上は敵/アイテム等の情報は既に消えているので、おそらくグリッド表の更新時になんらかの問題が発生しているように見えました。

ご不便をおかけして申し訳ありませんが、原因特定のため、PgFlow操作の際にコンソールを開きっぱなしにした状態で操作戴いてもよろしいでしょうか。恐らくエラータイミングでエラーログ(赤文字)が表示されるため、原因が特定しやすくなるかと思います。

cocotori commented 4 years ago

リオさん ちゃなさん

わたしの方でも動作確認しています。 こちらでも再現しませんね・・・

一応それっぽい現象としては、 ・アイテムデータを使うシーンを用意する(例えばi09) ・アイテムデータを、作成後にフォーカスを当てたままにして未確定状態のままにしておく ・テストプレイ

すると、添付画像のように未登録エラーを出すことができました。 ただ、今回は同時に複数のエラーが出ているようですので違いますよね? 可能性の一つとして、データ未確定状態から何か別の操作をすると(シーン追加とかリンク編集とか) データの確定作業をすり抜けてしまう、ということは考えられないでしょうか?

test1 test2

あと、今回の件とは関係ないと思いますが、 コンソールにエラーが出ていたので念の為キャプチャしておきます。

snext1220 commented 4 years ago

@cocotori さん: お忙しい処、ご確認ありがとうございます!

ただ、今回は同時に複数のエラーが出ているようですので違いますよね?

そうですね...未確定でも行移動時に確定するはずなので、最大でも一行しか問題がでない、はずなのですが… 仰るとおり、「データの確定作業をすり抜けてしまう、ということは考えられないでしょうか?」が臭いので&一寸思いついたことがあるので、まずはその辺中心に分岐をさらってみたいと思います;

コンソールにエラーが出ていたので念の為キャプチャしておきます。

ありがとうございます! はい、こちらは階層情報が一部のノードで確定していないことから出るエラーになります。 ただ、今回の原因次第では複合的に絡んでくる、のかもしれません;

# これから不在にしてしまうため、以降の反応が遅れてしまうかもしれませんが、引き続き空き時間で調査続けてまいります~

snext1220 commented 4 years ago

度々すみません。。。(まだいた人^^;) 取り急ぎデータのリフレッシュを見直したものを先ほど本番環境/GitHub双方に反映いたしました。 お手数ですが、ブラウザーキャッシュ削除の上で今一度お試し戴けますと幸いですm( )m

olreia commented 4 years ago

対応恐れ入ります。 ざっとログを見たのですが、赤字のエラーは出てこないんですよね。。黄色で DevTools failed to load SourceMap: Could not load content for chrome-extension://ndjpnladcallmjemlbaebfadecfhkepb/editor/config.js.map: HTTP error: status code 404, net::ERR_UNKNOWN_URL_SCHEME と出てくるだけです。 そして、今作業中のPGFlowにはアイテムと敵が書いてあるのですが、それを保存するとJsonファイルには保存されないということは、セーブ&リロードするとまた消えてしまいそうですね。。 ともあれ、一旦キャッシュを消してやり直してみます。

olreia commented 4 years ago

ああ、やっぱり消えてますね。。。 スクリーンショットから内容を転記して入力していたところで、モンスターのIDが一部重複していることが判明しました。もしかしてこれのせいでしょうか?アイテムやフラグにも波及するのが謎ですけど。。 そして、一通り入力してセーブ&リロードしたら……画面がバグってしまいました。キャッシュを消しても同様です。 2020-09-21 (8)

olreia commented 4 years ago

一つ前のデータは読み込めるのですが。。少し小刻みに作業してみます。

olreia commented 4 years ago

フラグを二つ三つ入力してセーブ&リロードしたら正常に読み込め保存もされていましたが、下記のエラーが出ています。 Mixed Content: The page at 'https://www.web-deli.com/sorcerian/text/playground/' was loaded over HTTPS, but requested an insecure favicon 'http://d.hatena.ne.jp/images/diary/sorcerian/favicon.ico'. This request has been blocked; the content must be served over HTTPS.

olreia commented 4 years ago

何度も立て続けに恐縮です。その後ちまちまデータを入れていき、消失はしなくなっていますが、今度はテストプレイを実施したらシーン0で画面が真っ白になり進まなくなりました。 エラーメッセージはPGFlowを立ち上げた瞬間から出ている感じです。 stext (66).zip

toki-sor1 commented 4 years ago

皆様、検証お疲れ様です。

動作確認環境:Win 8.1/Chrome 85.0.4183.102(64bit)、Edge 85.0.564.51(64bit) 検証データ:stext (72).zip内のstext (72).json

stext (72).jsonは、既に対象のデータが消えた状態のようですね。 エラーが出ている敵idやアイテムidなどを改めて登録したところ、ゲーム画面に移行できました。 ただ、bgm以外で何らかのエラーが出ているようなので、キャプチャも添付しますね。 image

その後、EditorとFlowを行き来したり、xml形式でファイルを保存してFlowで読み込んだり、他シナリオ読み込み後に情報登録済み検証データを読み込んだりしましたが、上記で登録したデータは消えていませんでした。


別口で気になる挙動を見つけたので、(今回のケースに関係あるかどうかは分からないのですが)ご報告いたします。

例えばアイテム情報を登録する際に、名前を最初に入力し、次にid番号を入力した場合、下記のように入力順が逆になっていました。 image

また、入力している情報が未確定のままEditorに移行すると、未確定の情報が入力されていませんでした。 どちらともエラーは出ずにゲーム自体は遊べるので、そこまで気にしなくても良いかなとは思うのですが、念のために。 #よく考えたら後者の挙動はエラーを招く恐れがあるので、気にしなさいよ案件でしたね;


何度も立て続けに恐縮です。その後ちまちまデータを入れていき、消失はしなくなっていますが、今度はテストプレイを実施したらシーン0で画面が真っ白になり進まなくなりました。 エラーメッセージはPGFlowを立ち上げた瞬間から出ている感じです。 stext (66).zip

添付ファイルを読み込みましたが、こちらは正常にテストプレイ画面に移行することができていますね。 もしかしたら、ちゃなさんの制作環境が何かの手がかりになるかもしれません。 もしよろしければ、動作確認環境(例:Win 10)とご利用のブラウザの種類とバージョン(例:Chrome 85.0.4183.102(64bit)) も添えていただけると良さそうです~。

olreia commented 4 years ago

ああっ、申し訳ありません!古いファイルを添付してしまいました。 テストプレイが起動しないのはこちらのデータです。stext(93).jsonです。スクリーンショットを添付しています。 せっかく検証していただいたのに、誠に申し訳ありません。 私の環境はWindows10 Professional 64bitで、ブラウザはChrome 85.0.4183.102です。 厄介なことに、他のPCでも、FireFoxやMicrosoftEdgeでも同様の現象が起きています。 2020-09-21 (12).zip

toki-sor1 commented 4 years ago

いえいえ、お忙しいところ不具合報告や制作環境の情報のご提供ありがとうございました! こちらでstext (93).jsonを確認したところ、下記の敵情報の「<」が原因で、条件式などにズレが生じているようでした。 (Pg Editorにチェンジした後に敵情報の辺りをご確認していただけますと、おそらくズレが生じていると思います) 【9/22追記】「>」の使用は問題がなかったので、上の文章から削除しました;

試しに下記の黄色いラインが引かれている敵idのダメージ式を削除した後、テストプレイを試していただいてもよろしいでしょうか? お手数をおかけしてしまい恐縮ですが、よろしくお願いいたします~。

image