Cornucopia

The horn of plenty! Spawn extra crates, barrels, nodes, animals, etc. randomly on the map

Total Downloads: 6,716 - First Release: Jul 28, 2015 - Last Update: Jun 1, 2017

5/5, 26 likes
  1. Thank you, I do not have any day/night cycle altering plugins. I'll keep going down the list and see if anything else could possible affect them.
     
  2. Hello guys! I have one little question: "Is it possible to add control for spawnables/collectibles?". I'm asking because of their quite enough huge quantity (total about 12k) on my 5k map.
    Will be appreciate for any help or suggestions on "how to" and "where" to edit to make it work.
    One more time thank you!
     
  3. The plugin does not handle this directly but it does delete some of them to replace them with nodes, barrels, animals, etc. It would be pretty simple to alter to control these. I have stopped development on plugins and don't plan on restarting so someone else would have to do it.
     
  4. Great plugin @Deicide666ra and thanks for all the work keeping it up and operating. Was fun getting my start with you and Friction over on Just Rust; hope shit's still brutal over there =)
     
  5. Is there any way to set this plugin up so that all the crates and barrels remain around the monuments and only the animal spawning is controlled by the Cornucopia? I just want to up the animals on my map, but leave all of the other resources unchanged and controlled by the native server method.
     
    Last edited by a moderator: Mar 6, 2016
  6. is it compatible with lootconfig
     
  7. so on the download page do i copy and overwrite the code into config.json ? when i do /cdump all my min is not met
     
  8. hello guys, thx for plugin
    how to add?

    assets/bundled/prefabs/autospawn/collectable/hemp/hemp.prefab
    assets/bundled/prefabs/autospawn/collectable/mushrooms/mushroom-cluster-1.prefab
    assets/bundled/prefabs/autospawn/collectable/mushrooms/mushroom-cluster-2.prefab
    assets/bundled/prefabs/autospawn/collectable/mushrooms/mushroom-cluster-3.prefab
    assets/bundled/prefabs/autospawn/collectable/mushrooms/mushroom-cluster-4.prefab
    assets/bundled/prefabs/autospawn/collectable/mushrooms/mushroom-cluster-5.prefab
    assets/bundled/prefabs/autospawn/collectable/mushrooms/mushroom-cluster-6.prefab
    assets/bundled/prefabs/autospawn/collectable/stone/metalore-2.prefab
    assets/bundled/prefabs/autospawn/collectable/stone/stone-1.prefab
    assets/bundled/prefabs/autospawn/collectable/stone/sulfurore-3.prefab
    assets/bundled/prefabs/autospawn/collectable/stone/wood.prefab
     
    Last edited by a moderator: Apr 27, 2016
  9. this seems complicated :)
    i just want to add more nodes in some locations maybe palm trees :)
     
  10. For some reason, I noticed that boars and chickens aren't spawning in? I can confirm this when dumping the currently spawned nodes/animals.

    Could this be a bug from cornucopia?
     
  11. the Developer said Feb 17 "I have stopped development on plugins and don't plan on restarting so someone else would have to do it." hopfully someone with the smarts can take this great plugin and update it soon i loved this one!
     
  12. Go here Custom Resource Spawns for Rust | Oxide compatilble whit cornucopia and easy.
     
  13. I was wondering about the right amount of animals on different map sizes and couldn't find any helpful information about it. Could you provide some good settings? Would it be possible to add a function, where the plugin reads the map size and autoload a good amount of ressources, would that be a thing?

    Thanks in advance
     
  14. Well it depends on the size of your seed. I have 4500 and I have added plenty of animals... but, I had 5000 seed before last wipe, so I had to adjust bears and wolves down because people were getting killed left and right. Here is my config for animals. Hope it helps.
    Code:
      "Animals": [
      {
      "DeleteEmtpy": false,
      "IgnoreIrridiated": true,
      "Max": 200,
      "Min": 150,
      "Prefab": "assets/bundled/prefabs/autospawn/animals/chicken.prefab"
      },
      {
      "DeleteEmtpy": false,
      "IgnoreIrridiated": true,
      "Max": 175,
      "Min": 150,
      "Prefab": "assets/bundled/prefabs/autospawn/animals/horse.prefab"
      },
      {
      "DeleteEmtpy": false,
      "IgnoreIrridiated": true,
      "Max": 200,
      "Min": 175,
      "Prefab": "assets/bundled/prefabs/autospawn/animals/boar.prefab"
      },
      {
      "DeleteEmtpy": false,
      "IgnoreIrridiated": true,
      "Max": 175,
      "Min": 150,
      "Prefab": "assets/bundled/prefabs/autospawn/animals/stag.prefab"
      },
      {
      "DeleteEmtpy": false,
      "IgnoreIrridiated": true,
      "Max": 100,
      "Min": 95,
      "Prefab": "assets/bundled/prefabs/autospawn/animals/wolf.prefab"
      },
      {
      "DeleteEmtpy": false,
      "IgnoreIrridiated": true,
      "Max": 100,
      "Min": 95,
      "Prefab": "assets/bundled/prefabs/autospawn/animals/bear.prefab"
      }
      ],
     
    Last edited by a moderator: Apr 17, 2016
  15. Hi,

    i've managed in a first stable draft to play around with the complete spawn-groups.

    First: you can view a report off all Spawngroups with their current count and the desired maximum given from map.
    For that, typ in spawn.report.
    The Output looks very ugly, with a bit sorting it will present you something like that (Stats with runnnig modded Cornucopia):
    NOTE: before i had x-times to much of everything!!
    Code:
    animals (autospawn/animals) Population: 455/320
    loot (autospawn/resource/loot) Population: 421/400
    ores (autospawn/resource/ores) Population: 1593/1600
    forest-temperate (autospawn/resource/forest-temperate) Population: 2310/2311
    forest-tundra (autospawn/resource/forest-tundra) Population: 900/855
    field-tundra (autospawn/resource/field-tundra) Population: 1151/1151
    forest-arctic (autospawn/resource/forest-arctic) Population: 24/17
    beachside-deadtrees (autospawn/resource/beachside-deadtrees) Population: 135/100
    beachside-palms (autospawn/resource/beachside-palms) Population: 342/344
    roadside (autospawn/resource/roadside) Population: 170/122
    forest-arid (autospawn/resource/forest-arid) Population: 723/723
    collectable-food-mushroom (autospawn/collectable/Mushrooms) Population: 764/811
    collectable-resource-stone (autospawn/collectable/Stone) Population: 2872/3246
    collectable-resource-hemp (autospawn/collectable/Hemp) Population: 868/1623
    plant-pumpkin Population: 167/162
    plant-corn Population: 175/162
    beachside-trees (autospawn/resource/beachside-trees) Population: 214/216
    field-temperate (autospawn/resource/field-temperate) Population: 2188/2189
    field-arid (autospawn/resource/field-arid) Population: 2410/2412
    field-arctic (autospawn/resource/field-arctic) Population: 25/19
    I've taken these names and compared them with the lists from a diagnostics-'server.dump'.
    The files were:
    • Physics.Colliders.Objects.txt
    • GameObject.Hierarchy.Components.txt
    with those infos i've managed to create additional lists for Collectibles and Trees:

    Code:
    // Collectibles
    Collectibles.Add(new CornuConfigItem { Prefab = "assets/bundled/prefabs/autospawn/collectable/stone/wood.prefab", Min = -1, Max = -1, IgnoreIrridiated = true });
    Collectibles.Add(new CornuConfigItem { Prefab = "assets/bundled/prefabs/autospawn/collectable/stone/stone-1.prefab", Min = -1, Max = -1, IgnoreIrridiated = true });
    Collectibles.Add(new CornuConfigItem { Prefab = "assets/bundled/prefabs/autospawn/collectable/stone/metalore-2.prefab", Min = -1, Max = -1, IgnoreIrridiated = true });
    Collectibles.Add(new CornuConfigItem { Prefab = "assets/bundled/prefabs/autospawn/collectable/stone/sulfurore-3.prefab", Min = -1, Max = -1, IgnoreIrridiated = true });
    Collectibles.Add(new CornuConfigItem { Prefab = "assets/bundled/prefabs/autospawn/collectable/hemp/hemp.prefab", Min = -1, Max = -1, IgnoreIrridiated = true });
    Collectibles.Add(new CornuConfigItem { Prefab = "assets/bundled/prefabs/autospawn/collectable/mushrooms/mushroom-cluster-1.prefab", Min = -1, Max = -1, IgnoreIrridiated = true });
    Collectibles.Add(new CornuConfigItem { Prefab = "assets/bundled/prefabs/autospawn/collectable/mushrooms/mushroom-cluster-3.prefab", Min = -1, Max = -1, IgnoreIrridiated = true });
    Collectibles.Add(new CornuConfigItem { Prefab = "assets/bundled/prefabs/autospawn/collectable/mushrooms/mushroom-cluster-6.prefab", Min = -1, Max = -1, IgnoreIrridiated = true });
    Collectibles.Add(new CornuConfigItem { Prefab = "assets/bundled/prefabs/autospawn/collectable/mushrooms/mushroom-cluster-5.prefab", Min = -1, Max = -1, IgnoreIrridiated = true });
    Collectibles.Add(new CornuConfigItem { Prefab = "assets/bundled/prefabs/autospawn/collectable/mushrooms/mushroom-cluster-4.prefab", Min = -1, Max = -1, IgnoreIrridiated = true });
    Collectibles.Add(new CornuConfigItem { Prefab = "assets/bundled/prefabs/autospawn/collectable/mushrooms/mushroom-cluster-2.prefab", Min = -1, Max = -1, IgnoreIrridiated = true });              
    
    Code:
    //Trees
    Trees.Add(new CornuConfigItem { Prefab = "assets/bundled/prefabs/autospawn/resource/forest-temperate/oak-1.prefab", Min = -1, Max = -1, IgnoreIrridiated = true });
    Trees.Add(new CornuConfigItem { Prefab = "assets/bundled/prefabs/autospawn/resource/forest-temperate/oak-2.prefab", Min = -1, Max = -1, IgnoreIrridiated = true });
    ....
    
    In result i afterwards only duplicated the given routines for the exixting groups and changed some properties. The New Plugin-Code will generate the complete List of prefabs (no plants) in the Config-file, and then Cornucopia will manage them all like the limits are modified afterwards.

    Atm it's not in any way optimized, and on low power servers it could be really laggy, for sure it will be!!
    So i think there is some more need for short breaks between the routines, to give the CPU some more Time :) But..i think it will save some admin's day :)

    I will try to get it workin better as it needs to be: to manage all how often I WANT it to spawn^^
    I've Changed the file-version from 1.1.4 to 1.2.0 (UNOFFICIAL)
     
    Last edited by a moderator: Jan 26, 2017
  16. Is this not being supported anymore?
     
  17. When I changed my ore spawns to all be equal at 9000, when they spawn they're all sulfur ore nodes. How could I make the nodes different?
     
  18. @Fujikura

    assets/prefabs/plants/pumpkin/pumpkin.entity.prefab

    i added that on plugin but didnt change anything about pumpkin entity number in game
     
  19. prefab for High Quality Metal ores?
    [DOUBLEPOST=1463422110][/DOUBLEPOST]have the problem that some animals run slowly or simply standing. I've to set high
    Code:
    "Animals": [
        {
          "DeleteEmtpy": false,
          "IgnoreIrridiated": true,
          "Max": -1,
          "Min": 700,
          "Prefab": "assets/bundled/prefabs/autospawn/animals/chicken.prefab"
        },
        {
          "DeleteEmtpy": false,
          "IgnoreIrridiated": true,
          "Max": -1,
          "Min": 700,
          "Prefab": "assets/bundled/prefabs/autospawn/animals/horse.prefab"
        },
        {
          "DeleteEmtpy": false,
          "IgnoreIrridiated": true,
          "Max": -1,
          "Min": 700,
          "Prefab": "assets/bundled/prefabs/autospawn/animals/boar.prefab"
        },
        {
          "DeleteEmtpy": false,
          "IgnoreIrridiated": true,
          "Max": -1,
          "Min": 700,
          "Prefab": "assets/bundled/prefabs/autospawn/animals/stag.prefab"
        },
        {
          "DeleteEmtpy": false,
          "IgnoreIrridiated": true,
          "Max": -1,
          "Min": 700,
          "Prefab": "assets/bundled/prefabs/autospawn/animals/wolf.prefab"
        },
        {
          "DeleteEmtpy": false,
          "IgnoreIrridiated": true,
          "Max": -1,
          "Min": 700,
          "Prefab": "assets/bundled/prefabs/autospawn/animals/bear.prefab"
        }
      ],
     
    Last edited by a moderator: Jan 26, 2017
  20. My server crashes a lot and it's initiated in Cornucopia code:
    Code:
    0x00007FF78FC26923 (RustDedicated) [c:\buildslave\unity\build\runtime\scripting\scripting.cpp:198] Scripting::BroadcastScriptingMessage
    0x00007FF78FD84210 (RustDedicated) [c:\buildslave\unity\build\artifacts\generated\common\runtime\unityenginecomponentbindings.gen.cpp:134] Component_CUSTOM_BroadcastMessage
    0x000000002E012207 (Mono JIT Code) (wrapper managed-to-native) UnityEngine.Component:BroadcastMessage (string,object,UnityEngine.SendMessageOptions)
    0x000000002E012150 (Mono JIT Code) UnityEngine.Component:BroadcastMessage (string,UnityEngine.SendMessageOptions)
    0x000000002E01207F (Mono JIT Code) BaseNetworkable:Kill (BaseNetworkable/DestroyMode)
    0x00000000240E76D8 (Mono JIT Code) Oxide.Plugins.Cornucopia:ReplaceCollectibleWithSomething (string,System.Collections.Generic.List`1<CollectibleEntity>)
    0x00000000240E7573 (Mono JIT Code) Oxide.Plugins.Cornucopia:BatchSpawn (int,int,string,System.Collections.Generic.List`1<CollectibleEntity>,bool&)
    0x0000000023FF42F8 (Mono JIT Code) Oxide.Plugins.Cornucopia:SubCycle (System.Collections.Generic.IEnumerable`1<BaseEntity>,System.Collections.Generic.IEnumerable`1<Oxide.Plugins.Cornucopia/CornuConfigItem>,System.Collections.Generic.List`1<CollectibleEntity>,bool&)
    0x0000000023FF34D0 (Mono JIT Code) Oxide.Plugins.Cornucopia:MainSpawnCycle ()
    0x0000000023FF3069 (Mono JIT Code) Oxide.Plugins.Cornucopia:OnTimer ()
    0x000000001EB0904C (Mono JIT Code) Oxide.Core.Libraries.Timer/TimerInstance:Update ()
    0x0000000010558049 (Mono JIT Code) Oxide.Core.Libraries.Timer:Update (single)
    0x000000000F45D66D (Mono JIT Code) Oxide.Core.OxideMod:OnFrame (single)
    0x000000001EAE7E83 (Mono JIT Code) Oxide.Ext.Unity.UnityScript:Update ()
    0x00000000040A807B (Mono JIT Code) (wrapper runtime-invoke) object:runtime_invoke_void__this__ (object,intptr,intptr,intptr)
    0x00007FFE7B724E7F (mono) mono_set_defaults
    0x00007FFE7B6784B5 (mono) mono_runtime_invoke
    0x00007FF78FCB9E33 (RustDedicated) [c:\buildslave\unity\build\runtime\scripting\backend\scriptinginvocationnoargs.cpp:120] ScriptingInvocationNoArgs::Invoke
    0x00007FF78FCB9B77 (RustDedicated) [c:\buildslave\unity\build\runtime\scripting\backend\scriptinginvocationnoargs.cpp:96] ScriptingInvocationNoArgs::Invoke
    0x00007FF78FC11450 (RustDedicated) [c:\buildslave\unity\build\runtime\mono\monobehaviour.cpp:457] MonoBehaviour::CallMethodIfAvailable
    0x00007FF78FC13B9A (RustDedicated) [c:\buildslave\unity\build\runtime\mono\monobehaviour.cpp:545] MonoBehaviour::Update
    0x00007FF78FADA19F (RustDedicated) [c:\buildslave\unity\build\runtime\gamecode\behaviour.cpp:154] BaseBehaviourManager::CommonUpdate<BehaviourManager>
    0x00007FF78FC74041 (RustDedicated) [c:\buildslave\unity\build\runtime\misc\player.cpp:1721] PlayerLoop
    0x00007FF78FD3EB85 (RustDedicated) [c:\buildslave\unity\build\platformdependent\winplayer\winmain.cpp:546] MainMessageLoop
    0x00007FF78FD417DD (RustDedicated) [c:\buildslave\unity\build\platformdependent\winplayer\winmain.cpp:953] PlayerWinMain
    0x00007FF79019CC08 (RustDedicated) [f:\dd\vctools\crt_bld\self_64_amd64\crt\src\crt0.c:275] __tmainCRTStartup
    0x00007FFE920613D2 (KERNEL32) BaseThreadInitThunk
    I don't know if this is a Cornucopia issue, but I thought that Oxide would handle all issues that arise from plugins, catch them and prevent the server from crashing. There's probably something going horribly wrong somewhere.