Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

ZHAO-II Update

Bloodsong Termagant
Manic Artist
Join date: 22 Jan 2007
Posts: 615
09-21-2009 07:38
heyas;

i've been... okay, not working no it, since i started it last year; let's say i've been sitting on it... an update to zhao-ii. i finally have some time to finish it.

anyhow, i am using the 'seamless sit' version; i just wanted to know if that is the latest and greatest people have been using, or if they prefer the plain vanilla zhao-ii without seamless sit? or, heck, has somebody done a new ao script in the past year that is more popular now?



also, i will be doing a slightly different 'mission critical' version, designed specifically for use with NON-humanoid avatars.


if there are any functions and/or options you would like to see in the new zhao, please post them, and i'll see what i can do. i'm thinking that randomly picking a sit/ground sit each time you sit down might be nice. (as an option.)
Lance Corrimal
I don't do stupid.
Join date: 9 Jun 2006
Posts: 877
09-21-2009 08:09
From: Bloodsong Termagant
i'm thinking that randomly picking a sit/ground sit each time you sit down might be nice. (as an option.)



I would definitely switch that off.
Why? because I'm using a vista AO. and Vista AOs usually have at least one ground sit that is more meant as a joke. In my case, with that perticular ground sit I'm doing pushups on one arm.


'nuff said.
Lindal Kidd
Dances With Noobs
Join date: 26 Jun 2007
Posts: 8,371
09-21-2009 09:59
From: Bloodsong Termagant
... i'm thinking that randomly picking a sit/ground sit each time you sit down might be nice. (as an option.)


I would love this. The objection about there being a "joke" pose in the list is easily overcome...just edit the thing to include only sits or poses you want.

I would love to see multiple, randomly-selected animations for the other types too...fly, jump, hover, etc.

I'm not sure what "seamless sit" is, though...if it means cycling thru sits like AO's cycle stand poses, I'm all for that, too.
_____________________
It's still My World and My Imagination! So there.
Lindal Kidd
Viktoria Dovgal
Join date: 29 Jul 2007
Posts: 3,593
09-21-2009 10:17
Will forward you some patched stuff when I get in world later that does all those things, so you don't have to reinvent the wheel.

ZHAO-II actually inherited some random animation stuff already, from Franimation. The piece of the notecard reader that restricts most types to a single animation isn't actually needed, the rest of the script can handle it.
Nika Talaj
now you see her ...
Join date: 2 Jan 2007
Posts: 5,449
09-21-2009 10:34
I would like the standard script to have a "play now" menu, so I can just do a single gesture or expression in addition to whatever stand or sit is currently active. Fine by me that it would be up to the user to pick gestures that play nice with the rest of the anims they've stuffed into the AO.

Yes, I think random cycling for sits would be great. I would not want to use it for groundsits, tho, so "random cycle" be enable/disable for each "type" of anim would be best.

edit: thank you, Bloodsong, for undertaking this!
.
Lance Corrimal
I don't do stupid.
Join date: 9 Jun 2006
Posts: 877
09-21-2009 23:01
From: Lindal Kidd
I'm not sure what "seamless sit" is, though...if it means cycling thru sits like AO's cycle stand poses, I'm all for that, too.



"Seamless Sit" means, the AO detects when you're sitting on something that actually has a sit animation in it, and stays out of the way.

You sit on your couch, you get the sit pose from the couch. You sit on a prim that you just made, you get the sit pose(s) from your AO.
Galena Qi
Registered User
Join date: 9 Sep 2006
Posts: 249
10-03-2009 09:14
I would really like the random sits, and also the ability to select a sit in some easy way (keystroke combination)? For example, a cross-legged sit works well for pants, but looks very odd when wearing a system skirt.
Lear Cale
wordy bugger
Join date: 22 Aug 2007
Posts: 3,569
10-03-2009 09:34
I'd like an AO with the tiny zhao-II HUD footprint that has sit-anywhere. Seamless sit would be great, too!

I added typing override to zhao-II, and I'd be happy to make the same mods to this version (Zhao-IIa?). If you'd like me to do that, just drop it on me. Mine also changes the HUD's menu button color when sit is enabled or disabled, but with seamless sit, that's less useful. That color change could be used to indicate some other feature, though.

On a related issue, with these extra features, does zhao-II have to be Mono to have enough memory to load a decent set of anims? I find that base ZhaoII with my Vista AO is nearly full.

AOs work better if they're *not* mono, due to the time it takes to pass the data on teleport or sim crossing.
Brez Landar
Registered User
Join date: 24 Oct 2008
Posts: 34
zhao ii
10-05-2009 19:15
hi,

i second the call for random sit and randomised ground sit too. and being able to load more than one fly would be good.
Jack Abraham
Lantern By Day
Join date: 11 Apr 2008
Posts: 113
10-05-2009 21:01
What I'd most like to see is a standard way for other devices to turn the thing off (perhaps with permission checking -- only your own items)? For role-players, you're often forced to choose between having weapon animations play smoothly or having your AO on the rest of the time. If the ZHAO had a well-known and high-penetration method of being temporarily disabled, it'd remove the need to stop all animations before executing another animation. Ideally this would come with a way to specify an off duration, after which the AO would automatically re-engage.

I'd be happy to contribute a patch for this.
Brenda Connolly
Un United Avatar
Join date: 10 Jan 2007
Posts: 25,000
10-05-2009 21:36
I have no idea how most of it works, but I love my Zhao and anything to make it even better is welcomed by me.
_____________________
Don't you ever try to look behind my eyes. You don't want to know what they have seen.

http://brenda-connolly.blogspot.com
Lear Cale
wordy bugger
Join date: 22 Aug 2007
Posts: 3,569
10-05-2009 22:55
From: Jack Abraham
What I'd most like to see is a standard way for other devices to turn the thing off (perhaps with permission checking -- only your own items)? For role-players, you're often forced to choose between having weapon animations play smoothly or having your AO on the rest of the time. If the ZHAO had a well-known and high-penetration method of being temporarily disabled, it'd remove the need to stop all animations before executing another animation. Ideally this would come with a way to specify an off duration, after which the AO would automatically re-engage.

I'd be happy to contribute a patch for this.
I don't know how this one works, but there is "autoZhao" protocol for items that want to explicitly turn someone's AO off and on. Google it or IM me ingame and I can drop you an (old) example. MLPV2 has an add-on script (that comes with the distribution) that makes it AutoZhao compatible.

Unfortunately, it's not nearly universal, not even very common.
Viktoria Dovgal
Join date: 29 Jul 2007
Posts: 3,593
10-05-2009 23:02
The trouble with autozhao was that it let any object within range do the toggling, and that was by design (it tried to do the same thing as the seamless sit gimmick but using chat).

Much simpler and less grief-prone is Lulu Ludovico's solution, take "ao on" and "ao off" on channel 1 if the object belongs to the owner.
Lear Cale
wordy bugger
Join date: 22 Aug 2007
Posts: 3,569
10-05-2009 23:06
From: Viktoria Dovgal
The trouble with autozhao was that it let any object within range do the toggling, and that was by design (it tried to do the same thing as the seamless sit gimmick but using chat).
Yeah, I wondered if this would cause trouble. With well-coded, well-intentioned devices it wouldn't. (grin)

From: someone
Much simpler and less grief-prone is Lulu Ludovico's solution, take "ao on" and "ao off" on channel 1 if the object belongs to the owner.
But then it would work only for the owner. Ever sit in a public place? (Guessing what you mean here, because the object always belongs to its owner. ;))

Best if the AO figures it out for itself somehow, and I'd be interested to know how this one works, if it's robust.
Viktoria Dovgal
Join date: 29 Jul 2007
Posts: 3,593
10-05-2009 23:29
From: Lear Cale
But then it would work only for the owner. Ever sit in a public place? (Guessing what you mean here, because the object always belongs to its owner. ;))

For that, the seamless sit bit works pretty well. That method is super simple, it just checks if the avatar is sitting on an object and the default sit animation is not running (because some sit script stopped it). Seamless sit does need llGetAnimationList, but the impact can be reduced by checking only when sitting, and making the timer interval longer while the avatar is sitting. (the slow timer isn't so bad even when the avatar stands up, it tends to get lost in the noise of the normal spazzing out that avatars do then).

From: someone
Best if the AO figures it out for itself somehow, and I'd be interested to know how this one works, if it's robust.

Lulu's approach works fine for cooperating attachments. It would be nice if we could pass something like link messages throughout an avatar's attachments, but chat does the job in the absence of something like that.
Lance Corrimal
I don't do stupid.
Join date: 9 Jun 2006
Posts: 877
10-06-2009 01:40
From: Viktoria Dovgal
For that, the seamless sit bit works pretty well. That method is super simple, it just checks if the avatar is sitting on an object and the default sit animation is not running (because some sit script stopped it).



I'm trying to improve that a bit to get around the poseballs where the script is too bad to stop the default sit... any ideas?

Did anyone else encounter the fact that there are TWO default sits in the builtin animations in the client, a male and a female? same goes for the default walk...


speaking of that, i hereby kindly request that the term "chickenwalk" should be discontinued. See avove: we should be using "henwalk" and "cockwalk" instead XD.


related stray thought, why does HENmations sell male animations as well?
/me ducks
_____________________
From: Ralektra Breda
Your maturity rating is directly reflected by the number of question marks you place at the end of a question.
From: Lindal Kidd
Those who enter any virtual world with the main purpose of making money at it...probably won't.
Viktoria Dovgal
Join date: 29 Jul 2007
Posts: 3,593
10-06-2009 07:11
From: Lance Corrimal
I'm trying to improve that a bit to get around the poseballs where the script is too bad to stop the default sit... any ideas?

Yank out the animation and put it in a better pose ball? =) Fortunately those poseballs are unusual. Most of the problem objects we've seen have been campers and meh, they're campers. Furniture from Sexgen and Neolove leaves the default running, but generally their furniture (including the pose balls in inventory and the pose ball scripts) are modifiable. Most other menu-driven furniture seems to be compatible.

There isn't a good reliable way to figure out what to do from an attachment. LSL doesn't really give you a decent way to tell what the avatar is sitting on; if you want to guess and go with the closest object, you still can't see what is in it or what it is doing :/

One expensive approach might be to compare llGetAnimationList against all the defaults plus all animations in the AO's inventory. You'll still get false positives if, for example, some other attachment is running a drink or smile kind of thing, and possibly false negatives if the pose script happens to be running a built-in.
From: someone
Did anyone else encounter the fact that there are TWO default sits in the builtin animations in the client, a male and a female? same goes for the default walk...

Yep. You can generally ignore the female variants, they are client side overlays. Occasionally a pose script will explicitly start up female_walk, because walk doesn't work right when unless avatar is actually walking. sit doesn't have that problem, so you'll almost never see anything bother to explicitly run sit_female.

From: someone
speaking of that, i hereby kindly request that the term "chickenwalk" should be discontinued. See avove: we should be using "henwalk" and "cockwalk" instead XD.


related stray thought, why does HENmations sell male animations as well?
/me ducks

*squawk*
Lance Corrimal
I don't do stupid.
Join date: 9 Jun 2006
Posts: 877
10-06-2009 07:18
From: Viktoria Dovgal
Yank out the animation and put it in a better pose ball?



Hard to do when the poseball in question is not something you have mod rights on.
Mind, I'm using "poseballs" as synonym for "something that you sit on to get an animation played on you".



From: Viktoria Dovgal
One expensive approach might be to compare llGetAnimationList against all the defaults plus all animations in the AO's inventory. You'll still get false positives if, for example, some other attachment is running a drink or smile kind of thing, and possibly false negatives if the pose script happens to be running a built-in.



My approach so far was "grab the whole list of playing animations, strip out all the default / builtin ones, if there's something left you are on a poseball"


Guess i have to work on it some more.
_____________________
From: Ralektra Breda
Your maturity rating is directly reflected by the number of question marks you place at the end of a question.
From: Lindal Kidd
Those who enter any virtual world with the main purpose of making money at it...probably won't.
Ilana Debevec
Registered User
Join date: 25 May 2007
Posts: 130
10-06-2009 08:43
From: Viktoria Dovgal
The trouble with autozhao was that it let any object within range do the toggling, and that was by design (it tried to do the same thing as the seamless sit gimmick but using chat).
Ahh... no.

Any object THAT YOU SIT ON, that is within range (3m) of the sit prim will do the toggle.

We made the protocol available and open to anyone that wanted to use it.

It is not 'griefer prone'. And gosh, what could you grief?

You sit on something and walk like a duck if it didn't turn the AO back on?

Golly gee.. guess you have to do it manually.
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
10-06-2009 08:53
Does Zhao II stop the default walk if it gets started again while you're walking?

I'm still using Franimation 6 because I added code to do that, but then found Franimation 7 was already current so it never got picked up.
_____________________
Argent Stonecutter - http://globalcausalityviolation.blogspot.com/

"And now I'm going to show you something really cool."

Skyhook Station - http://xrl.us/skyhook23
Coonspiracy Store - http://xrl.us/coonstore
Ilana Debevec
Registered User
Join date: 25 May 2007
Posts: 130
10-06-2009 08:58
From: Lear Cale
I don't know how this one works, but there is "autoZhao" protocol for items that want to explicitly turn someone's AO off and on.


((Raises Hand and waves)) Ahh I'll jump in here... it uses a modified sit script and a hook in ZHAO-II. When YOU sit, it whispers out an AO OFF message to the ZHAO-II with your UUID in it (grabbed from the llAvatarOnSitTarget()).

The ZHAO-II quietly listens for that message and -

IF the obejct sending it is withing 3m of you (ie. the sit prim) and
IF the sent UUID is yours. (ie. the UUID sent is the OWNER of the autoZHAO-II HUD)

it turns the AO OFF.

Reverse for when you stand up, send the UUID of the AV that stood up with an AO ON. That doesn't do the distance check.

You can also manually turn the ZHAO-II back on when it's off, or turn the feature off totally.

Takes about 6 extra lines of code in the SIT event in a sit script, maybe 2 in the STAND.

Has been available in the Market for about year and a half .. last time I checked, between XLS and in world vendors have given about 15,000 of them out.

Ah here is it...

https://www.xstreetsl.com/modules.php?name=Marketplace&file=item&ItemID=524929

(even the market listing tells you how to do it)

From: someone
Unfortunately, it's not nearly universal, not even very common.


We tried to make it as accessible as possible, even Ziggy liked it :) But you can't force people to add the code to their sit scripts (even tho it's just once, since most people use the same one over and over and over). We still have it enabled in all our toys and furniture. I've recently added 'seamless sit' code to our toys (the sit script turns off the animations) but you get that short 'blip' while it's looking to turn off the AO's sit.. but the autoZHAO was almost instant so we leave it in.

There are so many 'divergent' ZHAO-II ideas out there it would be nice if a new ZHAO (ZHAO /// ?) could come together and get all the good ideas in one place to make a 'universal' ZHAO (not just autoZHAO, but Seamless Sit, the Expression player I've seen, a dance player, etc, etc...)

Original announcment -

/54/95/236908/1.html

(corrected a few typos and faulty memory)
Viktoria Dovgal
Join date: 29 Jul 2007
Posts: 3,593
10-06-2009 16:23
From: Ilana Debevec
Ahh... no.

Any object THAT YOU SIT ON, that is within range (3m) of the sit prim will do the toggle.

It does not check if the avatar is sitting on anything. It's just an open listener that follows any command from any source within 3 meters.

From: someone
It is not 'griefer prone'. And gosh, what could you grief?

It's grief of the annoyance variety, like most other examples. An invisible follower with a little on/off toggle in it is a hoot, the poor things think their stuff broke or that they need to reinstall everything.
Viktoria Dovgal
Join date: 29 Jul 2007
Posts: 3,593
10-06-2009 16:47
From: Argent Stonecutter
Does Zhao II stop the default walk if it gets started again while you're walking?

Nope, it only tries to do that when CONTROL_FWD or CONTROL_BACK are first pressed.

It mostly works to move that bit up to when the avatar switches to the walk state, just as long as the intervening striding or whatever lasts long enough for the timer to pick up on it.
Ilana Debevec
Registered User
Join date: 25 May 2007
Posts: 130
10-07-2009 16:52
From: Viktoria Dovgal
It does not check if the avatar is sitting on anything. It's just an open listener that follows any command from any source within 3 meters.
Provided the source sends your UUID. Sure is an open listener, that way it doesn't become useless by only working on something you own. As I said, THE SIT PRIM sends out the message, can some one spoof that? Sure, you can spoof almost anything if you try hard enough, like I said, not much of a grief to duckwalk till you can turn the AO back on since you can turn the auto off. There is griefing, then there is paranoia that keeps people from doing anything. So far, haven't had a SINGLE complaint about it.
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
10-07-2009 17:26
From: Lance Corrimal

My approach so far was "grab the whole list of playing animations, strip out all the default / builtin ones, if there's something left you are on a poseball".
That's what I was doing but I needed to optimize Franimation 6 more to get enough heap to pull it off.
_____________________
Argent Stonecutter - http://globalcausalityviolation.blogspot.com/

"And now I'm going to show you something really cool."

Skyhook Station - http://xrl.us/skyhook23
Coonspiracy Store - http://xrl.us/coonstore
1 2 3