• 0

    posted a message on Ex-TMA Discussion thread
    Quote from DogmaiSEA: Go

    @Ultimaswc3: Go

    Why would something receive so much attention if it was a remake of something else ... it has to be entirely new.

    I was mostly being sarcastic :]

    While your statement is probable, it is incorrect to state it as a fact.

    Posted in: General Chat
  • 0

    posted a message on Ex-TMA Discussion thread

    Maybe they'll remake 'defend the temple'.

    Posted in: General Chat
  • 0

    posted a message on [Data] Random Actor Effects

    @Nahotnoj: Go

    It's in your screenshot :]

    Type "::Creator" in the "Target:" text field towards the upper right.

    Posted in: Tutorials
  • 0

    posted a message on [Data] Random Actor Effects

    @SouLCarveRR: Go

    The key point in the second ability is that you can attach actors to random effect points. So here, the randomness is partially driven by a periodic effect. It combines a random effect attachment with a random actor attachment.

    If you just want the key data properties related to the concept, they are highlighted in light green :]

    Behaviors or abilities create the peristents, I'll try to clarify that some more.

    Posted in: Tutorials
  • 0

    posted a message on [Data] Random Actor Effects
    Quote from Forge_User_59026135: Go

    hm how do i get random colored beams/particles? the pass chance only works once per actor

    I know through triggers you can send an actor message for changing tint color based off a random integer fairly easily. You could make the trigger for changing color occur whenever your actor is created or some effect occurs. Through pure data, I'm not sure I'll try and look that up.

    Update: If you want pure data, you can do this using ValidateEffect terms on the actor event for (Actor Creation -> Set Tint Color). Create a behavior called 'color picker' which periodically (with very short period interval) uses a periodic effect. The periodic effect will be a 'Set' effect with multiple 'apply behavior' effects, limit the set to a maximum of 1 random effect. Then, in your beam / particle call the ValidateEffect on each color, which corresponds to a color behavior. The actual validators will check the 'caster' for whether or not each color behavior is active. Make sense?

    Posted in: Tutorials
  • 0

    posted a message on [Data] AI - Simple Behaviors
    Quote from ZhEcho: Go

    good tutorial. i made the fire elemental one but when i cast it it doesnt move. ive checked everything and everything seems to be ok. if you could tell me what the prob is i would thank you

    Did you check to make sure the behavior is applied to the fire elemental? If the behavior is there, does the fire elemental have a caster?

    Posted in: Tutorials
  • 0

    posted a message on [Pic] I Wish!

    An empty game filter was the one thing I said they needed in all those 'what should we do in bnet' threads.

    Posted in: General Chat
  • 0

    posted a message on [Data] Random Actor Effects

    Tutorial is basically complete now, may add some more color in the future. Any questions, please let me know and I can add information.

    Posted in: Tutorials
  • 0

    posted a message on [Data] Random Actor Effects

    Introduction

    This tutorial explains how to create randomized actor effects. These actor techniques reduce the need to carefully create 'random offsets' in persistent effects or tons of sites and site operations. In this tutorial, basic data editing knowledge is assumed (intermediate level or advanced). We discuss several examples of how to randomize actors:

    • Randomized offsets
    • Matching actor offsets to effects
    • Randomizing actor event chance
    • Randomizing offsets in addition to site movers

    Key points will be highlighted like this

    Videos

    Random Actor Effects in Power Level Overwhelming

    Watch for: 1) Random Powerup Beams

    2) Random Lightning Field

    3) Random Battle Cry Red Particles

    (The video is also available in high def if you click through)

    Embed Removed: https://www.youtube.com/v/FF2UTNvw7xw?fs=1

    Cow-pocalypse

    The main thing here: just notice that when the cows fall, the 'Moooo' sound only plays periodically. This video is not the main point of the tutorial, just to show a simple point.

    Embed Removed: https://www.youtube.com/v/LTDPZHgcbTY?fs=1

    Random Powerup Beams (Powerup Overwhelming Cinematic)

    1. New Persistent Effect - Power Overwhelming Cinematic Lightning Strike (Persistent)

    • Set Effect - Period Count = 1
    • Set Effect - Period Durations = (.7500)
    • Set Target - Location + = (None): Source Unit

    This effect will trigger the creation of an individual beam actor.

    2. New Persistent Effect - Power Overwhelming Cinematic (Persistent)

    • Set Effect - Flags: Random Period
    • Set Effect - Period Count = 100
    • Set Effect - Period Durations = (0.7000|0.2500|0.3500|0.2500|0.4000|0.0500|0.0100|0.2500|0.2500|0.2500|0.0100|0.0100)
    • Set Effect - Period Effects = (Power Overwhelming Cinematic Lighting Strike (Persistent))
    • Set Effect - Periodic Validator IsPowerOverwhelmingCinematic

    This effect randomizes the creation interval between each beam. Each duration in the list effects how beam creation is distributed over time. The period count is set high enough so the beams continue to be created until 'IsPowerOverwhelmingCinematic' returns false.

    3. New Model - Power Overwhelming Cinematic Strike

    • Set Model = Assets\Effects\Zerg\HybridEnergizeBeam\HybridEnergizeBeam.m3

    4. New Actor Site Operation - Power Overwhelming Cinematic Strike Variance (Site Offset)

    • Set Actor - Radius = 8.0000

    Offsets will be uniformly distributed (default) within a radius of 8 from a central point. There are also different distributions such as Gaussian.

    5. New Actor Beam (Simple) - Power Overwhelming Cinematic Strike (Beam)

    • Set Art - Model = Power Overwhelming Cinematic Strike
    • Set Hosting - Host Impact + _Unit:Scope Source:Implicit:(None):Disabled
    • Set Hosting - Host Impact Site Ops +
      • SOpAttachCenter
      • PowerOverwhelmingCinematicStrikeVarianceSiteOffset
      • :Disabled:Disabled
    • Set Hosting - Host Launch + _Unit:Scope Source:Implicit:(None):Disabled
    • Set Event - Events +
      • ActorCreation -> AnimBracketStart BSD Birth Stand Death OpeningPlayForever
      • ActorOrphan -> AnimBracketStop BSD
      • AnimBracketState.*.AfterClosing; AnimName BSD -> Destroy
      • Effect.PowerOverwhelmingCinematicLightingStrikePersistant.Start -> Create
      • TimerExpired; TimerName Poof -> AnimBracketStop BSD
      • ActorCreation -> TimerSet 0.650000 Poof
      • ActorCreation -> SetTintColor {255,128,0 6.000000}

    We are using the model defined above for the beam (hybrid beam). The Cinematic effects we created above originate from a behavior which is applied to the unit powering up. Therefore, the host impact _unit we want is the source. The beams are attached to the host for the launch and impact sites (essentially a beam from the caster to itself). However, the target point is offset by the random variancer we created above in step 4. This basically makes it look like beams are flying out from the source unit. I also added sound effects whenever a beam is created, but that is covered in other actor/sound tutorials.

    You'll also notice I'm pumping up the HDR settings to make the beam look orange / glowy. In addition, the beam is destroyed within .65 seconds using a timer.//

    Random Lightning Beams (Unstable Power Field)

    1. New Persistent Effect - Unstable Power Cinematic Lightning Strike (Persistent)

    • Set Effect - Period Count = 1
    • Set Effect - Period Durations = (0.7500)
    • Set Target - Location + = (None):Source Unit

    This creates a dummy effect lasting .75 seconds at the source unit.

    2. New Persistent Effect - Unstable Power Cinematic Lightning (Persistent)

    • Set Effect - Flags: Random Offset, Random Period
    • Set Effect - Period Count = 100
    • Set Effect - Period Durations = (0.0100|0.2500|0.0100|0.1500)
    • Set Effect - Period Effects = (Unstable Powerup Cinematic Lighting Strike (Persistant))
    • Set Effect - Periodic Offsets = ((5,5,1)|(-5,-5,0)|(-5,5,2)|(5,-5,0)|(3,3,3)|(3,-3,3)|(-3,3,3)|(-3,-3,3)|(-4,-6,7)|(4,4,7)|(1,-3,10)|(-4,2,4)|(-5,6,8)|(5,-6,0)|(-5,-6,0)|(5,6,7)|(2,2,0)|(-2,2,6)|(2,-2,0)|(-2,-2,1)|(3,-4,1)|(4,3,3))
    • Set Effect - Periodic Validator = IsUnstablePowerSource
    • Set Effect - Validators = (CasterHasUnstablePowerup)

    The random offset flag will randomly select one of the periodic offsets. The period count is set to a sufficient number so that the effect will continue until the validator cancels it. Notice that we could have set the Target - Location + field in this effect to the Source Unit in effect #1 and still get the same behavior in this case.

    3. New Site Operation (Random Point in Circle) - Unstable Power Cinematic Strike Variance (Site Offset)

    • Set Actor - Radius = 2.0000

    Offsets will be uniformly distributed (default) within a radius of 2 from a central point. There are also different distributions such as Gaussian.

    4. New Site Operation (Effect) - Unstable Power Source (Site Effect Offset)

    • Set Actor - Height Only = Disabled
    • Set Actor - Hold Position = Disabled
    • Set Actor - Hold Rotation = Disabled
    • Set Target - Location = Target Point

    Offset will match the target point of an effect. This site operation will essentially create an attachment point at the location of one of our periodic offsets in effect #2. Key point - the target of the effect was set to the caster.

    5. New Model - Unstable Power Cinematic Strike

    • Set Model = Assets\Effects\Zerg\HybridEnergizeBeam\HybridEnergizeBeam.m3

    6. New Beam (Simple) Actor - Unstable Power Cinematic Strike (Beam)

    • Set Art - Model = Unstable Power Cinematic Strike
    • Set Hosting - Host Impact + = _Unit:Scope Source:Implicit:(None):Disabled
    • Set Hosting - Host Impact Site Ops + =
      • SOpAttachCenter
      • UnstablePowerSourceSiteEffectOffset
      • UnstablePowerCinematicStrikeVarianceSiteOffset
      • :Disabled:Disabled
    • Set Hosting - Host Launch + = _Unit:Scope Source:Implicit:(None):Disabled
    • Set Hosting - Host Launch Site Ops + =
      • UnstablePowerSourceSiteEffectOffset
      • :Disabled:Disabled
    • Set Event - Events +
      • ActorCreation -> AnimBracketStart BSD Birth Stand Death OpeningPlayForever
      • ActorOrphan -> AnimBracketStop BSD
      • AnimBracketState.*.AfterClosing; AnimName BSD -> Destroy
      • Effect.UnstablePowerupCinematicLightingStrikePersistant.Start -> Create
      • TimerExpired; TimerName Poof -> AnimBracketStop BSD
      • ActorCreation -> TimerSet 0.650000 Poof
      • ActorCreation -> SetTintColor {63,124,216 6.000000}

    We are using the model defined above for the beam (hybrid beam). The Cinematic effects we created above originate from a behavior which is applied to the unit powering up. Therefore, the host impact _unit we want is the source. In the previous example, we attached beams to the source unit, now we are attaching beams to an effect location using the UnstablePowerSourceSiteEffectOffset for the host impact and host launch location. We then apply the same technique as in the first example - we create a random variance around the effect location in a circle to get a random arc effect. I also added sound effects whenever a beam is created, but that is covered in other actor/sound tutorials.

    You'll also notice I'm pumping up the HDR settings to make the beam look glowy. In addition, the beam is destroyed within .65 seconds using a timer.

    Random Rising Particles (Battle Cry)

    1. New Persistent Effect - Battle Placebo Particle Dummy (Persistent)

    • Set Effect - Expire Delay = 0.5000
    • Set Target - Location + = (None):Caster Unit

    2. New Persistent Effect - Battle Placebo Particle Maker (Persistent)

    • Set Effect - Flags: Random Period
    • Set Effect - Period Count = 500
    • Set Effect - Period Durations = (0.2000|0.1000|0.0500|0.0500|0.1000|0.0500)
    • Set Effect - Period Effects = (Battle Placebo Particle Dummy)
    • Set Effect - Periodic Validator = IsBattlePlacebo
    • Set Target - Location + = (None):Caster Unit

    This effect controls how frequently the dummy particle effect is created. It shuts down the validator fails. Notice it sets the target location to the caster unit, so that particles are created around the caster.

    3. New Model - Battle Placebo Particle

    • Set Model = Assets\Doodads\Shapes\ShapeOrb\ShapeOrb.m3

    Nothing special here, just an orb. You could choose all kinds of neat models for the particle like a flame effect or explosions.

    4. New Site Operation (Random Point in Circle) Actor - Battle Placebo Particle Variance (Site Offset)

    • Set Actor - Radius = 1.0000

    Offsets will be uniformly distributed (default) within a radius of 1 from a central point. There are also different distributions such as Gaussian.

    5. New Site (Mover) Actor - Battle Placebo Particle (Site Mover)

    • Set Event - Events + =
      • ActorCreation -> RefSetFromMsg ::Host ::Sender
        • Target: ::Creator
      • ActorCreation -> MoverSetDestinationH 5.000000
      • ActorCreation -> MoverMove
      • ActorOrphan -> Destroy
      • ActorCreation -> SetHeight = 0
    • Set Hosting - Host + = _Unit:Scope Caster:Implicit:(None):Disabled
    • Set Hosting - Host Site Operations + =
      • BattlePlaceboParticleVarianceSiteOffset
      • :Disabled:Disabled
    • Set Movement - Acceleration = 5.0000
    • Set Movement - Deceleration = 0.0000
    • Set Movement - Speed = 5.0000
    • Set Movement - Speed Maximum = 5.0000

    The key thing here is in Events+ - the site actor basically replaces the creator's site with itself. You also need to tell the mover to start moving (MoverMove) when it is creating and where to move to (MoveSetDestinationH). Finally, notice I am setting the height to 0 when the mover is created so that it rises from the ground.

    6. New Model Actor - Battle Placebo Particle

    Inherit from ModelAnimationStyleContinuous

    • Set Actor - Fog Visibility = Hidden
    • Set Art - Scale = (0.200000)
    • Set Event - Events + =
      • ActorCreation -> AnimBracketStart BSD Birth Stand Death
      • Effect.BattlePlaceboParticleDummy.Start -> Create
      • ActorOrphan -> Destroy
      • AnimBracketState.*.AfterClosing; AnimName BSD -> Destroy
      • TimerExpired; TimerName KILL -> AnimBracketStop BSD
      • ActorCreation -> Create BattlePlaceboParticleSiteMover
      • ActorCreation -> TimerSet 1.000000 KILL
      • ActorCreation -> TimerSet 0.500000 FADE
      • TimerExpired; TimerName FADE -> SetOpacity 0.000000 0.500000
      • ActorCreation -> SetTintColor {128,0,0 4.000000}
    • Set Hosting - Host + = _Unit:Scope Caster:Implicit:(None):Disabled
    • Set Properties - Inherited Properties: Cast Shadows, Cloak Effect, Opacity, Physics State, Team Color

    The particles are scaled way down in size using 'Art - Scale'. Notice in 'Events +' we are fading the particles at 1/2 their life span to make the effect look natural. The particles are also set to red with high HDR setting for a glowing effect. Mosty importantly, when the particle is created, it makes a mover - 'BattlePlaceboParticleSiteMover', which handles making the particle rise in the correct location. Notice in the video the red particles hold position, but originate from the caster which also contributes to the effect.

    Random Chance for Actor Creation (Cow-pocalypse)

    1. New Sound Actor - Cow-pocalypse Launch (Sound)

    • Set Event - Events + =
      • SoundDone -> Destroy
      • Effect.CowpocalpyseLaunchMissle.Launch; PassChance 17.000000 -> Create
    • Set Hosting - Host Site Operations += SOpShadow:Disabled:Disabled
    • Set Sound - Sound = Cow Moo

    The PassChance 17 means that the sound will only play 17% of the time a cow is launched.

    See Data - (Patch 1.2) Z Offset Projectiles, "It's raining cows" if you want to learn more about the cow-pocalypse effect.

    Conclusion

    This tutorial has shown how to create random actor offsets from a source unit, effect location, and with movers. In addition, we showed how to create actors with a % chance.

    Posted in: Tutorials
  • 0

    posted a message on gotta love school

    Sleep is valuable, start your assignments when you get them.

    Posted in: Off-Topic
  • 0

    posted a message on Patch 1.3.0 incoming

    Pretty sure access violation is software using a nullpointer.

    Posted in: General Chat
  • 0

    posted a message on Patch 1.3.0 incoming

    @Usernameisntworkingright: Go

    Assuming acces violation in terms of memory errors.

    Posted in: General Chat
  • 0

    posted a message on Austin is full of hipsters

    What's wrong with coffee?

    Posted in: Off-Topic
  • 0

    posted a message on [Videos] Doodad Hunt 2 Development

    You misspelled development in the last video.

    Posted in: Project Workplace
  • 0

    posted a message on Is level designer a bad choice for a major in college?

    Going for something specific like level design. Start researching job descriptions, determining what kind of salary you'll be getting, and the hours / week. Going specific loses flexibility, so you may have to make sacrifices for some things. Getting something more general like a 4 year degree has it's perks too and opens more doors depending on the merit.

    Posted in: Off-Topic
  • To post a comment, please or register a new account.