OK, quoted only certain parts of the linked post, but I am curious about the way the like distribution (different users and days) is calculated. I am not an admin, so I cannot view site settings, but on a site I moderate the Likes Received requirement is 500, and thus the Likes Received: unique days requirement is 125. As the the time is “last 100 days…”, the 1/4 of 500 makes TL3 intentional.
Now, preventing users from reaching TL3 might be intentional on my site (no idea myself…) but thinking about this in general and this could be an issue. If you have a very large site with lots of people liking posts, you might want a high Likes Received threshold without making TL3 impossible to achieve. Is the minimum number of different days a site setting as well?
I totally understand and appreciate the distribution requirements, as without it two people could like each other to the TL3 requirements. What I am curious about is the 1/4 and 1/5 being calculated values as the Like requirement goes up. If I am reading @sam’s statement right, the 1/4 and 1/5 requirements are not actually calculated by Discourse based on the Like requirement, but are hard coded values. Is that correct? If so, I understand…
Thanks @codinghorror, that makes things a lot more clear. You may want to add something to this effect over on the faq thread. Personally, when I see a fraction listed I assume it is a dynamic calculation, not a hard coded value…
It is dynamic, in the sense that it applies proportionally to whatever number you enter. 1/4 of 100 days is 25 days, 1/4 of 200 days is 50 days, and so forth.
OK, then I am still confused, and this goes back to my original question.
Going to use numbers here:
Assume that the number of days is 100, and fraction is 1/4. Is it possible to make the number of likes required greater that 400 without making TL3 impossible? Can the fraction be changed (to a lower value) so that you can increase the like requirement so that TL3 is not impossible?
I think it would be super helpful if you plugged the numbers into the text so it is clear what you’re talking about. So if you want required likes to be 500:
must have received 500 likes
These likes must be across a minimum number of different users (1/5 of 500 = 100) across a minimum number of days (1/4 of 500 = 125). Likes cannot be from PMs.
You are right that with the hard coded number of TL3 days at 100, this makes TL3 impossible to achieve. I’d file this under “garbage in, garbage out” or intentionally putting in bad settings that makes things not work.
Since you can also change the number of days (as of a week ago) that TL3 looks at, I’m not sure I see what the problem is?
These likes must be across a minimum number of different users (1/5 of 500 = 100) across a minimum number of days (1/8 of 500 = 63). Likes cannot be from PMs.
Is this possible to accomplish (change 1/4 to 1/8)?
Increasing the number of days has the effect of lowering the Likes Received ratio to an extent.
Purely hypothetical here: I have a large Discourse, with users who tend to give lots and lots of likes out. I want to ensure that my TL3 users get more likes than the average user, but most users get far more than 400 likes per 100 days. Now, I change the requirement to 800 likes, and TL3 becomes impossible (800/4 = 200; 200 > 100). If I change 100 days to 200 days, now they can reach TL3 if they get a like every day, but the ratio was lowered: 800 likes per 200 days is equal to 400 likes per 100 days.
It’s possible the minimum days would be capped by the TL3 setting anyway, meaning, if you put in a crazy value like 1000000, instead of being 1/4 of that large number, it’s capped at the value of the TL3 days. @neil can check and see if that’s the case. I agree that would be safer, to have it call a min(x, 100) function when checking to avoid making TL3 unachievable in the face of bad site settings.
OK, that would be helpful, but not ideal. If you make the Likes Received a large value (not crazy high, but larger than # of days times 4), for a user to reach TL3 they would need a like every day during that period, which could be possible on a like happy site, but unlikely. If the site is slow on a certain day, you could lose your TL3 status 2 weeks later, and not be able to get it back for 86 days (assuming 100 days). I still think that that the minimum days fraction needs to be configurable as 100% is nearly impossible to achieve (and out of the user’s control as well).
Sounds like doing that qualifies as “crazy high” to me, but I agree that the min likes received days value shouldn’t be allowed to be higher than the tl3 time period value. The intention is to prevent people from getting promoted because they got a lot of likes in a very short amount of time. I don’t agree that we need more parameters for people to tweak since the trust level tab of site settings is already looking scary.
I think a formula that caps the min_likes_received_days to something less than tl3_time_period would get us what we want.
Even with the high likes requirement, there are 25 days out of 100 when you don’t need to receive any likes. How does that look?
Also, if you want to make it impossible to achieve tl3, set tl3 requires days visited to something higher than tl3 time period. I’m making a change to allow that.