Just because YOU dislike it doesn't mean its bad. This generation is all about "if I don't like it it's horrible and get rid of it NOW!".
No actually. Its not "because I dislike it".
This is basic gamedesign.
If you interfere with the player directly, telling him what he can and can't do, instead of letting the world do that, this breaks the players immersion. Therefor, any other solution, that does the same job WITHOUT artificially interfering with the player IS OBJECTIVLY better.
To you, it might not matter. And that is fine. You aren't "lesser" because of it.
BUT it still is worse design.
Every time something is levelgated it is basically the same as a textbox popping up telling you:
"Nope! Not yet! We need you to stay weak for a little longer sorry!"
What would I do to slow progress down, to have the same effect?
(remember those are solutions off the top of my head and if I were to actively think for over a year about it, I'd find better/better optimized solutions)
-reduce overall leveling (simple, you have the choice to go full melee but to not have a forge or get a forge but not be a good fighter)
-bind Perks to things done in the world (HS perk needs you to do 10, 25,50,100,175 hs; forge needs you to find a book/buy it at a trader/get it as a questreward/visit a factory...)
- (going back to A16.4) leveling up a perk cant be done via spamming, but needs time to go forward (your character needs time to learn new things)
those are all things that could be done and the devs didnt have to "gut" the players choices, but let the world do it.
And there are a lot more ways, but I hope my point got across.
Its not that I don't like it. It is that it is OBJECTIVELY a bad design.
It might be better then A16.4, but that is only because it was poorly optimized. I could think of a lot of ways to make levelgating FAR worse then 16.4
Its like a bell curve.
The way A16 did it, had WAY more potential, but was badly optimized, while A17 has little potential to improve, only to balance it, but doesn't suck as much.