Jump to content

Timothy McGregor

Resident
  • Posts

    43
  • Joined

  • Last visited

Reputation

53 Excellent

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. No alts or any other accounts have had ownership of these objects, only Tim McGregor, using either shift-drag or click/take copy. Next owner mask should not be applying here.
  2. As seen in attached image, I cannot set this object for sale. I cannot change next owner permission mask. There are usually several "duh" reasons for this, but this is a little odd. The object is a single mesh piece that I created and uploaded. It has never changed hands/ownership. It has been out on a build platform, after having been uploaded and rezzed by me. Copies have been taken here and there, but the owner has never changed. It has never been transferred away from my avatar and back. It has the default plywood texture applied to all faces, and has nothing in its inventory. Yet the next owner perms mask (which I didn't set) of Copy/Modify/No Transfer are locked that way, and are applying to me, the original creator and only ever owner of the asset. Am I being a complete fool or is there something going on with asset permissions? This is happening to me on multiple objects I've had out in a build I'm working on. The original mesh pieces as originally uploaded are fine. It's just these pieces that have been out in-world. But that shouldn't matter. I have been the sole owner of these assets since they were born. They have never changed hands. Anyone else experiencing this?
  3. Okay. I think I have sorted this out in a way that I can live with. This is a bit more straightforward than looping through every html element and applying inline styles to them. You just write your html as you normally would, referencing the styles with class= or id=. Just a very small script that will fetch the stylesheet as a text object, create a <style> element in <head>, and insert the text, which is the complete set of styles. One thing I noticed is that the content would render first without any styles, and then quickly reformat with my styles once they were inserted and ready. Common issue I guess called Flash Of Unstyled Content. To get around that, I hard code a style at the top that sets visibility of all html to hidden. Then as the last style in my styles.css file, I set it back to visible. You still get the "flash", but you don't get the unstyled content. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <style>html{visibility: hidden;opacity:0;}</style> <script type = "text/javascript"> async function getStylesheet(url) { var response = await fetch(url); var cssText = await response.text(); var styleElement = document.createElement('style'); styleElement.textContent = cssText; document.head.appendChild(styleElement); } getStylesheet("http://simhost-08a07f2c6a2e1e0a2.agni.secondlife.io:12046/cap/6155b95f-249b-94c5-d9f9-0b8e91f7475f/styles.css"); </script> </head> <body> <div class = "listcontainer"> <div class = "listdetail"><a href = "http://simhost-08a07f2c6a2e1e0a2.agni.secondlife.io:12046/cap/f3190087-cb60-dca1-bdaa-f1e511f6aef2/?event=3818d10b-21bd-77e8-7aea-5d9b81dbb438" id = "biglink">Item 1</a><br />March 22, 2023 - 04:00pm - 05:00pm </div><br /> <div class = "listdetail"><a href = "http://simhost-08a07f2c6a2e1e0a2.agni.secondlife.io:12046/cap/f3190087-cb60-dca1-bdaa-f1e511f6aef2/?event=a52e9760-90f6-6c52-32a9-5821b0007875" id = "biglink">Item 2</a><br />March 24, 2023 - 02:00pm - 03:00pm </div><br /> <div class = "listdetail"><a href = "http://simhost-08a07f2c6a2e1e0a2.agni.secondlife.io:12046/cap/f3190087-cb60-dca1-bdaa-f1e511f6aef2/?event=af5ebfcf-d16a-3897-af9b-dff88d912661" id = "biglink">Item 3</a><br />April 2, 2023 - 08:00am - 10:00am </div><br /> <div class = "listdetail"><a href = "http://simhost-08a07f2c6a2e1e0a2.agni.secondlife.io:12046/cap/f3190087-cb60-dca1-bdaa-f1e511f6aef2/?event=fe0a9259-c695-38bf-806b-cd22853fda00" id = "biglink">Item 4</a><br />April 7, 2023 - 04:00pm - 05:00pm </div><br /> </div> </body> </html> The main http-in script that serves the document goes into a wait state at startup, waiting for a link_message from the css script that contains the URL to get the stylesheet, sets that in a variable and goes to state "running". Then the page is assembled with all the elements and delivered. The css script itself just reads in a notecard of raw styles, formatted exactly like any style sheet that would normally be linked to the document with content type text/css. The advantage to this is I can maintain all of my styles outside of any code. Just a regular text based stylesheet that gets applied to the whole document.
  4. Yeah, I'm not considering that an in world display isn't like a desktop browser on a 4k display. I will take a look at this as well this weekend. It may turn out to be an adequate compromise if I don't have to pull assets in from my aws bucket.
  5. I looked at a web profile source, and none of the image URLs are even close. That was my first thought as well. In any case, the images aren't at all useful as served from that service.
  6. Oh.. Thank you for that. sorry, it's early here and I'm still waking up, catching up, and getting ready for work. I'll take a closer look at this later. it might be the ticket.
  7. Any idea what this was originally intended for? Seems pretty useless given that resolution constraint.
  8. Yeah, signal to noise ratio in my OP not great. What I am trying to figure out is how to serve a style sheet separately from the initial html page instead of embedding all the styles in the <head> section, which is causing it to grow too large. So in a separate script I did this: key g_key_fhandle; string g_str_fname = "stylesheet.css"; integer g_int_row; key g_key_urlrequest; string g_str_url; string g_str_css; fSetup() { g_str_url = ""; g_key_urlrequest = llRequestURL(); } fReadStylesheet() { g_key_fhandle = llGetNotecardLine(g_str_fname, g_int_row); } default { state_entry() { fSetup(); } changed(integer change) { if(change & CHANGED_INVENTORY) { llOwnerSay("File has changed"); g_int_row = 0; g_str_css = ""; fReadStylesheet(); } } touch_start(integer n) { llOwnerSay("asset url is: " + g_str_url); } http_request(key id, string method, string body) { if (g_key_urlrequest == id) { g_key_urlrequest =""; if (method == URL_REQUEST_GRANTED) { g_str_url = body + "/styles.css"; fReadStylesheet(); } else if (method == URL_REQUEST_DENIED) { llOwnerSay("Something went wrong, no url. " + body); } else { llHTTPResponse(id,405,"Method unsupported"); } } else { string str_xpath = llGetHTTPHeader(id, "x-path-info"); if (method == "GET" && str_xpath == "/styles.css") { llSetContentType(id, CONTENT_TYPE_TEXT); llHTTPResponse(id,200,g_str_css); } } } dataserver(key id, string data) { if (id == g_key_fhandle) { if (data != EOF) { g_str_css += data + "\n"; ++g_int_row; g_key_fhandle = llGetNotecardLine(g_str_fname, g_int_row); } else { llMessageLinked(LINK_THIS, 100, g_str_url, ""); } } } } The notecard is just a file containing css. It gets served but the browser will not do anything with it (presumably) due to it being CONTENT_TYPE_TEXT. So I was wondering, lacking a CONTENT_TYPE_CSS mime type, if there was a way to request that same file, and use javascript to convert it on the fly to css that could be injected into the page after it's served. Or any other trick to make this work. I am not very fluent with javascript.
  9. I will have to look at this. But in terms of setting css properties with jquery, I would suppose that this would just be another way to consume the limited space available in the document I serve in httpresponse. Whether I put the styles directly in the header or set them up with jquery, I'm not sure it isn't a wash in the end. Unless I can pull the js code in from an external source, which I am trying to avoid, because that external source is bought and paid for by me, and therefore controlled by me, and this application will be passed on to others to manage going forward. I'm already facing that dilemma with an image I'm using because there is no way to leverage in-world textures as image sources. I imagine in a perfect world a hybrid http environment where in-world, something like <img src="<UUID>" ... > would work. Same with external css referenced in a notecard UUID. Just in-world, so there is some assurance that people aren't just standing up public websites in every prim from hell to breakfast. But there is no real effort to think through these things, consider ideas and use cases, it's always "we won't do that because stuff and things". So in 2023, we still have no comprehensive methods available to present clean, dynamic, styled, quick rendering text on an object face in-world, without jumping through a million hoops of burning fire, and even if we manage to get through the last hoop, the end result is still not what we wanted. It's just an acceptable compromise because there is nothing better on offer. We just hope that those viewing and consuming the content will be patient and understand that this is Second Life, and this is how things are here. So I'm left with the prospect of reverting back to an ugly xytext presentation where people have to stand around and wait for every fu(*$ing texture for every letter to download and render.. and oh wait.. it just changed and I didn't finish reading the last one.. The deeper I get into this, the more discouraged I become. It took 20 years to get LSD. 64k of storage. That was still promising, until I began to realize that building this application out the way I envision it is going to require leveraging external resources, because we still just don't have those resources built in to the platform. The limited resources we do have available get us maybe 20% there, and we have to hack our way through the rest of it. And if it's something you have to pass on to someone else, it more often than not just becomes a massive clusterfu*$. Anyway...
  10. I have searched JIRA, probably wouldn't bother with a feature request there since it would likely never get done. There is some reason they don't want to do this. The whole http-in thing feels like an unfinished project in some respects, but I really suspect that the limitations and omissions (like css content type) are deliberate.
  11. I'll try to be brief. Developing a system to display information on a prim via http-in requests. This will be both for an in-world prim as well as (probably) a HUD. I've already figured out that the text/html content type is limited in a number of ways, including that the person viewing the page must also be the owner of the source script serving the content. I guess this is to prevent a proliferation of in-world web servers accessible to the outside world. I get it. I guess. Except xhtml evidently does not bear those limitations. I modified my html content to be xhtml compliant, and set that content type for the http-response, and it then renders properly no matter who owns what, and even in external browsers. So that's where I've been going with this project. I've no interest in having it deliver to external browsers, and will probably include a user agent check if that's possible, to prevent access other than in-world. The problem I'm up against now is that I had been including styles in the header for use in styling the markup, and that is growing a bit much. At one point I hit a stack/heap collision which I suspect was caused by the final html string being too large. So I thought I would try to separate out the style sheet in the usual way we do external css files. <link rel="stylesheet" type="text/css" href="styles.css" /> The problem I see here is that the only mime type I can serve that with is text/plain, and the browser consequently won't render the styles. Why is this whole thing so half-ass to begin with? Is there a javascript injection hack that I can use to get raw CSS into the page to style the markup, without having to include all the CSS in the original document variable? Why does xhtml not have any of the caveats/restrictions that html does? Why does LL give us a tool like this that we can only just almost use to accomplish a task to a certain extent, only to have to hack our way through the remaining 70%? Why after over 20 years do we still not have a method other than this hacky MOAP implementation to render dynamic, styled text on a prim face that doesn't involve texture hacking ala xytext or other inefficient means? Why, Tigger? Why?
  12. I am getting packet loss in excess of 5-6% at times, and ping times sometimes over 300ms, even with my draw distance down to 64 meters. Earlier today it was fine. Speed tests to two different endpoints (Spectrum and Frontier) are good. 300/20 and single digit pings. It feels like this may be aws. (Of course according to their own status page, everything is perfect) So I'm just wondering if anyone else today is seeing this.
  13. I have looked at the map API and can see how to get map tiles that include the object layer, (Or tiles that have objects baked into them, however that works) but I have a need to just be able to get the land topo only for a given region, and am having trouble figuring this out. I really only need half a dozen specific regions, but it would be nice to know if there is a way to get these through the API for any grid coordinate. Example, Accessing the map images directly, the URL format is "https://map.secondlife.com/map-1-1000-1000-objects.jpg" I would like to retrieve a map tile image for the same region that contains only the land topography, and not the objects overlaid on it. Is this possible? Not putting this in LSL because this isn't an LSL question. Thanks
  14. It will be there for a long while unless they bring the price down. The 16384m2 parcel is listed at L$2,499,995. Nobody is going to pay L$152/m2 for a roadside parcel on Satori.
  15. Ozzie is from a litter of 4 who came into the world in my back yard last March. I had been feeding mom for a few months, and of course the inevitable happened when ferals aren't trapped and spayed. Before long, mom was rounding up the kittens at feeding time. Ozzie was always the first one to come running across the yard when I came out with the food. It was during a heat wave, and I went out one afternoon and he was on the verge of passing out from heat stroke. That's when I decided he needed to come inside and hang out with me. Took him to the vet, got him all fixed up, vaccinated, etc and we have been inseparable best buddies ever since. The rest of them have since been spayed/neutered and are still happily living and thriving in the yard, minding the vermin, etc. We have two other rescues in the house, each of whom had a rather rough go when they were out in the world, so they aren't particularly excited about Ozzie, being the now teenage mischief he is, but we're making progress.
×
×
  • Create New...