Hey, I’m pretty sure it’s as simple as the title says, I remember having the issue when I tested on a very simple map and it’s still there, even on published islands.
Basically, if a player respawns using the Respawn() function, nobody can spectate him afterwards.
If the player was the last player from the opposite team, you can think that the team was eliminated and that the round should end even though there’s still someone alive.
If there’s no one valid to spectate (everybody was respawned through Respawn() function), the dead player’s camera will stay where the player died, leaving him unable to spectate anyone and being stuck as is untill the round ends.
@im_a_lama Thank you for your report! We would like to look into this further, would you be able to submit a bug report using the form available here? Fortnite Creative
Remade a whole new project to test this out, and it is as simple as that, you cannot spectate someone who’s been revived through the (Agent: agent).Respawn() function, here’s a video proof :
At the end of the video, it says “Spectating DummyShadow” but the camera stays in place
My island settings Spawn Limit is set to 1 and I’m reviving the other player via this script :
respawn_bug := class(creative_device):
@editable
AllTeamSetting : team_settings_and_inventory_device = team_settings_and_inventory_device{}
@editable
StayDeadButton : button_device = button_device{}
# Runs when the device is started in a running game
OnBegin<override>()<suspends>:void=
var AgentsToIgnore : [agent]logic = map{}
sync:
loop:
Agent := StayDeadButton.InteractedWithEvent.Await()
option{set AgentsToIgnore[Agent] = true}
loop:
Agent := AllTeamSetting.TeamMemberEliminatedEvent.Await()
if(not AgentsToIgnore[Agent]):
Sleep(4.0)
Agent.Respawn(vector3{}, IdentityRotation())
This is quite blocking since I have a 5min round island and people can stay on the ground for minutes without understanding what’s going on!
I doubt it but by any chance is allow spectating other teams unchecked in your island settings?
I’ve soon come to find out how much the Respawn() function isn’t acting like I thought it would. I’ve seen a post of yours showing a few problems with it. I have also noticed if I use the Respawn function to bring someone back that was eliminated(Is spectating), that person respawns with health and acts normally, however, the players name shows red on your hud and your teammates hud along with the red X by your health bar.
Is this function respawning the fort_character but not returning the player into the playspace? Not sure how the game works or even if I’m wording it right… lol
Yes you’re right the player also looks dead to the other party members in the party HUD
There are some other issues with this function but the only blocking one that I couldn’t work around is this one
Also, yes my players are able to spectate, I just didn’t show in the video
I should have clarified a little better. When I asked if the function is somehow respawning the fort_character but not returning the player into the playspace, I ment on epics end. Like somehow the character acts alive but in the server they are still dead(possibly just for that team). I dont think thats exactly what is happening because if I respawn a player with Respawn(), and then they are eliminated, they are not considered a spectator even tho they are. I tried calling on the player with IsSpectator() and it wasnt returning the player. I had to use( not IsActive())
I filed a bug on this same behavior - it seems to work fine when you have the number of respawns set higher but basically the code on epic’s end does not recognize a respawn via verse as an actual respawn.
they are not considered a spectator even tho they are. I tried calling on the player with IsSpectator() and it wasnt returning the player
@lxlxenigmaxlxl - good to know not IsActive() works. I too had problems with players “IsSpectating()” flag not returning the right thing. Interestingly, they still show up in other players “GetPlayersSpectating()” array. For my game, I was able to use this to do what I needed.
I dont know why i didnt think to try GetPlayersSpectating… I do believe Respawn is extremely bugged and not working how you would believe it to work. Maybe they will add the option to respawn players from a spawn pad and it will solve all my problems…
Thanks for this tip dude, I will definitly try to understand and then apply what you said because this was the longest sentence I ever red
Also, I don’t understand your problem, Verse Respawn() should not spawn your players on the last player but on the Location: vector3 you need to pass him right ?
Im also curious about this. I had the same idea and tried doing this with verse. Every time the player changed to the class with unlimited respawns and were killed, they were never respawned for some reason. Maybe i was missing something… hope it works. Ive completely given up on my maps using respawn from verse. Its just been to much of a work around on every aspect of it.
If you put a 1.0 sleep between the death and respawn does it still bug out?
I think what’s likely happening is that the playspace wants to initialize a new fortchar to the player agent but the previous fortchar gets reassigned to the value before it reinitializes.
Something I’d be curious to know is if you eliminate them again and then respawn normally does this behavior persist or does it only occur once?
Something I find odd about the function in and of itself is that it is the only Agent extension in a module called FortPlayerUtilities and the other 3 functions in there are actually player extensions. I wonder if this was originally meant to respawn AI and somehow got lumped in here. It just seems so out of place.