mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-14 21:27:23 +01:00
feat(onboarding): more early incentives
This commit is contained in:
@@ -46,6 +46,7 @@ export default function randomDrop (user, options, req = {}, analytics) {
|
||||
|
||||
let chance = min([Math.abs(task.value - 21.27), 37.5]) / 150 + 0.02;
|
||||
chance *= task.priority // Task priority: +50% for Medium, +100% for Hard
|
||||
* (1 + Math.max(0, 80 - (5 * user.stats.lvl)) / 100) // Experimental: more at low levels
|
||||
* (1 + (task.streak / 100 || 0)) // Streak bonus: +1% per streak
|
||||
* (1 + statsComputed(user).per / 100) // PERception: +1% per point
|
||||
* (1 + (user.contributor.level / 40 || 0)) // Contrib levels: +2.5% per level
|
||||
@@ -82,10 +83,12 @@ export default function randomDrop (user, options, req = {}, analytics) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (predictableRandom() < chance) {
|
||||
const firstFoodDrop = size(user.items.food) < 1;
|
||||
|
||||
if (firstFoodDrop || predictableRandom() < chance) {
|
||||
rarity = predictableRandom();
|
||||
|
||||
if (rarity > 0.6) { // food 40% chance
|
||||
if (firstFoodDrop || rarity > 0.6) { // food 40% chance
|
||||
drop = cloneDropItem(randomVal(filter(content.food, {
|
||||
canDrop: true,
|
||||
})));
|
||||
|
||||
Reference in New Issue
Block a user