About Zombie Rocks
When running in the forest on the quest of finding some ore nodes and finally hitting the rock to get some valuable resources , there can be a zombie sleeping under the rock
Features :
- Set configurable chance of a [Rock Zombie] spawning after a ore node is depleted (last hit)
- Set configurable chance of a [Ore/Wood Zombie] spawning after a ore or wood spawn is picked up
- Set configurable chance of a [Tree Zombie] spawning after a tree is cut down
- Configurable NPC (HP, Damage scaling, spawn amount and more)
- Support for Kits.
- The NPC can drop a backpack (internal lootprofile through configuration)
- The npc can only spawn on the surface (no support for tunnel/cave nodes)
- npc has 2 starter outfits and changes weapon each time it spawns out of the box (or when assigned kit(s) is not found)
- Ore/Wood zombies use their Stone and Tree zombie kits
Permissions :
- zombierocks.pickup : Assign to players/groups to trigger the resource pickup mini event
- zombierocks.nodestone : Assign to players/groups to trigger stone mining mini event
- zombierocks.nodeiron : Assign to players/groups to trigger the iron mining mini event
- zombierocks.nodesulfur : Assign to players/groups to trigger the sulfur mining mini event
- zombierocks.tree: Assign to players/groups to trigger the tree cutting mini event
Pickup items :
On resource pickups only 1 npc can spawn
- Wood
- stones
- iron
- sulfur
Commands :
- /zrinfo : Replies plugin info and version to chat
Configuration :
- To make a item spawn as a blueprint add .bp behind the shortname (for example ammo.pistol.bp)
- Probability from value 0 to 1 is the spawn chance of any item
- Usage of custom naming is now possible (> v1.2.4)
Example of custom items like the ExtendedRecycler plugins recycler item.
{ "probability": 0.6, "shortname": "box.repair.bench", "name": "Recycler", "skin": 1594245394, "amountMin": 1, "amount": 1 },
{ "Use Debug": true, "Only Trigger at Night Time": true, "Night start": 20, "Night end": 8, "Tree spawns": { "Can spawn from trees": true, "Spawn chance (1-100%)": 40.0 }, "Pickup spawns": { "Can spawn from resource pickups": true, "Spawn chance (1-100%)": 10.0 }, "Node spawns": { "Stone Nodes": { "Can spawn from stone nodes": true, "Spawn chance (1-100%)": 50.0 }, "Sulfur Nodes": { "Can spawn from sulfur nodes": true, "Spawn chance (1-100%)": 40.0 }, "Metal Nodes": { "Can spawn from metal nodes": true, "Spawn chance (1-100%)": 40.0 } }, "NPC Settings": { "Spawn Amount": 1, "Health": 250, "Max Roam Distance": 20, "Damage multiplier": 0.6, "Lifetime (minutes)": 10.0, "Use kit (clothing)": true, "Kit ID Rock Zombie": [ "RockZombie-01", "RockZombie-02", "RockZombie-03" ], "Kit ID Tree Zombie": [ "TreeZombie-01", "TreeZombie-02", "TreeZombie-03" ], "Show messages": true, "NPC drop a Backpack with loot": true, "Use Random Skins": true, "Spawn Min Amount Items": 2, "Spawn Max Amount Items": 6, "Loot Table": [ { "probability": 1.0, "shortname": "ammo.pistol", "name": "", "skin": 0, "amountMin": 5, "amount": 5 }, { "probability": 1.0, "shortname": "box.repair.bench", "name": "Recycler", "skin": 1594245394, "amountMin": 1, "amount": 1 }, { "probability": 1.0, "shortname": "ammo.pistol.fire", "name": "", "skin": 0, "amountMin": 5, "amount": 5 }, { "probability": 1.0, "shortname": "ammo.pistol.hv", "name": "", "skin": 0, "amountMin": 5, "amount": 5 }, { "probability": 1.0, "shortname": "ammo.rifle", "name": "", "skin": 0, "amountMin": 5, "amount": 5 }, { "probability": 1.0, "shortname": "ammo.rifle.explosive", "name": "", "skin": 0, "amountMin": 5, "amount": 5 }, { "probability": 1.0, "shortname": "ammo.rifle.hv", "name": "", "skin": 0, "amountMin": 5, "amount": 5 }, { "probability": 1.0, "shortname": "ammo.rifle.incendiary", "name": "", "skin": 0, "amountMin": 5, "amount": 5 }, { "probability": 1.0, "shortname": "ammo.shotgun", "name": "", "skin": 0, "amountMin": 8, "amount": 12 }, { "probability": 1.0, "shortname": "explosive.timed", "name": "", "skin": 0, "amountMin": 1, "amount": 1 }, { "probability": 1.0, "shortname": "explosives", "name": "", "skin": 0, "amountMin": 1, "amount": 1 }, { "probability": 1.0, "shortname": "pistol.m92", "name": "", "skin": 0, "amountMin": 1, "amount": 1 }, { "probability": 1.0, "shortname": "shotgun.spas12", "name": "", "skin": 0, "amountMin": 1, "amount": 1 }, { "probability": 1.0, "shortname": "pickaxe", "name": "", "skin": 0, "amountMin": 1, "amount": 1 }, { "probability": 1.0, "shortname": "hatchet", "name": "", "skin": 0, "amountMin": 1, "amount": 1 }, { "probability": 1.0, "shortname": "can.beans", "name": "", "skin": 0, "amountMin": 1, "amount": 3 }, { "probability": 1.0, "shortname": "can.tuna", "name": "", "skin": 0, "amountMin": 1, "amount": 3 }, { "probability": 1.0, "shortname": "black.raspberries", "name": "", "skin": 0, "amountMin": 3, "amount": 5 } ] } }
Localisation :
English language file included to use a different language just make a new file in the language folder.
{ "Zombie_Spawn": "Braaains", "Zombie_Dropped_Backpack": "{npc} dropped his old Backpack !", "Prefix": "[<color=green>Rock Zombie</color>] : ", "infoRock": "The diffrent stone/sulfur/metal rocks can hide a Zombie that can ressurect from their rocky grave.", "infoTree": "When cutting down Trees a Zombie can ressurect from under their roots.", "infoPickup": "When picking up resources a Zombie can sneak up behind you.", "Nodes": "<<color=orange>Nodes</color>> ", "Trees": "<<color=green>Trees</color>> ", "Pickups": "<<color=orange>Pickups</color>> " }
API :
bool IsZombieRocksNpc(global::HumanNPC npc)
example call :
object OnEntityDeath(global::HumanNPC npc, HitInfo info) { if (npc == null) return null; if (ZombieRocks.Call<bool>("IsZombieRocksNpc", npc)) { Puts($"Target : {npc} net.ID : [{npc.net.ID}] Event : ZombieRocks NPC"); } return null; }