OK Boys n Girls...I think I solved this.
I can repeat the error causing missing creator / owner info...because it ALSO makes your scripts "missing from database" when you try to edit them even though they show in the inventory.
This happens EVERY time I teleport.
This is the script I'm using;
Code: Select all
// :CATEGORY:HyperGate
// :NAME:OpenSim WalkthroughTeleporter
// :AUTHOR:John Lester (PathFinder)
// :KEYWORDS:
// :CREATED:2014-02-09
// :EDITED:2014-02-08 08:13:30
// :ID:1022
// :NUM:1586
// :REV:1
// :WORLD:OpenSim
// :DESCRIPTION:
// An instant Hypergrid jump to a different grid simply by walking
// :CODE:
// This is the script I use in my WarpGates. It's a Hypergrid script I got on Pathlandia and I use it everywhere.
// For more info see http://becunningandfulloftricks.com/2010/10/29/the-metaphor-of-portals
// anti-loop code added by Jag Nishi/The Ham
string GridName = "To Travel down to Tatooine";
string SimAddress = ""; // use region name for inworld locations
string LastVerified = "";
string Message = "";
string BoilerPlate = "\nEnter the YT-2400 Transport";
vector LandingPoint = <156.0, 298.0, 45.0>;
vector TextColor = <1,1,0>;
vector LookAt = <1.0,1.0,0.0>;
key AgentToTransfer;
list LastFewAgents;
string CONTROLLER_ID = "A";
integer AUTO_START = TRUE;
list particle_parameters = [];
list target_parameters = [];
StartEffects()
{
particle_parameters = [
PSYS_SRC_TEXTURE, llGetInventoryName(INVENTORY_TEXTURE, 0),
PSYS_PART_START_SCALE, <0.10,0.10, FALSE>,
PSYS_PART_END_SCALE, <1.00,1.00, FALSE>,
PSYS_PART_START_COLOR, <1,1,1>,
PSYS_PART_END_COLOR, <1,1,1>,
PSYS_PART_START_ALPHA, (float)1.0,
PSYS_PART_END_ALPHA, (float)0.0,
PSYS_SRC_BURST_PART_COUNT, 500,
PSYS_SRC_BURST_RATE, (float)0.01,
PSYS_PART_MAX_AGE, (float)1.0,
PSYS_SRC_MAX_AGE, (float)0.6,
PSYS_SRC_PATTERN, 2,
PSYS_SRC_ACCEL, <0.0,0.0,-3.0>,
PSYS_SRC_BURST_SPEED_MIN, (float)1.2,
PSYS_SRC_BURST_SPEED_MAX, (float)5.01,
PSYS_SRC_ANGLE_BEGIN, (float)0.25*PI,
PSYS_SRC_ANGLE_END, (float)0.00*PI,
PSYS_SRC_OMEGA, <0,0,0>,
PSYS_PART_FLAGS, ( 0
| PSYS_PART_INTERP_COLOR_MASK
| PSYS_PART_INTERP_SCALE_MASK
| PSYS_PART_EMISSIVE_MASK
| PSYS_PART_FOLLOW_VELOCITY_MASK
| PSYS_PART_WIND_MASK
)
];
if ( AUTO_START ) llParticleSystem( particle_parameters );
}
PerformTeleport( key WhomToTeleport )
{
integer CurrentTime = llGetUnixTime();
integer AgentIndex = llListFindList( LastFewAgents, [ WhomToTeleport ] );
if (AgentIndex != -1)
{
integer PreviousTime = llList2Integer ( LastFewAgents, AgentIndex+1 );
if (PreviousTime >= (CurrentTime -5)) return;
LastFewAgents = llDeleteSubList( LastFewAgents, AgentIndex, AgentIndex+1);
}
LastFewAgents += [ WhomToTeleport, CurrentTime ];
osTeleportAgent( WhomToTeleport, SimAddress, LandingPoint, LookAt );
}
default
{
on_rez(integer start_param)
{
llResetScript();
}
state_entry()
{
llSetTextureAnim(ANIM_ON | SMOOTH | LOOP, ALL_SIDES, 0, 0, 0, 0, .05);
llSetText(GridName + SimAddress + BoilerPlate + LastVerified + Message, TextColor, 1);
llLoopSound("hum", 1.0);
}
collision_start(integer num_detected)
{
StartEffects();
llPlaySound("transport", 1.0);
if(llDetectedKey(0) != AgentToTransfer)
{
AgentToTransfer=llDetectedKey(0);
PerformTeleport( llDetectedKey(0));
}
else
{
llSetTimerEvent(1);
}
}
timer()
{
AgentToTransfer="";
llSetTimerEvent(0);
llLoopSound("hum", 1.0);
}
touch_start(integer num_detected)
{
// llGiveInventory(llDetectedKey(0),llGetInventoryName(INVENTORY_NOTECARD, 0));
}
link_message( integer sibling, integer num, string mesg, key target_key )
{
if ( mesg != CONTROLLER_ID ) { // this message isn't for me. Bail out.
return;
} else if ( num == 0 ) { // Message says to turn particles OFF:
llParticleSystem( [ ] );
} else if ( num == 1 ) { // Message says to turn particles ON:
llParticleSystem( particle_parameters + target_parameters );
} else if ( num == 2 ) { // Turn on, and remember and use the key sent us as a target:
target_parameters = [ PSYS_SRC_TARGET_KEY, target_key ];
llParticleSystem( particle_parameters + target_parameters );
} else { // bad instruction number
// do nothing.
}
}
}
//// "Explosion" PARTICLE TEMPLATE v1 - by Jopsy Pendragon - 4/8/2008
//// You are free to use this script as you please, so long as you include this line:
//** The original 'free' version of this script came from THE PARTICLE LABORATORY. **//
Many years ago when I was creating in OpenSim it seemed like there was an issue with teleporting long distances. Is that still an issue?
I use these teleports to go about 1000m (1026m or something like that)
Is this the issue?
To recover ALL the creator/owner info as well as the content replaced in the scripts I just log out and back in and everything is back to normal.
I am "guessing" the missing data is because of how fast the avatar is moved from one place to another, but the data never catches up and all the creator/owner info, as well as the content of scripts and notecards, remains "missing from database" until I log out and back in.
Does anyone have a "better" long-distance teleport with particles?
THANKS