Tattooshop Posted May 14, 2020 Share Posted May 14, 2020 Hello! I'm trying to make a transmitter / receiver HUD. I put on a transmitter HUD and send a message, and everyone who wearing at that moment receiver HUD - receives this message from me all over the grid in any form ( IM or local chat - doesnt matter ). Is it possible and how to do it? Link to comment Share on other sites More sharing options...
Rolig Loon Posted May 14, 2020 Share Posted May 14, 2020 Use llRegionSay on a private channel that all of your HUDs use. 1 Link to comment Share on other sites More sharing options...
Wulfie Reanimator Posted May 14, 2020 Share Posted May 14, 2020 28 minutes ago, Tattooshop said: message from me all over the grid It's technically possible but incredibly fragile with LSL alone. If you want a viable solution that doesn't break the next time the grid goes down, you're going to need an external server. 1 Link to comment Share on other sites More sharing options...
Tattooshop Posted May 14, 2020 Author Share Posted May 14, 2020 (edited) 27 minutes ago, Rolig Loon said: Use llRegionSay on a private channel that all of your HUDs use. Thank you! But isnt llRegionSay can be heard on 256 m x 256 m only? Will it be heard all over grid? Edited May 14, 2020 by Tattooshop Link to comment Share on other sites More sharing options...
Rolig Loon Posted May 14, 2020 Share Posted May 14, 2020 53 minutes ago, Tattooshop said: Thank you! But isnt llRegionSay can be heard on 256 m x 256 m only? Will it be heard all over grid? Right. If you want something grid-wide, follow Wulfie's advice. Build a robust system with an external server. Link to comment Share on other sites More sharing options...
Tattooshop Posted May 14, 2020 Author Share Posted May 14, 2020 (edited) 1 hour ago, Wulfie Reanimator said: It's technically possible but incredibly fragile with LSL alone. If you want a viable solution that doesn't break the next time the grid goes down, you're going to need an external server. Thanks! So I made two scripts for one region, but how to make it work on the whole grid? let it be fragile // Transmitter integer gListener; default { state_entry() { llRegionSay(-1234567, ""); } touch_start(integer total_number) { integer channel = -13572468; gListener = llListen( channel, "", "", ""); llTextBox(llDetectedKey(0), "Some info text for the top of the window...", channel); } listen(integer channel, string name, key id, string msg) { llListenRemove(gListener); llRegionSay(-1234567, "You wrote: " + msg); } } // Receiver default { state_entry() { llListen(-1234567, "", "", ""); } listen(integer channel, string name, key id, string msg) { llSay(0, "You wrote: " + msg); } } Edited May 14, 2020 by Tattooshop Link to comment Share on other sites More sharing options...
Wulfie Reanimator Posted May 14, 2020 Share Posted May 14, 2020 (edited) 21 minutes ago, Tattooshop said: Thanks! So I made two scripts for one region, but how to make it work on the whole grid? let it be fragile http://wiki.secondlife.com/wiki/LlRequestURLhttp://wiki.secondlife.com/wiki/LlHTTPRequest The above post explains the concept pretty thoroughly. Since then I worked on the code until I had a "web" of objects where each object had a list of every other object in the system that I could distribute among multiple regions for redundancy. As long as one object survived, the whole system could recover itself. But if the whole grid (or just all of the regions holding the objects) goes down, everything would have to be fixed by hand. Edited May 14, 2020 by Wulfie Reanimator 1 Link to comment Share on other sites More sharing options...
Rolig Loon Posted May 14, 2020 Share Posted May 14, 2020 (edited) You could of course use llInstantMessage, but then you'd have to send individual messages to each known person with a HUD. Otherwise, a fragile (and slow) method is to use llEmail. That requires using a prim somewhere as an in-world e-mail server to relay messages. The fragile part is that the UUID of the prim, and hence its e-mail address, will change if the prim is ever re-rezzed. When that happens, all your HUDs will have only the old incorrect address and won't know who to communicate with. The only way to beat that is with an external server or a (non-existent) grid-wide Experience that can save the server address in KVP. ETA: As Wulfie says, you could also use HTTP, which has a simiklar weakness. Edited May 14, 2020 by Rolig Loon 2 Link to comment Share on other sites More sharing options...
Recommended Posts
Please take a moment to consider if this thread is worth bumping.
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now