The Dynamic Difficulty Adjustment (DDA) of games can play an important role in increasing the player engagement and fun. This work investigates the different mechanisms of a DDA system for a platform game to adequately adapt its difficulty level and keep the player in a state of flow. The proposed adjustment varies the size of the platform and the height of the jump, comparing different approaches from the game systems. Tests were made with sample groups, in which participants answered questionnaires and had their data collected for research purposes. The results indicated that the difficulty of platform games can be estimated by the components of the levels, including correlation between the difficulty and player performance data. In addition, player profiles were predicted from raw game session data and used with machine learning methods to define difficulty progression. Finally, the DDA models were able to adjust the game difficulty to the players, decreasing the dispersion between the performance data and keeping the player in a state of flow, especially when using a feed forward neural network to progress difficulty based on the player's profile.