Last Salvation
Technologies Used
Game Info
Gallery
Official trailer showcasing the fantasy ARPG environments and combat
The core architectural challenge in Last Salvation was making blockchain interactions feel native to the game loop. Cryptographic signing and network round-trips to the Aptos consensus layer are inherently blocking operations. Running them on the Unreal Engine game thread would cause visible frame hitches every time a player activates an NFT ability or triggers a loot transaction.
The solution was the MP_Aptos plugin, which wraps all Aptos SDK calls inside UE5 async task graph workers. When a game event triggers a blockchain action (e.g., ability activation, loot drop, marketplace transaction), the game thread posts the request to a background worker and immediately continues the simulation. The worker handles the signing, REST call, and JSON parsing. Results are marshaled back to the game thread via multicast delegates, triggering the corresponding gameplay response (ability activation, item grant, etc.) on the next tick after consensus.
The GAS (Gameplay Ability System) layer owns all combat mechanics. Core abilities (attacks, dodges, skill trees) are purely local and never touch the blockchain. On-chain actions are a separate layer applied on top of GAS: they modify ability parameters or grant cosmetic effects after consensus confirms. This ensures competitive integrity, since the baseline game works identically whether a player is connected to the blockchain or not.
The project was built on the Lyra Framework rather than a custom GAS setup, which provided a production-grade multiplayer foundation (EOS integration, replication graphs, server-authoritative game state) without rebuilding it from scratch.
Gameplay
Core Mechanics
Game Modes
Difficulty
Key Features
Async multithreaded Aptos SDK wrapper: all cryptographic signing on background task graph workers
GAS-managed core combat, blockchain actions layered on top (no competitive interference)
Lyra Framework base providing EOS multiplayer, replication graphs, and server-authoritative state
Motion Matching for fluid combat animation without hand-keyed transition graphs
On-chain NFT skill trading and cosmetic system with fast-finality Aptos transactions
Node.js + PostgreSQL backend for matchmaking, leaderboards, and off-chain player state
Architectural Implementation
Non-Blocking Blockchain Integration via Async Task Graph
All Aptos SDK calls (wallet init, transaction signing, REST API requests) are dispatched to UE5 async task graph background threads. The game thread posts a work item and continues simulation. On task completion, results are marshaled back via thread-safe delegates. This keeps the game thread decoupled from network consensus latency, maintaining 60+ FPS during heavy on-chain activity.
GAS + Blockchain Separation of Concerns
Core combat is entirely GAS-driven with no blockchain dependency. Abilities activate immediately on the game thread through standard GAS gameplay effect application. Blockchain actions (NFT ability skin application, on-chain loot recording) execute as async post-effects after GAS handles the gameplay logic. A player without a blockchain wallet experiences identical core gameplay to one with full NFT integration.
Lyra Framework Multiplayer Foundation
Rather than building replication graphs and EOS session management from scratch, Last Salvation extends Lyra. This provides FastArray serialization for inventory, a production-grade replication graph for spatial interest management, and EOS session handling. Custom C++ was layered on top for the blockchain bridge, GAS ability extensions, and the PostgreSQL matchmaking backend.
Outcomes
3,000+ NFT mints through community engagement campaigns
Official recognition and grant support from the Aptos ecosystem
10K+ Twitter/X following built through community-focused development
60+ FPS sustained during active blockchain transactions confirmed on test hardware