As a dev with a pirated game, I can tell you it is basically impossible. It’s like pirating music, people seem to think it’s their ‘right’, or some other fkd up idea.
You could use the Epic model. Let people have the game for free, and pay for content. It seems to work for them.
I often wonder about using a validating server, to allow the game to play. The protocol for this changes on a regular basis. Pirated versions won’t be able to connect, because they are out of date. Downside is you need a connection to play. But this would definitely work.