A player just reported that it's easy to play the full version of my (fully offline) Unity game for free by just:
- Buy the full game.
- Back up the data files.
- Refund the full game.
- Get the demo version.
- Replace the demo's data files with the full version's data files.
I know that Steam disables refunding after a soft limit, so you can't just do this for every game...
But even so how could I defend against this? There must be easy solution for this, right?
Thanks in advance!
UPDATE:
There are two approaches to fix this issue:
Make your own .exe so Steam can differentiate the Demo and the Full version. (See the answer of Anomalous Underdog below for details)
Check with Steam API if the user owns the game at startup and quit if something is not right.
"In your base game, you could periodically call BIsSubscribedApp( 1346210 ) to determine whether or not the user owns a license to the base game." - Steam