The Ultimate Guide to Accolades: How to Pay Players in XP (Without Breaking the Bank)
Unverified — this example may not compile as-is.
The Verse code below did not pass our automated compile check, so it isn't marked verified and is hidden from the guide listing. The explanation may still be useful, but treat the code as a draft and adapt it before use.
The Ultimate Guide to Accolades: How to Pay Players in XP (Without Breaking the Bank)
So, you want your Fortnite island to feel rewarding. You want players to grind, to win, to feel that sweet dopamine hit of leveling up. But here’s the hard truth: if you just put a "Level Up" button next to a kill zone, nobody’s going to care. Players need proof of their effort. They need achievements. They need Accolades.
In this tutorial, we’re going to build a system that automatically awards Battle Pass XP when players complete specific tasks—like eliminating a certain number of enemies or collecting loot. We’ll use the Accolades device, the unsung hero of UEFN that turns "good job" into "here’s 500 XP."
What You'll Learn
- What an Accolade actually is (and why players can’t touch it directly).
- How to link the Accolades device to other devices like Trackers and Creature Managers.
- How to set up a "Kill 5 Enemies" challenge that actually pays out.
- Why memory usage matters (spoiler: Accolades are cheap).
How It Works
Think of the Accolades device as the Battle Pass Manager of your island. It doesn’t do the heavy lifting itself. It doesn’t spawn enemies, it doesn’t count kills, and it doesn’t move props. Its only job is to hold the "reward" and hand it out when the right conditions are met.
Here is the golden rule of Accolades: Players cannot interact with it directly.
You can’t walk up to an Accolades device and press "E" to get XP. It’s invisible to the player’s input. Instead, it waits for a signal from other devices. Imagine it like a scoreboard in a sports game. The scoreboard doesn’t play the game; it just updates when the referee (your logic/devices) tells it to.
The "Chain Reaction" Logic
To award XP, you need a chain of events:
- The Action: A player does something (e.g., eliminates a creature).
- The Counter: A Tracker device counts that action.
- The Signal: When the Tracker hits a specific number (e.g., 5), it sends a signal on a specific Channel.
- The Reward: The Accolades device is listening on that Channel. When it hears the signal, it checks if the player has already earned this accolade. If not, it awards the XP.
Why Use Verse?
You might be thinking, "Can’t I just do this with the visual editor?" Yes, you can. But Verse gives you precision. It lets you define exactly what happens when the signal fires, handle multiple accolades cleanly, and avoid the spaghetti-code mess of connecting fifty wires in the editor. Plus, it’s the future. If you’re building for UE6, you’re writing Verse. Let’s get comfortable with it now.
Let's Build It
We’re going to build a simple "Slayer Challenge." When a player eliminates 3 "Ice Fiends" (creatures), they get an Accolade worth XP.
Step 1: The Setup (Visual Editor)
Before we write code, we need our props in place.
- Spawn Creatures: Place a Creature Manager and spawn some "Ice Fiend" creatures.
- Track the Kills: Place a Tracker device.
- Set the Target to "Eliminate Creatures."
- Set the Creature Type to "Ice Fiend."
- Set the Goal to 3.
- The Reward: Place an Accolades device.
- Name it "Slayer of Ice."
- Set the XP Amount to 500 (or whatever you think is fair).
Step 2: The Verse Code
Now, we connect the dots. We’ll write a script that listens to the Tracker and tells the Accolades device to pay up.
# Import the necessary Fortnite devices
using { /Fortnite.com/Devices }
# Define our main device type.
# This acts as the "brain" that connects the Tracker and Accolades.
SlayerChallenge := class(creative_device):
# These are references to the devices we placed in the editor.
# Think of these as "wires" we’ll connect in the editor.
Tracker: tracker_device = tracker_device{}
Accolades: accolades_device = accolades_device{}
# This function runs when the game starts.
OnBegin<override>()<suspends>: void=
# We need to listen for when the Tracker hits its goal.
# The Tracker emits an event called 'GoalReached' on a specific channel.
# We'll use Channel 1 for this challenge.
# Subscribe to the Tracker's GoalReached event.
# When the tracker hits 3 kills, this lambda (anonymous function) runs.
Tracker.GoalReached.Subscribe(
func(player: player, channel: int): void=
# Check if the signal came from our specific channel (Channel 1)
if channel == 1:
# Award the accolade to the player who triggered it.
# This is where the XP gets handed out.
Accolades.Award(player, "Slayer of Ice")
)
Walkthrough: What Just Happened?
using { /Fortnite.com/Devices }: This is like unlocking the toolbox. It tells Verse, "Hey, I want to use Fortnite-specific devices like Trackers and Accolades."TrackerandAccoladesvariables: These are references. In game terms, they’re like remote controls. We haven’t programmed the remote yet; we just said, "This remote controls the TV (Accolades)" and "This remote controls the VCR (Tracker)." In the UEFN editor, you’ll drag and drop your actual devices into these slots.OnBegin: This is the Spawn Point for our code. It runs once when the island starts.Tracker.GoalReached.Subscribe: This is the most important part. It’s like setting a Storm Timer. The Storm Timer doesn’t do damage until the timer hits zero. Here, we’re saying, "Don’t do anything until the Tracker hits its goal."Accolades.Award(player, "Slayer of Ice"): This is the Loot Drop. When the condition is met, we drop the reward into the player’s inventory (in the form of XP).
Try It Yourself
Ready to level up your island? Here’s your challenge:
The Challenge: Create a "Loot Goblin" accolade. When a player picks up 10 Gold Bars, they should earn an accolade worth 200 XP.
Hint:
- Use a Tracker device set to "Collect Items" (Gold Bars).
- Set the Tracker goal to 10.
- Connect the Tracker’s output channel to the Accolades device in your Verse code.
- Make sure the Accolades device is named something funny, like "Goblin Mode: Activated."
Don’t forget: In the editor, you need to connect the Tracker’s output channel to the Accolades device’s input channel, or the signal won’t travel!
Recap
- Accolades are the XP reward system. They don’t do the work; they just pay out.
- Trackers count the work (kills, items, time).
- Verse connects them. You listen for the Tracker’s signal and tell the Accolades to
Award()XP. - Players can’t interact with Accolades directly. They earn them through actions.
Now go forth and make your island so rewarding, players will grind it for XP even if the loot is terrible. (Just kidding, the loot should be good too.)
References
- https://dev.epicgames.com/documentation/en-us/fortnite/using-accolades-devices-in-fortnite-creative
- https://dev.epicgames.com/documentation/en-us/fortnite-creative/using-accolades-devices-in-fortnite-creative
- https://dev.epicgames.com/documentation/en-us/uefn/verse-api/fortnitedotcom/devices/accolades_device
- https://dev.epicgames.com/documentation/en-us/fortnite/accolades-device-gameplay-examples-in-fortnite-creative
- https://dev.epicgames.com/documentation/en-us/fortnite-creative/accolades-device-gameplay-examples-in-fortnite-creative
Verse source files
- 01-device.verse · device
Turn this into a guided course
Add using-accolades-devices-in-fortnite-creative to your free study plan — we'll suggest related pages and stitch the lot into one compile-checked, self-guided lesson with worked examples and quizzes.
References
Original tutorial generated by Verse Island from the Verse/UEFN knowledge base, with references to the Epic Games sources above. Code is validated against the knowledge base.