Plugins

Introduction

EOS Achievements is a Blueprint-first plugin for Unreal Engine 5.4+ that integrates Epic Online Services Achievements into your game — authentication, progress tracking, unlock, and real-time listeners included.
EOS ACHIEVEMENTS (FAB Listing)

Overview

EOS Achievements is an Unreal Engine plugin that gives you a clean, Blueprint-first integration of Epic Online Services (EOS) Achievements — without writing any C++ or dealing with the raw EOS SDK.

It handles the full flow:

  • EOS initialization (auto-detect OnlineSubsystemEOS or create its own handle)
  • Epic Account authentication (Auth Login with persistent token, fallback support)
  • Product User identity (Connect Login required by EOS for game services)
  • Querying achievements (definitions + player progress in one node)
  • Unlocking achievements (direct unlock or via linked stat ingest)
  • Real-time unlock listener (fire Blueprint events when the player unlocks an achievement live)

Requirements

Engine versionUE 5.4 and above
PlatformsWindows, Mac (Editor & Standalone)
EOS AccountEpic Developer Portal project with Achievements configured

Plugin Architecture

The plugin is split into two modules:

ModuleRole
EOSCoreAchievementsCore subsystem — EOS init, Auth Login, Connect Login, identity
EOSAchievementsAchievement-specific nodes — Query, Unlock, Listener

The central object is UEOSCoreSubsystem, a GameInstanceSubsystem that lives for the entire game session and holds the EOS platform handle, the Epic Account ID, and the Product User ID.


Blueprint Flow (Overview)

InitializeEOS
     │
     ▼
EOS Auth Login (Epic Account)
     │ OnSuccess
     ▼
EOS Connect Login (ProductUserId)
     │ OnSuccess
     ▼
EOS Query Achievements ──────────────► Display achievements list in UI
     │ OnSuccess
     ▼
EOS Unlock Achievement ──────────────► Trigger on game event
     │ OnSuccess
     ▼
EOS Start Achievements Unlocked Listener ── OnUnlocked ──► Show unlock popup

Each step is an async Blueprint node — no manual callback wiring required.


What This Plugin Solves

The raw EOS SDK requires:

  • Manual EOS_Initialize / EOS_Platform_Create calls
  • Managing two separate login steps (Auth + Connect)
  • Calling QueryDefinitions and QueryPlayerAchievements separately and merging results
  • Handling EOS_InvalidUser (new player creation) silently
  • Manually ticking the EOS platform handle

EOS Achievements abstracts all of this. You get clean async nodes that just work.


Dependencies

The following Unreal Engine plugins must be enabled in your .uproject:

  • OnlineSubsystem
  • OnlineSubsystemUtils

OnlineSubsystemEOS is optional — if active, the plugin borrows its EOS handle automatically. If not, the plugin creates its own from DefaultEngine.ini.


  1. Setup — configure your EOS credentials and .ini
  2. Functions — reference for every Blueprint node
  3. Example Project — a step-by-step integration walkthrough

Need Help?

Join the community Discord:

Join the Discord

When asking for support, include:

  • Unreal Engine version
  • Plugin version
  • Your platform (Editor / Windows / etc.)
  • Logs or screenshots of the issue