Come funzionano le segnalazioni all'interno del gioco su Roblox
La tecnologia alla base della creazione di report dettagliati in ambienti 3D dinamici

- Roblox elabora 274 milioni di aggiornamenti di avatar al giorno, e questo è solo uno dei tipi di contenuti generati dagli utenti che moderiamo per individuare eventuali violazioni delle norme di sicurezza.1
- Le segnalazioni dei giocatori sono fondamentali per individuare tempestivamente le violazioni e vogliamo rendere più semplice per i giocatori segnalare qualsiasi cosa ritengano inappropriata o contraria alle nostre politiche.
- Poiché le violazioni nei contenuti 3D dinamici generati dagli utenti possono essere difficili da individuare, utilizziamo il ray casting, la clonazione dei modelli di dati e un'interfaccia utente di segnalazione completamente rinnovata per aiutare i giocatori a identificare e segnalare oggetti specifici con i dati e le prove visive necessarie per consentirci di intervenire.
Nei momenti di picco, la piattaforma Roblox elabora 274 milioni di aggiornamenti giornalieri degli avatar.1 Segnalare e esaminare gli abusi in questo tipo di contenuti 3D dinamici generati dagli utenti è impegnativo perché non sempre lasciano una traccia esplicita come fanno i contenuti statici, quali un log di testo o un post sui social media. In questo post del blog descriviamo il nostro approccio alla raccolta dei dati e del contesto visivo necessari per intervenire sulle segnalazioni dei giocatori, dal nostro approccio iniziale basato sul ray casting per identificare gli avatar abusivi, al nostro sistema attuale, che si integra con il modello di dati di Roblox in modo che i giocatori possano segnalare con precisione qualsiasi oggetto di gioco 3D.
Le segnalazioni dei giocatori sono fondamentali per identificare tempestivamente potenziali violazioni delle linee guida e recentemente abbiamo aggiornato il nostro flusso di segnalazione per consentire ai giocatori di segnalare o bloccare più facilmente e immediatamente qualsiasi cosa li faccia sentire a disagio o in pericolo. Le segnalazioni dei giocatori portano ora alla rimozione automatica di oltre 19.000 avatar che violano le linee guida ogni mese e fungono da importante segnale precoce per individuare giochi inappropriati.2
La sfida di acquisire contenuti dinamici
Poiché i contenuti 3D dinamici generati dagli utenti possono essere combinati e utilizzati in contesti diversi, semplici descrizioni o screenshot non sempre forniscono i dati necessari per consentirci di intervenire. I contenuti statici come i post sui social media, i commenti sui forum e i video fungono da documentazione permanente di un problema, rendendo facile sia segnalare che esaminare le prove. Le chat testuali e vocali vengono documentate su Roblox, ma altri tipi di contenuti generati dagli utenti non lasciano tracce così esplicite. Le immagini possono essere caricate da altre parti della piattaforma, le interazioni dinamiche potrebbero non essere documentate e i giocatori a volte combinano capi di abbigliamento singolarmente innocui per formare un abbigliamento inappropriato.
Per individuare le violazioni delle linee guida in situazioni dinamiche, chi effettua la segnalazione deve innanzitutto disporre di un modo per identificare elementi specifici all’interno di un gioco. In secondo luogo, il meccanismo di identificazione deve fornire gli ID degli oggetti relativi al contenuto segnalato, in modo che sia possibile valutare l’oggetto corretto.

Rilevamento di avatar offensivi nello spazio 3D
Il nostro precedente strumento di segnalazione si basava principalmente sulle prove ricavate dai log delle chat. Le segnalazioni non contenevano alcuna informazione visiva, lasciando ampie lacune nella comprensione. Quando abbiamo iniziato a lavorare su uno strumento di segnalazione in grado di catturare più contesto riguardo ad altri tipi di violazioni, ci siamo concentrati innanzitutto su un tipo di oggetto con cui ogni giocatore interagisce: gli avatar. I giocatori possono personalizzare gli avatar per rappresentarsi su Roblox, e acquisire informazioni su un avatar significava poter associare le violazioni a giocatori specifici anche in assenza di tracce scritte nella chat. Un sistema in grado di identificare efficacemente i dati degli avatar avrebbe costituito anche una base importante per altri tipi di oggetti in futuro.
Tra le possibili soluzioni c’era quella di acquisire screenshot o registrazioni dello schermo per integrare le segnalazioni con ulteriori prove. Abbiamo iniziato a testare gli screenshot perché rappresentavano un modo semplice per raccogliere informazioni, anche se non riuscivano a catturare tutte le possibili violazioni. Ci siamo rapidamente imbattuti in un limite: un’immagine 2D non ci aiutava a distinguere l’avatar di un giocatore dagli altri avatar e dai personaggi non giocanti (NPC) nello spazio 3D. Non sempre riuscivamo a identificare con precisione l’ID utente del potenziale trasgressore quando gli avatar si sovrapponevano.

Dovevamo capire come estrarre più informazioni in modo da poter trasformare un'immagine 2D scattata in un singolo istante in prove utilizzabili.
Abbiamo optato per il ray casting come metodo efficiente per isolare le informazioni rilevanti nello spazio 3D e rappresentarle in un'immagine 2D al momento della segnalazione. Quando un giocatore apre una segnalazione, per prima cosa raccogliamo un elenco dei giocatori presenti nella sessione ed escludiamo tutti quelli che non si trovano nel campo visivo. Quindi utilizziamo il ray casting per determinare i riquadri di delimitazione per l’avatar di ciascun giocatore. Allo stesso tempo, salviamo automaticamente il contenuto del frame buffer del motore di Roblox in uno screenshot. In questo modo, un semplice screenshot 2D può essere abbinato a dati spaziali sufficienti sul mondo 3D per distinguere il potenziale trasgressore dagli altri avatar e dall’ambiente circostante. Il ray casting ci permette di determinare i bounding box in media in 3,5 millisecondi. Metodi più lenti avrebbero richiesto una pausa fastidiosa, interrompendo l’esperienza di gioco.


Da lì, è possibile raccogliere in modo asincrono altre informazioni contestuali relative a una potenziale violazione delle norme. Attualmente, il sistema attiva automaticamente questo meccanismo quando un utente avvia una segnalazione.
Modalità Evidenzia
Successivamente, avevamo bisogno di un'interfaccia di segnalazione intuitiva che consentisse ai giocatori di identificare rapidamente i contenuti in violazione. Abbiamo aggiornato la nostra interfaccia di segnalazione con una Modalità Evidenziazione per consentire ai giocatori di evidenziare gli elementi in violazione e di annotare le loro segnalazioni con ulteriori informazioni. Quando un giocatore cliccava su un elemento in violazione, proiettavamo una serie di raggi in un cerchio attorno al cursore del giocatore. Se selezionava l’avatar di un altro giocatore, potevamo acquisire tutti i metadati necessari per esaminare la segnalazione e intervenire. Nelle ricerche interne condotte tra gli utenti, la Modalità Evidenziazione è stata accolta positivamente, anche dai giocatori più giovani (di età compresa tra i 9 e i 13 anni), che ora erano in grado di evidenziare più facilmente un problema e completare con successo una segnalazione.

Con questa versione iniziale del nuovo strumento di segnalazione, abbiamo acquisito solo gli ID degli avatar. Se un giocatore selezionava qualcos’altro, non acquisivamo l’ID dell’oggetto. Potevamo esaminare le segnalazioni per ricavarne informazioni e un contesto più ampio, contattare gli sviluppatori e decidere come procedere.
Ma avevamo in mente un meccanismo che consentisse ai giocatori di evidenziare con precisione qualsiasi elemento all’interno di un gioco e di acquisire i relativi dati direttamente nel proprio rapporto.
Acquisizione del modello di dati per tipi di contenuto generici
Sebbene il nostro approccio basato sul ray casting circolare funzionasse bene per distinguere il numero limitato di avatar o pubblicità all’interno del campo visivo di un giocatore, non era scalabile per ogni oggetto presente nel gioco. Consideriamo l’ambiente riportato di seguito:

In un ambiente denso in cui decine di oggetti come rocce, arbusti e fiori si sovrappongono e si animano, il ray casting circolare non sarebbe in grado di identificare in modo affidabile un singolo fiore o arbusto. Dovevamo consentire ai giocatori di evidenziare gli oggetti con maggiore precisione e avevamo bisogno di un modo per acquisire i dati associati a qualsiasi oggetto nel gioco.
Il motore di Roblox memorizza già una rappresentazione del mondo 3D nel proprio modello di dati, ma l’intero modello di dati di un gioco può raggiungere dimensioni dell’ordine dei gigabyte. Per ottimizzare la velocità, abbiamo creato un meccanismo di clonazione (sviluppato inizialmente per il “Translation Feedback”) che clona solo gli oggetti chiave necessari per il rendering di una scena. Una volta ottenuta questa versione clonata del modello di dati, possiamo utilizzare la Modalità Evidenziazione per inserire il segnalatore nel mondo clonato, dove il giocatore può evidenziare con precisione ciò che desidera segnalare in 3D.

Questo approccio offre al giocatore un maggiore controllo su ciò che segnala e ci fornisce i metadati necessari per valutare molti più tipi di contenuti. Inoltre, alleghiamo automaticamente uno screenshot alla segnalazione per facilitare la revisione da parte dei moderatori.
Integrità dei dati
Una domanda fondamentale che ci siamo posti sin dall’inizio del progetto è se fosse opportuno acquisire le prove sul dispositivo del cliente o sul server di gioco. Roblox supporta script lato client che possono aggiornare solo lo stato del client e non quello del server. Inoltre, alcuni effetti fisici sono non deterministici, il che significa che un’acquisizione lato server potrebbe non mostrare esattamente ciò che ha sperimentato chi ha segnalato l’evento. Abbiamo optato per l’acquisizione lato client per garantire che chi segnala possa catturare una rappresentazione fedele di ciò che sta vedendo, ma ciò comporta un compromesso: un malintenzionato potrebbe potenzialmente ottenere l’accesso a un client e fabbricare prove.
Per mitigare questo rischio, verifichiamo l’accuratezza attraverso una serie di segnali ed eliminiamo le rappresentazioni client inesatte. Per fare un paragone, i meteorologi possono produrre previsioni meteorologiche accurate anche se non ricevono letture precise da ogni stazione meteorologica.
Lavori futuri
Grazie a questi miglioramenti e alla capacità di acquisire informazioni visive più ricche, il sistema ora rimuove automaticamente oltre 19.000 avatar che violano le linee guida ogni mese ed è diventato un segnale importante per individuare giochi inappropriati. Abbiamo inoltre riscontrato un’ampia diffusione, con circa il 19% delle segnalazioni ammissibili che includono annotazioni visive.2
Stiamo già lavorando alla prossima fase di miglioramenti, sviluppando un metodo per rilevare violazioni dinamiche (come le emote combinate con i movimenti dei giocatori) che non possono essere determinate da istantanee puntuali. Entro la fine dell’anno, prevediamo di abilitare l’acquisizione di una sequenza temporale della scena segnalata. Mentre Roblox continua a fornire ai creatori gli strumenti per realizzare interazioni di gioco più ricche, il nostro team dedicato alla sicurezza continuerà a promuovere un ambiente sicuro per tutti i giocatori.
Vorremmo ringraziare Rayan Hussain, Ryan Liu, Bridget Daly, Agatha Kielczewski, Alex Leavitt, Ying Liao e Andrew Xu per il loro lavoro su questo progetto.
1Sulla base dei dati del primo semestre del 2025.
2Sulla base dei dati dal 1° marzo al 1° aprile 2026.


