The Skilled Interaction Device (Multiplayer) room in the Minigame Mastery template is all about teamwork. The room focuses on how to approach the new multiplayer aspects of the Skilled Interaction device to unlock new types of quick time events (QTE).
Add the pressure to teams through synchronous skill checks or put the pressure on a random teammate.
Skilled Interaction Device
You can configure multiplayer for the Skilled Interaction device in the Queue category of the device options. There are three multiplayer event types to choose from: Synchronous, Random, and Sequential. Activating one of the Queue Event Types enables multiplayer.
Queue Event | Description |
Synchronous | Plays the skill check for all players at the same time.This can put the most pressure on a group. You can set how many successes are required to pass the event. For example, setting it so that all participants must pass. This can get players to seek out skilled teammates. |
Random | Plays the skill check for one random player. This skill check is useful for adding in a bit of pressure to a random player in the queue. |
Sequential | Plays the same skill check one at a time in the order players joined. Useful for relay-based gameplay. Everyone in a line must succeed, perhaps to pass a hot potato from player to player, or a ball from player to player before reaching a goal. |
Multiplayer works around a queue system. If there is no room for that round, players are placed in a queue based on the order that they join. You can set the queue limit with the Maximum Queued Players option. If there are no active players at the call for interaction then the player skips to the interaction instead of joining a queue.
The device is available for all Fortnite islands in Creative and UEFN, but is especially useful for Squid Game islands.
In the template, you can find the device in the Content Drawer, under All > Fortnite > Devices > UI. To learn more about the device, see Using Skilled Interaction Devices.
Gameplay
In the mini-game, two teams take part in a versus match. The goal is to hit all their QTEs and not fall into the lava. The pressure is on: each team member must successfully complete their QTEs to avoid the floor falling out from beneath the full team. Teamwork matters, and so does who you have chosen for your team.
The template includes two levels for different room setups. One uses only devices, and the other incorporates Verse. The level with _Verse appended to the end of the level name includes the Verse example. To see how the two levels compare, see the Verse Level section on this page.
Device-Only Level
Devices Used
Volume x 1
Trigger x 2
Timer x 9
Button x 3
Player Counter x 11
Cinematic Sequence x 10
Teleporter x 8
Barrier x 8
VFX Spawner x 1
Damage Volume x 1
Both towers have the same setup. Pressing the Button device at the top of either stairs adds the player to the tower. To officially start the event, the Button device in the tower must be pressed. This second toggle triggers the following:
The multiplayer QTE event starts for all players.
Answer enough before the time runs out to stay safe.
After a successful skill check another one appears.
If time runs out or there are too many wrong answers, the floor moves via the Cinematic Sequence device, dropping you to the next platform.
The cycle repeats until a team is in the lava.
Each floor in the tower includes a skill check, creating opportunity for teams to catch up.
Verse Level
The Verse level for the room has the same gameplay but different setup for the flow of triggering the quick time event. Added to the device list is the custom qte_game_device and qte_tower_device Verse devices.
In the device-only level, two triggers control the flow of the game: QTE Game Started Trigger and QTE Game Ended Trigger. They send signals to other devices that should for example reset the state of each tower after the game concludes.
Each floor in the tower uses its own device of a certain type, so that the connected events can control the progress of the game. Failure on the current floor triggers devices placed one floor below:
The Cinematic Sequence device plays the animation of hiding the floor.
The Timer device waits a few seconds before triggering the Player Counter device, giving players time to fall down.
The Player Counter device detects players on the floor, and starts the Skilled Interaction device for them at the same time.
The Skilled Interaction device controls the multiplayer QTE.
This failure process repeats for each floor until a team reaches the lava. Above the lava, there’s a volume detecting if the team has lost the game.
With the Verse level, the number of devices is reduced. The flow of the game is controlled by qte_game_device and each tower has its own qte_tower_device. This setup helps improve the following:
There is only one Skilled Interaction device per tower. This is because the handling of QTE success and failure events for the different floors is implemented in the code.
There is only one Timer device per tower, which is used to delay the start of the Skilled Interaction device after a player falls to the next floor.
The Player Counter device for each floor and the Volume device near lava to detect when a team has lost the game are removed. The number of floors in the tower and how many are left to the lava is tracked in the Verse code. This information is used to control the game's flow.
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
# Multiplayer QTEs game logic
qte_game_device := class(creative_device):
# Timer that allows us to react to the end game with a small time offset
@editable
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
# Tower logic - a part of multiplayer QTEs game
qte_tower_device := class(creative_device):
# Button at the top of the tower - starts multiplayer QTEs game for all towers registered in the game's device
@editable
Design Tips
Below are additional design considerations:
Use synchronous to design games like tug of war, skipping games, or dodging an incoming boulder as a team.
Think of ways to provide opportunities for teams to sabotage one another. They may sacrifice a player who lacks the skills for the quick time event to attack the opposing team.
Avoid using UI colors that clash, and try to make it clear what type of queue event is happening. You can add extra text to the Skilled Interaction device, or use onboarding text to provide players with an overview of the game.
Use Verse to register players into a Random queue while they’re doing something else to surprise them.
For failed skill checks you can spawn enemies as a consequence.
The
qte_game_devicewaits for one tower to fail and ends the game. You can modify it to count towers that failed, and end the game when there’s just one left. This would allow more towers to participate in the game.You can use Scene Graph for
qte_tower_deviceto generate a tower of any height, with each floor being an instance of a prefab.Streamline the floor animation. Currently, the mesh of each floor is referenced by a level sequence asset, which is referenced by a separate Sequence device. This setup affects each floor’s position absolutely, so moving towers in the scene would require updating all level sequence assets as well. By using different methods, it should be possible to use a single set of animations (fewer assets) and apply them automatically to any floor placed anywhere in the scene.