名前相性 · 無料

二つの名前の相性は
どのくらい?

二つの名前を順序に左右されない固定ハッシュに変え、遊び用の相性スコア、強み、注意点を作ります。二人の実際の性格や相性を計算する機能ではなく、入力はどこにも送信されません。

この結果の出し方

点数は名前の綴りから作っています

この画面が返す数字は、お二人の性格や関係を調べて出したものではありません。材料は入力された二つの名前の文字列だけで、そこから先は決まった手順の計算です。まず両方を小文字にし、前後の空白を落とし、間の空白は一つにまとめます。次に二つを決まった順序で並べ替え、縦棒でつないで一本の文字列にします。

その文字列を一文字ずつ数に混ぜ込んで、三十二ビットの整数を作ります。コードで FNV-1a と呼んでいる手順です。出てきた数を種として小さな乱数生成器を回し、最初に取り出した値で点数を決めます。式は「40 + (0以上1未満の値 × 60 の小数切り捨て)」ですから、点数は必ず40から99の間に入ります。

同じ二人なら何度でも同じ、順番を変えても同じ

並べ替えを先に済ませているので、一つ目の欄と二つ目の欄を入れ替えても、種になる文字列は変わりません。大文字小文字や余分な空白も先に落としているので、これも結果を動かしません。乱数の種は時計でもその日の日付でもなく、この文字列だけです。だから同じ二つの名前なら、明日入れても、別の端末で入れても、同じ点数が出て、一覧の同じ位置が当たります。画面に並ぶ文字は、その位置の文をいま表示している言語で出したものですから、言語を切り替えれば文面は変わりますが、選ばれているものは変わりません。

裏返すと、一文字でも違えば混ぜ込む数が変わり、種はまったく別の値になります。愛称と本名、それに同じ名前を別の文字で書いたものは、この画面にとってはどれも別の入力です。どちらかが「正しい」名前だからではありません。名前は40文字で切られるので、それより長い場合は先頭の40文字だけが材料になります。

文章はどこから来るのか

うまく噛み合う点、気をつけたい点、ケミストリーの一語は、その場で書いているものではありません。あらかじめ三言語で書いておいた一覧から、点数を決めたのと同じ乱数生成器が続けて引いています。引く回数も順番もコードに書いてあり、点数を出したあと、強み・注意点・ケミストリーの三回だけです。

点数の下に出る見出しは引いていません。点数がどの帯に入ったかだけで決まります。帯の名前(「運命の絆」など)、見出しの下の説明文、いちばん下の「会話につなげる」と「この結果の作り方」の二つの囲みも同じで、帯ごとに一通り、つまり四通りずつ先に書いてあるものをそのまま出しています。別のお二人でも、帯が同じならここは一字一句同じです。

帯は四つあり、90以上・75以上・60以上・それ未満に分かれています。点数は40から99の六十通りですから、帯の幅は上から順に十・十五・十五・二十。いちばん下の帯(40から59)がいちばん広い配分です。

一覧に入っているのは、強みが八通り、気をつけたい点が八通り、ケミストリーの語が十通り。読んで思い当たったとしても、それは八つのうちの一つが出ただけで、お二人を見てから選んだ文ではありません。

これはハッシュであって、命式ではありません

40という下限は、私たちが決めた数字です。式は「40 + (0以上1未満の値 × 60 の小数切り捨て)」で、幅そのものは六十通り。その頭に40を足しているだけです。この40を外せば、同じ式は0から59を返します。誰かに39点を言い渡す画面にしたくなかったからで、計算上の必然ではなく選択です。隠さずここに書いておきます。裏を返せば、この数字は測定として読めません。下を持ち上げた物差しは、物差しではないからです。

結果のカードには、いちばん上に札が付きます。札は「計算」「韓国の伝承」「お楽しみ」の三種類で、この画面に割り当ててあるのは「お楽しみ」です。書き留めてある規則が決めるのは一番上の札についてで、実装を開いてみて命式を読んでいなければ「計算」とは呼ばない、というものです。生年月日も時刻も伺っていない以上、この画面は名前の綴り以上のことを知りません。

ですから、出た数字を関係の良し悪しとして受け取らないでください。二人で読んで、当たっている所と外れている所を言い合うための話の種です。結果の下に毎回同じ断り書きが付くのも同じ理由です。命式から出す鑑定は、生年月日と時刻を伺う別の画面で行っていて、その規則は下のリンクにまとめてあります。

命式を使う鑑定のほうで、どんな規則を公開しているかを読む