Semi-Physics
|
|
DolphPun Somme
The Pun is its own reword
Join date: 18 Nov 2005
Posts: 309
|
02-05-2006 19:33
I am looking for a way to have a rolling something rolling down some stairs, which when colliding with an avatar completely ignores them and continues rolling down the stairs.
Basically I want to play with physics stuff without having one of my visitors being beened in the head by my special effects and reporting me for abuse.
I know with physics you can shut off certian respects like X,Y,Z rotation etc. I can not seem to find anything dealing with this specifically. Am I missing something?
Near as I can tell, I will need to phantom, and go hide the object for a while when it comes close to an avatar, which partially ruins the whole reason the thing was bouncing there in the first place.
|
|
Shack Dougall
self become: Object new
Join date: 9 Aug 2004
Posts: 1,028
|
02-05-2006 21:18
You probably don't want it to go phantom because then it will go through the stairs. My first idea is to have it detect the collision, rez a copy of itself just past the avatar, and then die. Might require a second script to do the rezzing (triggered by a link message) to overcome an enforced delay after the rez. Should be lots of creative ways to do this actually. I'm interested to see what other people come up with. 
_____________________
Prim Composer for 3dsMax -- complete offline builder for prims and sculpties in 3ds Max http://liferain.com/downloads/primcomposer/
Hierarchical Prim Archive (HPA) -- HPA is is a fully-documented, platform-independent specification for storing and transferring builds between Second Life-compatible platforms and tools. https://liferain.com/projects/hpa
|
|
Kayla Stonecutter
Scripting Oncalupen
Join date: 9 Sep 2005
Posts: 224
|
02-05-2006 22:58
From: Shack Dougall My first idea is to have it detect the collision, rez a copy of itself just past the avatar, and then die. Problem there is the collision has to happen first, and it won't trigger instantly, so any force will still be applied to the avatar, possibly pushing them, which is what DolphPun doesn't want. The only possible way I can think of would be a sensor to detect the avatar and either go phantom, or use the rez copy idea Shack had, but it would have to be a fast sensor, which is not exactly sim friendly 
|
|
Osgeld Barmy
Registered User
Join date: 22 Mar 2005
Posts: 3,336
|
02-05-2006 23:26
you would be better off faking it with vector animation (llSetPos rotate ect)
|
|
Jeffrey Gomez
Cubed™
Join date: 11 Jun 2004
Posts: 3,522
|
02-05-2006 23:34
There used to be a way to do something like this with volumedetect and physics, but they broke it last I checked. That would've thrown a collision with a physical object and retained "phantom" status. Alas. Your only real option now is to use a sensor, a fixed path, or risk having the object hit the avatar anyway. This is actually a major problem for exactly what's being described - selective collision surfaces (common in 3D modeling tools, though). It's what broke one of my games. Any other suggestions to this problem?
_____________________
---
|
|
Torin Golding
Misanthropic Humanist
Join date: 13 Sep 2005
Posts: 41
|
02-06-2006 00:04
Hiya DolphPun!
I'm very interested in this too, and haven't found a way around it. I posted here a bit ago with just such a problem. I have a small reconstruction of the temple from "Raiders of the Lost Ark", where I would really love a bounder to come down and roll over an avatar. But I havent found a way around the risk of an abuse report except to possibly make the boulder go really slow so there isn't much force for a push? Kinda ruins the effect tho...
Let me know if you figure something out. You're a much much better scripter than I!!
-Torin
|
|
Osgeld Barmy
Registered User
Join date: 22 Mar 2005
Posts: 3,336
|
02-06-2006 00:19
again vector animation, fake the ball rolling down, have the av pre approve animations, collision av go boom, no reports, yes its a ALOT more work but at the same time the physics in SL are mostly useless even simple things like a ball bouncing off of mutiple obsticals can cause a sim to freeze
|
|
DolphPun Somme
The Pun is its own reword
Join date: 18 Nov 2005
Posts: 309
|
02-06-2006 00:22
From: Osgeld Barmy you would be better off faking it with vector animation (llSetPos rotate ect) Ewww! I knew I should have paid attention in class when we got into the Raiders of the Lost-Arc Tangent... but one of my buddies gave me the Co-Sine to go out back and forget about things... (cough) Who knew that vector-physics would actually come in useful one day? Unfortunately these are spiral staircases... and ... I guess it is a Sine of the times. Ok. As I have spiral stairs... sensorRepeat detects avatar, llSetPosition(llGetPos()-<0,0,-.8> , (Drop through to next level)Hope that there isn't someone below them... Irk. (Always another bug) Might be too much lag for the effect I wanted... My Tower has enough other "special effects" to make up for my anti-moss-gathering-stone.  And Torrin... I got wacked by your temple. Was irked that it didn't reset so I could wack myself again.  (ooo! That sounded SOOO wrong)
|
|
Zepp Zaftig
Unregistered Abuser
Join date: 20 Mar 2005
Posts: 470
|
02-06-2006 06:27
*edit* Just read the post above and that seems like maybe it would work better. Like almost everything in SL, this probably can't be done without ugly hacks.
|
|
Christopher Omega
Oxymoron
Join date: 28 Mar 2003
Posts: 1,828
|
02-06-2006 10:09
Im pretty sure if you alerted your visitors of the possible risk before the simulation started, you'd be perfectly OK abuse-report wise. I dont think creators should need to be afraid of something like that if the parties involved know the consequences of standing in front of a large moving sphere. LL's policy police need to chime in right about now...
Still, I agree with the majority opinion that there needs to be a way to predict the outcome of the movement. Unfortunately, the only solution I see is to have an invisible prim set to volume-detect follow around the moving sphere using llMoveToTarget. If all is well, the avatar will collide with the invisible field first, which can then tell the sphere to stop moving.
Jeff, would that scenerio work? or is that the thing that's broken? ==Chris
|
|
Logan Bauer
Inept Adept
Join date: 13 Jun 2004
Posts: 2,237
|
02-06-2006 10:18
From: Osgeld Barmy again vector animation, fake the ball rolling down, have the av pre approve animations, collision av go boom, no reports, yes its a ALOT more work but at the same time the physics in SL are mostly useless even simple things like a ball bouncing off of mutiple obsticals can cause a sim to freeze Yup, this is the way I'd do it too - wouldn't even mess with physics or collisions, make your object phantom and have it move along a preprogrammed route down the stairs.
|
|
Jeffrey Gomez
Cubed™
Join date: 11 Jun 2004
Posts: 3,522
|
02-06-2006 12:51
From: Christopher Omega Jeff, would that scenerio work? or is that the thing that's broken? What broke was volumedetect with physics, which is kinda implied by your scenario of llMoveToTarget. Basically, pre-1.7, a collision would be thrown when the VD/Phys object interpenetrated with anything, be it an avatar or another object. This was extremely useful as a hack, since you could then process based on the name/key/type/etc of the colliding object without having it recoil. Unfortunately, this had a side-effect with complex linked sets. When interpenetrating, the physics system would go bonkers with complex shapes and potentially hard-crash the sim. Fun stuff. Post-1.7, this "feature" was broken. Andrew Linden was kind enough to test and confirm this... and that was the last I heard of it. But this was the major change that broke Primmies irrepairably. I'm not sure if they've fixed this or whether it still works when the object fits completely over the one inside of it. My impression was they wanted to fix it, but it did not happen. I have not tested recently, though. So... thoughts?
_____________________
---
|
|
Carefree Doolittle
Registered User
Join date: 25 Nov 2005
Posts: 16
|
You need a pair of balls.
02-06-2006 15:48
If there was a larger phantom, translucent ball linked to the physics enabled ball, larger but with the same center, that ball would be able to detect the collision a moment (or 2 if you need two) before the solid ball hit, then the first suggestion of Rerez and die could work.
|
|
DolphPun Somme
The Pun is its own reword
Join date: 18 Nov 2005
Posts: 309
|
02-06-2006 22:58
From: Carefree Doolittle If there was a larger phantom, translucent ball linked to the physics enabled ball... the solid ball hit. Hmm, As I understand it, you can not link a phantomed object to a non-phantomed one. Am I wrong?
|
|
Ben Bacon
Registered User
Join date: 14 Jul 2005
Posts: 809
|
02-07-2006 00:25
Dolph, personally, I would happily click an object at the start that said "by clicking this you accept that I will throw big rocks at you - now go and have some fun" - but I applaud you for considering those that would not choose similarly.
I would consider putting sensors into the stairway itself, so that it will know where the avs are. It could then either rez some invisible, following shields around the av - well before the rock actually arrives - or it could shout the av's position, whenever it changes significantly, on a private channel to the rock, warning it of when it will need to take evasive action.
|