Change font size
It is currently Sat Dec 15, 2018 2:07 pm

Forum rules


{L_IMAGE}
. please keep questions related to an OpenSimulator and OSgrid nature.



Post a new topicPost a reply Page 1 of 1   [ 1 post ]
Author Message
 Post subject: [ARCHIVER Warning]
PostPosted: Thu Oct 04, 2018 7:08 am 

Joined: Thu Aug 16, 2018 6:41 am
Posts: 8
Hello,
I have just saved one of my regions to an OAR file and it has thrown some errors that I am unsure about. The error is
{L_CODE}:
[ARCHIVER Warning]: object 15b2bc37-00df-4d9b-aff3-80f154d32d32 'OSSL Function Check', at <140.3285, 687.1008, 20.26002>, contains 2 references that may be to missing or damaged assets or not a problem
The objet uses is a simple prim box with a single script in it. It uses just the default wood texture. The script that is in place was one I found to check OSSL functions.
{L_CODE}:
// OSSL Function Availability Tester
//
// Demonstrates a method by which a script may determine whether or not it is permitted to call
// various OSSL functions.
//
integer WhichProbeFunction; // to tell us which function we're probing
integer NumberOfFunctionsToCheck; // how many functions are we probing?
list FunctionNames = [ "osTeleportAgent", "osGetAgentIP", "osGetAgents", "osAvatarPlayAnimation",
"osAvatarStopAnimation", "osAvatarName2Key", "osKey2Name" ];
list FunctionPermitted = [ 0, 0, 0, 0, 0, 0, 0 ]; // 0 = not permitted, 1 = permitted


// isFunctionAvailable() takes the name of a function, and returns 1 if it is available, and 0 if
// it is forbidden or has not been tested.
//
integer isFunctionAvailable( string whichFunction )
{
integer index = llListFindList( FunctionNames, whichFunction );
if (index == -1) return 0; // Return FALSE if the function name wasn't one of the ones we checked.
return llList2Integer( FunctionPermitted, index ); // return the appropriate availability flag.
}

// The default state uses the timer to call all the OSSL functions we're interested in using, in turn.
// If the function call fails, the timer event handler will abend, but the script doesn't crash. We can
// use this fact to check all of our desired functions in turn, and then pass control to the Running
// state once we've checked them all.
//
default
{
state_entry()
{
llOwnerSay( "Probing OSSL functions to see what we can use" );
NumberOfFunctionsToCheck = llGetListLength( FunctionNames );
WhichProbeFunction = -1;
llSetTimerEvent( 0.25 ); // check only four functions a second, just to be nice.
}

timer()
{
string BogusKey = "12345678-1234-1234-1234-123456789abc"; // it doesn't need to be valid
string s; // for storing the result of string functions
list l; // for storing the result of list functions
if (++WhichProbeFunction == NumberOfFunctionsToCheck) // Increment WhichProbeFunction; exit if we're done
{
llSetTimerEvent( 0.0 ); // stop the timer
state Running; // switch to the Running state
}
llOwnerSay( "Checking function " + llList2String( FunctionNames, WhichProbeFunction )); // say status
if (WhichProbeFunction == 0)
osTeleportAgent( BogusKey, ZERO_VECTOR, ZERO_VECTOR );
else if (WhichProbeFunction == 1)
s = osGetAgentIP( BogusKey );
else if (WhichProbeFunction == 2)
l = osGetAgents();
else if (WhichProbeFunction == 3)
osAvatarPlayAnimation( BogusKey, BogusKey );
else if (WhichProbeFunction == 4)
osAvatarStopAnimation( BogusKey, BogusKey );
else if (WhichProbeFunction == 5)
s = osAvatarName2Key( "John", "Smith" );
else if (WhichProbeFunction == 6)
s = osKey2Name( BogusKey );

// If we got here, then the timer() handler didn't crash, which means the function it checked for
// was actually permitted. So we update the list to indicate that we can use that particular function.
FunctionPermitted = llListReplaceList( FunctionPermitted, [ 1 ], WhichProbeFunction, WhichProbeFunction );
}
}

state Running
{
state_entry()
{
string s = "Here are the functions we can use: ";
string t = "Here are the functions we cannot use: ";
integer i = llGetListLength( FunctionNames );
while (i--)
if (llList2Integer( FunctionPermitted, i ))
s += llList2String( FunctionNames, i ) + " ";
else
t += llList2String( FunctionNames, i ) + " ";
llOwnerSay( s );
llOwnerSay( t );
if (isFunctionAvailable( "osKey2Name" ))
{
//key theUUID = "190482f8-b1bc-4c36-aa8d-cfb36c8fea61";
key theUUID = llGetOwner();
llOwnerSay( "Object Owners UUID " + (string) theUUID + " maps to the name " + osKey2Name( theUUID ) + "." );
}
else
{
llOwnerSay( "osKey2Name() is unavailable; cannot map UUID to name." );
}
}
}
The version I am using is
Version: OpenSim 0.9.1.0 Dev OSgrid 0.9.1.0 (Dev) 24df1086fa: 2018-05-04 (SIMULATION/0.3 - SIMULATION/0.6)

Thanks in advance
Baron Brown


Top
 Profile  
 
Display posts from previous:  Sort by  
Post a new topicPost a reply Page 1 of 1   [ 1 post ]


Who is online

Users browsing this forum: legacy_google [bot] and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
610nm Style by Daniel St. Jules of Gamexe.net