note

2011-6-29 費用対効果

費用対効果

イラスト

細部が誤魔化せる縮小表示の素晴らしきかな。

ポチッと拍手ありがとうございました。

2011-6-23 (-0.7) key/sec

Ghost Typing

平均タイプ数8.3 key/sec
ミス タイプ数3 key
正解タイプ数258 key
所要時間31 key

やっとこさ。次の目標は 9key/sec。永久に届かない気もするけど。

font-family

すっかり報告を忘れていましたが、サイトを再マークアップした時に、閲覧者の指定が優先されるようにこちらからの書体の指定を止めました。以前のメイリオでの表示が良かったという方は、以下を参考にブラウザ側で好きなフォントを指定してあげてください。

Opera ~ 選択文字列をバックグラウンドで Google 検索する (2013-7-3 微修正)

普通は Ctrl + Shift + [検索] 等、修飾キーとの組み合わせで間に合いますが、メニューやボタンのワンクリックで片付けたい場合。11.11 だと Open url in new background page%t が使えないし、Windows だと Paste mouse selection and go background も使えないし、クリップボードの使用を避けるには云々と地味に面倒です。色々なアプローチの仕方がありますが、こんなやり方も。※設定 (Alt+P) → 詳細設定 → コンテンツ → JavaScript オプション... → ウィンドウの強制背面表示を許可する、が On であることが条件。

テキストエディタでアクティブなメニュー設定ファイル (パスは opera:config#UserPrefs|MenuConfiguration で確かめられます) を開き、[Link Selection Popup Menu] 及び [Hotclick Popup Menu] セクションに以下の一行を足すだけ。

  1. Item, "バックグラウンドで Google 検索する(&R)" = Go to page, "javascript: (function (s) { s && open('https://www.google.co.jp/search?q=' + encodeURIComponent(s.replace(/\s+/g, ' '))).blur(); })('' + getSelection());", , , "Find"

ファイルの編集が終わったら文字コードが UTF-8 になっていることを確認して保存し (エディタによっては Shift_JIS と誤検します/コードが誤っているとメニュー名が文字化けするので注意)、Opera を再起動すれば、選択文字列上で右クリックした時のポップアップメニューに「バックグラウンドで Google 検索する(R)」という項目が追加されます。

選択中の文字列に引用符や、先頭に検索エンジンのキーワードが含まれていても Google で検索できます。また、連続する半角スペースや改行は、一つの半角スペースに纏めるようにしています。お節介であれば .replace(/\s+/g, ' ') の部分を削除してください。

お試し用設置ボタンはこちら→ バックグラウンドで Google 検索する。リンクをツールバー等にドラッグ & ドロップすると追加できます。テキスト選択にならないようにリンクを掴むのにコツが入りますが、垂直にカーソルを動かすと簡単に掴めますというのは受け売り。削除する時はボタンを右クリックしてカスタマイズ(C) → ツールバーから削除(E) です。

拍手レス

> 偶然こちらに...

お久し振りです。震源地からは離れた所に住んでいたので震災の影響は特に受けていません。ご心配していただき、ありがとうございます。メールは……実は届いています。(でも「エラーで返ってきた」と書かれているということは、また別のメール?)
返事に就いては、誰に向けても誠実に書く自信がなくて出せませんでした。いつか返事を書ければと思い当該メールは残しておいたのですが、さっき改めて読み返してみて、とても丁寧なメールを頂いたのに黙り込んでいたことを本当に申し訳なく思っています。すみませんでした。

よくファビョる割には高慢ちきな自分なので、行ったり来たりしながら懲りずにまたサイトを運営しています。気を遣っていただいたこと、また目に留めていただいたこと、嬉しかったです。今は界隈に積極的な参加はされていないとのことですが、また何か創作活動をする折には、声を掛けていただければ出来る範囲で (出来ることと言ったら感想やバグ報告くらいですが) お手伝いさせていただきます。こちらのメールアドレスも当時のままですので気軽に声を掛けてください。今度はちゃんと返事を書きますので。……いや本当に、すみませんでした。

また、ポチッと拍手ボタンを押してくださった方へ。ありがとうございました。

2011-6-18 CardWirth ~ 能力判定分岐コンテントの成否判定の式 (2011-9-2 再編集)

2011-6-23 追記: 本題の前に

HAND 様が回避・抵抗率に関する丁寧なレポートを書かれています。回避・抵抗率の判定には能力判定分岐コンテントと似た式 (内部的には与えている引数が異なるだけで同じ関数を呼んでいる?) が用いられており、そちらの方が新しく、より正確な情報が書かれていますので、以降を読む前でも後でも構いませんが、一読しておくことをお勧めします。

HANDのページ-コラム/02.CardWirthエンジン分析-回避率・抵抗率 (HANDのページ)

CardWirth ~ 能力判定分岐コンテントの成否判定の式 (2011-9-2 再編集)

次の評価式の演算子 ">", "≧" の左が達成値、右が目標値で、条件式が真 (true) であった時、判定に成功する。※以下の 2 つは等価な式である。

但し、達成値を導く中のダイスロール 2D6 で 2 (1 のぞろ目) が出たらその時点で自動的失敗となり、12 (6 のぞろ目) が出たら自動的成功となる。

※1 身体的特徴 + 精神的特徴 + 行動力ボーナス/ペナルティ
※2 商の余りは切り捨てる
※3 此れを 2 倍した値が能力判定分岐コンテント自身の適性値?
Ask の齋藤様から直接、ダメージの計算式を聞いたそうな古山シウ様のサイトだったかダメージ計算機のソースだったかで、効果コンテントの適性値が 6 とあったので (v1.20 の頃の話だけど)、此方も 6 である可能性が高い――が、断定できるソースを持っている訳ではないので両方記しておく。因みに HAND 様のまとめを見るまで等価な式 (B) があること、適性値 6 で通じることに気付きませんでした。自分、馬鹿ス

実体は TRPG の「行為判定」その物と言えます。TRPG に馴染みがない方は、例えば 夢現交路TRPG 様の所の [ルール] → [■行為判定ルール >>能力判定] の項なんかを読むと、CardWirth が TRPG に影響を受けている部分が見えて面白いかもしれません。閑話休題。以降も殆ど蛇足だけれども。

評価式の関係上、成功率のパターンは有限です。A の評価式を用いて例を挙げます。

乱数 2D6 を除いた達成値と目標値の差が 9 以上の時――仮に 0 対 9 としましょう。達成値側が自動的勝利を除く最大のダイスの出目 11、目標値側が最低の 2 を出したとしても、11 (0 + 11) 対 11 (9 + 2) となり、判定に失敗します。2D6 × 2D6 の組み合わせは 1,296 種あり、達成値側が 12 (自動的勝利) であるのは内 36 種です。詰まり、差が 9 以上である時の判定成功率は 36/1296 = 1/36 (2.77…%) となります。乱数を除いた差が 8 になると、出目 11 で目標値を上回れる 2 種を加えて 38/1296 = 19/648 (2.932…%) となります。

このようにして考えていくと、成功率のパターンは以下の 20 種に限定されることが分かります。※表中の [差] は例で言う「乱数 2D6 を除いた達成値と目標値の差」です。左が A、右が B の評価式を用いて考えた時の差になります。

成功パターン × 百分率 ÷ 賽子 4 個成功率 (%)
1091,260× 100 ÷ 1,296 =97.222…
981,25897.06790…
871,25196.52777…
761,23595.29320…
651,20592.9783950…
541,15589.120…
431,08083.333…
3298075.6172…
2185866.20370…
1072055.555…
0 -157644.444…
-1 -243833.7962…
-2 -331624.38271…
-3 -421616.666…
-4 -514110.87962…
-5 -6917.02160…
-6 -7614.706790…
-7 -8453.47222…
-8 -9382.9320…
-9-10362.777…

以上を踏まえ、冒険者レベルと判定レベルの差が 0 の時の適性値ごとの成功率を、CardWirth, HSP, JavaScript で試行させたもの、計算して出したものと 4 つ並べます。※適性値 1pt 辺りの試行回数は CardWirth と HSP が100,000 回、JavaScript が 1,000,000 回です。CardWirth と HSP の分は随分前のものなので一部統計が不足しています。計算して出した成功率は、小数部を私感で適当に省いています。

適性値CardWirthHSPJavaScript計算
29pt--97.2104%97.2%
28pt--97.2114%97.2%
27pt--97.2138%97.2%
26pt--97.2211%97.2%
25pt--97.2364%97.2%
24pt--97.229%97.2%
23pt--97.2151%97.2%
22pt--97.0445%97%
21pt--97.0603%97%
20pt--96.5335%96.5%
19pt96.464%96.569%96.5244%96.5%
18pt95.241%95.210%95.2712%95.3%
17pt95.298%95.313%95.2649%95.3%
16pt93.014%92.985%92.9485%92.98%
15pt92.908%93.000%92.9792%92.98%
14pt88.97%89.105%89.1388%89%
13pt89.269%89.239%89.0912%89%
12pt83.464%83.370%83.3814%83.3%
11pt83.261%83.337%83.3361%83.3%
10pt75.791%75.659%75.6385%75.6%
9pt75.559%75.444%75.6141%75.6%
8pt66.277%66.238%66.239%66.2%
7pt66.174%66.149%66.2684%66.2%
6pt55.468%55.604%55.5173%55.56%
5pt55.928%55.450%55.6168%55.56%
4pt44.393%44.654%44.4626%44.44%
3pt44.737%44.569%44.4084%44.44%
2pt33.593%33.760%33.8185%33.8%
1pt34.296%33.711%33.7494%33.8%
±0pt24.418%24.461%24.3822%24.38%
-1pt24.336%24.315%24.3786%24.38%
-2pt24.477%24.432%24.4279%24.38%
-3pt16.955%16.768%16.6851%16.67%
-4pt16.669%16.495%16.6687%16.67%
-5pt--10.9003%10.9%
-6pt--10.8283%10.9%
-7pt--6.997%7%
-8pt--7.0052%7%
-9pt--4.6594%4.7%
-10pt--4.674%4.7%
-11pt--3.4879%3.47%
-12pt--3.4839%3.47%
-13pt--2.9562%2.93%
-14pt--2.9405%2.93%

評価式と表の何方からも分かるように、冒険者レベルは 1 レベル 辺り適性値 2pt に等しいと言えます。また、概ね 2pt 間隔で成功率が変化していっているのに、±0~(-2)pt の 3pt 間で結果が動いていないのは、達成値側の式の冒頭の "(1 + ..." で結果がズレ込むのと、商の余りが切り捨てられる為です。

1 + 適性値 0pt → 1 ÷ 2 = 0.5 → 0
1 + 適性値 (-1)pt → 0 ÷ 2 → 0
1 + 適性値 (-2)pt → (-1) ÷ 2 = (-0.5) → 0

レベルや必要能力の組み合わせの違いで結果が変わるか否かも調べましたが、有意な差は見られませんでした。純粋に数値だけを見て評価しているようです。例えばレベル差が 0 であれば、冒険者レベルと判定レベルが 1-1 であろうが 7-7 であろうが、他の要素に違いがない限り同じ結果が出ます。筋力 5 と好戦性 +2 での判定と、知力 6 と狡猾性 +1 での判定の結果も同様です。

最後になって話がややズレますが、効果コンテントを用いて取った回避・抵抗率の統計の比も以上の結果と一致しています。詰まり、回避・抵抗判定の際にも先の式が使われ、達成値/目標値の一方に攻撃側のレベル及び使用カードが要求する適性の値が、もう一方に防御側のレベル及び回避・抵抗適性 (敏捷度 + 慎重性 or 精神力 + 勇猛性) の値が使われるのではと予想されます。

以上。お役に立てば幸いです。

余談 :
TRPG に就いて浅学故、用語に関する誤解をしていました。「自動的成功」と「自動的失敗」の部分です。以前のサイトに上のトピックを載せていた時は「クリティカル」と「ファンブル」と表していました。が、これらは大成功・大失敗を指すのであって、自動的成功/失敗とはまた異なるのだそうです。今更ながら失礼しました。

2011-6-17 コメント返し (同日 19:06 追記)

コメント返し

> 回避率と...

多分、CardWirth の回避力 (敏捷度と慎重性の合計値) を、レベル差、回避力修正値、敵 (には限らないけど) のカード適性を絡めて確率値に直す式を知りたいというご質問だと思うのですが、申し訳ないのですが私は正確な所は知りません。その手の質問に答えてくれそうな所と言うと、首藤様が運営されている「しなさくコム」の制作質問版 (CW質問板) が思い当たります。情けない返答なのですが、そちらを当たってみてください。直接のお力になれず、ごめんなさい。

> 旧サイトで...

以前に解析ページに挙げていた中で、それっぽいのがあったとするなら「防御修正への適性の影響力」と「能力判定の数式」の 2 項目です。

前者に就いては、それを回避率と記憶違いされているのではないかという意味で挙げています。

後者に関しては、記事の最後に「尚、効果コンテントを用いた回避力 (敏捷度 + 慎重性)・抵抗力 (精神力 + 勇猛性) の判定成功率の統計の比も、以上と殆ど一致しています。数式自体は同じ物を用い、B の判定レベルは敵レベルに、同じく B の適性値 4 は敵の使用カードの適性値で代替した物を使っていると思われます。(原文ママ)」と書いています。ですが、その予測に過ぎない一文だけであり、実際の回避率を割り出す為の (況してや回避力修正値や回避力ボーナス/ペナルティを絡めた) 式等は書いていませんし、知りません。

その能力判定の記事のことで良ければ (数日もらいたいのですが) 次の note のトピックとして上げておきますが、如何でしょうか (後、もしかしたら当日中には拍手もといコメントを連続しては送れないかもしれません。その際はお手間を掛けて申し訳ないですが一日置いてみてください)。

また、少し前にも何方か拍手を送ってくださっていたようで。(サイトの再マークアップをしたくらいで) 長くコンテンツを更新していなかったので拍手が来ているとは思わず見逃していました。遅くなりましたが、ポチッと押していただきありがとうございました。