Close
    Search Search

    FilteringEnabled

    FilteringEnabled

    FilteringEnabled no Roblox Studio.

    FilteringEnabled é um recurso que impede que as alterações feitas em um cliente de jogo se propaguem para o servidor. Ele foi habilitado anteriormente alterando o valor da propriedade FilteringEnabled do FilteringEnabledEspaço de trabalho, mas agora está ativado por padrão e impossível de ser desativado. Quando a propriedade FilteringEnabled é definida como true, as alterações são feitas nas propriedades do FilteringEnabledDataModel (o objeto do jogo) e seus descendentes só serão replicados se forem originados do servidor e, caso contrário, serão ignorados. Isso evita efetivamente quase todas as explorações, uma vez que os jogadores em um jogo só podem modificar a forma como o jogo funciona e se parece por si mesmos: suas alterações não serão replicadas para o servidor e depois para outros jogadores e permanecerão inofensivas.



    Isso funciona separando a instância entre o servidor Roblox e o cliente, e não levando mais nenhuma alteração feita do cliente para o servidor, a menos que especificamente programado pelo desenvolvedor para que o servidor procure quaisquer alterações feitas no cliente, geralmente via FilteringEnabledRemoteEvent e FilteringEnabledRemoteFunction, que são armazenados em FilteringEnabledReplicatedStorage.

    Porque a maioria das explorações usa os valores da memória de acesso aleatório e, em seguida, os modifica de modo que quando a unidade de processamento central consulta os cartões de memória de acesso aleatório por valores de dados e, em seguida, envia o que encontra para o cliente Roblox e, por sua vez, o Servidor Roblox, um explorador pode mudar quase todos os aspectos de um jogo no Roblox simplesmente modificando a interpretação do jogo por seu cliente. O FilteringEnabled corrige isso simplesmente bloqueando quaisquer alterações futuras do cliente no servidor, o que também faz com que alguns scripts sejam interrompidos, pois dependem do servidor recebendo a entrada do cliente.



    Um lugar que não tem FilteringEnabled habilitado é considerado como Locais Experimentais, cujos jogadores menores de 13 anos não podem acessar esses lugares. O recurso junto com os Locais Experimentais foram descontinuados e todos os locais são forçados a usar FilteringEnabled.

    Notas

    • Quando um LocalScript modifica um objeto no jogo, a mudança será feita no cliente, mas não será replicada para o servidor. Por exemplo, se um LocalScript cria uma peça, a peça existirá apenas no modelo de dados desse cliente. O servidor rejeitará a alteração e não a replicará para os outros clientes. Isso possibilita a criação de peças locais.
    • Esse recurso quebrou a maior parte do conteúdo legado, como lugares, veículos, equipamentos, porque seus scripts ainda dependiam da replicação do cliente para o servidor. É também uma das principais razões pelas quais os jogos mais antigos quebram. Para desenvolver jogos que ainda funcionam com FilteringEnabled, você precisa que os clientes se comuniquem com o servidor por meio de RemoteFunction e RemoteEvent.
    • Quando esta propriedade for verdadeira, o PlayerGui de um Player não será replicado para o servidor. Ele existirá apenas no cliente. Isso significa que os Scripts do PlayerGui não serão executados e o servidor não conseguirá acessá-los.
    • Habilite "PrintFilters" em Studio Settings> Network> PrintFilters para ver o que está sendo filtrado. Isso é muito útil para depurar scripts.
    Adicione um comentário do FilteringEnabled
    Comentário enviado com sucesso! Vamos analisá-lo nas próximas horas.