Editing CreditSystems

From EMule Wiki
Jump to: navigation, search

Warning: The database has been locked for maintenance, so you will not be able to save your edits right now. You may wish to cut-n-paste the text into a text file and save it for later.

The administrator who locked it offered this explanation: site maintenance

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
A credit system determines the score and that detirmins the wait time peers wait in your queue before you upload to them.
+
A credit system determines the score and thant wat the wait time peers wait in your queue before you upload to them.
  
 
= Credit systems =
 
= Credit systems =
 
==Official Credit System==
 
==Official Credit System==
  
There are two different credit modifier calculated:
+
There are two different credit modifier calculated: Ratio1 = Uploaded Total x 2 / Downloaded Total Ratio2 = SQRT(Uploaded Total + 2) Both ratios are compared and the lower value is used as modifier. Some boundary conditions also exist: > Uploaded Total < 1MB => Modifier = 1 > Downloaded Total = 0 => Modifier = 10 > The modifier may not be lower than 1 or higher than 10
*Ratio1 = Uploaded Total x 2 / Downloaded Total  
+
[edit]
*Ratio2 = SQRT(Uploaded Total + 2)  
+
Both ratios are compared and the lower value is used as modifier.  
+
Some boundary conditions also exist:  
+
* > Uploaded Total < 1MB => Modifier = 1  
+
* > Downloaded Total = 0 => Modifier = 10  
+
* > The modifier may not be lower than 1 or higher than 10
+
 
+
 
==Peace Credits:==
 
==Peace Credits:==
  
same as official credit system, only shorter (but slower!!) code
+
same as official credit system, only shorter code
  
 
== Xman improved Credit System ==
 
== Xman improved Credit System ==
Line 30: Line 23:
  
 
Example (with ~ 1 Chunk difference):
 
Example (with ~ 1 Chunk difference):
{| class="wikitable"
+
Download Upload Official version Xman improved
! Download !! Upload !! Official version !! Xman improved
+
10MB 1MB 3,46 3,46 + bonus:0
|-
+
20MB 11MB 3,63 3,63 + bonus:0
| style="text-align:right" | 10MB || style="text-align:right" | 1MB || style="text-align:center" | 3,46 || style="text-align:center" | 3,46 + bonus:0
+
30MB 21MB 2,86 2,86 + bonus:0,2
|-
+
90MB 81MB 2,22 2,22 + bonus:0,7
| style="text-align:right" | 20MB || style="text-align:right" | 11MB || style="text-align:center" | 3,63 || style="text-align:center" | 3,63 + bonus:0
+
50MB 20MB 5,0 5,0 + bonus:2,2
|-
+
90MB 50MB 3,6 3,6 + bonus:3,7
| style="text-align:right" | 30MB || style="text-align:right" | 21MB || style="text-align:center" | 2,86 || style="text-align:center" | 2,86 + bonus:0,2
+
120MB 80MB 3,0 3,0 + bonus:3,8
|-
+
| style="text-align:right" | 90MB || style="text-align:right" | 81MB || style="text-align:center" | 2,22 || style="text-align:center" | 2,22 + bonus:0,7
+
|-
+
| style="text-align:right" | 50MB || style="text-align:right" | 20MB || style="text-align:center" | 5,0 || style="text-align:center" | 5,0 + bonus:2,2
+
|-
+
| style="text-align:right" | 90MB || style="text-align:right" | 50MB || style="text-align:center" | 3,6 || style="text-align:center" | 3,6 + bonus:3,7
+
|-
+
| style="text-align:right" | 120MB || style="text-align:right" | 80MB || style="text-align:center" | 3,0 || style="text-align:center" | 3,0 + bonus:3,8
+
|}
+
a client can get a negative bonus of 0,1 if you gave him 1 chunk(9,28MB) more this session and also at complete comparison of download/upload without geting something back.
+
  
a client can get a negative bonus of 0,2 if you gave him more than 2 chunk(9,28MB) this session and also at complete comparison of download/upload without geting something back
+
a client can get a negative bonus of 0,1 if you gave him 1 chunk(9,28MB) more this session and also at complete comparsion of download/upload without geting something back.
 +
 
 +
a client can get a negative bonus of 0,2 if you gave him more than 2 chunk(9,28MB) this session and also at complete comparsion of download/upload without geting something back
  
 
== Magic angel credit system ==
 
== Magic angel credit system ==
Line 55: Line 40:
 
Magic Angel" Creditsystem based on the official Creditsstem. The differences are:
 
Magic Angel" Creditsystem based on the official Creditsstem. The differences are:
  
* it gives Credits for Upload more than 1.65MB (official 1.00MB)
+
    * it gives Credits for Upload more than 1.65MB (official 1.00MB)
* the lowest modifier is 0.1 (official 1.0)
+
    * the lowest modifier is 0.1 (official 1.0)
* the highest modifier is 50.0 (official 10.0)  
+
    * the highest modifier is 50.0 (official 10.0)  
  
 
== The Magic Angel + Creditsystem ==
 
== The Magic Angel + Creditsystem ==
Line 63: Line 48:
 
The Magic Angel + Creditsystem based on Magic Angel Creditssytem, but increases the modifier a bit, if the client uploaded to us more than we uploaded to him. If the upload of the client minus his download is
 
The Magic Angel + Creditsystem based on Magic Angel Creditssytem, but increases the modifier a bit, if the client uploaded to us more than we uploaded to him. If the upload of the client minus his download is
  
* < 7MB: modifier + 0.3
+
    * < 7MB: modifier + 0.3
* < 15MB: modifier + 1.0
+
    * < 15MB: modifier + 1.0
* < 30MB: modifier + 2.0
+
    * < 30MB: modifier + 2.0
* >= 30MB: modifier + 3.0  
+
    * >= 30MB: modifier + 3.0  
 
+
== Ratio Credit System ==
== Ratio Credit System ==
+
  
* based on official cs, but lowest modifier's 0.1 not 1.0 in official
+
    * based on official cs, but lowest modifier's 0.1 not 1.0 in official
* x2, x4, x16 credit award to uploaders  
+
    * x2, x4, x16 credit award to uploaders  
  
  
Line 78: Line 62:
 
Source: Stullemule 3.6 src - ClientCredits.cpp - code part: case CS_RATIO: // RT.10a mod Credit
 
Source: Stullemule 3.6 src - ClientCredits.cpp - code part: case CS_RATIO: // RT.10a mod Credit
  
* In contrast to its name, it is not based on UL/DL ratio, but on DL, UL values and their differencies.
+
    * In contrast to its name, it is not based on UL/DL ratio, but on DL, UL values and their differencies.
* There is no simple and the only formula.
+
    * There is no simple and the only formula.
* Default credit = 1
+
    * Default credit = 1
* Progressively punishes near zero ( <= 1 MB ) uploaders.
+
    * Progressively punishes near zero ( <= 1 MB ) uploaders.
* Progressively boosts uploaders who got nothing paid back yet ( <= 1 MB in total ).
+
    * Progressively boosts uploaders who got nothing paid back yet ( <= 1 MB in total ).
* For client who uploaded to me > 1 MB and <=9 MB grants minimal credit DL / 9.
+
    * For client who uploaded to me > 1 MB and <=9 MB grants minimal credit DL / 9.
* For client who uploaded to me > 9 MB minimal credit is 0.7 + sqrt ( DL +1 ) / 10. E.g. uploading 99 MB grants credit 1.7.
+
    * For client who uploaded to me > 9 MB minimal credit is 0.7 + sqrt ( DL +1 ) / 10. E.g. uploading 99 MB grants credit 1.7.
* With balanced ratio credit raises proportional to sqrt ( DL + 1)
+
    * With balanced ratio credit raises proportional to sqrt ( DL + 1)
* Credit is farther increased/decreased, depending on UL - DL difference.
+
    * Credit is farther increased/decreased, depending on UL - DL difference.
* No limiting values  
+
    * No limiting values  
  
 
Legend and formulas:
 
Legend and formulas:
Line 109: Line 93:
 
Table of Ratio Credit values
 
Table of Ratio Credit values
  
http://wiki.emule-web.de/image/Image_RatioCredit.png
+
Image:RatioCredit.png
 
+
 
== Neo Credit system ==
 
== Neo Credit system ==
  
Line 118: Line 101:
  
 
If the result of uploaded - downloaded is smaller then -1.0 the formula is: ((-1*(uploaded-downloaded))/(9728000*1(<- In case of bad/no SI) or 2(<- In case he owns a valid SI)))^2. The biggest allowed result is 2.0 the smallest allowed result is 1.0.
 
If the result of uploaded - downloaded is smaller then -1.0 the formula is: ((-1*(uploaded-downloaded))/(9728000*1(<- In case of bad/no SI) or 2(<- In case he owns a valid SI)))^2. The biggest allowed result is 2.0 the smallest allowed result is 1.0.
 +
[edit]
 +
Pawcio Credit System:
  
== Pawcio Credit System ==
+
    * Range from 1.0 to 100.0
 +
    * Multiplier of 3 (instead of 2) ---- ratio = 3 * downloaded / uploaded
 +
    * For new clients (downloaded and uploaded data less than 1MB) ratio = 3.0 (instead of 1.0)
 +
    * If you have recieved more than 1MB from someone but haven't given anything back user gets ratio = 100.0
 +
    * Small bonus for clients that have given you many MB:
 +
          o if you get 100MB then user recieve ratio = 50.0 till you give back 108MB
 +
          o 50MB - ratio = 25.0 - 55MB
 +
          o 25MB - ratio = 12.0 - 28MB
 +
          o 10MB - ratio = 5.0 - 12MB
  
* Range from 1.0 to 100.0
 
* Multiplier of 3 (instead of 2) ---- ratio = 3 * downloaded / uploaded
 
* For new clients (downloaded and uploaded data less than 1MB) ratio = 3.0 (instead of 1.0)
 
* If you have received more than 1MB from someone but haven't given anything back user gets ratio = 100.0
 
* Small bonus for clients that have given you many MB:
 
** if you get 100MB then user receive ratio = 50.0 till you give back 108MB
 
** 50MB - ratio = 25.0 - 55MB
 
** 25MB - ratio = 12.0 - 28MB
 
** 10MB - ratio = 5.0 - 12MB
 
  
 +
== Fine Credit system ==
  
== Fine Credit system ==
+
    * punish client for downloading partial files without giving back.
  
* punish client for downloading partial files without giving back.
+
Fine CS
  
[[Fine CS]]
 
  
 
== S.W.A.T. Credits ==
 
== S.W.A.T. Credits ==
  
There are two different credit modifier calculated:
+
There are two different credit modifier calculated: Ratio1 = Uploaded Total x 2.2 / Downloaded Total Ratio2 = SQRT(Uploaded Total + 2) Both ratios are compared and the lower value is used as modifier. Some boundary conditions also exist: > Uploaded Total < 1MB (exactly!) => Modifier = 1 > Downloaded Total = 0 => Modifier = 10 > The modifier may not be lower than 1 or higher than 100
*Ratio1 = Uploaded Total x 2.2 / Downloaded Total  
+
 
*Ratio2 = SQRT(Uploaded Total + 2)  
+
Both ratios are compared and the lower value is used as modifier. Some boundary conditions also exist:  
+
* Uploaded Total < 1MB (exactly!) => Modifier = 1  
+
* Downloaded Total = 0             => Modifier = 10  
+
* The modifier may not be lower than 1 or higher than 100
+
  
 
== Sivka Credits: ==
 
== Sivka Credits: ==
Line 164: Line 143:
 
else ratio = 1
 
else ratio = 1
  
== Eastshare Credit System ==
+
 
 +
== Eastshare Credit System ==
  
 
Base ratings: id. users(100); not supported users(80); invalid id. users(0); min.=10, max.=5000
 
Base ratings: id. users(100); not supported users(80); invalid id. users(0); min.=10, max.=5000
  
* +6 per MB uploaded and -2 for downloaded;
+
    * +6 per MB uploaded and -2 for downloaded;
* +100 if upload 1MB+;
+
    * +100 if upload 1MB+;
* if rating < 50 and upload 1MB+, rating = 50
+
    * if rating < 50 and upload 1MB+, rating = 50  
 +
 
  
 
== Lovelace Credit System: ==
 
== Lovelace Credit System: ==
  
#. l-modifier=100*((1-1/(1+exp((3*{MB uploaded to us}^2-{MB downloaded from us}^2)/1000)))^6.6667)
+
  1. l-modifier=100*((1-1/(1+exp((3*{MB uploaded to us}^2-{MB downloaded from us}^2)/1000)))^6.6667)
##. start:1,
+
        1. start:1,
##. max:100,
+
        2. max:100,
##  min:0.1,
+
        3. min:0.1,
##  ratio:1:1.5, only one formula  
+
        4. ratio:1:1.5, only one formula  
  
Credit Thefts will not get any credits. Only clients using the 'SecureHash' are able to get a multiplier of 100. All others will stick at 10. In contrast to the original credit system, credits are evaluated more on differences and not on quotients. Using the original system you have the best credit values shortly after generating a new userhash. With the new credit system you get good credit values faster if you already have uploaded many MB before (and did not cheat by killing the userhash). (old system: 5up/ 5down = DLModifier of 2, additional 5up = DLModifier of 4 10up/10down = DLModifier of 2, additional 5up = DLModifier of 3 -> for the same amount of additional upload you get less score (-25%) new system: 5up/ 5down = DLModifier of 1.16, additional 5up = DLModifier of 2.31 10up/10down = DLModifier of 1.85, additional 5up = DLModifier of 5.09 -> for the same amount of additional upload you get more score (+120%) because you already uploaded a certain amount before.)
+
CreditThefts will not get any credits. Only clients using the 'SecureHash' are able to get a multiplier of 100. All others will stick at 10. In contrast to the original credit system, credits are evaluated more on differences and not on quotients. Using the orginal system you have the best credit values shortly after generating a new userhash. With the new credit system you get good credit values faster if you already have uploaded many MB before (and did not cheat by killing the userhash). (old system: 5up/ 5down = DLModifier of 2, additional 5up = DLModifier of 4 10up/10down = DLModifier of 2, additional 5up = DLModifier of 3 -> for the same amount of additional upload you get less score (-25%) new system: 5up/ 5down = DLModifier of 1.16, additional 5up = DLModifier of 2.31 10up/10down = DLModifier of 1.85, additional 5up = DLModifier of 5.09 -> for the same amount of additional upload you get more score (+120%) because you already uploaded a certain amount before.)
  
http://wiki.emule-web.de/image/lovelacecredit.GIF
+
Image:Dl-modifier_table.GIF
  
  
 
== ClientAnalyzer ==
 
== ClientAnalyzer ==
  
* Start value:1
+
    * Start value:1
* Minvalue:0.01
+
    * Minvalue:0.01
* maxvalue:10  
+
    * maxvalue:10  
  
Assigns a score to clients based upon analysis of their behaviour, such as:
+
Assigns a score to clients based upon analyzations of their behaviour, such as:
  
* how long one knows someone (bonus for every week that a client keeps his hash)
+
    * how long one knows someone (bonus for every week that a client keeps his hash)
* upload/download ratio
+
    * upload/download ratio
* kind of up/download (complete/partial/rare)
+
    * kind of up/download (complete/partial/rare)
* anti leecher options; nickthieves, modthieves, filefakers, spammers, xs exploiter or hammerer are taken into account
+
    * anti leecher options; nickthieves, modthieves, filefakers, spammers, xs exploiter or hammerer are taken into account
* avg reask time  
+
    * avg reask time  
  
 
== TK4 Credit System ==
 
== TK4 Credit System ==
  
Native CS of TK4 Mod 1.5f, based on eMule 47a. C++ source code and full text is here -> [http://emuletk4mod.sourceforge.net/TK4_Mod_Creditsystem.htm TK4 Mod - Credit systems] )
+
Native CS of TK4 Mod 1.5f, based on eMule 47a. C++ source code and full text is here -> [|TK4 Mod - Credit systems (http://emuletk4mod.sourceforge.net/TK4_Mod_Creditsystem.htm)] )
  
 
If you are sharing completed files and someone downloads data from one of these from you they probably cannot give you data back as you have all of the file. So in the TK4 system their credit rating remains unchanged. If you are downloading a file and someone takes data from you from the parts of the file you have they will be subject to the credit system and depending on how much they have given they may have their credit rating reduced. At any time if anyone gives you data they get a credit rating increase. The credit system works basically like this:
 
If you are sharing completed files and someone downloads data from one of these from you they probably cannot give you data back as you have all of the file. So in the TK4 system their credit rating remains unchanged. If you are downloading a file and someone takes data from you from the parts of the file you have they will be subject to the credit system and depending on how much they have given they may have their credit rating reduced. At any time if anyone gives you data they get a credit rating increase. The credit system works basically like this:
Line 225: Line 206:
  
 
== Reverse Credits: (AKA as credit shaping) ==
 
== Reverse Credits: (AKA as credit shaping) ==
[[Bad feature]]
+
Bad feature
  
* Give a 10x score increase to clients in your download queue (you will be wanting something from them soon)
+
    * Give a 10x score increase to clients in your download queue (you will be wanting something from them soon)
* penalize NoNeededParts and queuefull 2x (currently they're not needed but they might be in future, upload to them when all other sources have a score of at least 5)
+
    * penalize NoNeededParts and queuefull 2x (currently they're not needed but they might be in future, upload to them when all other sources have a score of at least 5)
* Give a slight score increase if the estimated waiting time in their queue is low (this will be implemented in the next version)
+
    * Give a slight score increase if the estimated waiting time in their queue is low (this will be implemented in the next version)
* Give a slight score increase (smallest) for waiting time, just to be fair.  
+
    * Give a slight score increase (smallest) for waiting time, just to be fair.  
  
 
In effect, the our client will be serving other clients in this order:
 
In effect, the our client will be serving other clients in this order:
  
* clients we try to download from who we haven't uploaded to anything yet (they'll get 1.1mb for the max ratio), clients with low estimated waiting time for their queue will go first
+
    * clients we try to download from who we haven't uploaded to anything yet (they'll get 1.1mb for the max ratio), clients with low estimated waiting time for their queue will go first
* Clients who have returned upload and we are trying to download from up to a ratio of 5x
+
    * Clients who have returned upload and we are trying to download from up to a ratio of 5x
* Clients we're trying to download from but are on NNP or queue full status get 1.1mb
+
    * Clients we're trying to download from but are on NNP or queue full status get 1.1mb
* All other clients we're trying to download from are served upload up to a ratio of 10x
+
    * All other clients we're trying to download from are served upload up to a ratio of 10x
* All clients who have a maximum rating will be served on a first come first served basis  
+
    * All clients who have a maximum rating will be served on a first come first served basis  
 
+
== JusticeCredit ==
+
 
+
* If (MB sent - received MB)> 1, the factor is = (MB sent - received MB)
+
* If (MB sent - received MB) <1, the factor is = 1 / (MB received - sent MB)
+
* If the difference between MB sent - received MB is less than 1, the factor is 1.
+
* If the client has disabled the identification, the factor is 0
+
  
 
[[category:features]]
 
[[category:features]]

Please note that all contributions to EMule Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see EMule Wiki:Copyrights for details). Do not submit copyrighted work without permission!

Cancel | Editing help (opens in new window)
Personal tools