Skip to content
TECHNICALLYARTIST
FAB

Resource Actors

Two components live on the world side of the loop: the Resource Component marks something as harvestable, and the Extracted Resource Component makes the hauled result behave once it lands.

Add this to anything a minion should harvest (a tree, a rock pile, an ore vein). It is a sphere collision component, so it doubles as the trigger volume the minion overlaps to start extracting.

PropertyMeaningDefault
Resource TagWhat this actor provides. A minion only harvests it when its order’s Resource Tag matches.none
Extractions RemainingHow many times it can be harvested before it is used up.3
Extract Time In SecondsHow long a single harvest takes.4

The Resource Component details with Resource Tag, Extractions Remaining, Extract Time in Seconds, and the collision Sphere Radius

  • A minion overlaps the sphere, then begins a timed extraction lasting Extract Time In Seconds.
  • When the timer finishes, Extractions Remaining drops by one.
  • When it reaches 0, the owning actor is destroyed (the resource is gone).
  • Make the sphere bigger than the mesh. The minion has to overlap the sphere with its capsule to harvest; if the sphere is tucked inside the mesh, the minion arrives but never starts. This is the number-one cause of a minion standing around doing nothing.
  • Let it overlap the Pawn channel. Use a collision profile that generates overlaps with pawns.
  • Enable Replicates on the actor. Extractions Remaining is a replicated property and the actor removes itself from a replicated callback; if the actor does not replicate, clients never see it get used up or disappear.

The Resource Component's collision sphere drawn larger than the tree mesh in the viewport

Add this to the actor that spawns into the minion’s hand and gets carried home (the “extracted” resource, for example a log or a stone). It has no properties to set; it exists to make the dropped resource behave.

The carried resource Blueprint with a static mesh and an Extracted Resource Component

When the minion drops the resource, this component re-enables the carried mesh’s collision so the pile is solid, but tells it to ignore the Pawn channel so a freshly dropped pile never shoves the minion that is walking through it. It wires this up automatically by binding to the Gatherer’s On Dropped Actor event the moment the actor is spawned.

  • The actor needs a Static Mesh component for the collision handling to take effect on drop.
  • Manage the mesh’s collision while it is being carried so it does not fight the minion: NoCollision, or query-only ignoring the Pawn channel, works well. The drop handler restores a solid query-and-physics response afterward.