Difference between revisions of "User:Lum Pfohl/SL Trivia"
Jump to navigation
Jump to search
m |
|||
Line 13: | Line 13: | ||
# '''Linden Avatars do not show up on your Radar HUDs.''' Radar HUDs (and other avatar-sensing scripts) rely on the llSensor() and llSensorRepeat() functions. Linden personnel appear to be hidden from these functions, and thus would not be visible on any Second Life radar scripts. Lindens '''do appear''' on the mini-map. Because many of them hover over the land, they appear as green "T" symbols and can be discovered that way. I have to validate my claim, but so far it's proven true. | # '''Linden Avatars do not show up on your Radar HUDs.''' Radar HUDs (and other avatar-sensing scripts) rely on the llSensor() and llSensorRepeat() functions. Linden personnel appear to be hidden from these functions, and thus would not be visible on any Second Life radar scripts. Lindens '''do appear''' on the mini-map. Because many of them hover over the land, they appear as green "T" symbols and can be discovered that way. I have to validate my claim, but so far it's proven true. | ||
# '''It is possible to hide your name tag from others.''' By cleverly placing an invisi-prim over your head, the Avatar Name Tag can be obscured from view on everyone's Client Viewers, making you "nameless." | # '''It is possible to hide your name tag from others.''' By cleverly placing an invisi-prim over your head, the Avatar Name Tag can be obscured from view on everyone's Client Viewers, making you "nameless." | ||
# '''It is possible to hide your group tag from everyone.''' There is a setting in Preferences which will prevent the active group tag from displaying on anyone's screen. | |||
# '''It is possible to hide your group affiliation from your profile.''' There is a setting in your GROUP INFO dialog box which will keep the group from appearing there. The group will still appear in your MY GROUPS display, so you can activate / administer it at anytime. | |||
Line 18: | Line 20: | ||
# '''You cannot transfer more than 42 individual inventory items to another user at once.''' To transfer more than this amount, you must either break up the transfers into two or more chunks (like a folder of 80 items can be broken in to two folders of 40 each), or stuff the items into an object and transfer that one object. | # '''You cannot transfer more than 42 individual inventory items to another user at once.''' To transfer more than this amount, you must either break up the transfers into two or more chunks (like a folder of 80 items can be broken in to two folders of 40 each), or stuff the items into an object and transfer that one object. | ||
# '''You can open more than one Inventory window.''' Open your INVENTORY. In the Inventory Window is a menu option called FILE. Click FILE -> NEW WINDOW and a second Inventory Window will open. You can now perform independent functions on each window - drag/copy from one window to another. Great tip for managing your cluttered inventory! | # '''You can open more than one Inventory window.''' Open your INVENTORY. In the Inventory Window is a menu option called FILE. Click FILE -> NEW WINDOW and a second Inventory Window will open. You can now perform independent functions on each window - drag/copy from one window to another. Great tip for managing your cluttered inventory! | ||
# '''Clearing Cache also clears your Inventory Listing.''' When you relog and open your Inventory, you'll find you have nothing to your name - until the download of the items complete. Additionally, the Inventory listing download will not occur until you open up the Inventory window. If you close it before the download is complete, it will resume when you open the Inventory window again. | |||
# '''You can drag multiple folders into prims.''' Doing so creates a "package," as everyone knows. But the folder names are not preserved. When the package is unpacked using the OPEN -> COPY TO INVENTORY function, a new folder with the name of the prim (the package) is created and the items are placed in there. | |||
# '''You can place packages inside packages.''' This is like zipping up a zip archive. There seems to be no limit as to what or how many these things can hold. Luna Idler, a resident of the Calleta Infohub passes out a Newbie Helper Kit that contains more than 1000 items (packaged in many sub-packages). | |||
Line 27: | Line 32: | ||
# '''A Particle Effect is a Property of an Prim.''' This may sound like "duh," but people just don't understand. A particle effect, is just like any other object property (size, color, shape, hollow, twist, etc.) The only difference is that the particle effect property is only accessible by a script - it can only be set, not read. Once set with the llParticleSystem() statement in LSL, retains that property regardless of whether a script is there or not. If a particle effect is set to "die out," over time - then it will do so - but the properies are still set. Conversely, if a particle has an undefined lifetime, the only way to "stop it," is to pass null parameters to the llParticleSystem() function via LSL. | # '''A Particle Effect is a Property of an Prim.''' This may sound like "duh," but people just don't understand. A particle effect, is just like any other object property (size, color, shape, hollow, twist, etc.) The only difference is that the particle effect property is only accessible by a script - it can only be set, not read. Once set with the llParticleSystem() statement in LSL, retains that property regardless of whether a script is there or not. If a particle effect is set to "die out," over time - then it will do so - but the properies are still set. Conversely, if a particle has an undefined lifetime, the only way to "stop it," is to pass null parameters to the llParticleSystem() function via LSL. | ||
# '''A Hover Text is a Property of an Prim.''' Like particles, once set - it doesn't go away when the script that set it is deleted. It must be "set" to an empty string using LSL's llSetText() function. | # '''A Hover Text is a Property of an Prim.''' Like particles, once set - it doesn't go away when the script that set it is deleted. It must be "set" to an empty string using LSL's llSetText() function. | ||
# '''It is possible to upload a sculpted prim texture map that is not compressed by JPEG-2000''' However, this is a hack - probably done via the magic of open source. This leads me to believe that JPEG-2000 image compression is done by the client and the image is simply stored in the Asset Server. I have a 10-star single-prim sculpted object which uses such an uncompressed map. | |||
# '''Just as textures viewed at distances lose their resolution, sculpted objects turn into blobs at distances.''' This is easily demonstrated with the 10-star sculpted prim. At close ranges, the 10 stars appear to be sharp, crisp and beautiful... When the Camera is zoomed out, the texture map seems to lose resolution and the whole thing turns in to a blob. Zooming back in, everything is sharp and crisp again. | |||
;Linking Prims & Objects | ;Linking Prims & Objects | ||
# '''When objects are linked, the PHANTOM property of the ROOT PRIM is copied to the entire object's prims.''' Here is a test: Create 4 boxes. Make one of the prims a PHANTOM object. Link all 4 boxes, with the PHANTOM box as your root prim. Your resultant object is completely phantom. Unlinking the object reveals that all 4 prims are now PHANTOM as well. You cannot have a "partially phantom" object. | # '''When objects are linked, the PHANTOM property of the ROOT PRIM is copied to the entire object's prims.''' Here is a test: Create 4 boxes. Make one of the prims a PHANTOM object. Link all 4 boxes, with the PHANTOM box as your root prim. Your resultant object is completely phantom. Unlinking the object reveals that all 4 prims are now PHANTOM as well. You cannot have a "partially phantom" object. A corollary is that if you have a PHANTOM object linked to a NON-PHANTOM object, the PHANTOM object loses its PHANTOM property. | ||
# '''When prims and objects are linked, the TEMPORARY property of the ROOT PRIM will affect the entire object - even though those other prims are not temporary.''' Unlink the PHANTOM property, unlinking the object will reveal that the TEMPORARY property was not cascaded to the child prims. Still, watch out when you link a very expensive no-copy HOUSE with a TEMPORARY box as your root prim. Your house will disappear without a trace and that would be bad. :( | # '''When prims and objects are linked, the TEMPORARY property of the ROOT PRIM will affect the entire object - even though those other prims are not temporary.''' Unlink the PHANTOM property, unlinking the object will reveal that the TEMPORARY property was not cascaded to the child prims. Still, watch out when you link a very expensive no-copy HOUSE with a TEMPORARY box as your root prim. Your house will disappear without a trace and that would be bad. :( | ||
# '''Objects which span more than 32 meters (from center to center of the extreme prims) cannot be linked.''' I'm sure there is some sort of workaround for this - like sub-linking objects such that their geometric centers are no more than 32 meters... Need to test more around this claim. | # '''Objects which span more than 32 meters (from center to center of the extreme prims) cannot be linked.''' I'm sure there is some sort of workaround for this - like sub-linking objects such that their geometric centers are no more than 32 meters... Need to test more around this claim. | ||
Line 63: | Line 70: | ||
# '''Scripts will only run, when placed into an prim and rezzed in-world or as an attachment.''' Having scripts does not a monster make... Those scripts must have a vessel in which to run. A prim is such a vessel. The scripts are interpreted by the simulator. | # '''Scripts will only run, when placed into an prim and rezzed in-world or as an attachment.''' Having scripts does not a monster make... Those scripts must have a vessel in which to run. A prim is such a vessel. The scripts are interpreted by the simulator. | ||
# '''Variables and states of scripts can be stored in the ASSET SERVER.''' That is, if a counter script is placed into the prim and it counts by 1 every second, that counter object can be taken into inventory and given to another resident, and rezzed a year later and it will continue (in theory) to count from where it left off... This is the state persistence magic of Object Oriented databases. It is quite a miracle of implementation, in my opinion. | # '''Variables and states of scripts can be stored in the ASSET SERVER.''' That is, if a counter script is placed into the prim and it counts by 1 every second, that counter object can be taken into inventory and given to another resident, and rezzed a year later and it will continue (in theory) to count from where it left off... This is the state persistence magic of Object Oriented databases. It is quite a miracle of implementation, in my opinion. | ||
# '''Some functions cause the script to block for a certain number of seconds.''' Functions such as llEmail() and llRemoteDataReply() delay the scripts for 20.0 and 3.0 seconds respectively. This is probably done to prevent a single prim from monopolizing the entire resource bandwidth, and the mitigate the risks of spamming. You can overcome some of these limitations by segregating the llEmail() and llRemoteDataReply() functions into several separate slave scripts that will be called by the main script in a round-robin fashion using llMessageLinked(). As one call is made, the first slave script will block, while the other slave scripts are free and ready to perform the actions. The main script can continue to operate without blocking either. I am a big proponent for the use of llEmail to communicate between objects and avatars and the real-world. | |||
# '''Scripts can send email to your home email address.''' And, they can receive emails from the outside world too. They can send and receive emails amongst themselves. If the receiving script is blocked, or the sim in which it is residing is offline, the email messages are queued on the secondlife sendmail servers until they are polled and read. How handy! This makes for a semi-robust networked vending system. | |||
;Strange Phenomena | ;Strange Phenomena | ||
# '''Sitting on an object sometimes takes | # '''Sitting on an object sometimes takes you to location 0,0,0 of the simulator.''' It is an unsettling experience, but sometimes you find yourself in Limbo - maybe with other avatars around. You cannot move, you cannot stand, you cannot sit. You can chat - and the people around in normal SL you can see you and talk with you. You just cannot see them. This condition usually clears up after a minute or two. | ||
# '''Sitting on an object in an impossible place can take you to negative altitudes. | # '''Sitting on an object in an impossible place can take you to negative altitudes.''' Using your Camera, you can get inside and under objects and right-click something and sit on them. Attemping to sit on objects object where clearly there isn't room for you to do so might send your viewer to negative altitudes and you might be looking up at the sim and people above you. | ||
# '''Standing from an object that extends into another sim is hazardous to your health!''' Well, not really. But it is interesting to see what happens. You can try this at the Hangeul Welcome Center. There is a circular bench directly in the middle of where the 4 sim corners of the Welcome Center touches. This circular bench is located in the Hangeul sim. Stand in Hangeul, and right click and sit on the bench (and you can) on the side where it extends into one of the three other sims. When you stand, you might find you're "stuck" there for several minutes - then all of a sudden everything around you disappears and you find yourself high in the sky, then you might find yourself tucked behind another bench in the sim you stood up in. The trick is to stand up from an object that extends into another sim... | |||
;Lag | ;Lag | ||
# '''Textures Cause Lag''' I've got a whole write up about this [[User:Lum_Pfohl/Troubleshooting#Gray Everywhere|here.]] | # '''Textures Cause Lag''' I've got a whole write up about this [[User:Lum_Pfohl/Troubleshooting#Gray Everywhere|here.]] | ||
# '''Giant Prims Cause Lag''' | # '''Giant Prims Cause Lag''' Giant prims cannot normally be constructed in Second Life. They were perhaps built with a hacked version of SL which had disabled the 10.000 meter constraints on the dimensions. Again, because of their size the simulator must calculate a lot of things, such as collisions of a physical object or avatar with those prims. The larger the prim the larger the collision area and more calculations needed...? | ||
# '''Scripts Cause Lag''' | # '''Scripts Cause Lag''' Scripts run in a prim and when rezzed on the simulator, the simulator takes responsibility for its execution. When there are hundreds, even thousands of scripts, each script is given a "time-slice" for execution. Obviously this occurs in addition to everything else the simulator must do. There seems to be no limit on the number of scripts a prim can have... | ||
# '''Torus Prims Cause Lag''' | # '''Torus Prims Cause Lag''' This is only hear-say. I guess due to their complicated shapes the simulator has an extra-hard time coping with the collision mathematics. I once rezzed 3200 tortured torus prims over Linden Weapons Testing Sandbox -- the sim didn't seem any more laggier than usual. | ||
Revision as of 11:25, 7 January 2008
SL TriviaThese are things I've noticed about SL over the course of a year. In no particular order at this time:
Lum Pfohl 06:55, 29 November 2007 (PST) |
|