Object Spawner – DayZ

From Bohemia Interactive Community
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 10: Line 10:
=== How to create and use a custom spawn list ===
=== How to create and use a custom spawn list ===


* Enable cfgGameplay.json, (see the [[https://community.bistudio.com/wiki/DayZ:Gameplay_Settings|Gameplay settings - Documentation]] for cfgGameplay.json configuration)
* Enable cfgGameplay.json, (see the [[https://community.bistudio.com/wiki/DayZ:Gameplay_Settings| Gameplay settings - Documentation]] for cfgGameplay.json configuration)
* Create a new .json file ''(for example spawnerData.json)'' in your Mission folder, copy the contents of the template bellow into this new file
* Create a new .json file ''(for example spawnerData.json)'' in your Mission folder, copy the contents of the template bellow into this new file
<spoiler text="Show the template...">
<spoiler text="Show the template...">

Revision as of 11:59, 4 November 2021

What is the Object Spawner?

The Object Spawner addresses the need of our community to add additional detail to the world through a list of map objects together with their position and orientation.

Objects from such lists are spawned into the world at the start of the server mission.

Please note that spawning a lot of objects this way may have impact on both the server and client performance.


How to create and use a custom spawn list

  • Enable cfgGameplay.json, (see the [Gameplay settings - Documentation] for cfgGameplay.json configuration)
  • Create a new .json file (for example spawnerData.json) in your Mission folder, copy the contents of the template bellow into this new file

{
    "Objects": [
        {
            "name": "Land_Wall_Gate_FenR",
            "pos": [
                8406.501953125,
                107.73682403564453,
                12782.3388671875
            ],
            "ypr": [
                0.0,
                0.0,
                0.0
            ]
        },
        {
            "name": "Land_Wall_Gate_FenR",
            "pos": [
                8410.501953125,
                107.73682403564453,
                12782.3388671875
            ],
            "ypr": [
                0.0,
                0.0,
                0.0
            ]
        },
        {
            "name": "Land_Wall_Gate_FenR",
            "pos": [
                8416.501953125,
                107.73682403564453,
                12782.3388671875
            ],
            "ypr": [
                0.0,
                0.0,
                0.0
            ]
        },
        {
            "name": "Land_Wall_Gate_FenR",
            "pos": [
                8422.501953125,
                107.73682403564453,
                12782.3388671875
            ],
            "ypr": [
                0.0,
                0.0,
                0.0
            ]
        }
    ]
}
↑ Back to spoiler's top

  • Edit the contents as needed. Do note each object's entry needs to end with a comma, except the last one.
  • In the cfgGameplay.json, locate the "objectSpawnersArr" and input your previously created .json as a parameter (example: "objectSpawnersArr": ["spawnerData.json" ])

Details

The cfgGameplay.json contains a filename array:

"objectSpawnersArr": ["mySpawnData1.json","mySpawnData2.json","mySpawnData3.json"]

Where each JSON file contains a list of objects to be spawned in the world at the start of the server mission.

Any persistent item (usually majority of types within the db\types.xml) will be spawned once again after the server restart.

Parameters

Type Parameter Details
string name Class name of the object to be spawned
vector pos Position of the object in the world
vector ypr Orientation as Yaw, Pitch and Roll in degrees