BotSpawn

Moved

Total Downloads: 11,691 - First Release: Jul 31, 2017 - Last Update: Jul 27, 2018

5/5, 81 likes
  1. to avoid folks exploiting bots with melee weapons when on Peace_Keeper consider altering the code at line 436
    From:
    var heldWeapon = victim.GetHeldEntity() as BaseProjectile;
    var heldFlame = victim.GetHeldEntity() as FlameThrower;
    if (heldWeapon == null && heldFlame == null)
    return 0f;

    To:
    var heldGun = victim.GetHeldEntity() as BaseProjectile;
    var heldFlame = victim.GetHeldEntity() as FlameThrower;
    var heldMelee = victim.GetHeldEntity() as BaseMelee;
    var heldLauncher = victim.GetHeldEntity() as BaseLauncher;
    var heldTorchWeapon = victim.GetHeldEntity() as TorchWeapon;
    if (heldGun == null && heldMelee == null && heldLauncher == null && heldFlame == null && heldTorchWeapon == null)
    return 0f;


    That should attack folks if they have any potential weapon. I have not tested it, but I think it should surprise some exploiters. ;-)
     
    Last edited by a moderator: Oct 23, 2017
  2. Reinstalled server! OXIDE! In custom bot, “/botspawn add customname”! But it's still a mistake! Sorry, these words come from Google!
    Code:
    Failed to call hook 'botspawn' on plugin 'BotSpawn v1.2.2' (JsonSerializationException: Self referencing loop detected for property 'normalized' with type 'UnityEngine.Vector3'. Path 'CustomProfiles.customname.Location.normalized.normalized'.)
      at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.CheckForCircularReference (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonProperty property, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x00000] in <filename unknown>:0
      at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.CalculatePropertyValues (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonContainerContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonProperty property, Newtonsoft.Json.Serialization.JsonContract& memberContract, System.Object& memberValue) [0x00000] in <filename unknown>:0
      at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract collectionContract, Newtonsoft.Json.Serialization.JsonPropert                                                                                                                                                                                         
     
  3. Glad that fixed it - Just to throw this out there in case it helps someone - If you are using ZLevelsRemastered and you try to tweak the multipliers it "can" cause your animals & NPCs to freeze up.
     
  4. Hello,

    By bots are running around doing their thing and I decided that I wanted Kits for them. I've followed the various directions and my console is spitting out:
    NullReferenceException: Object reference not set to an instance of an object

    My bots are nude and have no Kits. Any thoughts?
     
  5. the plugin is not working. Zombies standing still
     
  6. @yurkin that is not the plugin that is you not updating to latest version of oxide.
    Update and your bots will move.
     
  7. updated the plugin and config . And Bots are still looking down and not moving
    [DOUBLEPOST=1508732778][/DOUBLEPOST]https://pp.userapi.com/c639420/v639420451/517d9/HSz6vbCr2R0.jpg
     
  8. Wasn't getting updates for this thread, for some reason.

    I'm aware of the custom location issue. It relates to the storage of the location coordinates.
    I have a temp fix here but will push a proper one soon.

    MSpeedie's solution regarding melee weapons and tools is fine, but it was requested that bots not attack players with tools/melee on-sight.

    The proper solution is to have bots attack on site if you have a conventional weapon out, and retaliate if they're attacked by anything, which is a little more complicated.
    I may implement Mspeedie's idea as optional, as a temporary measure against melee farming.
    [DOUBLEPOST=1508772748][/DOUBLEPOST]
    Neither of which is oxide....
    What's your oxide version?
     
    Last edited by a moderator: Oct 23, 2017
  9. I'm sorry if this question was.The plugin supports map HapisIsland ?
     
  10. Steenamaroo I love your plugin. Its posible add a optional dependencies of Rewards plugin?? To get money by killing the bots ?? Thanks a lot!!
     
  11. RE previous post, I could simply make it that melee weapons and tools do not damage the bot?! It's an option.
    I'll have a think about it, either way.

    vist - no, not by default, although you can add custom locations on any map and get the same functionality.
    Just a little bit more work.

    tanatos - Thank you. It's possible, but I think it would work the other way around.
    Rewards(or quests?) plugin would need to add such a campaign.

    In order to have different rewards for different locations/profiles of bots, I'd probably need to expose information too.
     
  12. If you can make money killing bots with the Economics plugin would be fine. Thank you
     
  13. When trying to do it displays this error

    (17:25:16) | Failed to call hook 'botspawn' on plugin 'BotSpawn v1.2.2' (JsonSerializationException: Self referencing loop detected for property 'normalized' with type 'UnityEngine.Vector3'. Path 'CustomProfiles.1234.Location.normalized'.)

    (17:25:16) | at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.CheckForCircularReference (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonProperty property, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x00000] in <filename unknown>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.CalculatePropertyValues (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonContainerContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonProperty property, Newtonsoft.Json.Serialization.JsonContract& memberContract, System.Object& memberValue) [0x00000] in <filename unknown>:0

    at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract collectionContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x00000] in <filename unknown>:0
     
  14. I know. ^^
    mentioned above.
    [DOUBLEPOST=1508776426][/DOUBLEPOST]
    Might have been wrong about rewards. I think I can just add to the balance.

    Other things to worry about, all the same. Maybe in the near future.
     
  15. Steenamaroo updated BotSpawn with a new update entry:

    1.2.3

     
  16. We can add a bot in game by typing /botspawn add ?
     
  17. i obv suck at this... I have been trying for 2 days does anyone have a full config file they can just share that is already setup with bots? Ill love you long time.
     
  18. For a basic working profile, all you have to do is set activate to true (per monument) and reload the plug.
     
  19. Add an odd item like glue to the kit used for bots and make a quest to collect it for reward. That is what Lost Isle PVE does and it works great.
     
  20. im an idiot. Thanks man