

Additional Spawn Constraints
A server-side dependency mod that allows JSON mods and patching to control various spawn conditions;
Description
<div class="markdown-heading" dir="auto"> <h1 class="heading-element" dir="auto" tabindex="-1">Additional Spawn Constraints</h1> <a id="user-content-additional-spawn-constraints" class="anchor" href="https://github.com/zach2039/vs-additionalspawnconstraints#additional-spawn-constraints" aria-label="Permalink: Additional Spawn Constraints"></a></div> <p dir="auto">A server-side dependency mod that allows JSON mods and patching to control various spawn conditions; does nothing on its own!</p> <div class="markdown-heading" dir="auto"> <h2 class="heading-element" dir="auto" tabindex="-1">Overview</h2> <a id="user-content-overview" class="anchor" href="https://github.com/zach2039/vs-additionalspawnconstraints#overview" aria-label="Permalink: Overview"></a></div> <p dir="auto">AdditionalSpawnConstraints will look for an <code>additionalSpawnConstraints</code> object inside an entity's <code>/attributes</code> object. This can be included on new entity JSON files, or patched in via JSON.</p> <p dir="auto">An example for some properties is below, applied via a patch to <code>drifter.json</code>:</p> <div class="highlight highlight-source-json notranslate position-relative overflow-auto" dir="auto"> <pre>[ { <span class="pl-ent">"side"</span>: <span class="pl-s"><span class="pl-pds">"</span>Server<span class="pl-pds">"</span></span>, <span class="pl-ent">"file"</span>: <span class="pl-s"><span class="pl-pds">"</span>game:entities/land/drifter.json<span class="pl-pds">"</span></span>, <span class="pl-ent">"op"</span>: <span class="pl-s"><span class="pl-pds">"</span>addmerge<span class="pl-pds">"</span></span>, <span class="pl-ent">"path"</span>: <span class="pl-s"><span class="pl-pds">"</span>/attributes/additionalSpawnConstraints<span class="pl-pds">"</span></span>, <span class="pl-ent">"value"</span>: { <span class="pl-ent">"changeTemporalStormSpawnMechanics"</span>: <span class="pl-c1">true</span>, <span class="pl-ent">"canSpawnOn"</span>:[ <span class="pl-s"><span class="pl-pds">"</span>game:sand-*<span class="pl-pds">"</span></span>, <span class="pl-s"><span class="pl-pds">"</span>game:gravel-*<span class="pl-pds">"</span></span>, <span class="pl-s"><span class="pl-pds">"</span>game:dirtygravel<span class="pl-pds">"</span></span>, <span class="pl-s"><span class="pl-pds">"</span>game:sludgygravel<span class="pl-pds">"</span></span>, <span class="pl-s"><span class="pl-pds">"</span>game:muddygravel<span class="pl-pds">"</span></span>, <span class="pl-s"><span class="pl-pds">"</span>game:soil-*<span class="pl-pds">"</span></span>, <span class="pl-s"><span class="pl-pds">"</span>game:forestfloor-*<span class="pl-pds">"</span></span>, <span class="pl-s"><span class="pl-pds">"</span>game:peat-*<span class="pl-pds">"</span></span>, <span class="pl-s"><span class="pl-pds">"</span>game:rock-*<span class="pl-pds">"</span></span>, <span class="pl-s"><span class="pl-pds">"</span>game:crackedrock-*<span class="pl-pds">"</span></span>, <span class="pl-s"><span class="pl-pds">"</span>game:regolith-*<span class="pl-pds">"</span></span>, <span class="pl-s"><span class="pl-pds">"</span>game:ore-gem-*<span class="pl-pds">"</span></span>, <span class="pl-s"><span class="pl-pds">"</span>game:ore-graded-*<span class="pl-pds">"</span></span>, <span class="pl-s"><span class="pl-pds">"</span>game:ore-ungraded-*<span class="pl-pds">"</span></span> ] } } ]</pre> <div class="zeroclipboard-container"> </div> </div> <p dir="auto">The properties that can be set within <code>additionalSpawnConstraints</code> are:</p> <ul dir="auto"> <li> <p dir="auto"><code>"minRegionStability"</code> : The minimum region stablity required when spawning the entity; does not take into account rifts nor rift proximity.</p> </li> <li> <p dir="auto"><code>"maxRegionStability"</code> : The maximum region stablity required when spawning the entity; does not take into account rifts nor rift proximity.</p> </li> <li> <p dir="auto"><code>"canSpawnOn"</code> : A list of block codes that are valid for spawning the entity on; supports globs and regex to handle variants.</p> </li> <li> <p dir="auto"><code>"cannotSpawnOn"</code> : A list of block codes that are not valid for spawning the entity on; supports globs and regex to handle variants.</p> </li> <li> <p dir="auto"><code>"changeTemporalStormSpawnMechanics"</code> : Determines if other properties can affect temporal storm spawning, where applicable; default is <code>false</code> if unspecified. Does not apply to <code>"minRegionStability"</code> or <code>"maxRegionStability"</code>. Only affects entities that are spawned during storms.</p> </li> </ul> <p> </p> <div class="markdown-heading" dir="auto"> <h2 class="heading-element" dir="auto" tabindex="-1">Future Plans</h2> <a id="user-content-future-plans" class="anchor" href="https://github.com/zach2039/vs-additionalspawnconstraints#future-plans" aria-label="Permalink: Future Plans"></a></div> <ul dir="auto"> <li>Properties related to health scaling on spawn.</li> </ul> <p> </p> <div class="markdown-heading" dir="auto"> <h2 class="heading-element" dir="auto" tabindex="-1">Known Issues</h2> <a id="user-content-known-issues" class="anchor" href="https://github.com/zach2039/vs-additionalspawnconstraints#known-issues" aria-label="Permalink: Known Issues"></a></div> <ul dir="auto"> <li>None, atm.</li> </ul> <p> </p> <div class="markdown-heading" dir="auto"> <h2 class="heading-element" dir="auto" tabindex="-1">Mods That Use This</h2> <a id="user-content-mods-that-use-this" class="anchor" href="https://github.com/zach2039/vs-additionalspawnconstraints#mods-that-use-this" aria-label="Permalink: Mods That Use This"></a></div> <ul dir="auto"> <li><a href="https://mods.vintagestory.at/naturalspawns" rel="nofollow">Natural Spawns</a> : Limits drifters to spawning on soil and other natural blocks, even during storms.</li> </ul> <p> </p> <div class="markdown-head
Ratings & reviews
Sign in to leave a rating or comment.

