Hi agian! yes yes its me again with another Helper question.my current wip Raging Ryu will be using alot of high res effects and helpers. and i want this helpers (hadoukens) to be able to hit other helpers and die off.so can someone explain or show me an example please? it would be great if someone could SHOW me an example.because i really need to learn how this works. and yes showing me an example teachs me alot more than telling me this those that. so please and thank you.
[Statedef 1337] ;Hadouken StateAnim = 1337 ;The defualt stuffmovetype= A ;The defualt stuff[State 0, HitOverride] ;Stufftype = HitOverride ;Typetrigger1 = 1 ; Constantly activated.attr = SCA,NA,SA,HA,NP,SP,HP,NT,ST,HT ; Die on all kind of hitsstateno = -1 ;Die of statenotime = 1 ;Timeignorehitpause = 1 ;Ignores hitpause
Anjel said, June 29, 2008, 08:26:02 pm[State 0, HitOverride] ;Stufftype = HitOverride ;Typetrigger1 = 1 ; Constantly activated.attr = SCA,NA,SA,HA,NP,SP,HP,NT,ST,HT ; Die on all kind of hitsstateno = -1 ;Die of statenotime = 1 ;Timeignorehitpause = 1 ;Ignores hitpausethanks so much, and sorry to ask but could you elaborate on the attributes please? i normally dont mess with them.or could you point me in which file tells me all that?also. i tried the exact code you posted, and now when i do it the hadouken disappears after it comes out.
it might have dissapeared coz time = 1 mayb....try time =(the length of game ticks the move lasts for)and have the trigger either as trigger1 = 1 or trigger1 = time = 0
well reguardless of that (i found several ways to by pass it thanks)when ever it gets hit by another projectile/helper/attack it drops a mini ryu, instead of an end explosion.
Have you set the stateno the the explotion state? For the attributes, read the docs. It is said there what they are. Way better than I can explain.
you actually have to do what Anjel said, you can't just hit ovveridde without an actual state, and Animation, and a destroy self, in that explosion state.Cheers,RajaBoy
oh my god. i am stupid..i put the code in the WRONG state! LOL.woops!ok well now it works. another question is..When it hits another projectile/helper/etc/etc it dies off. BUT since its a super it should be able to consume the regular attacks.how do i make it take the hit and keep going?
Ryon said, June 30, 2008, 01:00:59 amoh my god. i am stupid..i put the code in the WRONG state! LOL.woops!ok well now it works. another question is..When it hits another projectile/helper/etc/etc it dies off. BUT since its a super it should be able to consume the regular attacks.how do i make it take the hit and keep going?is it coded as an, Helper projectile, because now you, might have to do the whole syntax, over, if you want it great, if not i guess you could just have 2 hit overrifdes, one that bring's it back to the same state if it's hits a NP,SP, i don't know,or you could do it, antoher broken, way, Projectiles are broken, you can ask laQuak.there's a way with invisible proj . and projhitsCheers,RajaBoy
yo Raja are you indian by chance? (i know very off topic but i guess i need to know?)anyways..so hmm a hit over ride that leads back to the helper..since laquak joined my site i'll ask him.
Ryon said, June 30, 2008, 05:42:31 amyo Raja are you indian by chance? (i know very off topic but i guess i need to know?)anyways..so hmm a hit over ride that leads back to the helper..since laquak joined my site i'll ask him.RajaBoy, you can take aguess,Tumko zaruri kyon hai?Cheers,RajaBoyyou've a website, is it cool?why do you need to know?
Projectiles are only broken if you don't use them properly. Perfectly functional in most other ways.NP will cancel regular helpers and projectiles if they have been coded properly.
This is my projectile code the helper projectile state works fine without the use of Hittoveride?Cheers,RajaBoyQuote;---------------------------------------------------------------------;FireBall[Statedef 6015]type = Amovetype = Iphysics = Nctrl = 0sprpriority = 4anim=6016<-------Animation of projectile actual animation[State 0]type = AssertSpecialtrigger1 = 1flag = noshadowignorehitpause = 1[State 0]type = VarSettrigger1 = time = 0ignorehitpause = 1var(9) = parent,var(9)[State 0]type = VelSettrigger1 = time <=36x = 2.375 + (var(9)*1.6875)[State 0]type = Projectiletriggerall = numprojid(6010)=0trigger1 = Time = ifelse(!var(9),17,ifelse(var(9)=1,12,7))projanim = <<<<---- an invisible animation with a red and blue, clsn, in the shape of the projectile, animationProjhitanim = -1Projremanim = -1projcancelanim = -1offset = 0, 0projpriority = 1projsprpriority = 4velocity = vel x, vel Yattr = S, SPdamage = ifelse(parent,var(10),50,ifelse(parent,var(11),45,40))+10*parent,var(49),12+10*parent,var(49)animtype = Hardhitflag = MAFDguardflag = MApausetime = 4,15sparkno = s6021guard.sparkno = S13351sparkxy = 45, -5hitsound = S6010,3guardsound = S120,0ground.type = Highground.slidetime = 18ground.hittime = 18air.hittime = 18guard.ctrltime = 18ground.velocity = -8,0guard.velocity = -8air.velocity = -4.5, -6airguard.velocity = -5.33,-1air.juggle = 0fall = 0+1*parent,var(49)fall.recover = 0air.fall = 1air.recover = 0envshake.time = 8envshake.ampl = 2ProjID = 6010getpower = ifelse((p2statetype=A&&p2movetype=H&&var(9)=[0,2]),40,60)givepower = 35, 35palfx.color = 64palfx.add = 100,40,90palfx.mul = 90,50,90palfx.time = 40forcestand = 1yaccel = .5[State 0]<----you already know what this doestype = DestroySelftriggerall = time > 1trigger1 = FrontEdgeDist <= -40[State 0]type = ChangeState<-----this state changes, the helper to an fade away state when the projectile is gone projectile disappear,s after, hitting so it will go to the state below sorta like a sudo, hitoverridetriggerall = time > 1trigger1 = !parent,numprojid(6010)<----triggers when the projectile with said id is gonevalue = 6016;---------------------------------------------------------------------------;FireBall[Statedef 6016]type = Amovetype = Iphysics = Nctrl = 0velset = 0,0anim = 6018<----projectile fading away anim[State 0]type = AssertSpecialtrigger1 = 1flag = noshadowignorehitpause = 1[State 0]type = transtrigger1 = 1trans = add1[State0]destroyes whan anim is over.type = DestroySelftrigger1 = animtime = 0
oh thats right. i forgot to mention. the animation and effects are ALL High Res. i turned them high res.so with sort to speak, even though i can scale the projectile, i can not scale the Guard hit effects. so then it would be a gigantic blue thing all over the screen.that aside. i'd really love to know how to use helpers properly.and raja, because i'm indian as well.1. the initial override code works well for this attack.Strong Hadouken2. the initial override doesnt work well on the lv2 super however.Spoiler, click to toggle visibiltyas i said the problem is that the shinku hadouken lv2, only counters 1 hit, instead of taking the hit and keep going.ALSO! and hopefully the final time i'll edit this!The Lv.1 Shinku HadoukenSpoiler, click to toggle visibiltyworks very similar to a barrier as well as a projectile. it needs to be able to protect ryu while hurting the enemy.but agian that initial code you guys showed me, only makes it last 1 hit, after that it dies off.
you would use the code, i said above as a helper but use theprojhits = blahblah and in the destroy state it changes to use angledraw, to scale it down, a bit, it's a state controllers.offtopicand i thought, i was the only Indian, here, coding, Glad to know that there's more.Kya tumko Hindi ati hai? aisa hai to,Bharat men kaha se ate ho tum?
RajaBoy said, June 30, 2008, 01:48:42 pmyou would use the code, i said above as a helper but use theprojhits = blahblah and in the destroy state it changes to use angledraw, to scale it down, a bit, it's a state controllers.offtopicand i thought, i was the only Indian, here, coding, Glad to know that there's more.Kya tumko Hindi ati hai? aisa hai to,Bharat men kaha se ate ho tum?sorry to say i dont speak hindi, i was raised in new york. but my real name is Bharat LOL.its a shame i really need to understand these a bit more, i'll read up on the docs.
i was raised in New York too, and as a matter of fact i'm still here, and You know what your name means right?.Bharat=Indiamaybe your parents named you, that so you can always carry around your Heritage wether you knew it or not.
i knew it.and scary, im still in new york. lol.all that aside. so here is the coding for the shinku hadouken + the actual helper itself.Quote;================================SHINKU HADOUKEN LV2[Statedef 1110]type = Smovetype= Aphysics = Sjuggle = 4poweradd= -2000velset = 0,0anim = 615ctrl = 0sprpriority = 2[State 1110, 4]type = Explodtrigger1 = Animelem = 3scale = .5,.5anim = 631postype = p1bindtime = -1supermove = 1sprpriority = 3pos = 0,0[State 1110, Super Pause]type = SuperPausetrigger1 = AnimElem = 3darken = 0time = 40anim = -1pos = 0,0sound = s0,27poweradd = -1000[State 1110,explod]type = explodtrigger1 = animelem = 3anim = 6000scale = .5,.5pos = -11,-58postype = p1sprpriority = 4supermove = 1movetime = 1bindtime = 1;[State 1110, Background];type = BGPalFx;trigger1 = time<= 0;add = 0,0,255;time = 45;sinadd = 0,0,-255,190[State 1110, 4]type = Explodtrigger1 = AnimElem = 5scale = .5,.5anim = 620postype = p1bindtime = -1sprpriority = 3pos = 85,-69[State 1110, Sound]type = PlaySndtrigger1 = AnimElem = 5value = 0, 13[State 1110, Sound]type = PlaySndtrigger1 = AnimElem = 1value = 0, 25[State 1100, 1]type = Helpertrigger1 = animelem = 5helpertype = Normalname = "ShinkuHadoukenMed"ID = 1110pos = 100,-65size.xscale = .5size.yscale = .5postype = P1sprpriority = 4stateno = 1111ownpal = 1supermovetime = 0[State 1110, End Super]type = ChangeStatetrigger1 = AnimTime = 0value = 0ctrl = 1;=======================================Shinku Hadouken Med Helper[Statedef 1111]type = Smovetype= Aphysics = Njuggle = 1ctrl = 0anim = 630sprpriority = 4[State 1111,no shadow]type = assertspecialtrigger1 = 1flag = noshadow[State 1111, HitOverride] ; THANKS ANJEL!!type = HitOverridetrigger1 = 1attr = SCA,NA,SA,HA,NP,SP,HP,NT,ST,HTstateno = 9999time = 1ignorehitpause = 1[state 1111, velocity]type = velsettrigger1 = time = 1x = 6[state 1111, velocity]type = velsettrigger1 = movecontactx = 2[State 1111,explod]type = explodtrigger1 = movehitanim = 607scale = .5,.5pos = 0,-60postype = p2sprpriority = 3bindtime = 1[State 1111, Hits]type = HitDeftrigger1 = 1attr = S, NAdamage = 40, 0animtype = Heavyguardflag = MAhitflag = MAFpriority = 6, Hitpausetime = 2,1sparkno = -1 ; s9998sparkxy = -10, -15hitsound = s0,3guard.sparkno = s607guardsound = s0,1ground.type = Lowground.slidetime = 5ground.hittime = 10ground.velocity = -1,0airguard.velocity = -1,0air.type = Highair.velocity = -1,0air.hittime = 12air.recovery = -1getpower = 0envshake.time = 20envshake.ampl = 2envshake.freq = 128ground.cornerpush.veloff = 0air.cornerpush.veloff = 0down.cornerpush.veloff = 0guard.cornerpush.veloff = 0airguard.cornerpush.veloff = 0fall = 1palfx.time = 25palfx.add = -30,30,30palfx.sinadd = 30,30,30,10palfx.color = 0palfx.invertall = 1[State 1111, Get Rid Of]type = destroyselftrigger1 = hitcount = 10Statedef 1112]type = Smovetype= Aphysics = Njuggle = 1ctrl = 0anim = 607sprpriority = 4[State 1111,no shadow]type = assertspecialtrigger1 = 1flag = noshadow[State 1111, Get Rid Of]type = destroyselftrigger1 = animtime = 0HIT OVERRIDE STATEQuote[Statedef 9999]type = Smovetype= Aphysics = Nanim = 607sprpriority = 4velset = 0,0[State 9999, 3]type = destroyselftrigger1 = animtime = 0well can you tell me whats majorly wrong here?
completely unrelated but still a tip, always try to organize your anims so they correspond to your statenos. it does no harm, anybody duplicating a few begin action entries in the air file.
first off my friend you used a hitdef, and not a projectile, listenfirst you have the first part right to summon the helper,then in the helper state the main animation should be the Hadoken animation without the clsn[Statedef 1111]type = Smovetype= Aphysics = Njuggle = 1ctrl = 0anim = 630<---the hadiken animation without any clsn, just the plain animationsprpriority = 4then you need a Projectile sctrl instead of a hit def, just use mine, i guess and modify it, to change the id. to the one you want and the animation, and don't forget to add projhits=???then for the destrucion you don't eed a hittoveride, use a change state like i told you before. and the projectile animation in the scrl should just be add a new animation chage the time of it to -1, add blue clsn and red clsn, in the shape of shinku hadoken, then add that to sctrl projanim, this is called an invisble projectile the animation, still look's good though.[State 0]<----you already know what this doestype = DestroySelftriggerall = time > 1trigger1 = FrontEdgeDist <= -40[State 0]type = ChangeState<-----this state changes, the helper to an fade away state when the projectile is gone projectile disappear,s after, hitting so it will go to the state below sorta like a fake, hitoverridetriggerall = time > 1trigger1 = !parent,numprojid(6010)<----triggers when the projectile with said id is gone. value = 6016the fade away state should just be, a statedef, with dersroyself when animtime=0, with whatever else you need to make it look accordingly.Cheers,RajaBoy
Whereas i, knowing that helpers have their own variable set and you won't be wasting one by using it would use a variable counter to prevent projectile flicker.As suchtype = varsettrigger1 = time = 0 && prevstateno!= 9999v = 0value = 10Then againtype = varaddtrigger1 = time = 0 && prevstateno = 9999v = 0value = -1then in state 9999trigger1 = var(0) <= 0 (or 1 depending on how many hits you're doing)When the helper is destroyed the variable is destroyed with it. And of course, won't affect anything else anyway.
its not that the helper doesnt have a variable, its just that i rarely use variables. but thank you cyan. i'll try this after i get back from court.
Ryon said, July 01, 2008, 01:18:55 pmits not that the helper doesnt have a variable, its just that i rarely use variables. but thank you cyan. i'll try this after i get back from court.let me guess the 2 train to canal street?or to brooklyn?
You want your shinku hadouken to do multiple hits ya? Just do what I did. Stick a crap load of HitDefs in helper state. from my code.[mcode]; Heavy Kikousho[Statedef 1042]type = Smovetype= Aphysics = Sjuggle = 1velset = 0,0ctrl = 0anim = 1042poweradd = -3000sprpriority = 2[State 1042, Cheating]type = NotHitBytrigger1 = 1value = SCA,NA,SA,HA,NP,SP,HP,NT,ST,HTtime = 30[State 1042, Width]type = Null;Widthtrigger1 = BackEdgeBodyDist < 100edge = 30,30player = 0,0[State 1042, SuperPause]type = SuperPausetrigger1 = AnimElem = 3time = 60movetime = 60anim = -1sound = S4,1darken = 1unhittable = 1p2defmul = 1;sprpriority = 2[State 1042, Hyper Circle Spark]type = Explodtrigger1 = AnimElem = 3anim = 7017pos = -33,-110supermovetime = 50ignorehitpause = 0ownpal = 1sprpriority = 5[State 1042, CvS Hyper Charge Spark]type = Explodtrigger1 = AnimElem = 3anim = 7018pos = -33,-110supermovetime = 50ignorehitpause = 0ownpal = 1sprpriority = 5[State 1042, AfterImage]type = AfterImagetrigger1 = AnimElem = 1Time = 75TimeGap = 3FrameGap = 4length = 10PalBright = 1,1,1PalContrast = 150,50,50PalAdd = 0,0,0PalMul = .5,.5,.5trans = add1ignorehitpause = 1[State 1042,Helper]type = Helpertrigger1 = AnimElem = 11id = 1046name = "Heavy Kikousho"pos = 55,-69postype = P1stateno = 1046helpertype = normalkeyctrl = 0ownpal = 1ignorehitpause = 1size.xscale = 1size.yscale = 1[State 1042, Projectile]type = Projectiletrigger1 = AnimElem = 11projanim = 1043Projhitanim = -1Projremanim = -1projcancelanim = -1projremovetime = 30offset = 55,-69projpriority = 1projsprpriority = 4ProjID = 1043[State 1042, Cry]type = PlaySndtrigger1 = AnimElem = 1value = s9,0channel = 0[State 1042, Kikousho]type = PlaySndtrigger1 = AnimElem = 11value = s9,4channel = 0[State 1042, Kikousho Wave]type = PlaySndtrigger1 = AnimElem = 11value = s9,5[State 1042, end]type = ChangeStatetrigger1 = AnimTime = 0value = 0ctrl = 1;---------------------------------------------------------------------------; Heavy Kikousho[StateDef 1046]movetype = Aanim = 1043sprpriority = 1[State 1046, VarSet]type = VarSettrigger1 = Time = 0v = 32value = 0[State 1046, HitOverride]type = HitOverridetrigger1 = 1attr = SCA,AA,AT,AP,SP,HPStateNo = 1044ignorehitpause = 1[State 1046, AssertSpecial]type = AssertSpecialtrigger1 = 1flag = noshadowignorehitpause = 1[State 1046, 1]type = HitDeftrigger1 = AnimElem = 4attr = S, NAdamage = 40,5animtype = Hardguardflag = MAhitflag = MAFpriority = 3, Hitpausetime = 0, 5sparkno = s7004+(random%4)guard.sparkno = s7012sparkxy = -35, 0hitsound = sifelse(hitcount, -1, 1), 3guardsound = s10, 1ground.type = Lowground.slidetime = 10ground.hittime = 15ground.velocity = -5airguard.velocity = -1.9,-.8air.type = Lowair.velocity = -3,-3air.hittime = 12ground.cornerpush.veloff = 0air.cornerpush.veloff = 0air.fall = 1fall.recover = 0air.recover = 0p2facing = 1forcestand = 1getpower = 0,0givepower = 0,0[State 1046, 1]type = HitDeftrigger1 = AnimElem = 8attr = S, NAdamage = 40,5animtype = Hardguardflag = MAhitflag = MAFpriority = 3, Hitpausetime = 0, 5sparkno = s7004+(random%4)guard.sparkno = s7012sparkxy = -35, 0hitsound = sifelse(hitcount, -1, 1), 3guardsound = s10, 1ground.type = Lowground.slidetime = 10ground.hittime = 15ground.velocity = -5airguard.velocity = -1.9,-.8air.type = Lowair.velocity = -3,-3air.hittime = 12ground.cornerpush.veloff = 0air.cornerpush.veloff = 0air.fall = 1fall.recover = 0air.recover = 0p2facing = 1forcestand = 1getpower = 0,0givepower = 0,0[State 1046, 1]type = HitDeftrigger1 = AnimElem = 12attr = S, NAdamage = 40,5animtype = Hardguardflag = MAhitflag = MAFpriority = 3, Hitpausetime = 0, 5sparkno = s7004+(random%4)guard.sparkno = s7012sparkxy = -35, 0hitsound = sifelse(hitcount, -1, 1), 3guardsound = s10, 1ground.type = Lowground.slidetime = 10ground.hittime = 15ground.velocity = -3airguard.velocity = -1.9,-.8air.type = Lowair.velocity = -3,-3air.hittime = 12ground.cornerpush.veloff = 0air.cornerpush.veloff = 0air.fall = 1fall.recover = 0air.recover = 0p2facing = 1forcestand = 1getpower = 0,0givepower = 0,0[State 1046, 1]type = HitDeftrigger1 = AnimElem = 16attr = S, NAdamage = 40,5animtype = Hardguardflag = MAhitflag = MAFpriority = 3, Hitpausetime = 0, 5sparkno = s7004+(random%4)guard.sparkno = s7012sparkxy = -35, 0hitsound = sifelse(hitcount, -1, 1), 3guardsound = s10, 1ground.type = Lowground.slidetime = 10ground.hittime = 15ground.velocity = -5airguard.velocity = -1.9,-.8air.type = Lowair.velocity = -3,-3air.hittime = 12ground.cornerpush.veloff = 0air.cornerpush.veloff = 0air.fall = 1fall.recover = 0air.recover = 0p2facing = 1forcestand = 1getpower = 0,0givepower = 0,0[State 1046, 1]type = HitDeftrigger1 = AnimElem = 18attr = S, NAdamage = 40,5animtype = Hardguardflag = MAhitflag = MAFpriority = 3, Hitpausetime = 0, 5sparkno = s7004+(random%4)guard.sparkno = s7012sparkxy = -35, 0hitsound = sifelse(hitcount, -1, 1), 3guardsound = s10, 1ground.type = Lowground.slidetime = 10ground.hittime = 15ground.velocity = -5airguard.velocity = -1.9,-.8air.type = Lowair.velocity = -3,-3air.hittime = 12ground.cornerpush.veloff = 0air.cornerpush.veloff = 0air.fall = 1fall.recover = 0air.recover = 0p2facing = 1forcestand = 1getpower = 0,0givepower = 0,0[State 1046, 1]type = HitDeftrigger1 = AnimElem = 22attr = S, NAdamage = 40,5animtype = Hardguardflag = MAhitflag = MAFpriority = 3, Hitpausetime = 0, 5sparkno = s7004+(random%4)guard.sparkno = s7012sparkxy = -35, 0hitsound = sifelse(hitcount, -1, 1), 3guardsound = s10, 1ground.type = Lowground.slidetime = 10ground.hittime = 15ground.velocity = -5airguard.velocity = -1.9,-.8air.type = Lowair.velocity = -3,-3air.hittime = 12ground.cornerpush.veloff = 0air.cornerpush.veloff = 0air.fall = 1fall.recover = 0air.recover = 0p2facing = 1forcestand = 1getpower = 0,0givepower = 0,0[State 1046, 1]type = HitDeftrigger1 = AnimElem = 26attr = S, NAdamage = 40,5animtype = Hardguardflag = MAhitflag = MAFpriority = 3, Hitpausetime = 0, 5sparkno = s7004+(random%4)guard.sparkno = s7012sparkxy = -35, 0hitsound = sifelse(hitcount, -1, 1), 3guardsound = s10, 1ground.type = Lowground.slidetime = 10ground.hittime = 15ground.velocity = -5airguard.velocity = -1.9,-.8air.type = Lowair.velocity = -3,-3air.hittime = 12ground.cornerpush.veloff = 0air.cornerpush.veloff = 0air.fall = 1fall.recover = 0air.recover = 0p2facing = 1forcestand = 1getpower = 0,0givepower = 0,0[State 1046, 1]type = HitDeftrigger1 = AnimElem = 30attr = S, NAdamage = 40,5animtype = Hardair.animtype = Backfall.animtype = Backguardflag = MAhitflag = MAFpriority = 3, Hitpausetime = 0, 5sparkno = s7004+(random%4)guard.sparkno = s7012sparkxy = -35, 0hitsound = sifelse(hitcount, -1, 1), 3guardsound = s10, 1ground.type = Highground.slidetime = 10ground.hittime = 15ground.velocity = -6,-6airguard.velocity = -1.9,-.8air.type = Lowair.velocity = -7,-7air.hittime = 12ground.cornerpush.veloff = -10air.cornerpush.veloff = -10fall = 1air.fall = 1fall.recover = 0air.recover = 0getpower = 0,0givepower = 0,0envshake.time = 8envshake.ampl = 4[State 1046, HitSound]type = PlaySndtrigger1 = HitPauseTime = 0trigger1 = MoveHit = 1 && HitCount > 1value = S1,3channel = 2ignorehitpause = 1[State 1046, DestroySelf]type = DestroySelftrigger1 = Time > 30;---------------------------------------------------------------------------; Kikousho Nullifier[StateDef 1044]type = Smovetype = Aphysics = Sanim = 1044[State 1044,HitOverride]type = HitOverridetrigger1 = 1attr = SCA,AA,AT,AP,SP,HPStateNo = 1044ignorehitpause = 1[State 1044,BindToParent]type = BindtoParenttrigger1 = 1facing = 1pos = 0,0[State 1044, AssertSpecial]type = AssertSpecialtrigger1 = 1flag = noshadowignorehitpause = 1[State 1044, DestroySelf]type = DestroySelftrigger1 = Time > 30[State 1044, ChangeState]type = ChangeStatetrigger1 = Time > 35value = 0ctrl = 1ignorehitpause = 1[/mcode]You got your Stance....then you got your projectile animation with clsn over it....and then you got blank animation with a blue clns on it thats what nullifies projectiles.p.s. that bitchmade NotHitBy Sctrl is there I know its my cheating because if I dont have it what i am trying to accomplish fails because I hate helpers for projectiles.
so mr.quak your saying i could copy and paste this? (giving you credit with in the copied codes of course)and change the values it may work?also.. so you place a projectile hidden with in the helper?? thats kinda odd.