1. A method for executing an online game, the method comprising: automatically generating a plurality of dynamic quests in the online game, each dynamic quest including one or more quest tasks and one or more quest rewards, wherein the automatically generating a dynamic quests includes, selecting a quest template that includes a plurality of tasks and a plurality of rewards; selecting one or more tasks from the plurality of tasks; selecting one or more rewards from the plurality of rewards; and creating the dynamic quest in the online game with the selected one or more tasks and the selected one or more rewards; and sending quests to a user session of the online game, wherein selecting the quest template includes selecting from a plurality of templates for creating quests, and the quest template is selected based on one or more of player characteristics, player social data, experience level of the player, number of quests completed by the player, number of quests abandoned by the player, or player-preferred themes, wherein operations of the method are executed by a processor.