It's true that a CRDT is often not the right thing for a classic client/server application. But this doesn't mean we should just give up on ux and use locking.
There are approaches to multiplayer that are client/server native. By leveraging the authoritative server they can offer features that CRDTs can't, while preserving the great ux.
I'm partial to server reconciliation:
https://www.gabrielgambetta.com/client-side-prediction-serve...
My product, Reflect, implements server reconciliation as a service. You can learn more about how it works here: