真・三國無双3の護衛兵の全成長パターンを検証して最強黄龍を得る

概要

何故、今更こんな無駄な時間を。。

真・三國無双3で設定できる護衛兵は、戦場に連れていく5種の兵科によってレベルアップ時の能力上昇量に差があり、護衛レベル20での最終能力や称号が変わってきます。特に最強の称号である黄龍に到達するためには限られた組み合わせを見つける必要があり、さらにその中でも最強を目指すのはデータを眺めるだけでは難しいものがあります。

そこで本記事では、護衛兵の全成長パターン(8855通り)を検証して最強の黄龍護衛兵を得るための兵科の選択方法を検討しました。すぐに結果を見たいという方は以下のcsvに全育成パターンとその時の能力・称号を記載しておりますのでこちらをご覧ください。

musou3_goei_all_pattern.csv (286 ダウンロード)

添付ファイルの内容抜粋(文字コードはshift-jis)

なお、護衛兵に関する各種設定に関しては、以下サイト様の情報を使わせていただいております。
http://kodwfpf.br.tripod.com/musou3/musou008.html

いろいろトップテン

いくつかの視点からのトップ10を記載します。なお、称号は黄龍>玄武>白虎>青龍>朱雀>修羅の優先としています。

総合能力

全称号トップ10

最大能力は668。意外にも玄武だけで黄龍はいません。攻撃力は全体的に低めです。これは攻撃力の上昇の大きい戟兵の能力上昇量が他と比べて低いこと、次に大きい弩兵は防御上昇がカンストして無駄になってしまうことが原因と考えられます。

体力無双攻撃防御合計称号
13303024023098100668玄武
9703023623498100668玄武
12403023923198100668玄武
61003023323798100668玄武
31303023024098100668玄武
11503023823298100668玄武
7903023423698100668玄武
41203023123998100668玄武
51103023223898100668玄武
10603023723398100668玄武
8803023523598100668玄武

黄龍トップ10

最大能力は665。トップ条件ではいずれも黄龍の条件である攻撃力110以上を満たすために戟兵が6回、守備力がカンストしない範囲で能力上昇の大きい弓兵が6回、残りを剣兵か槍兵で選ばれています。深く考えなければこの構成でも良さそうです。

体力無双攻撃防御合計称号
34660230225110100665黄龍
52660232223110100665黄龍
25660229226110100665黄龍
70660234221110100665黄龍
61660233222110100665黄龍
16660228227110100665黄龍
07660227228110100665黄龍
43660231224110100665黄龍
51670232222110100664黄龍
32770230222112100664黄龍

朱雀トップ10

最大値は667。剣兵を13回以上使っている点が共通しています。攻撃力が少し低めです。

体力無双攻撃防御合計称号
13213024022810099667朱雀
40202402319898667朱雀
1430202402309898666朱雀
13123024022610298666朱雀
1420212402289999666朱雀
1350102402329896666朱雀
312024022910097666朱雀
14113024022710099666朱雀
2124022610198665朱雀
023024022510298665朱雀

青龍トップ10

最大値は667。槍兵を多く採用し、朱雀と体力と無双を入れ替えたような能力です。

体力無双攻撃防御合計称号
11413022824010099667青龍
4130202312409898667青龍
5130102322409896666青龍
3140202302409898666青龍
21412022924010097666青龍
0212282409999666青龍
01513022724010099666青龍
2122624010198665青龍
4140102312409896665青龍
31411023024010095665青龍

白虎トップ10

最大値は662。能力上昇の低い戟兵を8回~採用する必要があるため、総合能力は他と比べてやや低めです。

体力無双攻撃防御合計称号
3097023021811599662白虎
186122921911599662白虎
1386122722111599662白虎
4086123021811599662白虎
0397022722111599662白虎
2286122822011599662白虎
0486122622211599662白虎
1297022822011599662白虎
2197022921911599662白虎
0496022722211597661白虎

玄武トップ10

総合トップ10がすべて玄武だったので省略。

修羅トップ10

最大値は667と黄龍よりも高い。不幸にしてこのようなステータスにならないよう育成には気を付けたいですね。

体力無双攻撃防御合計称号
21313022923910099667修羅
41113023123710099667修羅
9613023623210099667修羅
6913023323510099667修羅
980202362359898667修羅
5120202322399898667修羅
1013023223610099667修羅
11413023823010099667修羅
6110202332389898667修羅
12313023922910099667修羅

体力+攻撃+防御

三國無双3では無双は成長させない戦略があり、無双以外で評価した場合。無双を除いた最大値は445。黄龍にしたい場合は剣5戟7弓7での育成となる。

体力無双攻撃防御合計称号
40870231219114100445玄武
30880230219114100444玄武
6076023322011299444修羅
5086023221911498444修羅
770232220112100444黄龍
61231219113100444玄武
4086123021811599444白虎
30871229218115100444玄武
97023021811599444白虎
70660234221110100444黄龍

攻撃最大縛り+総合評価

攻撃は最大値でなければ、という人のためのランキング。最大値は662。黄龍にするにはいくつかの組み合わせがある。

体力無双攻撃防御合計称号
03871226221115100662黄龍
3186122921911599662白虎
02980227220115100662黄龍
11980228219115100662玄武
2871227220115100662黄龍
386122722111599662白虎
4086123021811599662白虎
0397022722111599662白虎
20980229218115100662玄武
30871229218115100662玄武

攻撃最大縛り+除無双

上2つを組み合わせたランキング。無双を除いた最大値は444。黄龍の最大は442で育成は槍2戟9弓8。

体力無双攻撃防御合計称号
20980229218115100444玄武
4086123021811599444白虎
3097023021811599444白虎
871229218115100444玄武
2197022921911599443白虎
40753228217115100443玄武
3186122921911599443白虎
11980228219115100443玄武
30862228217115100443玄武
10990228218115100443玄武
4096023121811597443白虎
5085123121811597443白虎
20881228218115100443玄武
971228217115100443玄武
1871228219115100443玄武
101080228217115100443玄武
20107022921711598442白虎
4085222921711598442白虎
02980227220115100442黄龍
09100227218115100442玄武

体力・防御最大縛りで攻撃最大

生存を高めるために体力と防御を最大にして攻撃力を最大まで高めるケース。体力最大にする条件が厳しく、攻撃力は102までしか上がらない。

体力無双攻撃防御合計称号
130240240225102100667玄武
140131240225101100666玄武
131140240227100100667玄武
150022240225100100665玄武
130150240226100100666玄武
140140240226100100666玄武
15003124022699100665玄武
14004124022699100665玄武
103124022799100666玄武
203024022998100667玄武

まとめ

もし、これから真・三國無双3をやる方がおられれば、、、最強の護衛兵を得る参考にしてみてください!

Pythonコード

参考として、上記解析をするためのPythonコードを記載します。

import pandas as pd
idx = pd.IndexSlice
import numpy as np
import itertools

#各兵種の能力上昇
df_growth = pd.DataFrame(index=["体力", "無双", "攻撃", "防御"], columns=["剣", "槍", "戟", "弓", "弩"],
                         data=[[4, 3, 3, 3, 2],
                               [3, 4, 2, 3, 2],
                               [2, 2, 4, 2, 3],
                               [1, 1, 0, 3, 2]])

#全組み合わせを抽出
#組み合わせの考え方参考:https://mathtrain.jp/tyohukuc
a = np.arange(23)
comb = np.array(list(itertools.combinations(a, 4)))
#各兵種を何レベル上げるかのテーブル
levelup = np.concatenate([comb[:, [0]], comb[:, 1:] - comb[:, :-1] - 1, a.max() - comb[:, [-1]]], axis=1)
#データフレームに
df_levelup20 = pd.DataFrame(columns=df_growth.columns, data=levelup)
#能力上昇量を設定
df_parameter20 = pd.DataFrame(columns=df_growth.index, data=np.dot(df_levelup20, df_growth.T), 
                            index=pd.MultiIndex.from_frame(df_levelup20))

#黄龍にするためにはレベル19時点で修羅意外になっている必要がある。
a = np.arange(22)
comb = np.array(list(itertools.combinations(a, 4)))
levelup = np.concatenate([comb[:, [0]], comb[:, 1:] - comb[:, :-1] - 1, a.max() - comb[:, [-1]]], axis=1)
df_levelup19 = pd.DataFrame(columns=df_growth.columns, data=levelup)
df_parameter19 = pd.DataFrame(columns=df_growth.index, data=np.dot(df_levelup19, df_growth.T), 
                            index=pd.MultiIndex.from_frame(df_levelup19)).add([170, 170, 60, 75])
df_parameter19["称号"] = "修羅"
df_parameter19.loc[df_parameter19["体力"] >= 240, "称号"] = "朱雀"
df_parameter19.loc[df_parameter19["無双"] >= 240, "称号"] = "青龍"
df_parameter19.loc[df_parameter19["攻撃"] >= 115, "称号"] = "白虎"
df_parameter19.loc[df_parameter19["防御"] >= 100, "称号"] = "玄武"
#修羅意外になれる条件
c_index = df_parameter19.loc[df_parameter19["称号"]!="修羅"].index
#level20のindexに紐づける
c_flag = pd.Series(index=df_levelup20.index, data=0)
for i in range(c_index.shape[0]):
    print(i)
    c_flag = c_flag.add(df_levelup20.sub(c_index[i]).min(axis=1) >= 0)
c_flag.index = df_parameter20.index

#初期値や能力上限を考慮してパラメータ算出
df_parameter_limit = np.minimum(df_parameter20, [70, 70, 55, 25]).add([170, 170, 60, 75])
#合計値を定義
df_parameter_limit["合計"] = df_parameter_limit[["体力", "無双", "攻撃", "防御"]].sum(axis=1)
#df_parameter_limit["合計"] = df_parameter_limit[["体力", "攻撃", "防御"]].sum(axis=1)

#称号を設定
df_parameter_limit["称号"] = "修羅"
df_parameter_limit.loc[df_parameter_limit["体力"] == 240, "称号"] = "朱雀"
df_parameter_limit.loc[df_parameter_limit["無双"] == 240, "称号"] = "青龍"
df_parameter_limit.loc[df_parameter_limit["攻撃"] == 115, "称号"] = "白虎"
df_parameter_limit.loc[df_parameter_limit["防御"] == 100, "称号"] = "玄武"
df_parameter_limit.loc[((df_parameter_limit["体力"] >= 220) & (df_parameter_limit["無双"] >= 220) &
                        (df_parameter_limit["攻撃"] >= 110) & (df_parameter_limit["防御"] >= 100) &
                        (c_flag >= 0)
                        ), "称号"] = "黄龍"

6 thoughts on “真・三國無双3の護衛兵の全成長パターンを検証して最強黄龍を得る

  1. 栗田十八番

    20年越しのガチ護衛兵考察サイトがあるとは… 感服の一言に尽きます
    実際にいくつか試してみましたが、体力・防御MAX+攻撃最大レシピの称号は玄武ではなく、朱雀になりました。おそらくは、最後の成長に剣を使ったかもしれませんが… 一応確認できたので記しておきまする(意味あるかどうかはわからない…汗)

    Reply
    1. Rosyuku Post author

      試していただき、また情報もありがとうございます!笑
      同時に2つの称号を満たす際は優先されるものがある(同時に朱雀と玄武なら朱雀)ということなんですね。
      マニアックな知識ですね笑

      Reply
  2. 三國無双大好きさん

    何故、今更こんな無駄な時間を。。

    ↑素晴らしく有用な時間だったと思います笑
    これで最強の黄龍作ります!ありがとうございます!

    Reply
    1. Rosyuku Post author

      そういっていただける方がいてくださって嬉しいです笑
      護衛兵の訓練頑張ってください!

      Reply

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA