I think this is bad in quite a few ways, FilteringEnabled allows developers to make a fresh start on their games, and the reason it exists is for increased security and often decreased lag for players.
Although the basic: not replicating changes made on clients to the server is very much important, what is also important, possibly to a greater extent, is securing Server and Client communications, as well as verifying anything replicated between clients.
The problem I have with this is that I think we’re getting too close to essentially saying lets have filteringenabled in principle, i.e. client and server model, but return to the old system in the way we code things, anyone could quite easily create a client script and a server script which result in replication of everything that’s done on the client to the server, whilst still technically having a FilteringEnabled game, but we don’t do that because it completely removes the point of FilteringEnabled.
Running UI events and actions from the server confuses the setup of the client/ server model, and also causes lag.
I’m not too sure what ‘code wrappers’ really means, but if it means translating previously clientsided actions to serversided actions and clientsided actions respectively; it sounds a lot to me like we could end up replicating things done by one client onto others connected to that server (when not desired).
FilteringEnabled has always been a seal of quality and security, but it’s turning into a sort of hacky setting partway between the old and new system. I feel like experimental games should just be 13+, promoted less, hidden from search and not allowed to be advertised/ sponsored; but no further. It means that if someone wants to make that leap from making fun, recreational games, to making professional and well made games, they need to also make the leap from the old system to FilteringEnabled, and from bad to good code.
The play solo update is great, and very welcomed, as well as the CreatePlaceAsync.