Hey!đź‘‹ ubyte.dev just recently launched. It's dedicated towards Unreal Engine 5.

Warning: Undefined array key "page" in /home/u831815985/domains/ubyte.dev/public_html/wp-content/plugins/code-snippets/php/snippet-ops.php(582) : eval()'d code on line 24
Portions of the materials used are trademarks and/or copyrighted works of Epic Games, Inc. All rights reserved by Epic. This material is not official and is not endorsed by Epic.
Documentation
Unreal Engine 5.0

Unreal Engine 5.0

title placeholder

About

While this framework doesn’t necessarily mandate a certain implementation pattern, it’s still written with a strong preconceived philosophy of how things (pure virtual functions) should be dealt with internally. That’s separately included inside a section labeled 'Recommended'.

From a high-level perspective, IGenericAgentActivityWorker is a native-only interface embodying simple logic execution, termination, and result handling of individual agents in a world.

Each IGenericAgentActivityWorker can begin/end an FAgentActivity, which represent a performable task only agents can perform.

Recommended

The logic it executes compliments its relative responsibility down the world-crowd-agent chain by solely being focused on how each activity is actually performed, without being aware of any motive behind it.

IGenericCrowdActivityWorker listens to the result of each AgentActivity (and its new desired AgentActivityPriority), and uses that as guidance when deciding what AgentActivity an agent should perform next.

IGenericCrowdActivityWorker only receives a thin encapsulated summary of how an AgentActivity went, and never dwells in any agent activity implementation whatsoever.

AgentActivityCognition

Each IGenericAgentActivityWorker has its own Scoped/Persistent AgentActivityCognition tags, which are just GameplayTags mapped to the "AgentActivityCognition" base category.

Recommended

ubyte.dev endorses creating GameplayConcepts extending AgentActivityCognition that:

  1. Explicitly specify which problem they solve. Example: WorkerStrategyGameplayConcept (included by default) introduces a filtered variant of AgentActivityCognition called AgentActivityStrategy. This concept mandates that these always dynamically influence the underlying implementation of an AgentActivity (as its name implies).
  2. Explicitly manage their blueprint exposure. Example: WorkerStrategyGameplayConcept introduces BlueprintCallable methods for adding/removing AgentActivityStrategy tags. While this concept is pretty simple, any other concept might require additional encapsulation and/or properties before truly being exposed to the blueprint surface.

Blueprints should never be able to add/remove unencapsulated Cognition tags. It's only permitted through blueprint-exposed concepts that extend Cognition (e.g. Strategy).

cross linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram