Hi, I am trying to write a particle script with random textures (with a UUID list, not textures in the prim inventory) in the simplist way. This is my attempt, but my script is not picking up textures :-( I'd appreciate if anyone could help identifying and fixing errors in this script. Thanks in advance for your help! P.S. Is it possible to randomize textures without using timer? If so, how? //A set of textures list textures = [ "ad90ac58-6e23-afbc-1f4f-6adbfd78b5b5", "dcab6cc4-172f-e30d-b1d0-f558446f20d4", "bb08ed92-9f0e-85d8-2eaf-9f67b7795e3d" ]; default { state_entry() { //Randomize Textures integer number_of_textures = llGetListLength(textures); integer random_texture_index = (integer) llFrand(number_of_textures); string random_texture = ""; random_texture = llList2String(textures, random_texture_index); llSetTimerEvent(0.1); } timer() { //Start Particle llParticleSystem([ PSYS_PART_FLAGS , 0 | PSYS_PART_INTERP_COLOR_MASK | PSYS_PART_INTERP_SCALE_MASK | PSYS_PART_FOLLOW_VELOCITY_MASK | PSYS_PART_EMISSIVE_MASK, PSYS_SRC_PATTERN, 8, PSYS_SRC_TEXTURE, (key)"random_texture", PSYS_SRC_MAX_AGE, 0.000000, PSYS_PART_MAX_AGE, 1.000000, PSYS_SRC_BURST_RATE, 0.010000, PSYS_SRC_BURST_PART_COUNT, 4, PSYS_SRC_BURST_RADIUS, 2.000000, PSYS_SRC_ACCEL, <0.00000, 0.00000, 0.00000>, PSYS_SRC_BURST_SPEED_MIN, 1.000000, PSYS_SRC_BURST_SPEED_MAX, 0.000000, PSYS_PART_START_COLOR, <1.00000, 1.00000, 1.00000>, PSYS_PART_END_COLOR, <1.00000, 1.00000, 1.00000>, PSYS_PART_START_ALPHA, 0.000000, PSYS_PART_END_ALPHA, 1.000000, PSYS_PART_START_SCALE, <0.5, 0.5, 0.5>, PSYS_PART_END_SCALE, <0.5, 0.5, 0.5>, PSYS_SRC_ANGLE_BEGIN, 1.625000, PSYS_SRC_ANGLE_END, 1.625000, PSYS_SRC_OMEGA, <0.00000, 0.00000, 0.00000>]); } }