☆ Baka MaxPapyrusOps [バグフィックス] ID:73774 Author:shad0wshayd3 2024-05-09 22:46 Version:2.0.1
- RATE: ★=283 G=3 [DOWNLOAD SITE]
-
TAG: [F4SE] [パッチ] [パフォーマンス]
Baka MaxPapyrusOps
Fallout4もPapyrusの1タスクあたり100稼働というビルトイン制限を共有しています
このMODはSkyrim SE のMod、[Skyrim SE]Papyrus Tweaks NG から上記に関連するパッチを移植したものです
このパッチにより制限を変更すると、スクリプトの処理パフォーマンスが改善するかもしれません
Papyrus Tweaks NG の説明を引用
**** Papyrusエンジンは、2011年当時の平凡なPCでも動くように設計されていました。
これはSkyrim SEでアップデートされることはなかった。そのため、Papyrusは1タスクあたりの演算回数が100に制限されています。現在のPCであれば、フレームレートに顕著な影響を与えることなく、この数値をはるかに高く設定でき、潜在的にはるかに高いパフォーマンスを発揮します ****
デフォルトでは500(バニラの5倍)に設定されていますが、BakaMaxPapyrusOps.toml のMaxPapyrusOpsPerFrameから任意の値に設定できます。メモ帳などのテキストエディタで開いてみましょう。
値を大きくすると全体のフレームレートに若干の影響を与えますが(古いマシンでは大きくなります)、Papyrusスクリプトのパフォーマンスは顕著に向上するはずです
※注意
環境によってはVATS使用時にフリーズが多発する事例が報告されています。
その場合、BakaMaxPapyrusOps.toml内のFixToggleScriptsCommandをfalseに変更することで回避可能と報告されています。
■最適化設定
A StoryWealth - F4SE Settings
- FixScriptPageAllocation = false
- MaxPapyrusOpsPerFrame = 2000Fallout4 Nexus, shad0wshayd3. 9 May 2024. Baka MaxPapyrusOps. 11 Aug 2023 <https://www.nexusmods.com/fallout4/mods/73774>.スポンサーリンク
スポンサーリンク
上記説明は古い又は異なる場合があります。導入の際はDescriptionを確認の上、自己責任でお願いします。
説明はどなたでも編集する事が可能です、古い又は異なる場合は編集にご協力をお願いします。
To users except in Japan - コメントコメントだけでも投稿できます。気に入ったMODはNEXUSでもENDORSEしましょう。
[Spoiler]テキスト[/Spoiler]とする事で隠しテキスト、#や>>後、半角数字でアンカーを使用可。 -
-▼ Version : 2.0.1#19名無しBuffout 4 NG with PDB supportの方にもコメントしてますが、Buffout 4 NG with PDB supportを入れている場合はBuffout側の設定で置き換えますのでこのMODはインストール不要、かつ設定変更はBuffout側で行う必要があるので注意が必要です(無印版のBuffout4を使っている場合はこれまで通りこのMODが必要です) ID:FkOTQzMT Day:2 Good:0 Bad:0
- Good
- Bad
- 73774
#18名無し#17 間違えて古いバージョンを入れた後に新しいバージョンで上書きした(おそらく)のですが、そのせいでtomlが残っていただけのようでした。ありがとうございました。 ID:FkOTQzMT Day:0 Good:0 Bad:0- Good
- Bad
- 73774
#17名無し#16
1.1.0までに同梱されているのはtomlで、
2.0.1に同梱されているのはiniだから、iniを読むソースになっているのでは? ID:Q1MTA1MG Day:992 Good:0 Bad:0- Good
- Bad
- 73774
#16名無し設定がiniとtoml両方にあるけどどちらを書き換えればいいんだろう。nexusにはtomlを書き換えろと書いてあるけど、githubのソースだとiniの方しか読んでないっぽいんだよなぁ ID:FkOTQzMT Day:29 Good:0 Bad:0- Good
- Bad
- 73774
#15名無し11さん参考になった。
ありがとうね。試してみます。 ID:E4NDk0Y2 Day:434 Good:0 Bad:0- Good
- Bad
- 73774
#14名無しこのMODを導入したのですが、最初 F4SE's launcher. REL/Relocation.h(600): Failed to open: Data/F4SE/Plugins/とエラーが出て
Fo4自体起動できなかったのですが、Address libraryのバージョン変えたらいけました。 ID:VmYzE3YW Day:24 Good:0 Bad:0- Good
- Bad
- 73774
#13名無し素人でゲーム内でどれだけのスクリプトが実行されてるかは分からないのですが、このModのデフォルトが500だったり他Modの最適化設定が2000だったりするのを見るに、ある程度以上になると順番待ちしてるスクリプトの方が尽きてPC側でどれだけ大口広げて待ち構えてても同じ(良くも悪くもならない)って認識で良いんでしょうか
ゲーム側のPCに対する手加減をどれだけ外すかみたいな ID:lmNWE2Mj Day:38 Good:0 Bad:0- Good
- Bad
- 73774
#12名無し例え1フレーム内で10000の命令を処理できるCPUだったとしてもこのModで制限を解放しない限りは100の命令を処理できるCPUと同じ程度しか命令処理できないから
余程昔のPCでもなければ絶対入れた方が良いMod ID:Y3YjQxMz Day:558 Good:2 Bad:0- Good
- Bad
- 73774
▼ Version : 1.1.0#11名無しGood!9です
コメント後にMaxPapyrusOpsPerFrame = 10000でクエストをこなしたり戦闘したりとプレイしましたがCTDやスタッタリングもなく問題なしです。
ただFixToggleScriptsCommandをtrueでプレイしていたところ、これまで1度も起きたことがないvatsでのフリーズが起きたのでfalseに変えてその後はフリーズなし
あくまで個人の感想ですが、ほぼバニラ環境なら初期値の500(バニラでも拠点の人数増えた時の挙動改善など導入した方が良いと思います)、NPCや敵を増加させてるなら推奨値の2000。そこからさらに敵AIを賢くしたりも追加してるなど、よりscriptをもりもり使う環境では適正値はもう少し上にあるのでは?と推測します
他のコメントに少しだけ触れてあったロード時間に関しては実験でmod無し、MaxPapyrusOpsPerFrameを初期値の500、2000、10000でそれぞれ5回ずつ計測しましたが有意な差は無いと思われます。
ちなみに漢の夢の100000、それからバニラにこのMODだけも1回のみ計測しましたが当然変化なし
以上を踏まえて当方設定は
FixScriptPageAllocation = true
FixToggleScriptsCommand = false
MaxPapyrusOpsPerFrame = 10000
ほぼバニラ環境だったり、現状不満無いよって方も是非導入してみて欲しいです。 ID:M4OTRlNm Day:8 Good:4 Bad:0- Good
- Bad
- 73774
#10名無しGood!SkyrimではなくてはならないModだった・・
一応不具合に関するPOSTを見てきたところ
クラフト後のCTD>Faster Workbench Exitを抜いたら治った
VATSでフリーズ>VATS Freeze Fixで治るかもしれない
などの報告はありますね
Disk Cache Enablerとは相性良い報告も見られました、
こちらはOSのファイルキャッシュを使用する。時間経過とともにディスクアクセスが減少しプチフリがほぼ無くなる。HDDには効果が高い模様 ID:M3ZDQ3ZT Day:212 Good:0 Bad:0- Good
- Bad
- 73774
#9名無しGood!当方CPUはi5-6600。NPCの数を増やすMODが好きなのですが大量に出すとCPU90%越えでも棒立ちのキャラが結構出ます。
CPUがそれなりに古いものなので半ば諦めてましたがこれを入れて(推奨設定MaxPapyrusOpsPerFrame = 2000)MODのSKK Settlement Attack Systemで襲撃の強さ200%で何度か拠点防御やりましたが導入前は後ろが結構サボるというか小隊ごとに攻めてくる感じが全員一斉に攻めてきて戦場感マシマシになりました。
拠点防御の最中に導入しているNPCs Travelのラージグループが通りがかって別方向から攻めてきたり、同じく導入しているZombieWalkersのゾンビの群れが音に誘われて襲撃グループの方に襲いかかったりとカオスになって良きです
NEXUSのPOSTSではMaxPapyrusOpsPerFrameは3000とか4000で問題ないよって方(実験するなら使用してるCPU書いて欲しい…)もいるようなので暇つぶしにわたしも実験的にMaxPapyrusOpsPerFrame = 10000とFixScriptPageAllocationとFixToggleScriptsCommandを共にtrueでしばらくやってみます。数字は上げすぎたところで適正値より好影響はないでしょうが極端な数字で安定性がどうなるのかに興味があるので試してみます。 ID:M4OTRlNm Day:0 Good:3 Bad:0- Good
- Bad
- 73774
#8名無し環境によってはVATSでフリーズする件を追記。 ID:QwMTYyYj Day:212 Good:0 Bad:0- Good
- Bad
- 73774
#7名無し#4
ご丁寧な解説に感謝します。
このMODを入れる必要のある人はどんな人だろう?と思い質問しました。
実際パピルスで実行されるスクリプトを早くするんじゃなくて、同時タスク数を増やして遅延を防止するんですね。
間違ってたら更にごめんなさい。
悪気は無いんです。 ID:JiYmRkZG Day:678 Good:0 Bad:0- Good
- Bad
- 73774
#6名無し[Skyrim SE]Papyrus Tweaks NGに触れたことがないのでMax Operations Per Task(Max Papyrus Ops Per Frame)設定がどれくらい定番なのか分からない。出来れば使い心地についての意見を聞きたいです
#2 試しにFixToggleScriptsCommandをfalseにしてみてもいいかもしれない。(またはFixScriptPageAllocation)
少なくとも問題の切り分けにはなるかと思います ID:FhODFlOT Day:691 Good:0 Bad:0- Good
- Bad
- 73774
#5名無し#4名無し勉強不足なのではなくて単に説明欄を読んでないだけだと思うけど…
この説明欄で分からない人のために特別に超噛み砕いて説明して差し上げます。
※ロード短縮ではないです
このゲームで起きることの多くは「Papyrusスクリプト」というもので制御されてます。
スクリプトというのは「この条件を満たす場合、こういうアクションを起こす」という台本のようなもので、分かりやすく言うとプログラムなんだけどexeに後付けできるのでMODに限らずバニラでもあらゆるところ(クエストイベントや特殊効果など)で使われてます。
Papyrusというのはプログラミング言語の名前なので、とりあえずスクリプトと呼ばれていれば「Papyrusで書かれた後付の台本」のことだと思えばおk
さて、そんな便利な台本ことスクリプトだけどFallout4には一度に100個までしかスクリプトが走らないという仕様があります。
これは特に家庭機版で重くなりすぎないようにするための処置。
イメージで言うならイベントが100個も同時に走ってたらそりゃ重くなるよね?ってことで、101個目以降はすでに走ってる100個のうちどれかが止まるまで順番待ちをします。
この順番待ちしてる台本がたまたまプレイヤーの目に見えるイベントのものだったりするとさぁ大変、プレイヤーの目には「イベントが始まるまで待たされる」という状況が発生します。
この状況が特に発生しやすいのはSim Settlements 2などで、居住地施設のアップグレードがなかなか終わらず工事中のままみたいなことがよく起きます。
このMODはその「一度に100個」という上限を増やしてくれるというもので、初期だと500個まで同時に走るようになるのでそういう待ち時間が減るというもの。
ただしイベントが500個まで同時に走るようになったことで逆にPCのスペックが足りず重くなったりするので多すぎても逆効果、ということ。 ID:I2MTJiY2 Day:1330 Good:1 Bad:0- Good
- Bad
- 73774
#3名無しFPS向上ではなくて、ロード短縮なMODなんですかね。
勉強不足でイマイチ効果が分かりません。 ID:JiYmRkZG Day:677 Good:0 Bad:0- Good
- Bad
- 73774
#2名無しSS2とか、AAFを使うアダルトなアレコレとか単純なロードすら早くなった気がする。ちゃんと確認してないからこれかどうかわからないけど、何かの拍子にCTDが頻発するようになる時がある。ロードするデータをいったん変えてロードしなおすと再開できたりする。
コメントではランダムCTDが起きるようになったとも書いてあるのでそこは覚悟が必要かも。
とりあえず比較的新しいPCを使ってる人は入れてみるといいと思う。
デフォルトでしばらく使ってみたので今度はMaxOpsPerFrameを1000にしてしばらくやってみようと思います。
どこまででかくできるのか確認してみようかな。 ID:BmOTIxOT Day:31 Good:0 Bad:0- Good
- Bad
- 73774
#1名無しGood!説明文読んでも何のこっちゃな方がいらっしゃると思うので、わたしが理解している範囲で説明しますね。
Fallout4で使われているスクリプト言語のpapyrusは、フレームの進行とスクリプトの読み込みがある程度同期するように作られています。要するに、1フレームあたりに処理できるスクリプトからの命令の数に制限がかかっているのです。
この仕様は、昔のスペックが低いパソコンに負荷をかけないために作られたもののようですが、現在のハイスペックなパソコンにとっては足枷でしかありません。
この状況を改善するために、High FPS Physics Fixでは、ロード画面での垂直同期を切ってフレームレート制限を外しているみたいです。1フレームで処理できる命令に限りがあっても、フレームをたくさん増やせば高速化できる、ということですね。
一方、こちらのMODでは、1フレームで処理できる命令の数自体を増やしています。なので、高フレームレートを保たずとも、処理の高速化を図れます。
詳しく知りたい方はこちらも参考になさってください。
→https://w.atwiki.jp/skyrim_mod/pages/…
(何か間違ってたらごめんなさい…) ID:RkZDZkMz Day:2 Good:18 Bad:0- Good
- Bad
- 73774
- 作者(shad0wshayd3)さんのMOD※Authorの検索結果のため別作者さんのMODが表示される場合があります。
- 機械翻訳 説明引用 [原文]
「Papyrus Tweaks NG for Fallout 4 からのいくつかの移植版。」
スポンサーリンク
スポンサーリンク