This, once at the start of the sleep state:
Pawn.SetCollision(false,false);
Pawn.Mesh.SetHasPhysicsAssetInstance(false);
Pawn.SetPhysics(Phys_none);
MyPawnClass.mesh.bNoSkeletonUpdate=true;
if (Pawn.base == none || (Pawn.base != none && !Pawn.base.isa(‘InterpActor’)) ) { Pawn.SetTickIsDisabled(TRUE); } //mantain the tick if the pawn is moving, for example, in a ship in other place of the map
Pawn.SetHidden(true);
Probably with the settickisdisabled and the sethidden is enough, but I use all for si acaso.
Also the state has this ignores:
ignores SeePlayer,NotifyPhysicsVolumeChange,NotifyLanded,NotifyHitWall,NotifyFallingHitWall,NotifyBump,CurrentLevelUnloaded,NotifyJumpApex,NotifyMissedJump,ReachedPreciseDestination,NotifyPathChanged,BeginAnimControl,SetAnimPosition,FinishAnimControl,PlayActorFaceFXAnim,StopActorFaceFXAnim,SetMorphWeight,SetSkelControlScale,PostBeginPlay,ReplicatedEvent,Possess,UnPossess,NotifyPostLanded,RatePickup,StopFiring,HearNoise,SeeMonster,EnemyNotVisible,SetupSpecialPathAbilities,MoveUnreachable,LongFall,MayFall,AllowDetourTo,MoverFinished,HandlePathObstruction,NotifyHeadVolumeChange,NotifyCoverAdjusted,IsSpectating,IsInCombat,InterpolationStarted,InterpolationFinished,SetTeam,touch,bump;