Vanish dello staff (Veritévoiler)

Veritévoiler è il vanish dello staff di Verité. Permette a un membro dello staff di diventare invisibile ai giocatori ordinari così da poter osservare una situazione in silenzio, per poi riapparire quando ha finito. Il vanish è più che nascondere un corpo: silenzia anche i piccoli indizi che altrimenti rivelerebbero un membro dello staff nascosto, come i passi, le particelle, la chat, la presenza nella lista del server e i messaggi di entrata o uscita.

Il componente è abilitato per impostazione predefinita. Un membro dello staff lo attiva con il comando vanish. Per il comando stesso e chi può eseguirlo, vedi il Riferimento dei comandi. Per ogni nodo di permesso nominato in questa pagina, vedi il Riferimento dei permessi. Per le chiavi di configurazione esatte e i loro valori predefiniti, vedi la sezione vanish descritta in Interruttori delle funzionalità.

Attivare e disattivare il vanish

Un membro dello staff esegue il comando vanish per nascondersi, e lo esegue di nuovo per riapparire. Chi ha il permesso giusto può anche nascondere o rivelare un altro giocatore nominandolo. Lo stato di vanish viene ricordato: un membro dello staff nascosto che si disconnette, o se il server si riavvia, torna ancora nascosto.

Mentre è nascosto, un membro dello staff viene rimosso dalla vista di ogni giocatore che non è autorizzato a vederlo. I giocatori autorizzati a vedere lo staff nascosto continuano a vedere il membro dello staff normalmente.

Livelli del vanish

Il vanish è a livelli, così che lo staff senior possa nascondersi anche dallo staff junior. Ogni membro dello staff ha un livello di vanish, preso dal permesso verite.vanish.level.<n> più alto che detiene (per esempio verite.vanish.level.3). Un osservatore può vedere un membro dello staff nascosto solo quando detiene il permesso verite.vanish.see e il proprio livello è almeno pari a quello del membro dello staff nascosto.

Questo significa che un membro dello staff di livello superiore resta invisibile a uno di livello inferiore, mentre livelli uguali o superiori possono vedersi a vicenda. Quando non è presente alcun permesso di livello, tutti condividono il livello zero, quindi il solo permesso see decide chi può vedere chi.

I livelli provengono da LuckPerms

La risoluzione dei livelli legge i nodi verite.vanish.level.<n> tramite LuckPerms, inclusi i nodi ereditati dai gruppi. LuckPerms è opzionale: quando non è installato, ogni membro dello staff condivide il livello zero e conta solo verite.vanish.see.

Da cosa è nascosto un membro dello staff in vanish

Mentre un membro dello staff è nascosto, Verité nasconde le tracce che altrimenti lo rivelerebbero. Ciascuna di queste può essere attivata o disattivata per conto proprio.

Traccia Cosa viene nascosto
Il giocatore stesso Il corpo viene rimosso dalla vista di chiunque non possa vedere il membro dello staff, usando la gestione standard della visibilità.
Chat Tutto ciò che un membro dello staff nascosto digita viene consegnato solo allo staff che può vederlo, più la console del server. I giocatori normali non lo ricevono mai.
Ping della lista del server Il membro dello staff nascosto viene rimosso dal campione di giocatori mostrato nella lista multiplayer, e dove la piattaforma lo consente, il conteggio online viene abbassato di conseguenza.
Messaggi di entrata e uscita Mentre è nascosto, un membro dello staff che entra o esce dal server non mostra alcun messaggio di entrata o uscita.
Suoni Passi, mangiare, bere, spruzzi e suoni posizionati simili provenienti dalla posizione del membro dello staff vengono scartati per i giocatori che non possono vederlo.
Particelle Le particelle di movimento e azione dalla posizione del membro dello staff vengono scartate per i giocatori che non possono vederlo.
Raccolta e rilascio di oggetti Il membro dello staff non può raccogliere o lasciare cadere oggetti, quindi nessun oggetto si muove da solo.
Interazione con il mondo Rottura e posizionamento di blocchi, piastre a pressione e cavi a innesco, e riempimento o svuotamento di secchi sono impediti.
Progressi Gli annunci di progresso da un membro dello staff nascosto sono soppressi.
Proiettili Frecce, palle di neve e altri proiettili non possono essere lanciati, quindi nulla sfreccia dal nulla.
Danno e presa di mira Il membro dello staff non subisce né infligge danni, e i mostri non lo prendono di mira.
Fame e aria La fame non cala e la barra dell'aria resta piena sott'acqua.
Veicoli Se un altro giocatore tenta di salire su un veicolo che il membro dello staff sta cavalcando, il membro dello staff viene silenziosamente rimosso dal sedile per primo.

I giocatori e lo staff che sono autorizzati a vedere il membro dello staff nascosto, e il membro dello staff nascosto stesso, continuano a sentire, vedere e ricevere tutto normalmente.

Il nascondere suoni e particelle raggiunge il server

Suoni e particelle sono le uniche tracce che il server invia direttamente ai giocatori vicini, quindi nessuna impostazione ordinaria può fermarli. Verité li filtra a livello di connessione. Su una versione del server che questo non può leggere in sicurezza, il nascondere suoni e particelle si disattiva da solo e il resto del vanish continua a funzionare. La corrispondenza avviene per prossimità alla posizione recente del membro dello staff, quindi un suono innescato ben lontano dal membro dello staff (per esempio un proiettile che ha lanciato, che è impedito separatamente) non è coperto qui.

Il falso messaggio di uscita

Questo è il cuore anti-evasione del vanish. Quando un membro dello staff diventa nascosto, il server può trasmettere un messaggio di uscita dall'aspetto normale così che tutti credano che quel membro dello staff si sia disconnesso, mentre in realtà resta online a osservare. Un trasgressore che si comportava bene solo perché lo staff era presente potrebbe quindi commettere un errore davanti a qualcuno che non può vedere. Quando il membro dello staff nascosto ritorna visibile riappare semplicemente senza alcun messaggio.

Questo è controllato dall'interruttore fake.message. Quando è disattivato, non viene mostrato alcun falso messaggio di uscita.

Vantaggi dell'osservatore (effetti)

Nel momento in cui un membro dello staff diventa nascosto riceve un insieme di vantaggi di comodità che rendono più facile osservare senza tradirlo. Quali vantaggi si applicano dipende sia dal corrispondente interruttore di configurazione sia dai permessi del membro dello staff.

Vantaggio Richiede Cosa fa
Trasparenza della vista di sé interruttore self.view Il corpo del membro dello staff appare trasparente sul proprio schermo, un chiaro promemoria di essere nascosto.
Nessuna collisione Sempre, mentre è nascosto Gli altri giocatori non urtano più contro il membro dello staff.
Sonno ignorato Sempre, mentre è nascosto Il membro dello staff non trattiene mai la notte; non viene conteggiato per il dormire.
Volo interruttore fly e verite.vanish.fly Il membro dello staff può volare mentre è nascosto.
Invulnerabilità interruttore invulnerability e verite.vanish.invulnerable Il membro dello staff non subisce danni.
Visione notturna interruttore effects e verite.vanish.effects Il membro dello staff può vedere al buio.

La visione notturna è un vero effetto pozione, perché il client stesso schiarisce la vista, quindi la sua piccola icona di stato è l'unico indicatore su schermo inevitabile. Viene applicata senza particelle o scintille. Qualunque visione notturna il membro dello staff avesse già viene ricordata in un'archiviazione duratura prima che l'effetto del vanish venga applicato, così che sopravviva a un riavvio. Quando il membro dello staff ritorna visibile, il suo corpo torna solido, la visione notturna del vanish viene rimossa, e il suo effetto originale viene ripristinato esattamente com'era, o lasciato disattivato se non ne aveva alcuno.

La resistenza al fuoco e la respirazione subacquea non vengono deliberatamente concesse come effetti, poiché un membro dello staff nascosto non subisce già danni da fuoco, lava o annegamento e mantiene una barra dell'aria piena, quindi quegli effetti sarebbero puro ingombro su schermo. Quando il membro dello staff riappare, il volo viene mantenuto solo se detiene verite.vanish.fly.keep, oppure se è in modalità creativa o spettatore.

Strumenti dell'osservatore

Oltre ai vantaggi sopra, un membro dello staff nascosto ha diversi strumenti per ispezionare una situazione. Ciascuno ha il proprio interruttore di configurazione.

  • Interruttore spettatore con doppio sneak (gamemode): mentre è nascosto, premere sneak due volte rapidamente fa passare il membro dello staff in modalità spettatore per fluttuare attraverso i muri e osservare, e fare di nuovo doppio sneak lo riporta alla modalità precedente. Le due pressioni devono cadere entro una breve finestra.
  • Apertura silenziosa dei contenitori (silent.container): fare clic destro su un baule, barile, shulker o altro contenitore lo apre senza animazione del coperchio, suono o conteggio di apertura che avviserebbe i giocatori vicini. Fare clic destro su un baule dell'End apre il proprio baule dell'End del membro dello staff.
  • Ispezione dell'inventario del giocatore (inventory.inspect): fare sneak e clic destro su un altro giocatore per aprire una vista live di ciò che sta portando. Il giocatore ispezionato non vede mai l'interazione.
  • Vista fantasma (ghost): per un osservatore autorizzato a vedere un pari nascosto, il membro dello staff nascosto viene mostrato come una figura traslucida in stile spettatore anziché essere completamente invisibile. Questo è solo un overlay visivo per osservatore; non cambia mai la modalità di gioco reale del membro dello staff. Su una versione del server che non può risolverlo, l'osservatore vede semplicemente il membro dello staff completamente nascosto.

L'ispezione dell'inventario non è in sola lettura

La vista live dell'inventario aperta dall'ispezione dell'inventario non è bloccata alla sola visualizzazione a livello di oggetto, poiché lo staff è fidato.

Promemoria nella action bar

Mentre è nascosto, un piccolo messaggio persistente che indica che il membro dello staff è invisibile viene mostrato appena sopra la sua hotbar e mantenuto aggiornato. Questo previene l'errore comune di un membro dello staff che dimentica di essere invisibile e agisce come se gli altri giocatori potessero vederlo. Solo i giocatori nascosti vedono questo promemoria. È controllato dall'interruttore actionbar.

Interruttori delle funzionalità

Ogni parte del vanish sopra può essere attivata o disattivata per conto proprio senza disabilitare l'intero componente. Gli interruttori risiedono sotto vanish.features in config.yml, e ciascuno è predefinito su attivo. Imposta vanish.enabled su false per disabilitare del tutto il componente.

vanish:
  enabled: true
  features:
    fake.message: true
    actionbar: true
    self.view: true
    fly: true
    invulnerability: true
    effects: true
    gamemode: true
    ride.entity: true
    silent.container: true
    inventory.inspect: true
    server.ping: true
    ghost: true
    prevent.chat: true
    prevent.pickup: true
    prevent.drop: true
    prevent.interact: true
    prevent.block.break: true
    prevent.block.place: true
    prevent.target: true
    prevent.damage: true
    prevent.food: true
    prevent.buckets: true
    prevent.advancement: true
    prevent.projectiles: true
    muffle.sounds: true
    muffle.particles: true
Chiave Controlla
fake.message Il falso messaggio di uscita quando un membro dello staff si nasconde, e i messaggi di entrata o uscita nascosti.
actionbar Il promemoria di invisibilità su schermo sopra la hotbar.
self.view L'aspetto trasparente del corpo del membro dello staff sul proprio schermo.
fly Il volo mentre è nascosto, quando il membro dello staff detiene anche verite.vanish.fly.
invulnerability L'immunità ai danni mentre è nascosto, quando il membro dello staff detiene anche verite.vanish.invulnerable.
effects L'effetto di visione notturna, quando il membro dello staff detiene anche verite.vanish.effects.
gamemode L'interruttore spettatore con doppio sneak.
ride.entity La rimozione di un membro dello staff nascosto da un veicolo su cui un altro giocatore tenta di salire.
silent.container L'apertura dei contenitori senza animazione, suono o conteggio di apertura.
inventory.inspect Sneak-clic destro per visualizzare l'inventario di un altro giocatore.
server.ping Il nascondere lo staff invisibile dal ping della lista del server.
ghost L'overlay spettatore traslucido per gli osservatori che possono vedere il membro dello staff.
prevent.chat Il mantenere la chat di un membro dello staff nascosto visibile solo allo staff che può vederlo.
prevent.pickup Il blocco della raccolta di oggetti.
prevent.drop Il blocco del rilascio di oggetti.
prevent.interact Il blocco delle piastre a pressione e dei cavi a innesco.
prevent.block.break Il blocco della rottura dei blocchi.
prevent.block.place Il blocco del posizionamento dei blocchi.
prevent.target L'impedire ai mostri di prendere di mira il membro dello staff.
prevent.damage L'impedire al membro dello staff di subire o infliggere danni.
prevent.food Il mantenere la fame dal calare e la barra dell'aria piena.
prevent.buckets Il blocco del riempimento e svuotamento dei secchi.
prevent.advancement La soppressione degli annunci di progresso.
prevent.projectiles Il blocco dei lanci di proiettili.
muffle.sounds Lo scartare i suoni posizionati dalla posizione del membro dello staff per i giocatori che non possono vederlo.
muffle.particles Lo scartare le particelle dalla posizione del membro dello staff per i giocatori che non possono vederlo.

Fame e aria condividono un interruttore

Sia il calo della fame sia la barra dell'aria subacquea sono gestiti dal singolo interruttore prevent.food.

Placeholder di PlaceholderAPI

Quando PlaceholderAPI è installato, lo stato di vanish può essere letto da liste tab, scoreboard e configurazioni di chat senza codice, sotto l'identificatore verite.

Placeholder Valore
%verite_vanished% true o false, se il giocatore interrogato è attualmente invisibile.
%verite_vanish_count% Il numero di giocatori attualmente invisibili.

Quando PlaceholderAPI non è installato, questi placeholder semplicemente non esistono e nient'altro è influenzato.

Integrazione con la tab di TAB

Nella tab vanilla, un membro dello staff nascosto viene già rimosso dalla lista per chiunque non possa vederlo, perché Verité lo nasconde tramite la gestione della visibilità standard. Il popolare plugin TAB, tuttavia, ricostruisce la tab stessa e altrimenti riaggiungerebbe il membro dello staff nascosto. Quando TAB è installato, Verité si registra nell'integrazione vanish di TAB, così a TAB viene indicato quali giocatori sono nascosti e quali osservatori possono vederli, e TAB mantiene la sua tab allineata con il vanish. Non è necessaria alcuna configurazione; l'integrazione viene registrata automaticamente quando TAB è presente e non fa nulla quando è assente. Le versioni più vecchie di TAB che non espongono questa integrazione vengono ignorate, nel qual caso TAB può mostrare lo staff invisibile sulla sua tab finché non viene aggiornato.

Per gli sviluppatori

Il vanish espone due modi perché un altro plugin reagisca ai cambiamenti dello stato di vanish:

  • Un evento annullabile attivato prima che lo stato di vanish di un giocatore cambi, così che un plugin possa porre il veto su un vanish o unvanish (per esempio, negando il vanish in un mondo specifico).
  • Una callback leggera che si attiva immediatamente dopo un cambiamento dello stato di vanish, per i plugin che hanno solo bisogno di essere avvisati quando accade.

Per la superficie pubblica per sviluppatori, vedi l'API per sviluppatori.