sNeaksieGarrett on 20/6/2013 at 03:35
Quote Posted by LarryG
I'm still of the idea to have a marker with the NVCreateAndLink script and have it create the puff particle effect with ParticleAttachment links to Garrett's head. Then use an NVRelayTrap to continuously fire the NVCreateAndLink every x seconds when he is outside.
I'll have to try that then. There's really no reason not to, other than being leery of NVScript, like Xorak.:p
Well, unless I could get a non-custom system to work, which doesn't seem to be going anywhere.
Without looking at the documentation just yet, I'm guessing the NVSCript will create the puff constantly and it'd fire only once..? Wouldn't this be bad from an object count point of view? Or could I set them up to delete as well? Hmm, will definitely need to investigate this.
LarryG on 20/6/2013 at 03:52
What happens to your puffs emitted on the AIs now? Is that bad for the object count? No. The effect is limited and the particles only last a short while. This is just another kind of emitting. I believe that you will only be adding one object every 2 or three seconds, and they will be destroyed naturally within a second or so of their creation. You can test this by setting the system up and using set game_mode_backup 0 to check and see just how many ~ParticleAttachement links Garrett gets at any one time. Just don't save the mission after using set game_mode_backup 0. That would corrupt the mission horribly.
sNeaksieGarrett on 20/6/2013 at 16:01
Quote:
and they will be
destroyed naturally within a second or so of their creation
Okay, that's what I was worried about [not happening.] Thanks.
The AIs should be unaffected. I went ahead and created a "GarrettBreath" subtype under Breath just to be safe and re-saved my gamesys last night. I'm going to look into your NVScript idea today.
sNeaksieGarrett on 20/6/2013 at 16:27
Ugh, I'm doing something wrong, I know it.
I've set up a
marker with this:
Editor>Design Note:Code:
NVCreateAndLinkCreate=GarrettBreath; NVCreateAndLinkLinkType=ParticleAttachment; NVCreateAndLinkLinkSource=GarrettBreath; NVCreateAndLinkLinkDest=Garrett; NVCreateAndLinkLoc="1.0,0.0,0.0"; NVCreateAndLinkLocObj=Garrett;
Links:
ParticleAttachment: Garrett(-2099)
~ControlDevice: A Button
Scripts: {NVCreateAndLink;;;;FALSE}
Also, mono is giving me a warning:
ASSERT: [LINKSCPT.CPP@65] ParticleAttachment is not a link flavorIf I remove this line
NVCreateAndLinkLocObj=Garrett; then I can see the puff where the marker is sitting.
LarryG on 20/6/2013 at 18:55
Try changing "Garrett" to "Player"
Here is a Design Note I have used successfully to add particle effects in front of Garrett, three of them actually. I had a marker with three copies of NVCreateAndLink on it.
NVCreateAndLinkLinkType="~ParticleAttachement";NVCreateAndLinkCreate="redsmoke part 1";NVCreateAndLinkLinkSource="Player";NVCreateAndLinkLinkData1Field="Joint";NVCreateAndLinkLinkData1Value=1;NVCreateAndLinkLinkData2Field="Type";NVCreateAndLinkLinkData2Value=3;NVCreateAndLinkLinkData3Field="Submod #";NVCreateAndLinkLinkData3Value=0;
NVCreateAndLink2LinkType="~ParticleAttachement";NVCreateAndLink2Create="Nebula part 1";NVCreateAndLink2LinkSource="Player";NVCreateAndLink2LinkData1Field="Joint";NVCreateAndLink2LinkData1Value=1;NVCreateAndLink2LinkData2Field="Type";NVCreateAndLink2LinkData2Value=3;NVCreateAndLink2LinkData3Field="Submod #";NVCreateAndLink2LinkData3Value=0;
NVCreateAndLink3LinkType="~ParticleAttachement";NVCreateAndLink3Create="AirCrystalCloud";NVCreateAndLink3LinkSource="Player";NVCreateAndLink3LinkData1Field="Joint";NVCreateAndLink3LinkData1Value=1;NVCreateAndLink3LinkData2Field="Type";NVCreateAndLink3LinkData2Value=3;NVCreateAndLink3LinkData3Field="Submod #";NVCreateAndLink3LinkData3Value=0;
This structure should be close to what you need. Note that since this is getting the link created from Player to the freshly created GarrettBreath, you need to use the backwards link (~). The Source has to already exist as a concrete object. You can't create GarrettBreath and have it as the source to link to Player, I don't believe, because you don't know what concrete object id it has.
Edit: and yes, ParticleAttachment is not a link flavor. But ParticleAttachement is.
R Soul on 20/6/2013 at 19:00
Quote Posted by sNeaksieGarrett
Also, mono is giving me a warning:
ASSERT: [LINKSCPT.CPP@65] ParticleAttachment is not a link flavorLGS spelt it wrong. It's ParticleAttach
ement.
edit: I have created the second page, so it's only fair that I point out that LarryG posted some instructions on page1.
LarryG on 20/6/2013 at 19:29
If you don't see the particle effect GarrettBreath following my instructions, the effect may be being created inside G's head. Try adding a forward velocity, so that it will appear as though he breathed it out, and perhaps make it longer / larger to make it visible in front of him.
sNeaksieGarrett on 20/6/2013 at 20:33
Ohhh. Thanks for pointing that out! I'll go ahead and test it out and let you know how it goes in a bit.
Edit:
What's Player? Is that what you called the marker, or the actual StartingPoint? (I'm used to StartingPoint.) :confused: Also, was I right in putting a particleattachement link from the marker to Garrett? Or is that unnecessary since we're using Design Note?
Nevermind, I've gotten the particle to appear continually substituting your redsmoke part to GarrettBreath. Also, initially I tried using your third example when I should have been using the first one.
Still spawning at Garrett's stomach though. :(
I even tried replacing GarrettBreath with AirCrystalCloud, and while you can see parts of the particle in front of Garrett's face, if you llook down, then you see it is emitting at his stomach again.
LarryG on 20/6/2013 at 21:26
Quote Posted by sNeaksieGarrett
What's Player? Is that what you called the marker, or the actual StartingPoint? (I'm used to StartingPoint.) :confused: Also, was I right in putting a particleattachement link from the marker to Garrett? Or is that unnecessary since we're using Design Note?The marker is not attached to Garrett or the starting point or anything. Garrett is the archetype for the concrete Player object. You want to attach the particle to the concrete Player, not to the abstract archetype.
Quote Posted by sNeaksieGarrett
Nevermind, I've gotten the particle to appear continually substituting your redsmoke part to GarrettBreath. Also, initially I tried using your third example when I should have been using the first one.
All three notes are identical except for which NVCreateAndLink script is intended to act on the notes. As I said, I had three of them in my mission, NVCreateAndLink, NVCreateAndLink2, and NVCreateAndLink3. So the differences are only in the script name referenced.
Quote Posted by sNeaksieGarrett
Still spawning at Garrett's stomach though. :(
I even tried replacing GarrettBreath with AirCrystalCloud, and while you can see parts of the particle in front of Garrett's face, if you llook down, then you see it is emitting at his stomach again.
Hmmm. I never noticed that, nor did it matter for what I wanted, but I can see how that would not be good for you. NVCreateAndLink may still be the way to go for you, you just may need to fiddle about with the attachment approach. Possible set up an Renderer > Alternate Link location?
sNeaksieGarrett on 20/6/2013 at 23:08
Quote:
You want to attach the particle to the concrete Player, not to the abstract archetype.
Right, but I never heard of "Player" before and didn't know what you were talking about. I then figured out that it was an object that gets created when starting the game itself, hence the cross-out in my post. Thanks though.
Shouldn't I be using this:
Quote Posted by NVScript Doc
You can use the NVCreateAndLinkLoc parameter to specify the location at which to create the object and NVCreateAndLinkRot to specify the rotation. (Specify both values as a string with three numbers separated by comas, eg: NVCreateAndLinkLoc="1.0,0.0,0.0"; NVCreateAndLinkRot="360,0,0")
By default, this is a relative value from the location of the current object, but you can use the NVCreateAndLinkLocObj parameter to specify another object, or 0 for an absolute location.
I'm going to try that.
The only thing that's ever worked so far in terms of moving where the particles are is Xorak's method in which you changed the Particle Launch Info to Boundary Box and set the Z-axis in there.