The Scoreboard Scam: How to Rig Your Fortnite Island with Verse
Tutorial beginner

The Scoreboard Scam: How to Rig Your Fortnite Island with Verse

Updated beginner

The Scoreboard Scam: How to Rig Your Fortnite Island with Verse

So, you want to build a competitive island where the leaderboards actually mean something? Or maybe you just want to prank your friends by giving them 9999 points for tripping over a rock. Either way, you’re going to need to talk to the Score Manager Device.

In Fortnite Creative, the Score Manager is the invisible accountant of your island. It tracks who has done what, and how much "clout" (points) they’ve earned. But here’s the catch: by default, it just awards 1 point for every activation. That’s boring. That’s like getting 1 XP for killing a boss. We’re going to change that.

In this tutorial, we’re going to use Verse to make a Rigged Loot Box. When a player opens it, they won’t just get random loot; they’ll get a score that depends on who opens it. We’ll teach you how to look at a player’s current score, decide what they should get, and then hand it out.

What You'll Learn

  • Variables (int): Think of these like a player’s health bar or shield count—a number that changes during the game.
  • Functions: Think of these like a specific game mechanic or device action (e.g., "Open Chest" or "Activate Trap").
  • The Score Manager: The device that tracks points, similar to the in-game HUD leaderboard.
  • Logic Flow: How to check a value, make a decision, and update that value.

How It Works

Imagine you’re playing a match. You have a health bar. That’s a variable. It starts at 100. If you get hit by a shotgun, it drops to 50. If you use a medkit, it goes back up.

In Verse, we use variables to store numbers. The most common one for scores is int (short for integer, which just means a whole number like 5, 10, or 100, but not 10.5).

Now, imagine you have a Trap. When a player steps on it, the trap activates. That’s a function (or a method, if you want to sound fancy). The trap doesn’t just "exist"; it does something when triggered.

The Score Manager Device is like the game’s central database. It has a few key buttons:

  1. GetCurrentScore: Looks at a specific player (called an agent in Verse) and tells you their current points.
  2. SetScoreAward: Tells the device, "Hey, the next time this thing activates, don’t give 1 point. Give it [X] points."
  3. GetScoreAward: Checks what points are currently set to be awarded next.

We’re going to combine these. We’ll create a device that checks a player’s score. If they have less than 50 points, we’ll give them a "bonus" of 50 points to catch them up. If they already have 50 or more, we’ll give them a "penalty" of 10 points because they’re doing too well. It’s a pity party for the poor and a tax for the rich.

Let's Build It

First, place a Score Manager Device in your island. Let’s call it MyScoreBoard.

Next, place a Trigger Volume (or a Prop Mover set to "When Activated") that will act as our "Rigged Loot Box." When a player enters, we want Verse to run some code.

Here is the Verse code. Copy this into a Verse Script attached to your Trigger Volume.

# First, we need to tell Verse where to find the Score Manager tools.
# Think of this like loading the "Creative Kit" into your inventory.
using { /Fortnite.com/Devices }

# This is our main script. It's like the blueprint for our rigged box.
rigged_loot_box := class(creative_actor):
    # We need a reference to the Score Manager device.
    # Think of this as plugging a cable from our box to the scoreboard.
    score_manager: ScoreManagerDevice = create(ScoreManagerDevice)

    # This is the "OnBegin" function. It runs once when the game starts.
    # It’s like the "Loading Screen" phase where the game sets up the rules.
    OnBegin<override>()<sided>:void=
        # For now, we just start. In a real game, you might set initial scores here.

    # This function runs when the trigger is activated (when a player steps in).
    # 'player' is the person who stepped on the mat.
    OnTriggered<override>(player: agent):void=
        # Step 1: Check the player's current score.
        # Think of this like looking at your own scoreboard before a match ends.
        current_points := score_manager.GetCurrentScore(player)

        # Step 2: Make a decision based on that number.
        # If they have less than 50 points...
        if (current_points < 50):
            # ...set the next activation to award 50 points.
            # This is like saying, "Give them a pity bonus."
            score_manager.SetScoreAward(50)
        else:
            # ...otherwise, set it to award 10 points.
            # This is like a "rich tax."
            score_manager.SetScoreAward(10)

        # Step 3: Actually award the points.
        # The SetScoreAward above just *prepares* the points.
        # We need to trigger the score manager to hand them out.
        # We do this by activating the score manager itself.
        score_manager.Activate()

        # Optional: Give them a weapon or item too, for fun.
        # player.GiveItem(creative_item) # You'd need to define creative_item

Walkthrough: What Just Happened?

  1. using { /Fortnite.com/Devices }: This line is crucial. It’s like unlocking the "Advanced Creative" menu. Without it, Verse doesn’t know what a ScoreManagerDevice is. It’s like trying to build a wall without having the wall piece in your inventory.
  2. score_manager: ScoreManagerDevice: This is a variable that holds a reference to the device. It’s not the score itself; it’s the controller for the score.
  3. GetCurrentScore(player): This function asks the Score Manager, "How many points does this specific player have?" It returns an int (a whole number).
  4. if (current_points < 50): This is logic. It’s the game mechanic of "If this happens, do that." It’s exactly like a trap that only activates if a player is within 10 meters.
  5. SetScoreAward(50): This doesn’t give points immediately. It sets the value for the next time the device is activated. It’s like loading a magazine with 50 bullets before you fire.
  6. score_manager.Activate(): This is the trigger. It tells the Score Manager, "Okay, hand out the points we just set." Without this, the points stay in limbo, like a loot drop that hasn’t spawned yet.

Try It Yourself

You’ve got the basics. Now, let’s make it more chaotic.

Challenge: Modify the script so that if a player’s score is exactly 50, they get 0 points (a "bust"). If it’s above 50, they get 20 points. If it’s below 50, they get 10 points.

Hint: You’ll need to add another else if statement. In Verse, it looks like this:

Don’t forget to test it! Spawn in, get some points, and then step on the trigger to see if the math works.

Recap

  • Variables store changing numbers (like scores).
  • Functions are actions you take (like checking a score or setting an award).
  • Score Manager is the device that handles points.
  • SetScoreAward prepares the points, but Activate() actually hands them out.

Now go forth and rig your leaderboards. Just don’t get caught cheating in ranked.

References

  • https://dev.epicgames.com/documentation/en-us/fortnite/verse-api/fortnitedotcom/devices/score_manager_device/getscoreaward
  • https://dev.epicgames.com/documentation/fortnite/verse-api/fortnitedotcom/devices/score_manager_device/getscoreaward
  • https://dev.epicgames.com/documentation/en-us/fortnite/verse-api/fortnitedotcom/devices/score_manager_device/setscoreaward
  • https://dev.epicgames.com/documentation/fortnite/verse-api/fortnitedotcom/devices/score_manager_device/getcurrentscore
  • https://dev.epicgames.com/documentation/fortnite/verse-api/fortnitedotcom/devices/score_manager_device/setscoreaward

Get the complete code — free

You've read the full walkthrough. The complete, copy-paste-ready Verse solution is free for members — sign in to unlock it.

Free with your BrainDead.TV / BrainDeadGuild Discord account. The walkthrough above is always free.

Verse source files

Turn this into a guided course

Add getscoreaward 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.

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.

Comments

    Sign in to vote, comment, or suggest an edit. Sign in