1. A method, comprising: detecting, by an accelerometer and global positioning system receiver, acceleration data and location data for a vehicle of a user while the user is driving the vehicle; receiving the acceleration data or the location data at a safe driving software application; generating, by one or more computing devices based on the acceleration data or the location data, drive data representing one or more driving maneuvers performed by the user while driving the vehicle in a real-world; computing, by the one or more computing devices based on the drive data, a drive score representing the user's driving performance in relation to safe driving standards stored in a memory; comparing, by the one or more computing devices, the drive score with at least one predetermined threshold; selecting, from a plurality of algorithms based on a result of the comparing of the drive score with the at least one predetermined threshold, an algorithm for computing a character condition score related to a condition of a character within a graphically simulated virtual world; computing, by the one or more computing devices using the drive score, the algorithm to determine the character condition score; modifying, based on the character condition score, one or more attributes of the character within the graphically simulated virtual world, wherein a degree of the modifying varies according to a level of the user's driving performance; updating, based on the character condition score, a status of the character using a state machine; and executing, based on the updated status of the character, an animation script for the character, wherein the animation script causes the character to perform, in the graphically simulated world, a series of actions corresponding to the updated status.