[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
https://shunshun94.github.io/shared/jquery/io/github/shunshun94/trpg/logEditor/LogEditor.html にココフォリア等から取得した html ログを編集するエディタを置いてみた。サーバサイドはなく、都度ローカルに結果を保存する必要がある。ログが少し長いとすぐにレスポンスが悪くなるのがネック……何が速度に悪影響を及ぼしているのかは調べた方が良さそう。
主な機能は以下のとおりである。
2022年03月01日追記
現時点だともっと機能が増えている。
https://sortablejs.github.io/sortablejs/ を使うと html の要素を Drag / Drop で並び替える実装が簡単にできる。また、「かんばん」のように複数のグループを跨いで要素を移動させることもできる。私が書いている下手な説明を読むよりは公式のページを確認した方が何ができるのか分かりやすいだろう。
ウェブページに組み込む際は https://cdn.jsdelivr.net/npm/sortablejs@latest/Sortable.min.js
を読み込めば使える。
なお、Plugin について何か追加のファイルを読み込まないと使えなさそうに見えるが、別に上述のファイルさえ読み込んでいればすぐに使える。
https://shunshun94.github.io/shared/jquery/io/github/shunshun94/trpg/growCalculation/index.html
高レベルスタートの場合や1度のセッションで複数回の成長が発生する場合にどこに何を割り振るか、その結果どこをどれだけ犠牲にするのかの計算が大変だったりする。その際にさらさらと計算できるようにツールを作成した。
とはいえ、用途が狭すぎるといえば狭すぎる……
あまりやるべきではないと思うが、テキストで表を出力したい、みたいなことがしばしばある。例えば、以下のような感じである。
《エフェクト名》 /Lv/タイミング/難易度 /対象 /射程/侵蝕値 /制限 /効果 《リザレクト》 /1 /オート /自動成功/自身 /至近/効果参照/― /(Lv)D点HP回復、侵蝕値上昇 《ワーディング》 /1 /オート /自動成功/シーン/視界/0 /― /非オーヴァードをエキストラ化 《プラズマカノン》/5 /メジャー /RC /単体 /視界/4 /100 /ATK+Lv×5 《コンセ》 /2 /メジャー /シンド /- /- /2 /- /C値-Lv 《結合粉砕》 /3 /メジャー /シンド /- /- /4 /ピュア/ダイス+Lv 装甲無視 《閃熱の防壁》 /3 /オート /- /単体 /視界/4 /ピュア/自身不可。ラウンド1回。ダメージ Lv+2 軽減 《焦熱の弾丸》 /1 /メジャー /RC /単体 /視界/1 /- /ATK+Lv+2
やってみると案外難しい。各列の横幅をどうそろえればいいのか。基本的には表の全行をなめ、各行の横幅について最大のものを取得する。この最大のものを横幅として各行を描画し内容が幅に満たない項目については空白を詰めるという手順となる。例えば上表の1列目は "《プラズマカノン》" が幅が最大となるから、この幅に合わせて全行の1列目を描画する。 "《コンセ》" の後には8個の半角スペースを入れて列の幅を合わせている。
が、これが意外に面倒である。全角の文字と半角の文字が混在する場合に横幅を計算するのが難しいのだ。上述の表は全てのエフェクト名が全角文字だから良いが「MAXボルテージ」等が入ってくると途端に計算が面倒になる。
が、文字数のカウントについてありがたい記事があった。JavaScript 文字列の長さ(バイト数)を取得する(zukucode)である。これを参考に文字列の長さを取る関数を作成し表めいたテキストの作成を実現できた(動作例 / 表の生成部分コード)。長さがまちまちになりやすい備考欄を末尾に持ってくるとスペース的な無駄がなくていい感じのようだ。
ただし、テキストでやる場合もそうでない場合も言えることだが横に広い表は見にくくなるので項目数が多い場合は何か別の手段で表示することを検討した方が良さそう。
3年弱前に以下のようなコンテストに主催側で参加したことがあった。
今日はイヤホンの日、勝負事の日だよー!
— ソードワールドを遊びつくそう! (@SwordWould) January 8, 2019
何か挑戦するなら今日の方がいいかも!?
ドラゴンブックさんも楽しみだー!
シナリオコンテストも詳細を告知しているからよろしくね!
【 https://t.co/LskJUFEqbc 】#今日は何の日 #TRPG pic.twitter.com/n6IZw9m5Bm
が、シナリオとしての取り回しに難があったり、可読性に難があったりと「募集要項読んだ?」というのものがそれなりに多くて「うーん」と頭をひねったことも多かった。
じゃあ自分ならどうしたんだろう、と考えてシナリオを書いてみたのが https://shunshun94.web.fc2.com/replies/scenarios/sw25_ffff.html である。シナリオに工夫があるわけではなくシナリオの使い方を少しひねってみただけだが、シナリオの記載に色々とギミックを入れた。
予想外の反応をされた場合や判定に関する注意点、想定問答集をシナリオ中に記載してルールや処理に関するセッション中の躓きを減らせるようにした
判定やデータの詳細が記されたルールブックのページがどこなのかを記載するようにした。プレイヤーに根拠を求められた際に提示したり、判定の詳細をプレイヤーに確認させたりすることが容易である
特に魔法を使う敵を出す場合は GM によっては扱いきれずただただ打撃させることしかできない、というのを見かける。何をさせるのかを各敵について記載して敵に不自然な行動をとらせないようにできる
テキストセッション、つまりテキストチャットで実施するセッションはプレイヤー、ないし GM のタイピング速度にセッションのテンポが左右される。このシナリオはそのまま読み上げることを意図している内容についてはコピー/ペーストすれば良いように作っている。さらに、そのまま読み上げるべき内容をダブルクリックするとクリップボードにコピーできるため、コピーする範囲を間違えるといったこともない