Actualizado:

1. Java 1.21.9 y posteriores: regla del juego

/gamerule pvp false

Los jugadores ya no pueden hacer daño a otros jugadores en ningún lugar del mundo. Ponla en true para volver a activar el PvP. El nombre siguió siendo pvp cuando la 1.21.11 renombró otras reglas.

2. Servidores Java 1.21.8 y anteriores: server.properties

pvp=false

Edita server.properties y reinicia. La 1.21.9 quitó esta propiedad en favor de la regla del juego. Consulta server.properties.

3. Cualquier versión: un equipo con el fuego amigo desactivado

/team add peace "Paz"
/team modify peace friendlyFire false
/team join peace @a

Mantén a los jugadores nuevos en el equipo con un bloque iterativo:

/team join peace @a[team=]

Consulta el comando team.

4. PvP solo en una arena (iterativo)

/team leave @a[x=100,y=60,z=200,dx=30,dy=20,dz=30]
/execute as @a[team=] unless entity @s[x=100,y=60,z=200,dx=30,dy=20,dz=30] run team join peace @s

Los jugadores dentro de la caja dejan el equipo y pueden luchar; fuera vuelven a unirse. Vallar la arena es importante, porque un jugador sin equipo todavía puede golpear a un miembro del equipo. Consulta detección de zonas.

5. Bedrock Edition

/gamerule pvp false

Bedrock tiene esta regla desde hace mucho. Desactivar el fuego amigo en los ajustes del mundo hace lo mismo.

Solución de problemas

Comprueba tu comando

El Command Error Doctor (en inglés) revisa en tu navegador los errores de sintaxis más comunes.