This may be fixed, just verify with repro steps below.
To repro:
In single process, client net mode, L_Small_1v1Player start PIE
Repeatedly switching teams quickly. It can take ~30 times of trying until error happens.
Error:
[2024.05.06-07.37.39:190][676]LogMass: Error: [FMassArchetypeData::BatchSetFragmentValues] Trying to set fragment values for a fragment type that is not part of the archetype. Ignoring. FragmentType: MassMoveTargetFragment, FirstEntity: [i: 3 sn: 3], EntityRangeLength: 1
Call stack:
> FMassArchetypeData::BatchSetFragmentValues(EntityCollection, Payload) C++
FMassEntityManager::BatchAddFragmentInstancesForEntities(EntityCollections, FragmentsAffected) C++
FMassCommandAddFragmentInstances<...>::Execute(System) C++
FMassCommandBuffer::Flush(EntityManager) C++
FMassEntityManager::FlushCommands(InCommandBuffer) C++
FMassCharacterUtils::UpdateMassTagsForCharacterPossessionByAI(EntityManager, LogOwner, Entity, bShouldAddMoveTargetFragment, NewMoveTargetCenter, NewMoveTargetForward) C++
AMassCharacter::UpdateMassTagsForCharacterPossessionByAI(EntityManager, Entity, bShouldAddMoveTargetFragment) C++
AMassCharacter::MulticastUpdateMassAgentSyncTagsForCharacterPossessionByAI_Implementation() C++
UFunction::Invoke(Obj, Stack, Z_Param__Result) C++
UObject::ProcessEvent(Function, Parms) C++
AActor::ProcessEvent(Function, Parameters) C++
UPossessSoldierEntity_AsyncAction::UnPossessControlledSoldier(UnPossessingController, bIsFromGameOver) C++
AProjectM_PlayerController::ServerRequestTeamChange_Implementation() C++
UFunction::Invoke(Obj, Stack, Z_Param__Result) C++
UObject::ProcessEvent(Function, Parms) C++
AActor::ProcessEvent(Function, Parameters) C++
FObjectReplicator::ReceivedRPC(Reader, RepFlags, FieldCache, bCanDelayRPC, bOutDelayRPC, UnmappedGuids) C++
FObjectReplicator::ReceivedBunch(Bunch, RepFlags, bHasRepLayout, bOutHasUnmapped) C++
UActorChannel::ProcessBunch(Bunch) C++
UActorChannel::ReceivedBunch(Bunch) C++
UChannel::ReceivedSequencedBunch(Bunch) C++
UChannel::ReceivedNextBunch(Bunch, bOutSkipAck) C++
UChannel::ReceivedRawBunch(Bunch, bOutSkipAck) C++
UNetConnection::DispatchPacket(Reader, PacketId, bOutSkipAck, bOutHasBunchErrors) C++
UNetConnection::ReceivedPacket(Reader, bIsReinjectedPacket, bDispatchPacket) C++
UNetConnection::ReceivedRawPacket(InData, Count) C++
UIpNetDriver::TickDispatch(DeltaTime) C++
UNetDriver::InternalTickDispatch(DeltaSeconds) C++
[Inline Frame] Invoke() C++
[Inline Frame] UE::Core::Private::Tuple::TTupleBase<...>::ApplyAfter() C++
TBaseUObjectMethodDelegateInstance<...>::ExecuteIfSafe(<...>) C++
[Inline Frame] TMulticastDelegateBase<...>::Broadcast() C++
TMulticastDelegate<...>::Broadcast(<...>) C++
UWorld::Tick(TickType, DeltaSeconds) C++
UEditorEngine::Tick(DeltaSeconds, bIdleMode) C++
UUnrealEdEngine::Tick(DeltaSeconds, bIdleMode) C++
FEngineLoop::Tick() C++
[Inline Frame] EngineTick() C++
GuardedMain(CmdLine) C++
LaunchWindowsStartup(hInInstance, hPrevInstance, __formal, nCmdShow, CmdLine) C++
WinMain(hInInstance, hPrevInstance, pCmdLine, nCmdShow) C++
[Inline Frame] invoke_main() C++
__scrt_common_main_seh() C++
00007ffa2544257d() Unknown
00007ffa26bcaa48() Unknown
This may be fixed, just verify with repro steps below.
To repro:
Error:
Call stack: