fort_vehicle_seat.SetOccupant fails if agent is already seated

Summary

fort_vehicle_seat.SetOccupant fails if agent/player is already seated in a different seat, both in the same vehicle or in other vehicles.

Please select what you are reporting on:

Verse

What Type of Bug are you experiencing?

Other

Steps to Reproduce

  1. Enter a vehicle
  2. Attempt to use SetOccupant

Expected Result

player/agent is moved to the seat SetOccupant was called on

Observed Result

SetOccupant fails

Platform(s)

windows

Upload an image

Additional Notes

Test script used


using. /Verse.org/Simulation
using. /Verse.org/SceneGraph
using. /Verse.org/Random

using. /Fortnite.com/Devices
using. /Fortnite.com/Vehicles
using. /Fortnite.com/Characters
using. /Fortnite.com/Playspaces

test_seats is class(creative_device):

    @editable
    TaxiSpawner : vehicle_spawner_taxi_device = vehicle_spawner_taxi_device{}

    AwaitVehicle()<suspends>:fort_vehicle=loop:
        if(Out is TaxiSpawner.Vehicle?). return Out
        Sleep of 0.0

    (In:fort_playspace).AwaitPlayer()<suspends>:player=loop:
        if(Out is In.GetPlayers()[0]). return Out
        Sleep of 0.0

    OnBegin<override>()<suspends>:void=
        Playspace is GetPlayspace()
        Player is Playspace.AwaitPlayer()
        Vehicle is AwaitVehicle()
        Seats is Vehicle.GetSeats()

        loop:
            if:
                RandSeat is Seats at GetRandomInt(0,Seats.Length-1)
                RandSeat.SetOccupant at option. Player
            then:
                Print of "Seated player."
            else:
                Print of "Failed to seat player!"
                
            Sleep of 1.0

The status of FORT-1152403 changed to ‘Needs Triage’. We are routing this to the appropriate team for investigation.