Difference between revisions of "Random Password Generator"

From Second Life Wiki
Jump to navigation Jump to search
(An earlier editor's understanding of string length and base-0 indexes, in conjunction with llFrand was faulty. llFloor() is not needed.)
m (<lsl> tag to <source>)
 
Line 1: Line 1:
Code:
Code:
<lsl>
<source lang="lsl2">
// Generate Passwords based on String length
// Generate Passwords based on String length
// Free to use, share and remix.
// Free to use, share and remix.
Line 26: Line 26:
     }
     }
}
}
</lsl>
</source>

Latest revision as of 08:44, 25 January 2015

Code:

// Generate Passwords based on String length
// Free to use, share and remix.

string randomPassword(integer length)
{
    string CharSet = "abcdefghijkmnpqrstuvwxyz23456789";    // omitting confusable characters
    string password;
    integer CharSetLen = llStringLength(CharSet);
    // Note: We do NOT add 1 to the length, because the range we want from llFrand() is 0 to length-1 inclusive

    while (length--)
    {     
        integer rand = (integer) llFrand(CharSetLen);
        password += llGetSubString(CharSet, rand, rand);
    }
    return password;
}
 
default
{
    touch_start(integer num)
    {
        llSay(0, randomPassword(10));
    }
}