Jsonファイル編集によるMOD製作

ページ名:Jsonファイル編集によるMOD製作

始めに

MOD製作と言うと職業プログラマーレベルの専門知識が必要に思ってしまうかもしれないが、本ゲームにおいては、なんとメモ帳アプリ1つでMODが作れてしまう。
開発チームのご厚意により、ゲーム内パラメータの多くがjsonファイルという形式で暗号化もせずに置いてある。
これを編集すれば、例えば持久力向上注射器のスタミナ回復ボーナスを増やして、タルコフのようなマラソンができる注射器に変えたり、なぜかショットガンと同じ有効射程に設定されているSMGにピストル程度の射程を持たせるなどといったゲームバランス変更が施せる。


注意事項

  • ゲーム内データを直接変更するので、ミスるとクラッシュしたり、そもそも起動不可能になったりする。
  • 全て自己責任で行う。筆者はこの方法で上手くいったが、読者諸兄が上手くいくことは保証しない。
  • バグ報告や不具合の質問をする権利を放棄すること。トラブルが起こったら再インストールしよう。
  • 後でバニラに戻せるように、以下のどちらかを必ず行う。
    1. バックアップを取る。
    2. NexusModで公開されているGMLoaderおよび、Json Override Frameworkを使用し、元データを直接上書きするのではなく、別データのMODとしてオーバーライドする。
  • jsonファイルなので、メモ帳でも編集できなくはないが、Notepad++やJSON editorのような専用ソフトを推奨。

注射器の性能を変更する。

injector.jsonの数値を調整する。

  • "duration"
    • 効果時間を意味するが、単位は秒ではなくフレーム数。60フレームで1秒となる。
  • "XXX_regen"と名のつくもの
    • 継続回復を意味する。マイナスの値の場合は、継続ダメージとなる。
    • 数値は合計量となっており、これを"duration"で割り算したものが、秒間の変動量となる。
      • 持久力向上注射器の"stamina_regen"は絶対設定ミスだと思う。

プレイヤーの視界を広げる

一応断っておくと、この調整もをもってしても、オーレル先生はプレイヤーの視界外からSVDを撃ってくる。詳しくは後述。

+ 敵は円形の視界を持っているのに、プレイヤーは長方形の視界しか持たない。-

敵は円形の視界を持っているのに、プレイヤーは長方形の視界しか持たない。特に、一部の強敵は最高クラスのスコープで視認できる距離よりも長距離からプレイヤーを狙撃してくるため、多くのプレイヤーの悩みとなっている。

  • 編集するファイルは2つあり、ゲームフォルダ\ZS_vanilla\gamedata\の中にある、weapon_glance_stat.jsonおよび、w_mod.json。

前者は武器カテゴリごとの有効射程や距離による威力減衰などを定義している。
後者はアタッチメントのパラメータが全て載っており、今回は光学アタッチメントを調整する。

値について

  • "default_extend_view"
    • weapon_glance_stat.json内にある。これはアイアンサイトを含む一切のサイト系アタッチメントがついていない場合の右クリADSでカメラを動かせる距離に影響する。
  • "scope_extend_view"
    • w_mod.json内にある。こちらは名前の通り、スコープなど、何らかのサイト系アタッチメントがついている場合に影響する。
+ 余談-
    • 今回は編集しないファイルのweapon.jsonにも"default_extend_view"存在するが、値がすべて"{use_weapon_type}"となっており、これは「weapon_glance_stat.jsonのテンプレを読み込んでね♪」という意味である。

同じアサルトライフルの中でもG36のような元からスコープがついている銃は特別に遠くを見渡せるようにしたい、などのような目的でなら編集しても良い。

編集例

注意として、6.30よりも大きな値にしてしまうと、ゲーム中で最大までカメラを動かそうとしたときに、スコープを覗くカメラワークがループしてしまうバグが発生する。

  • 全てを一律+1.50増やす。
    • バニラの雰囲気を損なわない程度に調整する例。スコープでかなりの遠くの地形を確認できるようになる。
    • このゲームのシステム上、あまりに距離が離れている敵は透明になる(描画されない)ため、この数値調整でオーレル先生と対峙すると、オーレル先生が透明化しながらSVDを撃ってくる。
  • 倍率スコープ以外を3.00まで引き上げる
    • 前述の敵透明化バグを回避しつつ等倍サイトの「索敵すらままならない」現状を打破する目的の調整。
    • 等倍サイトと倍率スコープの差が小さくなってしまうが、弾丸が即着弾する性質は倍率スコープでしか得らず、弾の有効射程の問題もあるため、倍率スコープより等倍サイトの方が強い、とはなりにくい。

結局のところ、どのように調整しようとも、スナイパーから一方的に狙撃されるバニラとは状況があまり変わらない。


敵の視力を下げる

  • 編集するファイルはゲームフォルダ\ZS_vanilla\gamedata\npc_preset.json

値について

  • alert_min_distance
    • 敵がプレイヤーを察知する距離。視界の外からも察知するため、例えるなら「物音で察知する距離」と言える。
    • 単位は不明だが、おおよそ220で横の画面外ギリギリで、140で縦の画面外ギリギリとなる。
  • alert_radius
    • 敵の視野角。単位は度で、360にすると射線さえ通っていれば背後からでも察知される。
  • alert_visual_distance
    • 敵が視界内のプレイヤーを察知する距離
    • 主にこの数値を調整することになる。
  • alert_visual_distance_h
    • 不明。下手に数値を変更するとラザール君がショットガンの間合いまで射撃せずに近づいてきたりする。
    • 150のまま変えないこと。

generalの値と個別の値

ほとんどの敵はgeneralから値を参照して視界を定義しているが、アーマン先生などの例外たちは個別で視界の値が設定されている。彼らも近眼にしたい場合、個別の数値も変更する必要がある。

具体例

  • Ver1.02でのバニラの数値


初心者の壁オーレル先生はhuman_farに設定されている。このため、画面外からプレイヤーを察知できる設定になっていることがわかる。

  • 変更例


前述の通り、距離はおおよそ220で横の画面外ギリギリで、140で縦の画面外ギリギリである。この数値に変更すれば、理不尽感は大きく減ることだろう。
ただし、この数値は装備している銃によって補正を受けていると思われ、スコープをつけている敵は(スコープを装備していないプレイヤーにとっては)画面外からこちらを察知してくる。


敵の射撃精度を落とす

  • weapon_glance_stat.json内の"npc_recoil_value_multiplier"を見るとわかるのだが、実はNPCは銃の反動がXX分の1になる補正を受けている。ズルい。
  • npc_preset.json内の"recoil_radius_decrease"は数値が大きいほどNPCの射撃がレーザービームのように正確になる。

編集の失敗例


Json編集の素人が良くやるミスとして、「,」のミスや「{ }」の囲いミスがある。
ここはJson講座ではないので、細かい解説はしない。

最後に

紹介した編集例はあくまでも敵がプレイヤーを狙撃してくる問題についての応急処置であり、開発から何らかの改善が提示された場合は、速やかにバニラに戻すこと。
また、本ページの情報について、質問は一切受け付けません。

シェアボタン: このページをSNSに投稿するのに便利です。

コメント

返信元返信をやめる

※ 悪質なユーザーの書き込みは制限します。

最新を表示する
管理人

モッダーやってると分かりますがモッダーは非常にストレスを受けます。
個人的な経験、体験からモッダーを保護する方向で運営します。
貴重な情報を記してくださった方々への批判や中傷は行われるべきではありません。

繰り返しますが何の権利も侵害していないMODや改造に関する情報にくだらない批判を行わないでください。(2/2)

返信
2024-11-03 23:08:41

管理人

MOD=チート扱いした(管理人にしかIPが見えないので分かりにくいですが)2名をBan対応と関連する非生産的な会話の削除対応を行います

基本的に管理人も別ゲーでモッダーやってるのであらゆるMODに寛容です。
開発もMODに寛容な上、オフラインゲーである為どのようなMODであれMOD=チートではないですし個々が遊びやすく調整してるだけでしょう。
それにどのような内容であれモディングに関する情報が日本語で集積されることは非常に重要だと考えます。(1/2)

返信
2024-11-03 23:08:21

名無し
>> 返信元

管理人案件かな

返信
2024-11-03 12:21:32

NG表示方式

NGID一覧