Scripts: Difference between revisions

From CasperTech Wiki
Jump to navigation Jump to search
Line 29: Line 29:
|-
|-
|BSM||2||0.003||131kb||2001
|BSM||2||0.003||131kb||2001
|-
|HippoVend "Elite"||1||0.002||66kb||3971
|-
|-
|CasperVend||1||0.001||66kb||3971
|CasperVend||1||0.001||66kb||3971

Revision as of 10:57, 6 May 2013

Most people know that CasperVend uses only one script in all its vendor units and dropboxes. But how important is this, really?

Script Time

A region runs at approximately 45 frames per second when it's not lagged. This allows roughly 22ms *total* script time per region.

CasperVend vendors run at roughly 0.001 - 0.002ms of script time per frame. This means you could theoretically have 11,000 of our vendors rezzed without experiencing lag.

Script Memory

Another factor is script memory. A simulator has 256mb of memory, and each of our vendors uses 66kb. This means that we would run out of memory after 3971 vendors were rezzed, so that is our actual limit.

How many vendors can I run without causing lag?

We rezzed vendors from these companies and left them for 30 minutes (for the script time to settle). Results:

System Script count (multivendors) Script time Script mem Max # of vendors with no lag
HippoVend 10 0.016 655kb 400
Alika 3 0.002 197kb 1330
BSM 2 0.003 131kb 2001
HippoVend "Elite" 1 0.002 66kb 3971
CasperVend 1 0.001 66kb 3971

Your region

Of course, these numbers assume you have *no other scripts* rezzed on sim, but this is never the case. In order to properly calculate how many CasperVend vendors you can rez before you see any lag, go to:

World -> Region/Estate -> Debug -> Get Top Scripts

Refresh this a few times, and note the *maximum* number at the top, for example, mine says:

"539 scripts taking a total of 1.685ms."

Mutiply the script count by 66kb and you have the rough memory usage - in my case, it's 34496kb (or 33mb), so I have 223mb available to use - enough for around 3,500 CasperVend vendors. Subtract the script time from 22 and you have the amount of script time you have available to play with. In my case I have 20.315ms available, which is easily enough for the 3,500 vendors (it could support 20,000 of them).