ExtraSyringeCustomization

版本 v0.3.11·更新於 2025-12-27

Allows for Rundown Developers to add new syringes. Should now support syringes with multiple uses.

模組介紹 作者原文

NOTICE: THIS IS AN ALPHA RELEASE. EXPECT BUGS AND CHANGES

A tool for creating custom syringes, and applying custom effects.

Example Config:

{

"Syringes": [

{

"SyringeID": 140,

"Properties": {

"MovementMultiplier": {

"Delay": {

"HasDelay": true,

"Min": 2.5,

"Max": 2.5

},

"Time": {

"Min": 10,

"Max": 10

},

"Min": 1.5,

"Max": 2,

"Enabled": true

},

"SelfDestruct": {

"DelayTime": {

"HasDelay": true,

"Min": 15,

"Max": 15

},

"Damage": 10000000,

"Radius": 12,

"Enabled": true

}

}

},

{

"SyringeID": 142,

"Properties": {

"MovementMultiplier": {

"Delay": {

"HasDelay": true,

"Min": 2.5,

"Max": 2.5

},

"Time": {

"Min": 10,

"Max": 10

},

"Min": 1.5,

"Max": 2,

"Enabled": true

},

"SelfDestruct": {

"DelayTime": {

"HasDelay": true,

"Min": 15,

"Max": 15

},

"Damage": 10000000,

"Radius": 12,

"Enabled": true

}

}

}

]

}

For Rundown Developers

On first run, two files will be autogenerated in /Custom/ExtraSyringeCustomization:

  • GENERATED_example-syringes.json
  • GENERATED_syringe-properties.json

You can delete any of these files to regenerate them.

Both of these will contain examples on how to set up custom syringes.

To create a custom syringe, first create an associated entry in ItemDataBlock.

Then paste the persistentID in the SyringeID field in a new syringe entry.

And then apply your associated affects.

For Plugin Developers

APIs have been exposed for adding your own syringe properties/effects and adding syringes.

All Syringe Properties extend SyringePropertyBase.

An implementation example:

public class SyringeHealEffectProperty: SyringePropertyBase

{

[JsonIgnore]

public override string Name => "Heal";

public override void Apply(PlayerAgent player, SyringeFirstPerson syringe, Random random)

{

// heal to 100%

PlayerBackpackManager.PickupHealthRel(1f, player);

}

}

Then, to register this property, use ExtraSyringeHandler:

ExtraSyringeHandler.AddProperty();

Be sure to do this before GameDataInit.Initialize is called, as that's when the custom syringe file is ready.

Now you can include it in your json:

{

"Syringes": [

{

"SyringeID": 140,

"Properties": {

// Must match Name specified in the property,

// in this case, "Heal"

"Heal": {

"Enabled": true

}

}

}

]

}

安裝與使用 安裝:按包內說明操作

  1. 解壓本站下載的壓縮包,先讀包內的 readme / 說明檔案。
  2. 多數模組依賴遊戲的模組載入器:常見做法是用社群模組管理器(如 r2modman)選中本遊戲安裝,由管理器自動處理載入器與依賴。
  3. 手動安裝時,把模組檔案放進遊戲目錄下對應的 Mod / plugins 資料夾。
  4. 啟動遊戲確認載入成功;帶「前置依賴」的模組需要把依賴一併安裝。

不同模組的安裝位置差異較大,包內說明是最可靠的依據。

前置依賴

下面這些內容需要先安裝,否則該模組不會生效:

BepInEx-BepInExPack_GTFODinorush-ModifierAPI

檔案與校驗

檔案名稱
ExtraSyringeCustomization-0.3.11.zip
檔案大小
67.7 KiB