Tuu Munz
-
Posts
11 -
Joined
-
Last visited
Content Type
Forums
Blogs
Knowledge Base
Posts posted by Tuu Munz
-
-
I'm quite sure it's question about last weekends Grid Drive which went from south Sansara trough Bellisseria to Satori (there was one landing on water in the middle of the route).
All necessary info of Grid Drives can be obtained here: https://www.driversofsecondlife.info/p/navigation-hud-how-to-and-history.html
- 1
-
http://wiki.secondlife.com/wiki/LlRequestDisplayName
Example:key owner_key; key owner_name_query; string owner_display_name; default { state_entry() { owner_key = llGetOwner(); owner_name_query = llRequestDisplayName(owner_key); } dataserver(key queryid, string data) { if ( owner_name_query == queryid ) { owner_display_name = data; llSay(0, "The display name of the owner of this script : " + owner_display_name ); } } }
-
Have You rebaked the region after making pathfinding changes?
If not, You should see this icon:
Click it, and click 'Rebake':
- 1
-
Only for members?
Panquehue (88,73,501), "[15:02] Fnordian Security System 2.1: You are not authorized to be on this land, Tuu Munz. Please leave or you will be ejected in 320 seconds." -
Sold.
Thanks for interest! -
11 hours ago, steph Arnott said:
Reality check in regards to the OPs statement. This is SL and LSL does not need to be stupidly accurate. Simply chop off the end to return a three decimal float.
You are right. There sure are many ways to handle this feature. But to use them, you have to be aware about it.
And - shame to me - I haven't been. May be because I have under my years in SL wrote only simple scripts - switching lights on/off, changing colours and textures of prims, playing whit particles for my own fun, making simple menus, etc.
But recently I have been playing with one opensource script and found out, that sometimes it does what it should do and sometimes doesn't. When I looked it closer, it seemed to me, that logic there were quite right, but that the aberration there must have something to do with the way LSL handles floats. I could fix the script so that I'm happy with it. But as I am curious person, I liked to know, why it worked as it did. Now I know. 😊
-
Thank you all very much for comments!
2 hours ago, Nova Convair said:This is expected behaviour !!!
A decimal floating point number like 0.1 or 1.0 or whatever is stored and computed in a binary format.
And a 0.1 in decimal notation can not be converted into a binary format without using an infinite number of digits. So the number is cut off after using 32 or 64 bits or whatever float format is used. If you caculate with this number it is NOT a 0.1 it's just very close to a 0.1
If you compare 2 different calculations it's very probable that they are NOT equal even if they should.
That's why I never compare 2 floats for equality - I compare if the difference is less than 0.0001 for example or whatever precision I need in this specific case. 2 hours ago, Madelaine McMasters said:Remember that computers are binary, not decimal (there were decimal computers long ago). In binary floating point, the decimal number 0.1 is irrational. Like PI, or 1/3 in decimal, no matter how many digits/bits you list, you're still not right. If you start out with irrational truncation errors, subsequent calculations with their inherent rounding will only make things worse. As Nova says, you must treat floating point numbers as approximations and you must compare them with an appropriate error band. And do make sure that your error band is not smaller than your rounding error, which depends on the floating point precision and the number and nature of math operations you do prior to making your comparison.
https://www.exploringbinary.com/why-0-point-1-does-not-exist-in-floating-point/
So this is a feature.
(Allways nice to be today wiser than yesterday 😋.) -
LSL is calculating:
default { touch_start(integer total_number) { float X = 0.10; float Y = 0.00; Y += X; Y += X; Y += -X; Y += -X; llOwnerSay("Y is " + (string)Y); if (Y > 0.000000) { llOwnerSay("Y is greater than 0.000000"); } else if (Y == 0.000000) { llOwnerSay("Y is equal to 0.000000"); } else if (Y < 0.000000) { llOwnerSay("Y is less than 0.000000"); } else { llOwnerSay("Sorry, I don't know."); } } }
and gives response:
[04:19] Object: Y is 0.000000
[04:19] Object: Y is equal to 0.00000Ok.
But when LSL is calculating:default { touch_start(integer total_number) { float X = 0.10; float Y = 0.00; Y += X; Y += X; Y += X; Y += -X; Y += -X; Y += -X; llOwnerSay("Y is " + (string)Y); if (Y > 0.000000) { llOwnerSay("Y is greater than 0.000000"); } else if (Y == 0.000000) { llOwnerSay("Y is equal to 0.000000"); } else if (Y < 0.000000) { llOwnerSay("Y is less than 0.000000"); } else { llOwnerSay("Sorry, I don't know."); } } }
is response:
[04:20] Object: Y is 0.000000
[04:20] Object: Y is greater than 0.000000Is this a known bug (which I haven't known), or is this a feature?
Or am I stupid? -
Thanks for comments, Kolby & Venus!
The horses hasn't bothered me - but to be honest, I haven't had much time to be there lately, and when I have been there, I have usually taken one of my boats and enjoyed sailing around the open-ended Linden oceans...
-
Wonderful place for sailing, boating, surfing, diving, swimming, etc.
South-east corner of a sim by Linden oceans.
This kind of place is rarely available!!!
4096 sq.m.
937 primitivesPrice 69999 LPrice 59999 L
What is wrong with Market Place?
in General Second Life Tech Discussion
Posted
"Investigating - We are currently undergoing unscheduled billing maintenance. While this maintenance is in progress, residents may be unable to use the cashier or to make purchases. Additionally, residents may have difficulty accessing certain features at this time, including the Marketplace and Skill Gaming Regions. We apologize for any inconvenience."
https://status.secondlifegrid.net/