Learn Programming with Unreal Engine

Gameplay code, and the editor work that surrounds it.

Gameplay programming, in C++ and in Blueprint, plus the editor work that surrounds it.

Some of these posts are about systems that ship inside the game: ability instancing policies, gameplay tags as state, streaming levels in at runtime ( the GAS ones also live together in the Gameplay Ability System hub, with an introduction to the whole plugin ). Others are about the editor itself, which is where a surprising amount of time quietly goes. Component visualizers let you draw your own debug shapes in the viewport, custom class icons make a content browser full of assets readable, and a plugin gives your code a module of its own.

None of it assumes a big team. Most of it started as a problem I hit on a project and then wrote down so I would not have to solve it twice.

Understanding Entities and Fragments in Unreal Engine's Mass Framework

Understanding Entities and Fragments in Unreal Engine's Mass Framework

The entity handle in Mass is 8 bytes. Mass also stores the information needed to track the entity, plus its fragment data.
Dashes and Knockbacks with Root Motion Sources

Dashes and Knockbacks with Root Motion Sources

No root motion in the clip. The task builds the motion from plain numbers and hands it to the movement component, the animation is just cosmetic.
PlayMontageAndWait in GAS: Montage Replication

PlayMontageAndWait in GAS: Montage Replication

Montage_Play works on your screen and nowhere else. The ASC is the one that tells everybody else.
Building Souls-Style Input Buffering on Top of GAS

Building Souls-Style Input Buffering on Top of GAS

A buffered press is simply a struct, a gate tag and one drain function that an anim notify state calls.
MMCs and Executions in GAS: Count the Outputs, Not the Inputs

MMCs and Executions in GAS: Count the Outputs, Not the Inputs

If only one number changes you want an MMC, no matter how complex the formula. Only a hit that writes many attributes needs an execution.
Dodge i-Frames with GAS: Anim Notify Windows and Perfect Dodges

Dodge i-Frames with GAS: Anim Notify Windows and Perfect Dodges

The dodge ability grants no invulnerability at all. A notify on the montage does it, and you get perfect dodges almost for free.
Hitbox Rank and Group: Sweetspots Without Scripting

Hitbox Rank and Group: Sweetspots Without Scripting

A sweetspot is simply one extra capsule and one integer. How rank and group IDs decide which hitbox wins.
Unreal Engine Gameplay Ability System (GAS): Introduction

Unreal Engine Gameplay Ability System (GAS): Introduction

The six pieces of GAS, how one attack flows through them, and three rules that prevent most GAS bugs.
GiveAbilityAndActivateOnce: One-Shot Abilities Without the Cleanup

GiveAbilityAndActivateOnce: One-Shot Abilities Without the Cleanup

Grant an ability, activate it once, and let GAS remove the spec by itself.
UE5 Level Instances: Loading Levels in Blueprint and C++

UE5 Level Instances: Loading Levels in Blueprint and C++

Create the Procedural World of your Dreams
Learning about Ability Instancing Policy in GAS

Learning about Ability Instancing Policy in GAS

So many instancing types!
I Made a Steam Game in 60 Hours with Unreal Blueprints

I Made a Steam Game in 60 Hours with Unreal Blueprints

The Power of Blueprints for fast iteration
Gameplay Effect Duration in GAS: Policies and Period

Gameplay Effect Duration in GAS: Policies and Period

Instant vs Has Duration vs Infinite
How to create an Unreal Engine Plugin: A Step-By-Step Guide with Examples

How to create an Unreal Engine Plugin: A Step-By-Step Guide with Examples

Roll your own Unreal Engine plugin, module and all.
Unreal Engine Component Visualizers: FComponentVisualizer

Unreal Engine Component Visualizers: FComponentVisualizer

Learn how to improve in-editor debugging and speed-up your development.
Customize your Unreal Class Icons

Customize your Unreal Class Icons

Make Unreal Engine look fabulous!
Unreal GAS Documentation: Guides, Talks and Source Code

Unreal GAS Documentation: Guides, Talks and Source Code

Unreal Gameplay Ability System is not well documented. Here are some useful resources for GAS.
UE5 Gameplay Tags: Store and Query Game State

UE5 Gameplay Tags: Store and Query Game State

Storing state in Gameplay Tags makes it easier to store state and create interesting gameplay