Many users have rules such as "max 2 folders /or 30 files" at the time. so what if implement the following algorithm:
1. you set, say, "max 2 folders/30 files" setting somewhere
2. someone queues 3 folders or 45 files or simillar (breaking either max folders or max files restriction).
3.in his download queue he sees, say, 3 folders
4. but you are only requested 2 folders
5. your soulseek knows about the third folder requested, but when the time comes for it, your soulseek checks whether anyone else is in queue waiting for a slot. if yes - that third folder is moved to the end of the queue and is displayed in your uploads window. if no - your soulseek begins uploading the third folder to that user, but if during uploading some other user queues any files from you, what remains of that third folder is moved to the end of the queue.
it was the solution for those who sets up such rules to care about anyone who downloads from him.
there's another problem why such rules are set. some users don't care what they are queuing, like by queueing million files or all folders at the time.
theres a simple solution:
1. if the user is queuing million files at once, but you restricted to 30 files max - he won't get anything queued, and his soulseek will warn him about your restriction
2. if he already queued 2 folders and wants to queue up the third one, but you have 2 folders max restriction, his soulseek wont allow him to queue the third folder and will warn him about your restriction.