Jump to content

Ana Stubbs

  • Posts

  • Joined

  • Last visited

Posts posted by Ana Stubbs

  1. 16 hours ago, ChinRey said:

    Edit: Come to think of it, doesn't Firestorm have a function to restore re-rezzed items to their original position? I think it even works every now and then.

    It does, but it's most useful for people who manage full sims. 

    It has two main limitations - you need to be able to rez at (0,0), and the item must be copiable.

    • Like 1
  2. Just now, Wulfie Reanimator said:

    I'd recommend looking up things like line-draw algorithms, and matrices (singular: matrix -- related to homogeneous coordinates) which you'll need to get things drawn on the screen correctly.

    Thanks! I already have a physics degree, so linear algebra is my jam. I'm really looking forward to it.

    • Like 1
  3. When this gets released, I for one will be digging back through my inventory to check some old projects that never quite looked right.

    Also, thanks to @Beq Janus for the very interesting explanation. I'll be studying computer graphics in the autumn, so it's nice to hear the more mathsy details.

  4. Quote
    Harden Normals

    When enabled, the per-vertex face normals of the bevel faces are adjusted to match the surrounding faces, and the normals of the surrounding faces are not affected. This will keep the surrounding faces flat (if they were before), with the bevel faces shading smoothly into them. For this effect to work, you need custom normals data, which requires Auto Smooth option to be enabled (see Normals).


    If I understand this right, this new "Harden Normals" option for the bevel modifier in 2.80+ makes this process much easier, and removes the need for transfering normals from a copy of the mesh?

    • Like 1
  5. The "API dood" has resolved this now for me, I'll leave his explanation of what the issue was in case someone encounters this with another server.


    I made a change to the app so it now returns the headerContent-Type: application/json;charset=utf-8. Prior to that, that charset part was missing. While most clients I've encountered don't seem to care, I suspect that the library you're using was consuming the payload as US-ASCII or some other encoding, which could make for some weird interaction with Content-Length value.

    The only question I'm left with is why does SL need this to be specified when other clients don't?

    • Like 2
  6. On 7/29/2019 at 4:13 PM, Xiija said:

    for a temp fix, you could hack the end of the borken JSOn ?

    I think that may wind up being the only fix.

    I wish I knew what is triggering it - at least then I would know how much is likely to be truncated. If it ever hits the end of the verse, then I can't see that I can recover from that, other than maintaining a list of bad verses and substituting in what "should" be returned.

  7. 53 minutes ago, Qie Niangao said:

    This is an extreme long-shot, but: Is there any way you can see the logs of the server responding to your requests? I ask because I'm not seeing the problem on the LSL side. I know the requests get good responses in a browser, I'm just wondering if there's something the server sees or fails to see in the scripted request that leads it to send something different.

    I agree that there's also something funky going on with character sets. I wrote a quick version of this that serves back to itself the text of one of the responses, captured from a browser, and when received from this little LSL http server it uses the proper Unicode characters for backquote, double quotes, etc. as seen in the browser, instead of the way they look when the script gets them from the bible-api server.

    Not my server, so no, but I've opened an issue on github in the hope the creator might be able to shed some light on this.


  8. 2 hours ago, Xiija said:

    mebbe parse the body?

    It seems to be using either ISO-8859-1 or CP-1252 charset  from the API ?

    no idea how to fix that except to use a string replace func?

    (this is a prim- touch to GET, change for your needs )

    Firstly, thank you - that's a much better script than mine and shows nicely how i can improve mine. Can I ask about the extra parameters in the HTTP request?

    Secondly, unfortunately it's still truncated with your script, it's just pretty and truncated. I see that you've gotten around it by dropping the idea of using the JSON functions, but i'm still holding out hope that there might be a way of stopping it truncating. I've got some plans for further development (eg, stepping through very long passages verse by verse instead of flooding chat) that would be much easier if I can use the json functions instead of a strided list.

    • Like 1
  9. Just now, Fritigern Gothly said:

    What caught my eye here, not in the script but in your description of the issue, is that you are retrieving JSON values, but I don't see any JSON-related functions in your script so I was wondering if you are aware of the JSON functions in LSL?


    Thanks - I am, and I'm using them, but I chopped them out, along with all the rest of the postresponse processing, for the sake of a clearer script. They don't work at all with invalid JSON, which is what I'm left with when it's truncated early.

  10. Other verses with overuse of or mismatched special chars that work fine:

    Leviticus 10:6


    Moses said to Aaron, and to Eleazar and to Ithamar, his sons, “Don’t let the hair of your heads go loose, and don’t tear your clothes, so that you don’t die, and so that he will not be angry with all the congregation; but let your brothers, the whole house of Israel, bewail the burning which Yahweh has kindled.

    Deuteronomy 31:8


    Yahweh himself is who goes before you. He will be with you. He will not fail you nor forsake you. Don’t be afraid. Don’t be discouraged.”

    Jeremiah 9:23


    Yahweh says, “Don’t let the wise man glory in his wisdom. Don’t let the mighty man glory in his might. Don’t let the rich man glory in his riches.

    Malachi 2:10


    Don’t we all have one father? Hasn’t one God created us? Why do we deal treacherously every man against his brother, profaning the covenant of our fathers?

    And, to recap, the ones that don't work are

    Joshua 1:9


    Haven’t I commanded you? Be strong and courageous. Don’t be afraid. Don’t be dismayed, for Yahweh your God is with you wherever you go.”

    and Malachi 3:2


    “But who can endure the day of his coming? And who will stand when he appears? For he is like a refiner’s fire, and like launderers’ soap; 


  11. 35 minutes ago, Wulfie Reanimator said:

    You're right. I found some time to look at different outputs more and one thing that really sticks out is the closing curly-quotation used at the end of 1:9. Comparing it to other verses, like 1:11, which also has the closing quote without issues, the difference is that 1:11 also has a matching opening quote. I can't see any other oddities on the string itself.

    I didn't find any way to fix it though, or have the time to find other verses that only have the closing quote so I could double-check if it's that.

    Thanks, i hadn't spotted that mismatch.

    Tested a few more places where people give long speeches that span several verses.

    Matthew 1:21


    She shall give birth to a son. You shall name him Jesus, for it is he who shall save his people from their sins.”

    works fine.

    So does Jeremiah 1:10


    Behold, I have today set you over the nations and over the kingdoms, to uproot and to tear down, to destroy and to overthrow, to build and to plant.”

    and, back in the first chapter of Joshua, so does Joshua 1:18


    Whoever rebels against your commandment, and doesn’t listen to your words in all that you command him shall himself be put to death. Only be strong and courageous.”


  12. 22 minutes ago, Wulfie Reanimator said:

    It's actually llOwnerSay that's the issue. Its output is always truncated to 1024 bytes.

    That's what I originally thought, but longer strings get through fine.

    I also tried using llGetSubString with negative indicies to llOwnerSay only the very last part of the string, and it was truncated in the exact same place. Wherever the issue is, I don't think it's with llOwnerSay.

  13. My scripting skills are very rusty, so i'm hoping someone on the forum can point out why this isn't working.

    I've got a very simple hud that reads JSON from someone else's server, and then uses that.

    Here is a stripped down version for reproducing my problem 

    key http_request_id;
    string url = "http://bible-api.com/";
    integer listenHandle;
            listenHandle = llListen(1, "", llGetOwner(), "");
        listen(integer channel, string name, key id, string message)
        http_request_id = llHTTPRequest(url + llEscapeURL(message), [HTTP_BODY_MAXLENGTH,16384], "");
        http_response(key request_id, integer status, list metadata, string body)
            if (request_id != http_request_id) return;// exit if unknown
            llOwnerSay("HTTP status: " + (string)status);
            llOwnerSay("HTTP body: " + body);
            llOwnerSay("Metadata: " + llDumpList2String(metadata,","));
            llOwnerSay("Length of HTTP body: " + (string)llStringLength(body));


    If I request Joshua 1:9 (that is, verse 9 of the first chapter of the book of Joshua), the response is truncated early


     {"reference":"Joshua 1:9","verses":[{"book_id":"JOS","book_name":"Joshua","chapter":1,"verse":9,"text":"Havenât I commanded you? Be strong and courageous. Donât be afraid. Donât be dismayed, for Yahweh your God is with you wherever you go.â\n"}],"text":"Havenât I commanded you? Be strong and courageous. Donât be afraid. Donât be dismayed, for Yahweh your God is with you wherever you go.â\n","translation_id":"web","translation_name":"World English Bible","translation_n

    If I request Joshua 1:8-9 (which is longer than but inclusive of Joshua 1:9) all is fine. Likewise, Joshua 1:9-10 also works.

    I've tried other verses with quotation marks in, and other verses with question marks in, and they all seem to work fine. The only other bible verse I've found so far that chokes it is Malachi 1:3, which stops at a different point


     {"reference":"Malachi 3:2","verses":[{"book_id":"MAL","book_name":"Malachi","chapter":3,"verse":2,"text":"âBut who can endure the day of his coming? And who will stand when he appears? For he is like a refinerâs fire, and like launderersâ soap;\n"}],"text":"âBut who can endure the day of his coming? And who will stand when he appears? For he is like a refinerâs fire, and like launderersâ soap;\n","translation_id":"web","translation_name":"World English Bible","translation_note"


    HTTP_BODY_MAXLENGTH is set to 16k, which should be enough for the entire chapter!

    Can anyone explain what is happening?

  14. 53 minutes ago, Bitsy Buccaneer said:

    There is no need to say things like "video is a really horrible format for self learning" or make snide comments about those of us for whom they've proven to be the most suitable format available.

    In fairness, I think you can say "this format is objectively not very good" and yet not denigrate those who prefer it.

    Lectures are a disastrous format for learning, and yet universities put thousands on each year. Highlighting books is a terrible way to learn (rather than just looking like you're learning), but it's my first choice, because it forces me to actually read the text and pick out the key parts.

    I'm not keen on videos because they're invariably badly subtitled, if subtitled at all. Someone whose hearing is better than their eyesight may well have the opposite opinion.

  15. 7 hours ago, Matty Luminos said:

    I would think that the main things to avoid would be Local Lights (you can turn this off in Preferences), Particles (same), and moving around in Mouselook mode (the latter is enough to make even me start to feel nauseous). 

    On the whole though, SL is not like other games. Here in SL you're already in total control; you can divert your camera away from anything that causes you problems,  you can change your preferences and Windlight settings  so that things which bother you aren't rendered the same way (this will make a big difference). Don't allow regions to enforce their own windlight settings on you.

    One last thing, if you're not already using Firestorm, give it a try; it has the ability to de-render and blacklist individual objects, which means that you won't see them at all. If certain flashing or rotating objects are giving you problems, this feature will literally make them invisible.


    That's an excellent explanation, but I'm sorry, I should have been a bit clearer - I meant things to avoid as a creator.

  16. 10 hours ago, Bitsy Buccaneer said:

    There's a lot of SL that's safe enough, so I think the more appropriate place for a warning would be tied to specific builds. That's hard to do though given the infrastructure and TPing to get around. I think I'd like for there to be a culture of providing warnings or information about what's ahead primarily because it would encourage broader awareness amongst the general population, but it would probably backfire and become the new script/arc policing. I'm just so used to dealing with it I don't think to mention it to others, though it usually comes up eventually with close friends.

    For me, the most important accomodation I need is somewhere safe on the screen to divert my camera to. It gives me time to fumble for the ctrl-shift Home and sometimes it's enough to let me stay a while.

    Is there an SL-centric list anywhere of things to avoid?

    I can avoid the things that trigger me (caveat: I'm not epileptic, but some of the photosensitive epilepsy triggers do send me on very unpleasant and nauseating spacey trips), but everyone is so different...

    • Like 1
  17. I've had much success with texturing prims as real world measuring devices. 

    I have a ruler and a protractor, and intersect these with what I want to measure, to avoid camera parallax. The measurements I read off have all been quite accurate enough for my purposes, and comparative with measurements directly within Blender.

    • Like 1

    10 minutes ago, ChinRey said:

    Or don't use a normal map at all as Penny mentions in #6. ;)


    Or bake it into the texture. There's one thing people seem to get wrong about normal maps: they're not some sort of magic feature that add something brand new to the render. All they do is darken some parts of the texture adding a bit of extra shading. It's dynamic shading that changes with the windlight and in theory nomral maps allow you to add different shading patterns to different instances of the same texture but how often are normal maps used that way? With fixed windlight and hardlocked normal map/texture combos the normal maps hardly make any sense at all.

    This I disagree with. Even if the normal map is nothing to write home about, it still allows the use of specularity on non-metalic surfaces.

    Where you then wind up having trouble is that your specular and normal maps are tied to the same resolution.

    • Like 2
  19. 1 hour ago, Penny Patton said:

    When you're starting out with 7 FPS, 15fps seems like a miracle.

    I've spent a fair amount of time using SL on machines with performance that would be better measured in seconds per frame (need to stay in touch, can't take my desktop with me when I travel). 5-7fps is about the point where it stops being a chat application with accompanying slideshow and starts to become usable. 10fps is a dream.

    As an aside for anyone in the same situation, Firestorm's text-only mode is amazing, and runs nicely on my Celeron-based Chromebook (Celeron N2840 - probably still too powerful for Penny).

    • Like 1
  20. 1 hour ago, Gwin LeShelle said:

    I read the wild OMGTILIA thread and then I read theitr Q&A thread and some poor soul clearly went THRU that whole clusterfuzz of a thread and took the most asked questions right from there and answered them!

    Actually I'm quite impressed by that - with a thread that size, that's no mean feat.

    • Like 3
  21. Not all countries issue goverment-ID other than passports, which are hideously expensive to apply for (and you have to be eligible first, which isn't a given).

    There are driving licences in the UK, but not everyone has one of those either. I'm disqualified for medical reasons.

    There are "official" nationally recognised ID schemes like CitizenCard that allow those without passports or driving licenses to prove age/identity, but these are not government issued.

    • Like 2
  • Create New...