TruePVE

Better PVE/PVP implementation

Total Downloads: 4,626 - First Release: Mar 25, 2016 - Last Update: Mar 7, 2018

5/5, 26 likes
  1. Theoretically, yes it would work. Hopefully the dev makes that ruleset entry a configuration item, since a .cs change isn't within everyone's capabilities...
     
  2. Hi Ignignokt,

    I tried my hand at some editing - and wasn't so successful it seems... I know you don't support DynamicPVP or ZoneManager, but perhaps you can point me in the direction of something I may have missed or not done?

    Here's what I have done:

    1) Changed the DynamicPVP.CS file to say "airdrop" instead of "exclude".

    2) Created the following mappings in TruePVE.JSON

    "Mappings": {
    "default": "default",
    "pvp": "exclude",
    "airdrop": "airdrop"

    3) Created the following rulesets in TruePVE.JSON

    "RuleSets": [
    {
    "name": "default",
    "enabled": true,
    "defaultAllowDamage": false,
    "flags": "HumanNPCDamage, LockedBoxesImmortal, LockedDoorsImmortal",
    "rules": [
    "anything can hurt dispensers",
    "anything can hurt players",
    "players cannot hurt players",
    "anything can hurt traps",
    "traps can hurt players",
    "players can hurt barricades",
    "barricades can hurt players",
    "highwalls can hurt players",
    "anything can hurt heli",
    "anything can hurt npcs",
    "fire can hurt players",
    "anything can hurt resources"
    ]
    },
    {
    "name": "airdrop",
    "enabled": true,
    "defaultAllowDamage": false,
    "flags": "HumanNPCDamage, LockedBoxesImmortal, LockedDoorsImmortal",
    "rules": [
    "anything can hurt dispensers",
    "anything can hurt players",
    "anything can hurt traps",
    "traps can hurt players",
    "players can hurt barricades",
    "barricades can hurt players",
    "highwalls can hurt players",
    "anything can hurt heli",
    "anything can hurt npcs",
    "fire can hurt players",
    "anything can hurt resources"
    ]
    }
    ],

    4) reloaded all plugins and they compiled just fine.

    Again, I know you aren't responsible for the other plugins, but I'm wondering if you can see something that I have done or not done that is now preventing the zones from being created?

    All I want to have happen is for these Dynamic PVP zones to not be able to damage structures as players could theoretically exploit this to raid during PVE time.

    Thanks for any help you can provide :)
     
  3. Hey so I have Truepve and ZoneManager,
    I have a Truepve schedule set up to switch between pve and pvp at different times which is working. But I want to create zones around monuments where pvp is allowed at all times. I have read that it is possible to do this, I know how to create zones with ZoneManager but how do I link it up so that Truepve knows the zones are there and how to assign the ruleset to it? Sorry if how I wrote this sounds confusing.
     
  4. Basically, you need to add the zones created for your Monument PVP zones to the exclude in your TruePVE config file.
    [DOUBLEPOST=1515726668][/DOUBLEPOST]
    From the FAQ page:

    Q: How can I set up a PVP zone?
    A: Setting up a PVP zone that exhibits default Rust PVP behavior is easy - assuming you've made the code change to ZoneManager, all you need is an entry in the config Mappings section for your zones.

    "Mappings": {
    "default": "default",
    "zoneId": "exclude" // exclude zone from TruePVE handling
    }
     
  5. Thank you! That really helps :D
     
  6. @Bill Murray 2 - I can't see anything wrong with your changes. Technically you don't need the "airdrop": "airdrop" mapping, as DynamicPVP should handle adding/removing mappings as needed, but it should still work. What behavior do you see after you make the changes and reload?
     
  7. I'm seeing no zones created at all suddenly. It just doesn't happen. No errors in console or anything,
     
  8. I use this plugin and it is great except for the damage on buildings, is there a fix so noone can damage buildings??
     
  9. Hey there,
    i am usind TruePVE but i can not destroy my own walls or something. I have build a cupboard and authorisized but i am not able to destroy something.
    How to enable the ability to destroy own structures?
     
  10. From the Overview page:

    RuleSet Flags
    Note - Most of these flags were carried over from previous configuration options, but some have changed functionality slightly.
    SuicideBlocked
    - Block suicide
    AuthorizedDamage - Allows players to damage entities they own or have cupboard authorization over
    CupboardOwnership - When enabled with AuthorizedDamage will treat entities outside of cupboard range as unowned, and entities inside cupboard range will require authorization.
    NoHeliDamage - Disables heli damage
    HeliDamageLocked - Allows heli to damage locked doors/boxes (if immortal locks are enabled)
    NoHeliDamagePlayer - Prevents heli from hurting players (seems pointless to me)
    HumanNPCDamage - Enables HumanNPC damage
    LockedBoxesImmortal - Locked boxes are immortal (HeliDamageLocked overrides this)
    LockedDoorsImmortal - Locked doors are immortal (HeliDamageLocked overrides this)
    AdminsHurtSleepers - Admins can hurt sleepers
    ProtectedSleepers - Sleepers are protected from NPC damage
    TrapsIgnorePlayers - Players don't trigger traps
    TurretsIgnorePlayers - Players don't trigger turrets

    I believe the Flags that you are looking to make sure you have are the AuthorizedDamage and CupboardOwnership flags. Make sure these are present in your RuleSet.
     
  11. [Oxide] 22:38 [Error] Error while compiling: TruePVE.cs(585,20): error CS0012: The type `Apex.LoadBalancing.ILoadBalanced' is defined in an assembly that is not referenced. Consider adding a reference to assembly `ApexShared, Version=1.1.1.0, Culture=neutral, PublicKeyToken=null'

    Is it just me getting this?
     
  12. Wulf

    Wulf Community Admin

    Please see the Oxide changelog.
     
  13. No some plugins need to be update... and/or Oxide is being patched to include ApexShared as a default resource. They may have to update Oxide again, as 3817 is now out
     
  14. Just wondering if any thing needs to be added to Entity Groups or RuleSets to get the new vanilla Scientists to work?
    Or would that only be in the case of, when they are actually apart of a update, instead of just admin enabled?

    squadmanager.squad_disable false
     
  15. Hi. How disable fire arrow kills?
     
  16. Hey, so what I am wanting to do is allow players to break placed objects like chests, sleepingbags etc but not be able to break walls or foundations or similar objects. What I have tried to do is create a new rule in the default ruleset called: "players can hurt construction". I have then added an Entity Group which currently looks like this:
    {
    "name": "construction",
    "members": "box.wooden, box.wooden.large, box.repair.bench, bed, campfire, sleepingbag",
    "exclusions": ""
    },

    When loading up the server with that players are able to break the box.wooden.large and campfire but nothing else, any idea what im doing wrong?

    Alternatively, if I set "defaultAllowDamage" to true, would I be able to make it so they cant damage foundations, walls etc?

    I should also add that I am trying to use this with also having the plugin Hammertime so that they can demolish their own walls with a hammer at anytime.
     
  17. I believe you should be able to just add Scientist to your npcs entity group (like you may have done with NPCMurderer and NPCPlayerApex).
    [DOUBLEPOST=1516382062][/DOUBLEPOST]
    I'm not sure - if fire arrows work differently than regular arrows, then I'll have to dig around to figure it out.
    [DOUBLEPOST=1516382982][/DOUBLEPOST]
    That entity group should work, but you should verify your prefabs are correct by using the chat command /tpve_prod (while looking at the entity) to print out the type and prefab name that TruePVE would use. You'll likely need to include some additional types/prefabs to cover all entities.

    You could set defaultAllowDamage = true. If you use this approach, you'll probably need a new ruleset altogether. Assuming you want to allow all damage except player-player, and player-buildings, you can use the rules "players cannot hurt players", and "players cannot hurt buildings", with the defaultAllowDamage = true. Then you'd have to create a "buildings" entity group to define what entities are buildings - probably "BuildingBlock", and likely "Door", "CodeLock", "KeyLock", and then all the prefabs for things like window bars, embrasures, storefronts, etc. Not to mention rules for special cases like fire, traps, barricades, etc...

    Note this is just off the top of my head, so you'll have to verify the accuracy of those entity types...
     
    Last edited by a moderator: Jan 19, 2018
  18. just add to your Fire rules

    fireball_small_arrow
     
  19. I wanted to play it safe with editing the ruleset and the Entity group, so what I did was create a new entity group that included every item that people should be able to break, I will post it below.. What is happening is that ingame sometimes objects take 10-20seconds to start taking damage, sometimes it happens instantly etc.. Is that due to how long the list is? Would splitting it up into groups of 6 or something as different entity groups fix it?

    I avoided setting the damage to true and then creating a list of what not to do because I was worried I would break the mod

    {
    "name": "construction",
    "members": "box.wooden.large, campfire, sign.post.town, furnace, lantern.deployed, bbq.deployed, jackolantern.angry, jackolantern.happy, chair.deployed, bed_deployed, fridge.deployed, locker.deployed, mailbox.deployed, repairbench_deployed, researchtable_deployed, sign.pictureframe.portrait, sign.pictureframe.landscape, sign.post.double, woodbox_deployed, waterbarrel, vendingmachine.deployed, workbench2.deployed, workbench3.deployed, workbench1.deployed, barricade.stone, barricade.wood, barricade.sandbags, barricade.metal, barricade.concrete, barricade.woodwire, sign.post.town.roof, sign.post.single, reactivetarget_deployed, furnace.large, sleepingbag_leather_deployed, plater.small.deployed, planter.large.deployed, rug.bear.deployed, rug.deployed, sign.medium.wood, ceilinglight.deployed, shelves, table.deployed, searchlight.deployed, scarecrow.deployed, skull_fire_pit, sign.pictureframe.tall, tunalight.deployed, sign.hanging.ornate, sign.small.wood, ladder.wooden.wall, shutter.wood.a, cupboard.tool.deployed, sign.large.wood, sign.huge.wood, sign.pictureframe.xxl, sign.pictureframe.xl, sign.hanging, survivalfishtrap.deployed, refinery_small_deployed, waterpurifier.deployed, water_catcher_large, water_catcher_small",
    "exclusions": ""
    },
     
  20. I wouldn't expect that that many items would cause an issue. Really there shouldn't be any noticeable performance impact until there are a few hundred thousand entries being checked a few hundred times per second, but there could be something I've overlooked. I'll test it out and see if I have the same behavior.
    [DOUBLEPOST=1516403564][/DOUBLEPOST]@Ridd1e - I tested that entity group and didn't see any performance issues. Would you mind posting your config?