Three major factors of gamification are empty-bar problem which aims to gather people by paying them to play single player games, onboarding which focuses on getting people started without manuals by just playing, and engagement-loop which keeps people engaged in continued gameplay.