I have a follower and a player tracker that i want to be synced So What I basically do is have the contact parameter, feed into a parameter driver that drives the real parameter for the real animation in a separate layer?
Hey, I'm having trouble with an Aku Aku model I've been working on. I made some pretty simple things here I have 2 contacts, one in the front and one behind the aku aku. both of these are "on enter" receivers. So when the Aku Aku is hit at a certain spot and speed(only speed of 1) it would play an animation I made depending on where he got hit. it worked fine when I only did the front animation and tested with a friend to make sure it worked when he hit it. the issue started coming in when I made a 2nd animation for when he gets hit in the back. Now in my eyes when someone hits him it works as its suppose to, BUT in the other player eyes when they hit it, it does play the animation but once hit again it doesn't do anything but in my eyes it did something still. so im not sure if this is a network issue or im doing something wrong with the animator. please contact soon as you can my discord is TheLoneCone#0130 if you want to DM me there.
I know this video is old by now, But while i'm doing all those steps on unity it looks like i can't test it on Play mode? What i mean is, Is this something you can only test if its working inside vrchat?
If you are network syncing things with the parameter driver then you won't be able to directly test those in unity in play mode (although you might be able to with an emulator, I just don't use one). This video is a bit dated and could use an update that is shorter and explains things better, sorry!
@@Wolfy527 please I would love so, I did everything but still have dsync issues with contacts like my friend is holding the knife but for me it is stored, so he has to either try to Fix the sync by spamming grabbing the knife or reset the avatar.
@@DragonXJack I did make a tutorial on setting up a parent constraint system to grab objects and it is a 2 part video that utilizes contacts as well in it and shows how to set up a local and remote side in the animator layers. That might help you out with what you're trying to do!
As long as you don't mix local parameters in the transitions with the synchronized parameters then you shouldn't have any problems. Ints, bools, floats, etc can all be synchronized.
im trying to make a snyced lock on my avatar but im having trouble making the dynamic save when i activate it would i be able to send you what i was working on and see if you could help me fix this problem because im lost. if its not too much to ask
What exactly do ya mean by a synched lock on your avatar? If you want to explain it a bit more thoroughly I can probably help ya out with what you're wanting to do!
Does this still work? I’ve been working on a very contact heavy avatar all week and I finally had what I thought would be a working version just for literally everything on it to not sync for others regardless of resetting, changing avatars or anything else and I’m not very sure what to do about that. Was hoping maybe this will be a solution but it’ll be a very hard thing to test for without getting a bunch of others online so I was hoping to ask for input on that
So, looking back on how I designed my shield itself, it had a few problems that I've since refined in the systems I use, but the general premise of splitting up your local and network synced animations is still something that applies and you would want to do. If you look at my parent constraint videos, in the second one that involves using the contacts system, I split up my local and networked animations into two sides in one layer. That is generally how you want to sync things across the network now. I need to revisit this video and explain things better than I did in this one as I have a better understanding of network syncing now and how to teach that to others.
@@Wolfy527 sorry for the delay! It’s a bit hard to describe exactly but I’m making a late 90s toy/buzz lightyear inspired species that have a push button with wings that extend and a few other features. Came back to ask though, a lot of my transitions have specific durations and exit times, should the networked half have the same settings or be cleared?
@@kiyotonoodle9998 That sounds super cool! Shouldn't be hard to network if you generally understand how I have it set up in the parent constraints video, then you'd want to apply that same idea to what you're doing with a local side for animations you see, and then have that local side drive parameters that cause animations to play for the remote players (i.e. just anyone that isn't you). In regards to the specific transition times, I would keep the transition times on the networked side just because latency exists and if your local side triggers the next animation too fast, it might cut it short for the remote player.
I've been having trouble with my current weapon system that I use for RP. I have it set up so I can pick up my gun from my holster by doing the hand gun gesture and putting my hand on a contact receiver I set up on it. The problem though is that it seems to desync if someone isn't looking at me when I grab it, so it won't appear in my hands for them. Is it possible to make that network synced, or am I stuck with menu toggles.
Hi, sorry for the late response! Yes, the parent constraint videos will likely help you out the most with this. I generally split out my local and networked sides in one animator layer so as to not clutter up my animator. The "IsLocal" parameter is built in to avatars whether or not you put it in your parameter list, so we end up putting it in out FX controller so that we can utilize this built in parameter to indicate whether something is occurring locally or remotely in our FX controller. IsLocal is true for only you and will be false for everyone else, so we use that to determine between our local and networked sides of the layer. If ya have any other questions just let me know!
This doesn't actually work due to parameter drivers forcing local for non-expression animations. was wondering if you eventually found a solution to this? I keep looking through the debug on the test avatars in the dynamics world and seeing how they set up their animations to sync (because they do, especially the dragon kid one) but i cannot for the life of me figure it out. I also thought it was parameter drivers but it's still local due to how it behaves. Any updates?
I haven't had any issues with it syncing across the network. As long as you use locally-driven parameters to drive network synced bools or floats then they should sync across the network for people that join late and such. I.e. I have set up a new system for my object motion and I use gestures and locally-driven parameters to drive to animations. Those animations then parameter drive network synced bools to drive the actual animation that plays in a different layer so that they are properly synced for late joiners and not desynced from gestures.
If you would like to add me on discord I can message you pictures of what I've done or even explain it some time to see if I can help ya out with this. My discord is Wolfy#2727
@@Wolfy527 "I have set up a new system for my object motion and I use gestures and locally-driven parameters to drive to animations. Those animations then parameter drive network synced bools to drive the actual animation that plays in a different layer so that they are properly synced for late joiners and not desynced from gestures." This is actually exactly how i had mine set up too, but it's stated in the Vrc documentation that parameter drivers are local only if driving a non-expression animation, and this is proven in game by the fact on my avatar if i pull out my sword, with the locally driven parameters driving a synced parameter that plays the actual animation, if the default state is on my back and i put it in my hand, if i have someone hide then show my avatar or rejoin the world, the sword is now on my back on their screen, but still in my hand on mine. the "network-synced" parameter doesn't actually sync. Also yes i have you added on discord, would be nice to have a chat about it :) thank you
@@SnowInApril Hmm I thought this only occurred with world space objects, but I'll have to do some more testing then and talk to a friend about it! I got ya added on discord now!
Thanks so much for this! Is the Shield's network sync different than the Bullet one? I'd been working on trying to synch a similar shield animation myself so I'd been hoping to see the ShieldNet layer setup too and how it interacts with the Shield layer shown.
The shield toggle that is synced is a bit more complex because I made it so that it is more difficult to turn on. If you message me on discord (Wolfy#2727) I can send you pictures of what I did to set it up and explain it a bit better with the pictures.
Hello, I found your tutorials really helpful ^^ But I'm having small troubles with making a phone that can change colors for an avatar. I saw one cool video of someone having this on their avatar and I wanted to try it out on my and my friend's avatar. I did manage to make it work, but I can only change it once and then I can't change them back. I tried to do it a few different ways with the receiver but so far this one is working. Do you know how to set it up? Or maybe even make a tutorial. I'm still gonna try to figure it out on my own and see if I will make it work somehow
@@_Leah_h If you're doing a material swap then you would want to have the contact just change a network synced boolean to true/false to swap the materials. You could use an on enter with really low velocity to trigger the boolean for one frame and swap the material. Then you could just do the same thing to swap back I believe.
I've been trying to use the send/receive contact to toggle between 2 materials by tapping a watch on my wrist. It works pretty well thanks to your first video on it contacts, but network syncing has me stumped. I'm also not too sure what the process is now that avatar dynamics is out of beta. Is this video still a necessary step?
Depending on what you're doing you may not need the extra layer. If it's just on/off based on tapping a contact (using a bool) then you should be able to just toss that bool into your expressions parameter list and it will sync fine. But if you use any gestures or local parameters to trigger it as well then you'll have to split your layers up between a local and networked layer.
@@Wolfy527 Unfortunately I've tried everything I can think to try and I cannot get it to target the parameter I have in my expressions parameter list. I don't use any gestures to trigger it, it's just my send/receive contacts touching that toggles the outfit on/off. I've tested it with some friends while we're both streaming on discord. The outfit toggles for me every single time no problem and it will toggle about every 5th time for them and is out of sync. Really frustrating because I know its possible to do what I want to do. Theres an avatar in the Avatar dynamics world that does it but I have no idea how.
@@neelixleefurball If you want to message me pictures of how you have your animator and such set up on discord then just add me and send the pictures my way (Wolfy#2727) and I'll help ya if I can!
I think it has updated now to where we can use bools themselves
They did!
I have a follower and a player tracker that i want to be synced
So What I basically do is have the contact parameter, feed into a parameter driver that drives the real parameter for the real animation in a separate layer?
Hey, I'm having trouble with an Aku Aku model I've been working on. I made some pretty simple things here I have 2 contacts, one in the front and one behind the aku aku. both of these are "on enter" receivers. So when the Aku Aku is hit at a certain spot and speed(only speed of 1) it would play an animation I made depending on where he got hit. it worked fine when I only did the front animation and tested with a friend to make sure it worked when he hit it. the issue started coming in when I made a 2nd animation for when he gets hit in the back. Now in my eyes when someone hits him it works as its suppose to, BUT in the other player eyes when they hit it, it does play the animation but once hit again it doesn't do anything but in my eyes it did something still. so im not sure if this is a network issue or im doing something wrong with the animator. please contact soon as you can my discord is TheLoneCone#0130 if you want to DM me there.
I can take a look at it on discord with ya and get things sorted out for ya!
I know this video is old by now, But while i'm doing all those steps on unity it looks like i can't test it on Play mode? What i mean is, Is this something you can only test if its working inside vrchat?
If you are network syncing things with the parameter driver then you won't be able to directly test those in unity in play mode (although you might be able to with an emulator, I just don't use one).
This video is a bit dated and could use an update that is shorter and explains things better, sorry!
@@Wolfy527 please I would love so, I did everything but still have dsync issues with contacts like my friend is holding the knife but for me it is stored, so he has to either try to Fix the sync by spamming grabbing the knife or reset the avatar.
@@DragonXJack I did make a tutorial on setting up a parent constraint system to grab objects and it is a 2 part video that utilizes contacts as well in it and shows how to set up a local and remote side in the animator layers. That might help you out with what you're trying to do!
parameters are still desynced for integers
As long as you don't mix local parameters in the transitions with the synchronized parameters then you shouldn't have any problems. Ints, bools, floats, etc can all be synchronized.
im trying to make a snyced lock on my avatar but im having trouble making the dynamic save when i activate it would i be able to send you what i was working on and see if you could help me fix this problem because im lost. if its not too much to ask
What exactly do ya mean by a synched lock on your avatar? If you want to explain it a bit more thoroughly I can probably help ya out with what you're wanting to do!
Does this still work? I’ve been working on a very contact heavy avatar all week and I finally had what I thought would be a working version just for literally everything on it to not sync for others regardless of resetting, changing avatars or anything else and I’m not very sure what to do about that. Was hoping maybe this will be a solution but it’ll be a very hard thing to test for without getting a bunch of others online so I was hoping to ask for input on that
So, looking back on how I designed my shield itself, it had a few problems that I've since refined in the systems I use, but the general premise of splitting up your local and network synced animations is still something that applies and you would want to do.
If you look at my parent constraint videos, in the second one that involves using the contacts system, I split up my local and networked animations into two sides in one layer. That is generally how you want to sync things across the network now.
I need to revisit this video and explain things better than I did in this one as I have a better understanding of network syncing now and how to teach that to others.
@@Wolfy527 alright, I appreciate the response. I’ll go ahead and try and work this out on my avatar and hopefully it’ll all work out
@@kiyotonoodle9998 What kinds of things are you trying to sync up in particular?
@@Wolfy527 sorry for the delay! It’s a bit hard to describe exactly but I’m making a late 90s toy/buzz lightyear inspired species that have a push button with wings that extend and a few other features.
Came back to ask though, a lot of my transitions have specific durations and exit times, should the networked half have the same settings or be cleared?
@@kiyotonoodle9998 That sounds super cool! Shouldn't be hard to network if you generally understand how I have it set up in the parent constraints video, then you'd want to apply that same idea to what you're doing with a local side for animations you see, and then have that local side drive parameters that cause animations to play for the remote players (i.e. just anyone that isn't you).
In regards to the specific transition times, I would keep the transition times on the networked side just because latency exists and if your local side triggers the next animation too fast, it might cut it short for the remote player.
I've been having trouble with my current weapon system that I use for RP. I have it set up so I can pick up my gun from my holster by doing the hand gun gesture and putting my hand on a contact receiver I set up on it. The problem though is that it seems to desync if someone isn't looking at me when I grab it, so it won't appear in my hands for them. Is it possible to make that network synced, or am I stuck with menu toggles.
Wait I just watched your parent constraints videos, Is the solution those split IsLocal transitions?
Hi, sorry for the late response! Yes, the parent constraint videos will likely help you out the most with this. I generally split out my local and networked sides in one animator layer so as to not clutter up my animator. The "IsLocal" parameter is built in to avatars whether or not you put it in your parameter list, so we end up putting it in out FX controller so that we can utilize this built in parameter to indicate whether something is occurring locally or remotely in our FX controller. IsLocal is true for only you and will be false for everyone else, so we use that to determine between our local and networked sides of the layer. If ya have any other questions just let me know!
This doesn't actually work due to parameter drivers forcing local for non-expression animations. was wondering if you eventually found a solution to this? I keep looking through the debug on the test avatars in the dynamics world and seeing how they set up their animations to sync (because they do, especially the dragon kid one) but i cannot for the life of me figure it out. I also thought it was parameter drivers but it's still local due to how it behaves. Any updates?
I haven't had any issues with it syncing across the network. As long as you use locally-driven parameters to drive network synced bools or floats then they should sync across the network for people that join late and such.
I.e. I have set up a new system for my object motion and I use gestures and locally-driven parameters to drive to animations. Those animations then parameter drive network synced bools to drive the actual animation that plays in a different layer so that they are properly synced for late joiners and not desynced from gestures.
If you would like to add me on discord I can message you pictures of what I've done or even explain it some time to see if I can help ya out with this. My discord is Wolfy#2727
@@Wolfy527 "I have set up a new system for my object motion and I use gestures and locally-driven parameters to drive to animations. Those animations then parameter drive network synced bools to drive the actual animation that plays in a different layer so that they are properly synced for late joiners and not desynced from gestures."
This is actually exactly how i had mine set up too, but it's stated in the Vrc documentation that parameter drivers are local only if driving a non-expression animation, and this is proven in game by the fact on my avatar if i pull out my sword, with the locally driven parameters driving a synced parameter that plays the actual animation, if the default state is on my back and i put it in my hand, if i have someone hide then show my avatar or rejoin the world, the sword is now on my back on their screen, but still in my hand on mine. the "network-synced" parameter doesn't actually sync. Also yes i have you added on discord, would be nice to have a chat about it :) thank you
@@SnowInApril Hmm I thought this only occurred with world space objects, but I'll have to do some more testing then and talk to a friend about it! I got ya added on discord now!
Thanks so much for this! Is the Shield's network sync different than the Bullet one? I'd been working on trying to synch a similar shield animation myself so I'd been hoping to see the ShieldNet layer setup too and how it interacts with the Shield layer shown.
The shield toggle that is synced is a bit more complex because I made it so that it is more difficult to turn on. If you message me on discord (Wolfy#2727) I can send you pictures of what I did to set it up and explain it a bit better with the pictures.
Hello, I found your tutorials really helpful ^^ But I'm having small troubles with making a phone that can change colors for an avatar. I saw one cool video of someone having this on their avatar and I wanted to try it out on my and my friend's avatar. I did manage to make it work, but I can only change it once and then I can't change them back. I tried to do it a few different ways with the receiver but so far this one is working. Do you know how to set it up? Or maybe even make a tutorial. I'm still gonna try to figure it out on my own and see if I will make it work somehow
Is it a toggle for a material swap, or like a hue slider?
@@Wolfy527 material swap, I never done hue slider (I'm planning on learning how to do it if it's better than material swap)
@@_Leah_h If you're doing a material swap then you would want to have the contact just change a network synced boolean to true/false to swap the materials. You could use an on enter with really low velocity to trigger the boolean for one frame and swap the material. Then you could just do the same thing to swap back I believe.
@@Wolfy527 okay thank you! I'm gonna try it and see if it's gonna work
I've been trying to use the send/receive contact to toggle between 2 materials by tapping a watch on my wrist. It works pretty well thanks to your first video on it contacts, but network syncing has me stumped. I'm also not too sure what the process is now that avatar dynamics is out of beta. Is this video still a necessary step?
Depending on what you're doing you may not need the extra layer. If it's just on/off based on tapping a contact (using a bool) then you should be able to just toss that bool into your expressions parameter list and it will sync fine. But if you use any gestures or local parameters to trigger it as well then you'll have to split your layers up between a local and networked layer.
@@Wolfy527 Unfortunately I've tried everything I can think to try and I cannot get it to target the parameter I have in my expressions parameter list. I don't use any gestures to trigger it, it's just my send/receive contacts touching that toggles the outfit on/off. I've tested it with some friends while we're both streaming on discord. The outfit toggles for me every single time no problem and it will toggle about every 5th time for them and is out of sync. Really frustrating because I know its possible to do what I want to do. Theres an avatar in the Avatar dynamics world that does it but I have no idea how.
@@neelixleefurball If you want to message me pictures of how you have your animator and such set up on discord then just add me and send the pictures my way (Wolfy#2727) and I'll help ya if I can!
i cant stand all the transformer voices in vr chat X ((