Well, he'll be capable of customizing what he wants because it's fully customizable (except for times, which you have to edit yourself).
Haven't finished yet, but you can take a sneak peek of the OnInit event so far:
OnInit: // Configurations set .dynratetype, 0; // 0 = nothing; 1 = Base rates are dynamic; 2 = Job rates are dynamic; 4 = Drop rates are dynamic. You can add up these, eg: 7 = 1+2+4 = 1|2|4 // If 0, rates will increase in a linear fashion (rate = A + B*x); // If 1, they'll increase in an exponential fashion (rate = A + B^x); // If 2, they'll increase in another exponential fashion (rate = A + x^. // x will be number of people online. If you don't know how they're, you can plot these graphs on
http://fooplot.com if you give a value to A and B set .fashion, 0; if (.dynratetype & 1) { //Rates for Base exp. 100 = 1x; 1000 = 10x and so. set .Abase, 500; set .Bbase, 10; set .capbase, 1000; // Max value to base exp, if our calculations take set .flatbase, 500; // For weekends } if (.dynratetype & 2) { //Rates for Job exp. 100 = 1x; 1000 = 10x and so. set .Ajob, 500; set .Bjob, 10; set .capjob, 1000; // Max value to job exp, if our calculations take set .flatjob, 500; // For weekends } if (.dynratetype & 4) { //Rates for Drop percentage. 100 = 1x; 1000 = 10x and so. set .Adrop, 500; set .Bdrop, 10; set .capdrop, 1000; // Max value to drop %, if our calculations take set .flatdrop, 500; // For weekends } // No settings past this point // Initialization of npcs if ( gettime(4) > 0 && (gettime(4) < 5 || (gettime(4) == 5 && gettime(3) < 16)) ) set .dynamic, 1; else donpc strnpcinfo(3)+"::OnFri1600"; end;
Also wanted to make a logarithmic implementation of rates (quite logic since real-life systems have saturation and this has no need for capping), but haven't found any mathematical means to do so. I mean both A + logx(
and A + logB(x) methods.