I wouldn’t recommend doing that for any project actually. We keep .uasset files read-only (don’t use +w for them) at Epic.
Sorry, I think there might have been a mixup between read-only and locked. By default all files are read-only in Perforce unless they are checked out. This has some advantages in that you have to think about whether you should/can modify that file before you start modifying it (in case it is a file that cannot be merged if someone else makes conflicting changes, like a .uasset or executable). Separately, you can lock a file in Perforce when you have it checked out. The default behavior is that text files aren’t locked (since you can merge conflicts), and binary files are locked (since you can’t).
The only files we use +w on are executables (the exe, dll, and pdbs in Engine\Binaries, though we don’t use the typemap for that either, it’s just set by hand when new binaries are added to the depot), so programmers can build locally without having to check out the binaries or remove them from their clientspec.