Skip to product information
1 of 4

Mystery System

Mystery System

Regular price $149.00 USD
Regular price Sale price $149.00 USD
Sale Sold out
Shipping calculated at checkout.
Save/bookmark this page link/url for future downloads of files. You can also access file by login to your account.

Downloadable files along with this product

    No files to download


    Details

        With this Mystery System innocents must work together to identify and eliminate the Impostor before time expires, while the Impostor stalks the shadows, picking off targets one by one. The Detective holds the key to victory—tracking down the Impostor without mistakenly turning on the innocent. Whether you’re crafting tense hide-and-seek showdowns or pulse-pounding shooter arenas, this system delivers the perfect framework for an unforgettable experience.

        Perfect for: creating social-deduction, hide-and-seek, or detective-style maps in UEFN & Fortnite Creative.

        As seen on:

        Anime Murder Mystery (7792-2440-8617)

        by tikuxhaka 

        Fortnite.GG Link


        Role Assignment

        At the start of each round, players receive a random role. Each role comes with custom items.

        Map Voting

        Let players choose the next arena or scenario:

        • Displays a voting UI with map thumbnails and titles
        • Collects and tallies votes in real time
        • Automatically teleports players to the winning map when voting ends

        HUD Configuration

        Dynamic on-screen feedback for every phase:

        • Role indicators and timers
        • Vote counts and results

        Verse Persistence for Saving Data

        Player data is saved and restored per session via Verse Persistence utilities:

        • Games Played
        • Wins
        • Games Played As Detective
        • Games Played As Impostor
        • Wins As Detective
        • Wins As Impostor
        • Eliminations As Impostor

        Debug Billboards

        The mystery_debug_manager.verse provides console commands and Billboard editables to visualize player data after each round.

        Easy to Extend

        Add new maps or extend game mechanics with clean, modular code. Hook into events exposed by public functions and Trigger Devices that activate on specific events.

        Project Outline

        Content/
        ├── CoreModule/
        │   ├── agent_spawner_manager.verse
        │   ├── custom_tick.verse
        │   ├── game_manager.verse
        │   └── utilities.verse
        ├── MapVotingModule/
        │   ├── Materials/
        │   │   ├── M_VoteOptionIcon.uasset
        │   │   └── MI_VoteOptionIcon.uasset
        │   ├── Scripts/
        │   │   ├── custom_map.verse
        │   │   ├── map_voting_widget.verse
        │   │   ├── utilities.verse
        │   │   ├── verse_ui_custom_map.verse
        │   │   ├── verse_ui_map_vote_manager.verse
        │   │   ├── voting_option_custom_map.verse
        │   │   └── voting_option_map_vote_manager.verse
        │   ├── Textures/
        │   │   ├── dice_1.uasset
        │   │   ├── dice_2.uasset
        │   │   ├── dice_3.uasset
        │   │   ├── option_1.uasset
        │   │   ├── option_2.uasset
        │   │   └── option_3.uasset
        │   └── Widgets/
        │       ├── UW_Alert.uasset
        │       ├── UW_DetectiveWins.uasset
        │       ├── UW_HeroWins.uasset
        │       ├── UW_ImpostorWins.uasset
        │       ├── UW_InnocentsWin.uasset
        │       ├── UW_MapVoting.uasset
        │       ├── UW_Mystery.uasset
        │       ├── UW_VoteCard.uasset
        │       ├── UW_YouAreDetective.uasset
        │       ├── UW_YouAreImpostor.uasset
        │       └── UW_YouAreInnocent.uasset
        ├── MysterySystemModule/
        │   └── Scripts/
        │       ├── custom_types.verse
        │       ├── hud_configuration.verse
        │       ├── mystery_debug_manager.verse
        │       ├── mystery_manager.verse
        │       ├── mystery_widget.verse
        │       ├── roles_manager.verse
        │       └── utilities.verse
        ├── ParticipantsModule/
        │   └── utilities.verse
        ├── UIModule/
        │   ├── Textures/
        │   │   ├── arrow_basic_e_small.uasset
        │   │   ├── arrow_basic_e.uasset
        │   │   ├── arrow_basic_n_small.uasset
        │   │   ├── arrow_basic_n.uasset
        │   │   ├── arrow_basic_s_small.uasset
        │   │   ├── arrow_basic_s.uasset
        │   │   ├── arrow_basic_w_small.uasset
        │   │   ├── arrow_basic_w.uasset
        │   │   ├── arrow_decorative_e_small.uasset
        │   │   ├── arrow_decorative_e.uasset
        │   │   ├── arrow_decorative_n_small.uasset
        │   │   ├── arrow_decorative_n.uasset
        │   │   ├── arrow_decorative_s_small.uasset
        │   │   ├── arrow_decorative_s.uasset
        │   │   ├── arrow_decorative_w_small.uasset
        │   │   ├── arrow_decorative_w.uasset
        │   │   ├── button_rectangle_border.uasset
        │   │   ├── button_rectangle_depth_border.uasset
        │   │   ├── button_rectangle_depth_flat.uasset
        │   │   ├── button_rectangle_depth_gloss.uasset
        │   │   ├── button_rectangle_depth_gradient.uasset
        │   │   ├── button_rectangle_depth_line.uasset
        │   │   ├── button_rectangle_flat.uasset
        │   │   ├── button_rectangle_gloss.uasset
        │   │   ├── button_rectangle_gradient.uasset
        │   │   ├── button_rectangle_line.uasset
        │   │   ├── button_round_border.uasset
        │   │   ├── button_round_depth_border.uasset
        │   │   ├── button_round_depth_flat.uasset
        │   │   ├── button_round_depth_gloss.uasset
        │   │   ├── button_round_depth_gradient.uasset
        │   │   ├── button_round_depth_line.uasset
        │   │   ├── button_round_flat.uasset
        │   │   ├── button_round_gloss.uasset
        │   │   ├── button_round_gradient.uasset
        │   │   ├── button_round_line.uasset
        │   │   ├── button_square_border.uasset
        │   │   ├── button_square_depth_border.uasset
        │   │   ├── button_square_depth_flat.uasset
        │   │   ├── button_square_depth_gloss.uasset
        │   │   ├── button_square_depth_gradient.uasset
        │   │   ├── button_square_depth_line.uasset
        │   │   ├── button_square_flat.uasset
        │   │   ├── button_square_gloss.uasset
        │   │   ├── button_square_gradient.uasset
        │   │   ├── button_square_line.uasset
        │   │   ├── check_round_color.uasset
        │   │   ├── check_round_grey_circle.uasset
        │   │   ├── check_round_grey.uasset
        │   │   ├── check_round_round_circle.uasset
        │   │   ├── check_square_color_checkmark.uasset
        │   │   ├── check_square_color_cross.uasset
        │   │   ├── check_square_color_square.uasset
        │   │   ├── check_square_color.uasset
        │   │   ├── check_square_grey_checkmark.uasset
        │   │   ├── check_square_grey_cross.uasset
        │   │   ├── check_square_grey_square.uasset
        │   │   ├── check_square_grey.uasset
        │   │   ├── icon_checkmark.uasset
        │   │   ├── icon_circle.uasset
        │   │   ├── icon_cross.uasset
        │   │   ├── icon_outline_checkmark.uasset
        │   │   ├── icon_outline_circle.uasset
        │   │   ├── icon_outline_cross.uasset
        │   │   ├── icon_outline_square.uasset
        │   │   ├── icon_square.uasset
        │   │   ├── slide_hangle.uasset
        │   │   ├── slide_horizontal_color_section_wide.uasset
        │   │   ├── slide_horizontal_color_section.uasset
        │   │   ├── slide_horizontal_color.uasset
        │   │   ├── slide_horizontal_grey_section_wide.uasset
        │   │   ├── slide_horizontal_grey_section.uasset
        │   │   ├── slide_horizontal_grey.uasset
        │   │   ├── slide_vertical_color_section_wide.uasset
        │   │   ├── slide_vertical_color_section.uasset
        │   │   ├── slide_vertical_color.uasset
        │   │   ├── slide_vertical_grey_section_wide.uasset
        │   │   ├── slide_vertical_grey_section.uasset
        │   │   ├── slide_vertical_grey.uasset
        │   │   ├── star_outline_depth.uasset
        │   │   ├── star_outline.uasset
        │   │   └── star.uasset
        │   ├── Widgets/
        │   │   ├── UW_Button.uasset
        │   │   ├── WBP_ButtonLoud.uasset
        │   │   ├── WBP_ButtonRegular.uasset
        │   │   └── WBP_CloseButton.uasset
        │   └── utilities.verse
        ├── VersePersistenceModule/
        │   ├── mystery_system_persistence.verse
        │   └── utilities.verse
        ├── CHANGELOG.md
        └── modules.verse
        
        

        Frequently Asked Questions

        What kind of game does the Mystery System run?

        A round-based social deduction game. Players are secretly given roles, Innocents, one Detective and one Impostor, each with its own class and items. A timer runs and the round ends when one side wins, with role reveals and win screens shown as on-screen widgets.

        How many players does it need?

        Three by default, set by Min Players, and it keeps retrying until enough players have joined. A testing toggle lets you run rounds alone while building.

        Is map voting included?

        Yes. Players vote on the next map before each round from an on-screen widget, and a trigger can reopen the vote for a player who closed it.

        What can I change without code?

        Minimum and maximum round length, delays between rounds, how long alerts and win screens stay up, whether a new Detective is assigned when the old one is eliminated, whether the Detective is punished for eliminating an Innocent, and the items each role receives.

        Does it need UEFN?

        Yes. Roles use Class and Team Selector devices and the interface is UMG widgets driven by Verse.

        NOTE: Level design is not included—this package provides the code and logic system only. The code is sold as is. Updates to the code and bug fixes can be obtained but aren't guaranteed.

        View full details

        Join our server!

        Get support, ask questions or suggest ideas for new code!