Source: https://www.gamasutra.com/blogs/DanFelder/20150529/244641/Design_101_The_Structure_of_Fun.php