☆ Native EditorID Fix [バグフィックス] ID:85260 Author:Kitsuune 2024-04-09 03:47 Version:1.2.2
- RATE: ★=262 G=2 [DOWNLOAD SITE]
-
TAG: [SKSEプラグイン] [バグフィックス] [問題解決] [バグ修正] [SKSE64]
Native EditorID Fix
EditorID ルックアップ機能の追加・拡張とエンジンの文字列フォーマットをより安全にする SKSE プラグインです。
-------------------------------------------------------
注:
現在、このModとSimple Dual Sheathのバージョン1.5.7を導入した環境では二刀流での抜刀時に左手武器が納刀されたままで左手に表示されなくなります。
この現象が発生した場合はSimple Dual Sheathのバージョン1.5.6のものを使用するかNative EditorID Fix側のiniの方で
ExcludeEditorIDFromNodeNaming = false
と設定すると解消できます。
-------------------------------------------------------
■概要
この MOD は EditorID とフォームの間の完全なルックアップ機能を実装し、エンジン自身がその利点を最大限に活用できるようにします。コンソールコマンドで EditorID を使えるようにするだけでなく、ゲーム側で逆に EditorID を調べることもできるようになります。この結果、コンソールの help コマンドやログに FormID だけでなく EditorID も出力され、あたかもそれらが最初からエンジンに読み込まれていたかのようになります。
これに加えて、この MOD はいくつかの文字列フォーマット呼び出しのバッファオーバーフロー/ランによる CTD の可能性も修正します。
■前提
・Skyrim Script Extender (SKSE64) https://skse.silverlock.org/
・Address Library for SKSE Plugins
■機能詳細
・フォームを EditorID でネイティブにクエリできるようにする
これはpowerofthree's Tweaks のような MOD ですでに可能でした。この MOD の主な違いは、スキップされたすべてのフォームをカバーするために1つだけのフックを必要とする実装であることです。オブジェクト参照(および拡張によるアクター)は別途修正する必要がありましたが、要求されたときに正しい EditorID を返すようになりました。
・EditorID をフォームからネイティブにクエリ可能にする
これまでは外部からの問い合わせしかできませんでした。この修正では、代わりにネイティブルーチンを修正し、Skyrim 自身が新しく利用可能になった EditorID を利用できるようにします。さらに、エンジンの文字列キャッシュシステムと、カスタムルックアップテーブル構造を再利用し、メモリ使用量をかなり削減することができました。私は、以前のアプローチと比較して、適度に改造されたセットアップで、最大 100MB の無駄なメモリを削減することができましたが、あなたの評価は異なるかもしれません。
・オーバーフロー/ランを修正し、より安全な文字列書式を実現
これは、バッファサイズを指定する必要のない古い非 C 標準の vsprintf 呼び出しによって引き起こされました。その前に入力をチェックする限り、通常は問題にはなりませんが、かなりの数のケースでチェックが行われず、例えば過度に長い EditorID は CTD を引き起こしたり、他の方法でスタックを破損させる可能性がありました。これを避けるために、この修正では影響を受ける vsprintf コールに最大バッファサイズを供給し、最初のロード中に過度に長い EditorID をカットします。
上記ほぼ機械翻訳ですがあまりユーザにとっては意味のない内容だと思ったので、
作者が POSTS に投稿していた内容も書いておきます。
ユーザーにとって、この mod は 3 つの主なものを追加します。
1. コンソールコマンドを入力するときに、FormID の代わりに EditorID を使用する
2. オブジェクトとアクターの参照 ID の検索を含む、help コマンドを使用した EditorID の検索。 私のKreatEなどのMODでは、FormID にアクセスする代わりに、これを使用して画面上にすべてをより美しく表示することができます。
3. 非常に長い名前に遭遇したときに問題になる可能性がある、潜在的に危険なフォーマット呼び出しを修正しました。Skyrim Special Edition Nexus, Kitsuune. 9 Apr 2024. Native EditorID Fix. 20 Feb 2023 <https://www.nexusmods.com/skyrimspecialedition/mods/85260>.スポンサーリンク
スポンサーリンク
上記説明は古い又は異なる場合があります。導入の際はDescriptionを確認の上、自己責任でお願いします。
説明はどなたでも編集する事が可能です、古い又は異なる場合は編集にご協力をお願いします。
To users except in Japan - コメントコメントだけでも投稿できます。気に入ったMODはNEXUSでもENDORSEしましょう。
[Spoiler]テキスト[/Spoiler]とする事で隠しテキスト、#や>>後、半角数字でアンカーを使用可。 -
-▼ Version : 1.2.0#3名無しGood!SKSEプラグイン!いいクスリです! ID:M1ZjIzNW Day:0 Good:0 Bad:0
- Good
- Bad
- 85260
▼ Version : 1.1.1#1名無しGood!コンソールコマンドにEditorIDが使用可能=追加したMODのレコードを使用したい場合でもMODのロードオーダーに縛られなくなるので、Console Binderの利便性も大幅に向上します。
あとespファイルを編集する方向けの小ネタですが、日本語キーボードの場合そのままではコンソールメニュー等で「‗(アンダーバー)」や「~(チルダ)」が打てないので、EditorIDを編集する時にそれらの使用を避けておいた方が後々楽かもしれません…(1敗) ID:QzYTRhMD Day:0 Good:1 Bad:0- Good
- Bad
- 85260
- 機械翻訳 説明引用 [原文]
「エディターIDルックアップ機能を追加拡張し、エンジンの文字列フォーマットをより安全にするSKSEプラグイン」
スポンサーリンク
スポンサーリンク