New Twitch Stream for Live Blueprint Tutorials!

Also, here is what we’re going to be working on tonight with steps to complete, just in case anyone can decipher my scatterbrained notes and wants to throw this together for themselves! I’m posting here so that I don’t forget the steps taken to recreate it as this was a pretty detailed setup.

Steps to create randomized movement on Platforms
In Platform:

  1. Static Mesh
  2. Create two vector variables> Original Loc and Offset, make offset editable
  3. Event Begin Play>Set Original Loc to “Get Actor Location (self)”
  4. Custom Event>MoveMe
  5. MoveMe>FlipFlop
  6. A and B go to different Sequence Nodes
  7. two Gate Nodes. A “Then 0” plugs into second gate close, “Then 1” plugs into first gate Open. B “Then 0” plugs into first gate close, “Then 1” into second gate open.
  8. Event Tick>Sequence, “Then 0” into first gate Enter, “Then 1” second gate enter.
  9. Two Set Actor Location nodes, one behind each gate.
    a. First Set actor location vector =
    Current: Get Actor Location (self)
    Target: Original Location + Offset
    Delta Time: Get World Delta Seconds
    Interp Speed: SumNum
    b. Second Set actor location vector =
    Current: Get Actor Location (self)
    Target: Original Location
    Delta Time: Get World Delta Seconds
    Interp Speed: SumNum

In Platform Move

  1. Box collision
  2. Create these vars > Float Array (Name:TimerAmount)(editable)(3 elements: 1.0,2.0,3.0), Int (Name: Current Timer Group), Actor Array (name: Contained Actors), Int Array (Name:TimerGroupMatched), Int (Name: MoveBackGroup)
  3. Event Begin Play>Set Contained Platforms
  4. Contained Platforms set to “Get Overlapping Actors”
    Target is “Box”
  5. Get array length
  6. Resize Array “Timer Group Matched”, size = Contained Platforms Length
  7. Foreachloop, array = contained platforms
  8. LoopBody exec pin > Set array Elem
  9. Timer Group matched > Target Array
    10.Index = Foreachloop index
    11.Item = Random Int in Range. Min = 0, Max = Length of array (timer amount) minus 1
  10. Completed exec pin>Set timer
    Object:self
    Function Name: MovePlatforms
    Time=SumNum
    Looping:True
  11. Delay node
    Duration = MovePlatforms Timer (Time) value
  12. Set Timer Node
    Object:Self
    Function Name: MoveBack
    Time: MovePlatforms Timer (Time) value
    Looping: True
  13. Custom Event: MovePlatforms
  14. ForEachLoop
    Array: Timer Group Matched
  15. Loop body exec pin> branch
    True if Array Element == Current Timer Group
  16. True Exec Pin>Cast to Platform
    Object Pin: Get Contained Platforms Array, index set to Foreachloop array index
  17. Call Function: MoveMe
  18. Completed exec pin>Set Current Timer Group
    Current Timer Group: Current Timer Group + 1
  19. Branch node
    Condition: Current Timer Group > Timer Amount Length minus 1
  20. True: Set Current Timer Group
    Current Timer Group: 0
  21. Custom Event: MoveBack
  22. Copy all steps from MovePlatforms function and paste them into MoveBack function
  23. Compile, save, close blueprints, place collision box in level, resize to fit multiple platforms
  24. Place multiple platforms in move box, event begin play.

&stc=1

&stc=1

&stc=1

&stc=1

&stc=1