Simulator User Group/Transcripts/2012.04.06

Simulator_User_Group
Prev 2012.04.03	Next 2012.04.10
== List of Speakers ==
Andrew Linden 	Ardy Lay 	Dahlia Trimble
Draconis Neurocam 	eve924am 	Flip Idlemind
Ima Mechanique 	Jane1 Bookmite	Johan Laurasia
Kallista Destiny 	Lomoco Binder 	Motor Loon
Moundsa Mayo 	Nalates Urriah	Rex Cronon
Sahkolihaa Contepomi	Simon Linden 	Sopherian Yumako
Vincent Nacon 	Yuzuru Jewell 	
== Transcript ==
[16:02] Motor Loon: ey andrew
[16:02] Rex Cronon: hello everybody
[16:02] Sopherian Yumako: HAI2U!!!1!
[16:02] Rex Cronon: hi
[16:03] Andrew Linden: Hello
[16:03] Johan Laurasia: Hi all
[16:03] Motor Loon: Knights of the really tiny table
[16:03] Rex Cronon: hi andrew
[16:03] Moundsa Mayo: Greetings!
[16:03] Rex Cronon: hi jahan
[16:03] Johan Laurasia: yeah...lol
[16:03] Rex Cronon: sorry johan:)
[16:03] Andrew Linden: Ok news...
[16:03] Johan Laurasia waves at Rex
[16:04] Andrew Linden: I'm still working on pathfinding
[16:04] Andrew Linden: which was updated today I think -- less crashy
[16:04] Nalates Urriah: Updated on AGNIor ADITI?
[16:04] Andrew Linden: there is a map bug on the pathfinding regions... the terrain texture appears distorted
[16:05] Draconis Neurocam: ive noticed that
[16:05] Johan Laurasia: yeah, noticed that
[16:05] Andrew Linden: I've got a fix for that, and need to wrap that up into a release project
[16:05] Andrew Linden: I think that's all the news I've got. Maybe Simon has more.
[16:06] Vincent Nacon: the terrain issue, wasn't part of Falcon's mesh update for collision?
[16:06] Simon Linden: I have a few things...
[16:06] Simon Linden: The release plans for next week are fuzzy ... Kelly is in a meeting right now discussing it
[16:06] Motor Loon: fuzzy aint good
[16:07] Moundsa Mayo: Better than frozen B^)
[16:07] Vincent Nacon: fuzzy better than none at all
[16:07] Motor Loon: true that
[16:07] Simon Linden: Well, we were going to promote the "region crossing" code but hit a snag ... it's a long story. It's not a bug but more of warning we probably shouldn't ignore
[16:07] Vincent Nacon: oh great
[16:08] Simon Linden: Yesterday we did a test in the server user group, we did a tst where we raised the fly height limit to 5000m
[16:08] Motor Loon: ooh
[16:08] Motor Loon: how'd that go?
[16:08] Simon Linden: That went well, so it will be coming to the main grid
[16:08] Motor Loon: that should bring joy
[16:08] Simon Linden: I'm not sure of the timing ... it depends on this release discussion
[16:08] Johan Laurasia: yeah, it works great even if you're wearing a flight assist
[16:09] Vincent Nacon: about time
[16:09] Sopherian Yumako: this is great news
[16:09] Simon Linden: Right --- I was paranoid that flight assists would fling people into orbit, but they seem to be programmed well and we didn't see any problems
[16:09] Johan Laurasia: so did you settle on 5000 for the upper limit?
[16:09] Andrew Linden: All thanks go to Simon for that work.
[16:09] Simon Linden: Yes, 5000m
[16:09] Johan Laurasia: for the main
[16:09] Johan Laurasia: yep, that's a good number
[16:10] Ardy Lay: Height above terrain or absolute?
[16:10] Motor Loon agrees
[16:10] Simon Linden: It should allow over-flight of the now-higher ban limits
[16:10] Simon Linden: I think that's absolute, Ardy
[16:10] Motor Loon: whats the ban limits at now?=
[16:10] eve924am: Higher ban lines Simon?
[16:11] Andrew Linden: (the old fly height limit was "height above the terrain" I think)
[16:11] eve924am: more than 50m above the surface?
[16:11] Ardy Lay eyes evil antique and cantankerous flight assist script.
[16:11] Chat Hide Detector Public: Ardy Lay said that.
[16:11] Vincent Nacon: old height was 200m
[16:11] Johan Laurasia: Yeah it varied on the terrain height
[16:11] Simon Linden: I believe higher ban lines are a viewer issue ... and the higher ban height is for _explicit_ bans, not "you can't enter because you're not in the group" access
[16:11] Vincent Nacon: on top of the terrain
[16:12] Vincent Nacon: if land goes up to 100m, you can fly up to 300m
[16:12] Simon Linden: ah, ok, thanks Vincent
[16:12] Vincent Nacon: np
[16:12] Simon Linden: That's all the news I have
[16:12] Ardy Lay: I still have issues with VWR-27907. Since it went to EXP then apparently to MAINT, where I cannot see it, I have to ask.
[16:13] Lomoco Binder: Can we have a look at SVC-7799? Posted on the issue is a proposed solution to the problem of server crashes and attachment data loss.
[16:13] JIRA-helper: http://jira.secondlife.com/browse/SVC-7799
[#SVC-7799] Changes to attachments after last teleport are lost if the user is logged out unexpectedly
[16:13] Ardy Lay: MAINT-547 I think
[16:13] Sahkolihaa Contepomi: Ah, the very old 'attachments aren't saved' problem.
[16:14] Vincent Nacon: may have to change the viewer to force update save ever few seconds or something
[16:14] Lomoco Binder: Yes; the idea is that the server just saves attachments on significant changes; namely content changes (script compiles etc.), which would solve the problem for most users, while not being too resource-intensive
[16:15] Simon Linden: It looks like VWR-27907 needs a lot of digging, I don't see much after the last comment of "looks like a server-side bug"
[16:15] Andrew Linden: VWR-27907 is about not being able to remove someone from your list of blocked avatars
[16:15] Andrew Linden: Hrm... so someone moved it into an internal jira issue --> no longer public
[16:16] Draconis Neurocam: i have objects in my blocked list that have no name and just come back if you remove them
[16:16] Andrew Linden: It appears that issue is still on the list of things to get done.
[16:16] Ardy Lay: I still have two residents "stuck" in there.
[16:16] Ardy Lay: Okay, thanks.
[16:17] Simon Linden: sorry, phone
[16:17] Sopherian Yumako: hb
[16:17] Kallista Destiny: It's M calling from ebyond the grave...
[16:17] Vincent Nacon: let's not talk about M
[16:17] Kallista Destiny: He who should not be named then
[16:17] Vincent Nacon: aye
[16:17] Motor Loon grins
[16:18] Andrew Linden: The unsaved attachment problem... let me read that issue.
[16:18] Ima Mechanique: He who should only be initialed
[16:18] Vincent Nacon: no, he shouldn't be mentioned at all
[16:18] Kallista Destiny snickers
[16:18] Vincent Nacon: :P
[16:18] Andrew Linden: I wonder what modes of "suddenly get disconnected" are mentioned
[16:18] Andrew Linden: because there are several distinct ways to get disconnected
[16:18] Vincent Nacon: internet connection drop?
[16:19] Lomoco Binder: Simon mentions server crashes in his comment
[16:19] Vincent Nacon: yeah but it's pretty much the same result as far it goes for the attachment
[16:19] Vincent Nacon: no matter how you crash or disconnect
[16:19] Vincent Nacon: it's the server expecting an update as saved changed
[16:20] Andrew Linden: Well... if your viewer crashes out then I would expect it to save your simstate when your avatar gets kicked, however...
[16:20] Andrew Linden: if you log back in before your old avatar is removed... then the same problem might happen
[16:20] Andrew Linden: I guess we'll have to test it.
[16:20] Vincent Nacon: hmm
[16:21] Andrew Linden: That case, where you login and clear out an old instance of your avatar might be fixable
[16:22] Andrew Linden: but the case where the simulator crashes out underneath you... would be harder to fix
[16:22] Ardy Lay: Make it stop crashing. ;-)
[16:22] Lomoco Binder: My proposed solution involves the simulator saving the attachment data on "major" attachment changes
[16:22] Lomoco Binder: Since those aren't as frequent as the updates Simon mentions in a comment, it shouldn't impact the server too muchj
[16:22] Andrew Linden: but maybe not impossible... I've got a few vague ideas on how it might be done.
[16:23] Vincent Nacon: or just save when owner stop making changes in few amount of time
[16:23] Lomoco Binder: That depends on how much work the server has to do to actually "save" it
[16:23] Vincent Nacon: yeah
[16:24] Ardy Lay: One loaded attachment can represent a significant amount of data.
[16:24] Motor Loon: is there really so much difference in the power it takes to save an attachment compared to a rezzed item?
[16:24] Rex Cronon: attachements r just a list of body parts and uuid of object that is attacheed to each one. can't be that long of a list
[16:24] Andrew Linden: well... frequent just-in-case asset saves would cause some other problems with the asset system
[16:24] Johan Laurasia: could you save the attachment info viewer side, then, when logging in the viewer can feed the last state to the server?
[16:25] Kallista Destiny: 38 items
[16:25] Motor Loon: that dont sound good Johan
[16:25] Kallista Destiny: which can be attached all on 1 attach point
[16:25] Sahkolihaa Contepomi: I think that could cause other problems.
[16:25] Kallista Destiny: or scattered across all of them
[16:25] Lomoco Binder: I know of a custom client which does that
[16:25] Andrew Linden: no, we don't save the script states to the viewer
[16:25] Motor Loon: no lets not go there
[16:26] Rex Cronon: i think a lot of users would gladly wait a few seconds so that list is saved after they make changes to their attachements
[16:26] Vincent Nacon: think he meant prim state
[16:26] Johan Laurasia: I was meaning attachment states
[16:26] Andrew Linden: anybody here have an attchment that constantly changes scale/shape/position?
[16:26] Simon Linden: ... finally back
[16:27] Andrew Linden: I think I've seen such.
[16:27] Kallista Destiny: nope
[16:27] Vincent Nacon: no
[16:27] Johan Laurasia: yes I have
[16:27] Lomoco Binder: My avatar is changing constantly
[16:27] Sopherian Yumako: no.
[16:27] Johan Laurasia: pop out menus and such
[16:27] Sahkolihaa Contepomi: My eye lids and ears.
[16:27] Lomoco Binder: But my battery dies in 3 minutes.
[16:27] Ima Mechanique: nope, I'd avoid those because of the frequent property updates ;-)
[16:27] Andrew Linden: ah, huds
[16:27] Lomoco Binder: At any rate, changes to primitive params usually aren't as important as changes made to scripts inside objects
[16:27] Rex Cronon: those kind of attachement r usually like dialog boxes, but don't change constantly
[16:27] Kallista Destiny: Hud data is volatile, mostly
[16:27] Ardy Lay: I have seen such attachments. The damn thing was hurting region performance, probably. I was getting a heck of a lot of update traffic from it.
[16:28] Kallista Destiny: regins status, radars...
[16:28] Sahkolihaa Contepomi: Hooboy... that's a thought. Furry avatars may cause a lot of asset load if large changes got saved...
[16:29] Ardy Lay: My ear twitch is an attachment position/rotation change, not a linkset change. My eye blink is a texture animation.
[16:30] Simon Linden: Well, I have some release news now ... the "maintenance" code in RC will be rolled out on Tuesday, not the region crossing code
[16:30] Sahkolihaa Contepomi: My eye blink switches between 8 different sculpts.
[16:30] Andrew Linden: I was thinking that maybe the attachments could be saved into the region state on shutdown, and restored (to the asset system and db on restart) but now I'm realizing that would be very hard to get right
[16:30] Lomoco Binder: Battery died, I'll read the posted chat log and follow-up on this issue next meeting
[16:30] Simon Linden: Details are in http://community.secondlife.com/t5/Second-Life-Server/Deploys-for-the-week-of-2012-04-02/td-p/1466803
[16:30] Andrew Linden: the potential for dupes or even accidental rollbacks would be very high
[16:30] Meeter: Timecheck : User Group is half over
[16:30] Motor Loon: the region crossing code was still just one of the steps towards the goal - and not an "visible" change right?
[16:31] Simon Linden: That's correct - it was a lot of internal re-work with no performance change yet
[16:31] Ardy Lay: If I edit an attachment, I remove it, wait a minute, then reattach it. That way I don't lose any edits.
[16:31] Andrew Linden: region crossing code was a step toward what specific goal?
[16:31] Flip Idlemind: Any chance that one maint-server I'm dying for (the one with llGetAgentList) will be out next week? I've heard it's not quite ready
[16:31] Motor Loon: kk
[16:31] Rex Cronon: imo the problem is that sometimes the attachment dissapears, not that it doesn't save its state
[16:31] Ima Mechanique: oooh that means Kelly's llGetAgentData is a week closer ;-)
[16:31] Ima Mechanique: er or whatever it's called
[16:32] Motor Loon: goal = more stable and quick crossings
[16:32] Simon Linden: The goal in the region crossing code was to clean up the internal architecture for two main reasons: make it easier to change the way your data is passed from one region to another.
[16:32] Simon Linden: ... also make it easier to multi-thread that process and eliminate the lag event caused by someone leaving
[16:33] Motor Loon: so quicker ... not so much about getting them stable
[16:33] Moundsa Mayo: oohhh, and make llTeleportVehicleWithPassengers easier to implement B^D
[16:34] Simon Linden: Vehicles with passengers is definitely another case on the list
[16:34] Motor Loon: or where exactly if it regions/the system fail when a crossing goes "wrong" ?
[16:34] Motor Loon: if=is
[16:34] Andrew Linden: This most recent region crossing stuff... it is stage-2 of 3 (or more) parts, right?
[16:35] Simon Linden: This is actually stage 1 (I think) of 3 or more parts
[16:35] Andrew Linden: I seem to recall there was as stage-1 which was purely under the hood, shouldn't be noticable...
[16:35] Simon Linden: Right, that's the code that's been in RC for a while
[16:35] Andrew Linden: oh ok, we're still at stage-1. I've been spending too much time on pathfinding apparently.
[16:36] Motor Loon: mabye the "path" is going around in circles
[16:37] Rex Cronon: looping:)
[16:37] Simon Linden: It's a fairly big, ambitious project, but we all know region crossings and TPs aren't smooth. This is an attempt to do the big changes needed to make them better rathern than keep trying to make little improvements
[16:37] Motor Loon nods
[16:37] Motor Loon: we like ambitious'
[16:37] Andrew Linden: nah, two steps forward and one step back maybe, or slow small steps forward, but not in circles
[16:38] Rex Cronon: crab style:)
[16:38] Motor Loon: forward is forward - even with a few detours
[16:39] Dahlia Trimble: is pathfinding discussed at this meeting? or si there a specific meeting for it?
[16:39] Kallista Destiny: Crab's walk sideways and lobsters walk straight so you can't take a crab for your mate.
[16:40] Dahlia Trimble: *is
[16:40] Andrew Linden: Dahlia, there is no specific user group for pathfinding
[16:40] Sopherian Yumako: right
[16:40] Andrew Linden: but I'm working on it, as is Falcon, and sometimes Falcon shows up here.
[16:40] Dahlia Trimble: ah ok :)
[16:40] Dahlia Trimble: I think I managed to crash one of the test sims a couple times
[16:41] Andrew Linden: today or earlier?
[16:41] Dahlia Trimble: a few days ago
[16:41] Andrew Linden: we released a (hopefully less crashy) update today
[16:41] Dahlia Trimble: I was editing the navmesh
[16:41] Dahlia Trimble: poof
[16:41] Andrew Linden: however, there is already a new simple crash mode that I accidentally introduced
[16:41] Andrew Linden: but I've got a fix ready if I need to use it
[16:42] Motor Loon: if you need to?
[16:42] Dahlia Trimble: does the client rely on havok libraries for pathfinding support?
[16:42] Andrew Linden: well, the crash should be rare
[16:42] Andrew Linden: and if people don't hit it much then the fix may be able to wait until next week
[16:43] Ima Mechanique: so you won't be telling us because you KNOW we'd hit it
[16:43] Motor Loon grins
[16:43] Andrew Linden: Yes Dahlia, the client is using some havok binaries for the pathfinding UI stuff
[16:43] Andrew Linden: right Ima
[16:44] Dahlia Trimble: are there plans to use open source alternatives?
[16:44] Ima Mechanique: do we get extra points for finding it ourselves ;-)
[16:44] Motor Loon: "There are many ways of going forward, but only one way of standing still." (Roosevelt)
[16:44] Andrew Linden: no Ima, but you might get your attachments reverted to an older state
[16:44] Johan Laurasia: lol
[16:45] Ima Mechanique: dahlia there are plans to sub-license the havok libs for TPVs
[16:45] Rex Cronon: so, if somebody implements a class that mimics havok their objects can take different paths than what havok would choose?
[16:45] Motor Loon: its the UI not the movement
[16:45] Andrew Linden: No Rex, the client havok code is just to visualize and test the navmesh info
[16:46] Rex Cronon: ok
[16:46] Andrew Linden: the object motion is all done server-side
[16:46] Dahlia Trimble: is the navmesh generation server side?
[16:46] Simon Linden: You'd just end up with the wrong predictions in your viewer, Rex
[16:47] Rex Cronon: than u don't need havok to see the mesh and the additional info associated with it
[16:47] Andrew Linden: Dahlia, yes the navmesh is generated server-side
[16:47] Andrew Linden: btw, navmeshes are not usually done in real-time for games
[16:47] Dahlia Trimble: ya its usually someitng an artist creates
[16:47] Motor Loon: most games wouldnt have the need anyway
[16:48] Vincent Nacon: mostly hardcoded into map/level
[16:48] Andrew Linden: that is, the fundamental navmesh is not... dynamic objects are handled specially... they "modify" the existing navmesh by cutting out sections
[16:48] Andrew Linden: right
[16:48] Andrew Linden: but we've got to be able to update the navmesh in almost real time
[16:48] Andrew Linden: so what we do is...
[16:48] Motor Loon: amazing ?
[16:49] Vincent Nacon: ol
[16:49] Dahlia Trimble: lol
[16:49] Andrew Linden: we added some UI and checks to make it harder for people to actually change stuff that affects the navmesh
[16:49] Andrew Linden: and then, if someone does modify it we start a timer (for throttling)
[16:49] Dahlia Trimble: are you using the AI code in havok for pathfinding? or is it a LL thing
[16:49] Vincent Nacon: havok
[16:49] Motor Loon: "This is gonna be the toughest pacman ever" - Motor Loon 2012
[16:50] Andrew Linden: and if nothing else has changed when the timer is up then we kick off a navmesh computation in another thread
[16:50] Andrew Linden: which can take seconds, or tens of seconds
[16:50] Dahlia Trimble: ouch
[16:50] Andrew Linden: so, definitely not "real time"
[16:50] Vincent Nacon: pathfinding is Havok but navmesh is LL thing
[16:50] Dahlia Trimble: ah ok
[16:50] Andrew Linden: Dahlia, we're using Havok's AI code
[16:50] Andrew Linden: which is very fast (once the navmesh is computed)
[16:51] Andrew Linden: well, the code that computes the navmesh is Havok
[16:51] Andrew Linden: but our management of the thread, and the throttling is LL
[16:52] Dahlia Trimble: ah kk
[16:52] Dahlia Trimble: so you slow it down? seems a long time for what it looks like its doing
[16:52] Andrew Linden: we throttle the rate at which the navmesh can be recomputed
[16:53] Andrew Linden: and we also throttle the rate at which dynamic objects (things that are not part of the navmesh, but move around and create obstacles for the AI characters) cut the navmesh
[16:53] Dahlia Trimble: does the mesh go completely to the sim edge? or is there a gap?
[16:54] Andrew Linden: that last throttle is to help reduce lag when lots of objects exist that are NOT part of the navmesh
[16:54] Andrew Linden: I believe we'll eventually be able to open up that last throttle
[16:54] Andrew Linden: but at the moment it is somewhat restrictive
[16:55] Motor Loon: starting out slow is usually a good route
[16:55] Andrew Linden: that is, if you have 10 objects moving simultaneously
[16:55] Andrew Linden: one objects effect on the navmesh may take some time to register
[16:55] Andrew Linden: for the purposes of the AI characters
[16:55] Meeter: Timecheck : User Group is almost over
[16:55] Andrew Linden: so, a character might think a path is open, when in fact it was recently blocked by a moving obstacle
[16:56] Dahlia Trimble: ah so pathfinding objects can be obsticles too?
[16:56] Andrew Linden: because that obstacle's "cut" (footprint where it blocks navigation) has not been updated yet
[16:56] Andrew Linden: yes, AI characters can navigate around each other
[16:57] Andrew Linden: and also around objects that are moving around (via llSetPos() for example)
[16:57] Dahlia Trimble: do they need to collide first?
[16:57] Andrew Linden: however, the "knowledge" that a particular object has changed navigation paths may lag behind the objects actual motion, especially if there are lots of objects moving at once
[16:58] Andrew Linden: as soon as an AI character asks how to get from PointA to PointB, it knows how to get there... if there is a path according to the navmesh
[16:58] Andrew Linden: so you could make a very complex maze
[16:58] Andrew Linden: and an AI character would be able to navigate it no problem
[16:58] Andrew Linden: (assuming there is a solution)
[16:59] Andrew Linden: anyway, that lag I just mentioned... I expect us to be able to reduce it eventually
[17:00] Andrew Linden: but we'll have to do more performance testing to pick the right amount of throttling
[17:00] Vincent Nacon: there are some problems with llGetClosestNavPoint(),fails and slows down sim nearly half time dil lately
[17:00] Dahlia Trimble: ty, Also, who is lead of pathfinding project? Falcon?
[17:00] Andrew Linden: and maybe we can make the software smarter to further reduce it
[17:00] Vincent Nacon: yes, Falcon
[17:00] Meeter: Thank you for coming to the Server User Group
[17:01] Andrew Linden: Falcon is lead dev. I'm helper. Lorca Linden is managing the membership in the beta.
[17:01] Dahlia Trimble: ah I thought it was open now
[17:01] Andrew Linden: Several other devs have worked on the viewer UI stuff.
[17:02] Andrew Linden: It is open for volunteer regions
[17:02] Andrew Linden: but it isn't in a big RC channel yet
[17:03] Andrew Linden: still a work in progress, but I can definitely see the light at the end of the tunnel
[17:03] Ima Mechanique: and is it a train?
[17:03] Johan Laurasia: It's coming along fine
[17:03] Vincent Nacon: yup and it's me
[17:03] Johan Laurasia: lol
[17:03] Johan Laurasia: ima
[17:03] Kallista Destiny: as long as th light at th end of the tunnel isn't a train.
[17:03] Vincent Nacon: I'm gonna have to slow Falcon down a bit
[17:03] Vincent Nacon: there are some things needing more work
[17:04] Simon Linden: Keep feeding him bug reports when you find them
[17:04] Ima Mechanique: no problem if it is a train, provided it is using llEvade so as not to hit anyone important ;-)
[17:04] Motor Loon: hehe
[17:04] Andrew Linden: the light looks like sunlight (not a train headlight)
[17:04] Dahlia Trimble: well if I figure out what I did to crash the sim, Ill file a report :)
[17:04] Vincent Nacon: the light is a lie!
[17:04] Moundsa Mayo: To avoid being hit by trains, stay off the tracks B^D
[17:05] Andrew Linden: cool Dahlia. If you do make a report, be sure to include time of crash and region name
[17:05] Dahlia Trimble: kk
[17:05] Simon Linden: I need to get moving ... thanks everyone for coming today and the good discussion
[17:05] Moundsa Mayo: Andrew, Simon, thanks for your time and all your hard work!
[17:05] Andrew Linden: Thanks for coming everyone.
[17:05] Rex Cronon: tc simoin
[17:05] Ima Mechanique: stay away from the light Carol Ann
[17:05] Sahkolihaa Contepomi: Enjoy your weekend, simon & Andrew.
[17:05] Rex Cronon: simon*
[17:05] Dahlia Trimble: ty :)
[17:05] Kallista Destiny: Thank you simon and Andrew
[17:05] Rex Cronon: tc andrew
[17:05] Vincent Nacon: take care
[17:05] Jane1 Bookmite: Thanks Simon and Andrew
[17:05] Rex Cronon: tc everybody, and have a nice weekend
[17:05] Nalates Urriah: Thx
[17:05] Motor Loon: see ya next time, have fun
[17:06] Yuzuru Jewell: See you next week!
Simulator_User_Group
Prev 2012.04.03	Next 2012.04.10