Not compatible with ZoneManager 3.0.0, 3.0.1 and 2.* okFixed
Due to changes in how this plugin has changed with version 3.0.0, TruePVE is not yet compatible with this version.  Until otherwise noted, please remain at the older version of ZoneManager if you use zones to set PVE vs. PVP, etc., with TruePVE.

EDIT: We can now work with older ZoneManager and anything above 3.0.0 including 3.0.1.
not ok, kill in pvp zone doesn't work with the lastest version of TruePVE and ZoneManager
I just confirmed that it is returning the Zone IDs as intended on attack.  In your mappings, use the zoneid number on the right side and the ruleset name on the left.

Merged post

My mistake, the Mappings should be set as follows.  Will correct and add to the docs:

  "Mappings": {
    "default": "default",
    "66499587": "killzone"
  },​


...where killzone is the name of a RuleSet.

oh !! we have to change the name by the ID ! I don't see this change, thank you
Not sure when or if this changed.  But, it is definitely a FAQ and one for which I did not have a good answer.  It's in the documentation now.  If you put the number on the right side, it always gets reset on plugin reload such that it would read "killzone": "killzone".  This might work for LiteZones (if their zone is named "killzone," but not for ZoneManager.
I try, not working
What is specifically not working.  Can you paste the ruleset for the zone you're trying to make PVP?

"Mappings": {
"default": "default",
"raid-pvp": "raid",
"air-pvp": "raid",
"arena-pvp": "raid",
"petrol-pvp": "raid",

 

my id in zone manager are "raid-pvp" etc.....

Example for a kill zone where players can hurt players, etc.
      "name": "killall",
      "enabled": true,
      "defaultAllowDamage": true,
      "flags": "HumanNPCDamage, LockedBoxesImmortal, LockedDoorsImmortal, AdminsHurtSleepers",
      "rules": [
        "anything can hurt dispensers",
        "anything can hurt players",
        "players 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 cannot hurt players",
        "anything can hurt resources",
        "players can hurt npcs"
      ]
​


Merged post

Ok, I was not aware that you could have zone IDs as strings.  I am pretty sure they are supposed to be ID numbers, e.g.:

    {
      "Name": "killzone1",
      "Radius": 20.0,
      "Radiation": 0.0,
      "Comfort": 0.0,
      "Temperature": 0.0,
      "Location": "1383.454 67.28368 731.0082",
      "Size": "0 0 0",
      "Rotation": "0 0 0",
      "Id": "66499587",
      "EnterMessage": "Entering PvP Zone1!",
      "LeaveMessage": "Leaving PvP Zone1!",
      "Permission": null,
      "EjectSpawns": null,
      "Enabled": true,
      "Flags": "None"
    }
​
Did extensive testing myself and have to say that it might return zone ids for entities, but not for players.
In my solution I utilized the GetPlayerZoneIDs Hook from ZoneManager in GetLocationKeys:
        private List<string> GetLocationKeys(BaseEntity entity)
        {
            if(!useZones || entity == null) return null;
            List<string> locations = new List<string>();
            if (ZoneManager != null)
            {
                List<string> zmloc = new List<string>();
				if (entity is BasePlayer)
				{
                    string[] zmlocplr = (string[]) ZoneManager.Call("GetPlayerZoneIDs", new object[] { entity as BasePlayer });
                    foreach(string str in zmlocplr)
                    {
                        zmloc.Add(str);
                    }
				}
				else
				{
					string[] zmlocent = (string[]) ZoneManager.Call("GetEntityZoneIDs", new object[] { entity });
                    foreach(string s in zmlocent)
                    {
                        zmloc.Add(s);
                    }
				}

                if (zmloc != null && zmloc.Count > 0)
                {
                    locations.AddRange(zmloc);
                }
            }
            if (LiteZones != null)
            {
                List<string> lzloc = (List<string>) LiteZones?.Call("GetEntityZones", new object[] { entity });
                if (lzloc != null && lzloc.Count > 0)
                {
                    locations.AddRange(lzloc);
                }
            }
            if (locations == null || locations.Count == 0) return null;
            return locations;
        }​

This is probably not the best way to do it, but for me it is working.

That's possibly a good idea, there.  I don't generally have players available for testing so it's possible that it doesn't work on players atm.
You can do it with "spawn player" in console ;)
It's amazing how long one can live and still learn.

Merged post

Added to 0.9.3.
Ok, i try another time, nothing work :/ no kill in zone
Working beautifully after update
Locked automatically