Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0006053opensim[REGION] Script Functionspublic2012-06-17 17:432013-04-28 11:07
Reportermonanabildemaidi 
Assigned To 
PriorityurgentSeveritycrashReproducibilityalways
StatusfeedbackResolutionopen 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
Summary0006053: llDie function is not working
DescriptionWhenever llDie is used in the scripts the server crash and throw the following exception (throw new SelfDeleteException();)

TagsNo tags attached.
Git Revision or version numberHelp me Please
Run ModeStandalone (1 Region)
Physics EngineBasicPhysics
Environment.NET / Windows64
Mono VersionNone
ViewerFirestrom
Attached Files

- Relationships

-  Notes
(0021657)
BlueWall (administrator)
2012-06-17 18:01

I cannot confirm this on Linux-x64/Mono 2.10.6. OpenSim git - 5c5b359bcb80e8bdea2086cae117312541083787
(0021662)
Talun (manager)
2012-06-18 10:48
edited on: 2012-06-18 10:49

Just tried with no problems on an I7 Win7 64bit laptop. Fresh download from http://opensimulator.org/dist/opensim-0.7.3.1.zip. [^]
Object rezzed on ground from inventory. Script used:-
default
{
    state_entry()
    {
        llSay(0, "Script running");
    }
    touch_start(integer x)
    {
        llDie();
    }
}

(0021663)
monanabildemaidi (reporter)
2012-06-18 11:42

I tried it again the same problem occurs.. I am running standalone Opensim using Microsoft Visual studio windows 7-64bits and When I used tried llDie the following exception is fired in class LSL_Api.

 public virtual void llDie()
        {
            m_host.AddScriptLPS(1);
            throw new SelfDeleteException();
        }
(0021664)
Talun (manager)
2012-06-18 16:25

It looks like SelfDeleteException is used since the script has to be deleted too so the actual delete probably cannot be done in LSL_Api, the exception is handled in ScriptInstance around about line 794. It is not an actual error but used to indicate that the object must be deleted.
Can you attach a bit of the log showing the full exception/stacktrace?
Any details of the object and script may help too. Where/how the llDie() gets called, timer, collision etc, how many prims in the object, any other scripts running, that sort of thing
(0021665)
Talun (manager)
2012-06-18 16:27

also, did you try my little script above in a single prim?
Does the server crash with that?
(0021666)
Robert Adams (administrator)
2012-06-18 16:32

You also see this exception if you are debugging OpenSim with Visual Studio. The communication between the execution of the script (in its own app domain) and the simulator is through exceptions like these. Visual Studio catches the exception and freaks out.
To debug OpenSim with Visual Studio you need to set up the exception filters to not catch these exceptions. I think it's under Debug->Exceptions.
(0021668)
monanabildemaidi (reporter)
2012-06-18 22:12

Talun, Yes It crashes when I used the simple script.
Also an exception is thrown when a script includes movements between LSL states.I guess the problem is in using visual studio for debugging.

Robert Should I comment all the lines where the exceptions are thrown ?? I am afraid that this will affect the behavior of in world objects.
(0021821)
justincc (administrator)
2012-07-19 22:52

If you comment the exception lines then llDie() will simply not work. You have to configure your debugger to ignore these instead.
(0023584)
Bolivar Shagnasty (reporter)
2013-02-20 02:39
edited on: 2013-02-20 02:40

I experienced a problem much like closed issue 4435 with llDie(). Self replicating plants use this after the life span is supposed to end. Instead of being deleted they simply are elevated about 15 meters and last forever. The script in them gets deleted but not the object. They cannot be deleted by right-click/delete. The only way to get rid of the plants in which llDie() has run is to stop OpenSim and restart. OS version is 0.7.3, Operating system Windows Server 2003, viewer is Imprudence.

(0023588)
justincc (administrator)
2013-02-20 23:55

Can you reproduce this on OpenSimulator 0.7.5? There have been various changes to script die code since 0.7.3.
(0023589)
Bolivar Shagnasty (reporter)
2013-02-21 01:25

Although I have downloaded 0.7.5 and prepared it for building, the migration to it hasn't happened yet. Please strike the part about "elevated about 15 meters" but keep the rest. As soon as I am able, I will attempt to reproduce this once the migration to 0.7.5 is complete.
(0023778)
Ares Q (reporter)
2013-04-12 00:01
edited on: 2013-04-12 00:03

Also occuring on our grid more or less, doesn't crash, no exceptions, object just doesn't die, but only on megaregions. Upgraded to 0.7.5 a few days ago. ( a6722abbedf9361bd65f2266bb491f69cb746b16 ) debian6 64bit/mono 2.10.9

(0023803)
Luisillo_Contepomi (reporter)
2013-04-28 11:07

I can NOT reproduce this on 0.7.5 win7-64, winXP, Centos with Mono 2.8
Im using fireworks with this script: (please try it)

----------------


MakeParticles() //This is the function that actually starts the particle system.
{
    llParticleSystem([ //KPSv1.0
        PSYS_PART_FLAGS , 0 //Comment out any of the following masks to deactivate them
    //| PSYS_PART_BOUNCE_MASK //Bounce on object's z-axis
    //| PSYS_PART_WIND_MASK //Particles are moved by wind
    | PSYS_PART_INTERP_COLOR_MASK //Colors fade from start to end
    | PSYS_PART_INTERP_SCALE_MASK //Scale fades from beginning to end
    | PSYS_PART_FOLLOW_SRC_MASK //Particles follow the emitter
    | PSYS_PART_FOLLOW_VELOCITY_MASK //Particles are created at the velocity of the emitter
    //| PSYS_PART_TARGET_POS_MASK //Particles follow the target
    | PSYS_PART_EMISSIVE_MASK //Particles are self-lit (glow)
    //| PSYS_PART_TARGET_LINEAR_MASK //Undocumented--Sends particles in straight line?
    ,
    
    //PSYS_SRC_TARGET_KEY , NULL_KEY, //Key of the target for the particles to head towards
                                                //This one is particularly finicky, so be careful.
    //Choose one of these as a pattern:
    //PSYS_SRC_PATTERN_DROP Particles start at emitter with no velocity
    //PSYS_SRC_PATTERN_EXPLODE Particles explode from the emitter
    //PSYS_SRC_PATTERN_ANGLE Particles are emitted in a 2-D angle
    //PSYS_SRC_PATTERN_ANGLE_CONE Particles are emitted in a 3-D cone
    //PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY Particles are emitted everywhere except for a 3-D cone
    
    PSYS_SRC_PATTERN, PSYS_SRC_PATTERN_ANGLE_CONE
    
    ,PSYS_SRC_TEXTURE, "" //UUID of the desired particle texture, or inventory name
    ,PSYS_SRC_MAX_AGE, 0.0 //Time, in seconds, for particles to be emitted. 0 = forever
    ,PSYS_PART_MAX_AGE, 1.0 //Lifetime, in seconds, that a particle lasts
    ,PSYS_SRC_BURST_RATE, 0.02 //How long, in seconds, between each emission
    ,PSYS_SRC_BURST_PART_COUNT, 2 //Number of particles per emission
    ,PSYS_SRC_BURST_RADIUS, 5.0 //Radius of emission
    ,PSYS_SRC_BURST_SPEED_MIN, 5.5 //Minimum speed of an emitted particle
    ,PSYS_SRC_BURST_SPEED_MAX, 6.0 //Maximum speed of an emitted particle
    ,PSYS_SRC_ACCEL, <0.0,0.0,-0.8> //Acceleration of particles each second
    ,PSYS_PART_START_COLOR, <0.0,0.0,1.0> //Starting RGB color
    ,PSYS_PART_END_COLOR, <0.6,0.6,1.0> //Ending RGB color, if INTERP_COLOR_MASK is on
    ,PSYS_PART_START_ALPHA, 0.9 //Starting transparency, 1 is opaque, 0 is transparent.
    ,PSYS_PART_END_ALPHA, 0.0 //Ending transparency
    ,PSYS_PART_START_SCALE, <0.4,0.4,0.0> //Starting particle size
    ,PSYS_PART_END_SCALE, <1.3,2.3,0.0> //Ending particle size, if INTERP_SCALE_MASK is on
    ,PSYS_SRC_ANGLE_BEGIN, PI //Inner angle for ANGLE patterns
    ,PSYS_SRC_ANGLE_END, PI //Outer angle for ANGLE patterns
    ,PSYS_SRC_OMEGA, <0.0,0.0,0.0> //Rotation of ANGLE patterns, similar to llTargetOmega()
            ]);
}

default
{
    

    touch_start(integer i)
    {
    MakeParticles();
llSetLinkPrimitiveParams(LINK_SET, [PRIM_TEMP_ON_REZ, TRUE ]);

        llSetStatus(STATUS_PHYSICS, TRUE);
        llSetStatus(STATUS_DIE_AT_EDGE, TRUE);
        llSetStatus(STATUS_PHANTOM, FALSE);
        llSetForce(<0,0,0.06>, 0);
        llPlaySound("32f877e2-b799-43e6-a818-ca923080452a",1);
       
        llSleep(4.6);
        
        llDie();

    }
}
-----------------

- Issue History
Date Modified Username Field Change
2012-06-17 17:43 monanabildemaidi New Issue
2012-06-17 18:01 BlueWall Note Added: 0021657
2012-06-18 10:48 Talun Note Added: 0021662
2012-06-18 10:49 Talun Note Edited: 0021662 View Revisions
2012-06-18 10:49 Talun Note Edited: 0021662 View Revisions
2012-06-18 11:42 monanabildemaidi Note Added: 0021663
2012-06-18 16:25 Talun Note Added: 0021664
2012-06-18 16:27 Talun Note Added: 0021665
2012-06-18 16:32 Robert Adams Note Added: 0021666
2012-06-18 22:12 monanabildemaidi Note Added: 0021668
2012-07-19 22:52 justincc Note Added: 0021821
2012-07-19 22:52 justincc Assigned To => justincc
2012-07-19 22:52 justincc Status new => feedback
2012-07-19 22:52 justincc Assigned To justincc =>
2013-02-20 02:39 Bolivar Shagnasty Note Added: 0023584
2013-02-20 02:40 Bolivar Shagnasty Note Edited: 0023584 View Revisions
2013-02-20 23:55 justincc Note Added: 0023588
2013-02-21 01:25 Bolivar Shagnasty Note Added: 0023589
2013-04-12 00:01 Ares Q Note Added: 0023778
2013-04-12 00:02 Ares Q Note Edited: 0023778 View Revisions
2013-04-12 00:03 Ares Q Note Edited: 0023778 View Revisions
2013-04-28 11:07 Luisillo_Contepomi Note Added: 0023803


Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker