Some games are paid, so the developers also release a demo of the full version to attract more potential players. While this is a good idea, there are a few issues with this, which I'll try to explain.
Demos should be a good taste of the full game. If they're overly locked down or restricted, people that play the demo before purchasing the full game may find they don't like it, but for specific issues that are only in the demo. For example, some games restrict you to only a few levels, some remove some customization features, etc, etc. While this may give you an incentive to purchase the full version, some people that would have previously bought the full version may no longer want it due to issues in the demo. This could probably be solved fairly easily by having the demo being identical to the full version, but with a unique campaign that is unavailable in the full version. A good example of this is The Stanley Parable.
Well, what about multiplayer? If your game has multiplayer, that's a different story . Now the game demo has to check if it's the demo and not the full version, and not download level content only available in the full version. But this method has yet another issue: what if someone has a patched demo that ignores that check? Suddenly they have the full version with all the level content. Another possible solution is to send the demo check to the server and confirm it there, but again that has the same issue of being able to modify outgoing network traffic to allow trick the server into thinking the client is running the full version. One solution is let the demo have all the level content available, and have the full version include some premium-only features like character customization Now this avoids nearly all the aformentioned issued while still having paid content. This model is simple, works, and doesn't give paying players a competitive advantage.
Another way to not give paying players a competitive advantage while making it occasionally worth it to buy ingame items is having an ingame currency system and allow players to pay real money for this ingame currency, and allowing any player to buy ingame items with the ingame currency. This gives paying players an incentive to buy the ingame currency .