Les NPC Citizen ne TP pas les non-op

Demon Block

Aventurier
10 Septembre 2023
6
0
1
23
Bonjour, j'ai un problème avec le Plugin Citizen 2.
Voila : J'ai un NPC qui est censé afficher un message dans le chat et TP un joueur au clic droit, sauf que quand le joueur n'est pas OP, le message apparait ( j'ai mis la permission citizen.npc.talk ) mais il n'est pas TP ! j'ai tout essayé mais rien. Voici la liste des plugins que j'utilise :

Essential X, Spawn, Chat
Cititizen 2
CitizenText
Worldguard
PowerRanks

( et d'autre qui selon moi ne pourrais pas affecter le NPC )


Merci d'avance pour votre aide
Demon Block
 

ShE3py

Enbogueuse
Support
26 Septembre 2015
4 140
163
464
247
21
Mìlhüsa
Bonjour,

mais il n'est pas TP
As-tu un message d'erreur dans le tchat ou dans la console ?

Sinon, il faudrait que tu envoies ton fichier de configuration ;
Code:
```yaml
Écrit trois accents graves suivis de « yaml », saute une ligne, copie-colle le contenu du fichier, et réécrit trois accents graves.
```

Cordialement,
ShE3py
 

Demon Block

Aventurier
10 Septembre 2023
6
0
1
23
Bonjour, Merci pour votre réponse rapide, lorsque je clique sur le png, j'ai un message dans le tchat comme quoi je n'est pas la permission d'exécuter cette commande ( en étant non op et grade "membre" )

Voici la config de Citizen :

YAML:
# Citizens Configuration
npc:
  always-use-name-holograms: false
  pathfinding:
    new-finder:
      iterations-per-tick: 250
      maximum-iterations: 768
      check-bounding-boxes: false
      open-doors: false
    default-destination-teleport-margin: -1
    default-distance-margin: 1
    default-path-distance-margin: 1
    update-path-rate: 1s
    default-range-blocks: 75.0
    straight-line-targeting-distance: 5
    default-stuck-action: none
    disable-mc-fallback-navigation: true
    maximum-visited-blocks: 768
    attack-range: 1.75
    allowed-fall-distance: -1
    use-new-finder: false
  default:
    bossbar-view-range: 64
    block-breaker-radius: -1
    waypoints:
      cache-paths: false
    look-close:
      enabled: false
      range: 10
      random-look-enabled: false
      random-look-delay: 3s
      realistic-looking: false
      disable-while-navigating: true
    talk-close:
      random-talker: false
      enabled: false
      range: 5
      text:
        '0': Hi, I'm <npc>!
    spawn-nodamage-duration: 1s
    stationary-duration: -1
  chat:
    options:
      bystanders-hear-targeted-chat: false
      max-number-of-targets-to-show: 2
      multiple-targets-format: <target>|, <target>| & <target>| & others
      range: 5
      max-text-range: 500
      talk-to-npcs: true
    format:
      no-targets: '[<npc>]: <text>'
      with-target-to-bystanders: '[<npc>] -> [<target>]: <text>'
      to-target: '[<npc>] >> <text>'
      with-targets-to-bystanders: '[<npc>] -> [<targets>]: <text>'
  controllable:
    ground-direction-modifier: 1.0
    max-ground-speed: 0.5
    use-boat-controls: true
  hologram:
    default-line-height: 0.4
    update-rate: 1s
  limits:
    default-limit: 10
    max-permission-checks: 100
    max-packet-entries: 15
  text:
    default-random-text-delay-max: 10s
    default-random-text-delay-min: 5s
    speech-bubble-duration: 50t
    talk-item: '*'
  tablist:
    disable: true
    remove-packet-delay: 1t
  follow:
    teleport-across-worlds: false
  skins:
    player-join-update-delay: 3s
    max-retries: -1
    try-fetch-default-skin: true
    retry-delay: 5s
    rotation-update-degrees: 90.0
    use-latest-by-default: false
    view-distance: 100.0
    placeholder-update-frequency: 5m
  chunks:
    always-keep-loaded: false
  commands:
    global-cooldown: 1s
    error-messages:
      maximum-times-used: You have reached the maximum number of uses ({0}).
      missing-item: Missing {1} {0}
      no-permission: You don't have permission to do that.
      not-enough-experience: You need at least {0} experience.
      not-enough-money: You need at least ${0}.
      on-cooldown: Please wait for {minutes} minutes and {seconds_over} seconds.
      on-global-cooldown: Please wait for {minutes} minutes and {seconds_over} seconds.
  movement:
    water-speed-modifier: 1.15
  use-packet-holograms: false
  packets:
    update-delay: 30
  delay-player-teleport: -1
  player:
    remove-from-list: true
  selection:
    item: stick
    message: Selected [[<npc>]] (ID [[<id>]]).
  server-ownership: false
  shops:
    global-view-permission: ''
  scoreboard-teams:
    enable: true
general:
  authlib:
    profile-url: https://sessionserver.mojang.com/session/minecraft/profile/
  debug-chunk-loads: false
  debug-file: ''
  debug-mode: false
  debug-pathfinding: false
  wait-for-entity-spawn: 1s
  color-scheme:
    message-error: <red>
    message-highlight: yellow
    message: <green>
  translation:
    locale: ''
  resource-pack-path: plugins/Citizens/resourcepack
  reload-warning-enabled: true
advanced:
  check-minecraft-version: true
economy:
  npc:
    cost: 100.0
storage:
  save-task:
    delay: 1hr
  file: saves.yml
  type: yaml
 

ShE3py

Enbogueuse
Support
26 Septembre 2015
4 140
163
464
247
21
Mìlhüsa
Tu devrais avoir le choix entre faire exécuter la commande par le joueur (donc il ne pourra pas faire /tp s'il n'a pas la permission pour) ou par la console, regarde le paragraphe sur les commandes dans la documentation de Citizen.

Et à mon avis, tu devrais aussi avoir un fichier de configuration par PNJ, en plus du fichier de base que tu as envoyé.
 
  • J'aime
Reactions: Niz

Demon Block

Aventurier
10 Septembre 2023
6
0
1
23
Bonjour, le principe est que le joueur se fait TP en cliquant sur le PNJ, donc par la console, je n'ai pas de config par PNJ ou du moins je ne la trouve pas. "la documentation de Citizen" désolé mais je ne sais pas ce que c'est, pouvez-vous m'en dire plus et m'aider d'avantage svp ?
 

ShE3py

Enbogueuse
Support
26 Septembre 2015
4 140
163
464
247
21
Mìlhüsa
le principe est que le joueur se fait TP en cliquant sur le PNJ, donc par la console
Je suppose que tu fais actuellement que le joueur exécute la commande /tp <xyz> donc ça ne marchera pas s'il n'a pas la permission de faire cette commande, tu dois faire que la console/le serveur fasse /tp <joueur> <xyz> pour outrepasser les permissions du joueur.

"la documentation de Citizen" désolé mais je ne sais pas ce que c'est, pouvez-vous m'en dire plus et m'aider d'avantage svp ?
https://wiki.citizensnpcs.co/NPC_Commands#Adding_Commands, 3e exemple.
 

Demon Block

Aventurier
10 Septembre 2023
6
0
1
23
Mais non, c'est pas le joueur qui exécute la commande c'est le png, j'ai utiliser la commande
/text cmd add tp [coordonnée]
ou un truc comment ça en utilisant Citizen text et en visant mon pnj, j'ai associer une commande a un message dans le tchat sauf que il y a que le message qui apparait, le tp marche pas et me dit que j'ai pas la permission quand je clique droit sur le pnj.
 

ShE3py

Enbogueuse
Support
26 Septembre 2015
4 140
163
464
247
21
Mìlhüsa
Donc le PNJ affiche un message, et le joueur clique sur ce message.

https://github.com/SkytAsul/CitizensText/wiki/Get-started#messages
Code:
/text cmd <message id> console

Si tu veux il faut que quelqu'un qui ait les droits fasse ton /tp <joueur> <xyz>, en l’occurrence la console si tu veux ignorer toutes les permissions. Il faut donc que tu modifies ta commande pour qu'elle utilise un placeholder qui sera remplacé par le nom du joueur, tu as une vidéo tutoriel en français sur la page Spigot de CitizensText.
 

Demon Block

Aventurier
10 Septembre 2023
6
0
1
23
Je ne comprend pas je suis pas expert c'est quoi un place holder ??

Alors ;
En étant admin, je clique sur le pnj, j'ai le message et je suis tp, pas besoin de cliquez sur le message sauf que quand je suis pas op ça marche pas !
 

ShE3py

Enbogueuse
Support
26 Septembre 2015
4 140
163
464
247
21
Mìlhüsa
En étant admin, je clique sur le pnj, j'ai le message et je suis tp, pas besoin de cliquez sur le message sauf que quand je suis pas op ça marche pas !
j'ai associer une commande a un message dans le tchat
Tu n'as donc pas associé de commande à un message, tu as associé un message et une commande à un PNJ.

La commande doit bien être exécutée par quelqu'un, là tu fais exécuter /tp par le joueur qui a cliqué sur le PNJ, d'où l'erreur qu'il n'a pas la permission de faire cette commande. Tu dois faire faire exécuter /tp par la console (ou n'importe quoi qui a les droits pour), mais auquel cas la commande à exécuter dépend du joueur ; /tp ShE3py 1 2 3 /tp Bernouille 1 2 3, d'où l'idée d'un placeholder /tp ${player} 1 2 3 que le plugin remplacera par le nom du joueur.

Maintenant le placeholder dépend du plugin, et ne connaissais ni Citizens ni les commandes que tu as fait ni le message d'erreur exacte qu'il t'affiche, je ne peux pas faire grand-chose de plus que regarder un tutoriel sur comment utiliser Citizens à ta place, ce que je t'invite à faire.