------------------------------------------------------- CardWirthスポイラー PCの遺伝情報について by wanderer7 ------------------------------------------------------- クーポン「@Gxxxxxxxxxx-0」のxxxxxxxxxxの部分が10bitsの遺伝情報である。 左のビットから順に、g0, g1, ..., g9とし、 g0 標準 g1 万能 g2 勇将 g3 豪傑 g4 知将 g5 策士 g6 (隠し) g7 英明(知将・策士の上位型) g8 無双(勇将・豪傑の上位型) g9 天才(標準・万能の上位型) のように各型に対応させる。 子供の遺伝情報は ・母親の遺伝情報のg0〜g6を0〜6ビットだけ[*1]ローテートする ・父親の遺伝情報と母親の遺伝情報の排他的ビット和を取る ・PC作成の際選択した型(標準型, etc.)に対応するビットを反転する ことによって算出する。ただし、算出した子供の遺伝情報が次の条件を満たす時には 特殊型を誕生させ、遺伝情報を変化させる。 (当てはまる条件が複数あるときは、番号の若い物を優先する) (1)g0〜g9が全て'1'のとき 神仙型にし、遺伝情報を0000000000にする。 (2)g0〜g6が全て'0'のとき 凡庸型にし、遺伝情報を0000001111にする。 (3)g0〜g6が全て'1'のとき (i)g7〜g9が全て'0'のとき 選択した型に対応する上位型にし、その上位型のビットを反転する。 (ii)そうでないとき 英雄型にし、全ビットを反転する。 (4)g0〜g6に'1'が6つあるとき (i)g7〜g9に'1'が1つ以下のとき 選択した型に対応する上位型にし、その上位型のビットを反転する。 (ii)g7〜g9に'1'が2つ以上のとき 英雄型にし、全ビットを反転する。 [*1] ローテートするビット数は、新しいPCを作成するたびに、 右に0, 4, 1, 5, 2, 6, 3, (最初に戻る)の順で変化する様である。 「特殊型を作成する際、父親か母親を変えた後連続7回作成する」のはこのため。 例: 父*母 (型の選択) 子供 0111111000*0000000011(標準) 1111111011 → 0000000100(英雄) 0111111000*0000000110(標準) 1111111110 → 0000000001(英雄) 1100000000*0001111000(勇将) 1111111000 → 1111111010(無双) 0110111000 0010011000 0000001000 0001000000 1001100000 1101110000 0111111001*0000000110(標準) 1111111111 → 0000000000(神仙) 1011001000*1100100000(標準) 1111101000 0101011000 0000000000 → 0000001111(凡庸) 1010101000 0111111000 0001010000 1010000000 新規作成PCの遺伝情報の例: (標準) 1000000000 1000010000 1000100000 1000110000 1001000000 1001010000 1010000000 1010010000 1010100000 1011000000 1100010000 1100100000 1101000000 1110000000 1001001000 1000001000 (万能) 1100001000 0110000000 0100101000 0101100000 0101001000 1110000000 0101010000 (勇将) 1011000000 0010001000 1010100000 0010010000 0010010000 0110100000 0011001000 (豪傑) 0101010000 1001001000 0001000000 0001010000 0001001000 1101000000 0001011000 (知将) 1000101000 0110100000 0110100000 0010101000 0100110000 0000111000 0000100000 (策士) 0000010000 0000110000 0000111000 0001110000 0010110000 0100010000 0100110000 0101010000 1100010000 [EOF]