In recent years, engineering educators have begun to focus more on new learning methods that allow students to better understand and practice their subject matter. However, these approaches are not ideal for every student, and can be costly or time consuming to educators and institutions. Instead, a more individualized approach to learning is needed. This paper addresses this challenge through a narrative game system. Building on top of a previously created narrative game, the system utilizes metacognitive strategies (Roadmap, What I Know-What I Want to Know-What I Have Solved, and Think-Aloud-Share-Solve) and a random forest machine learning model to model a student's learning process. Based on data collected from the student, including emotional state, time, and errors in solutions, the system can estimate the current stage in the learning process. The student can then be offered prompts or hints to guide learning in a positive and productive direction, dynamically correcting misconceptions and allowing the student to learn at his/her own pace in a stress-free environment.