Why does the game always draws?

I do not know if this is a new glitch or I’m doin something wrong but my game draws everytime the last person is alive

If I had a dollar for every time I heard this complaint…I would be very Rich. Number one complaint I see all over the internet. Question is asked constantly in Discord, Reddit. Epic when you gonna fix this?

1 Like

Thank you for your report! Can you please re-post using the “New Issue” option on the Issues and Bug Reporting forums? Posts with this feature are connected directly into our development team so we can quickly get to them!
For more information, such as how to get the reference ID, please check out the article here: Using the Creative and UEFN Bug Reporting Form

The end game device is a workaround when it’s used to end round

1 Like

For me, when I used end game device with player counter to end the game… It still ends in a draw (Maybe I’m doing something wrong). But they did fix “last man standing” because it works now. But whenever I use “last man standing” setting to end game, I always get a draw as well. I also noticed that If I use score or elimination to end the game, It works properly with a clear winner. The draw bug only appears with “last man standing” setting (Also happened with end game device but there is a possibility that I didn’t configure it properly to get a clear winner).

1 Like

How is your Island Settings for
Round Win Condition, is it set to Time Alive ?
with Time Alive Start Point - Round Start

in the island where it always draws, there is no win condition. I simply used player counter to send a signal when player count is 1 and that will trigger the end game device to end game with the last player as the instigator.

Did you ever figure this out? I tried everything I could, all the devices but it simply won’t not end in a draw

I had the AI just write me a script that acted as a last man standing. I edited it to take care of players joining and leaving.

using { /Fortnite.com/Devices }
using { /Fortnite.com/Characters }
using { /Verse.org/Simulation }
using { /Fortnite.com/Playspaces }
using { /Fortnite.com/Game }
using { /Fortnite.com/FortPlayerUtilities }
 
brawl_round_manager := class(creative_device):
 
    @editable
    EndGameDevice : end_game_device = end_game_device{}
 
    var AlivePlayers : []player = array{}
    var RoundWinner : ?player = false
 
    OnBegin<override>()<suspends>:void =
        InitializeRoundState()
        GetPlayspace().PlayerAddedEvent().Subscribe(OnPlayerJoin)
        GetPlayspace().PlayerRemovedEvent().Subscribe(OnPlayerLeave)
 
    InitializeRoundState():void =
        Participants := GetPlayspace().GetParticipants()
        var Players : []player = array{}
        for (Agent : Participants, Player := player[Agent], not Player.IsSpectator[]):
            set Players += array{Player}
        set AlivePlayers = Players
        for (Player : AlivePlayers, Character := Player.GetFortCharacter[]):
            Character.EliminatedEvent().Subscribe(OnPlayerEliminated)
 
    OnPlayerJoin(Agent:player):void =
        if (not Agent.IsSpectator[]):
            set AlivePlayers += array{Agent}
            if (Character := Agent.GetFortCharacter[]):
                Character.EliminatedEvent().Subscribe(OnPlayerEliminated)
 
    OnPlayerLeave(Agent:player):void =
        var NewAlive : []player = array{}
        for (Player : AlivePlayers, Player <> Agent):
            set NewAlive += array{Player}
        set AlivePlayers = NewAlive
        CheckRoundEnd()
 
    OnPlayerEliminated(Result:elimination_result):void =
        if (EliminatedChar := Result.EliminatedCharacter, EliminatedAgent := EliminatedChar.GetAgent[]):
            if (EliminatedPlayer := player[EliminatedAgent]):
                var NewAlive : []player = array{}
                for (Player : AlivePlayers, Player <> EliminatedPlayer):
                    set NewAlive += array{Player}
                set AlivePlayers = NewAlive
                CheckRoundEnd()
 
    CheckRoundEnd():void =
        if (AlivePlayers.Length = 1):
            if (Winner := AlivePlayers[0]):
                set RoundWinner = option{Winner}
                EndRound(Winner)
 
    EndRound(Winner:player):void =
        EndGameDevice.Activate(Winner)