// mongo habitrpg ./node_modules/underscore/underscore.js ./migrations/20130307_normalize_algo_values.js /** * Make sure people aren't overflowing their exp with the new system */ db.users.find().forEach(function(user){ function oldTnl(level) { return (Math.pow(level,2)*10)+(level*10)+80 } function newTnl(level) { var value = 0; if (level >= 100) { value = 0 } else { value = Math.round(((Math.pow(level,2)*0.25)+(10 * level) + 139.75)/10)*10; // round to nearest 10 } return value } var newTnl = newTnl(user.stats.lvl); if (user.stats.exp > newTnl) { var percent = user.stats.exp / oldTnl(user.stats.lvl); percent = (percent>1) ? 1 : percent; user.stats.exp = newTnl * percent; try { db.users.update( {_id:user._id}, {$set: {'stats.exp': user.stats.exp}}, {multi:true} ); } catch(e) { print(e); } } })