Ability to set download limits per user

Description: 
One thing I think everyone will agree with is that there are plenty of users who queue ridiculous amounts of files, similarly, they queue massive amounts of data. If you can incorporate a way to set a limit for how much data a user can queue at once, it will make it a lot better for not only the person sharing, but for other users who might be waiting in queue.
Status: 
Done
0
Your rating: None
1
Average: 1 (22 votes)

Comments

KoHDoP's picture

This will be a handy feature, if you would be able do set download limit, say 10 files per day for anyone, who isn`t in your friendlist.
But this may be hard, if the calculations needed to be done on the server side.

I think this is a good idea.
I solved the problem differently, in my rules I wrote that every user can QUEUE one file at a time (only valid for video and big files).
However, the problem exist.

A better way (imo) would be to juggle the queue a bit when there's more than one user in queue, that way they still get what they want, and it's a bit fairer to them. In the old client I would just remove a user that had a lot queued up (or a whole bunch of their files) after some other user(s) came in the queue. This way the new user would get his slots a bit sooner and the user I removed would retry anyway. If such a thing could be (more) automated it would make for a fairer queue imo.
Limiting the total amount of files or data a user can download at all, is not very friendly and always makes me think "why are they sharing at all if they don't want their files to be downloaded".

I rarely if ever read a users profile, putting your selfmade rules in there and expecting them to be followed is quite silly. You might run into users that keep them in mind, but I'm sure more often than not you'd run into the other kind of user. For someone that wants to download a whole bunch of things in one sessions, it's unrealistic to expect they will go about reading everyones info.
I try to do 1 album per user, but that's not always practical, as it happens every now and then that there's just one user in the search results that has the albums I want, in the bitrate I want.

I prefer this way of handling things: allow people to download large numbers of files, but make it slower for them.

I liked the way that eMule and it's various cousins worked, giving each user on your queue a "score" that was based on how long they had waited plus how many files they have already downloaded from you.

Admittedly, the eMule system was excessively complex, but the basic principle could be implemented nicely in Soulseek, entirely client-side:
* the client keeps track of which users have downloaded files this session
* any user who has downloaded more than 5 files (or more than 50MB) gains a "de-privilege" status (the opposite of being a friend or donating to SLSK)
* when the client is calculating its queue order, these heavy-download users are pushed backwards.. The time they have waited in the queue could be halved, for example..
* that way, a new user who just wants to download one file will gradually move up through your queue, and get their file before Mr. Greedy who wants 1000 files..

That's definitely not a bad system, but it all depends on what you want to achieve and what message you want to send downloaders regarding excessive queuing. I went with a simple "maximum number of queued entries at any given time" per user setting because I felt it was an easy way to tell people when they go over the line. Those users are free to manually re-queue their downloads later on, but never can they count on more than so many downloads to be handled for them automatically. You can always make it easier for them with the system you outline, but some uploaders are going to want to make a stronger point, and then you'd probably want to offer both systems which gets complicated and confusing. Having been irked by excessive queuing myself, being able to place any kind of limit feels like it makes all the difference.