GetMarkerReachedSignal doesn't work on server started animation

i’m making a combat system and for whatever reason my animationtrack stopped responding to animation markers
it just randomly stopped working and i honestly have no idea why
it tried uploading the animation as a different id, but still no dice


i added this test marker, which also doesn’t get triggered

image
also there is this marker which is supposed to remove the weld but it also doesn’t get triggered

this is from the module script that runs the hit logic. it’s started from a server context

function movelist.SimpleGrab(attacker, victim)	
	if attacker:FindFirstChild("IsLocked").Value == true or victim:FindFirstChild("IsLocked").Value == true then return end
	attacker:FindFirstChild("IsLocked").Value = true
	victim:FindFirstChild("IsLocked").Value = true
	
	local folder = movelist.Lookup("SimpleGrab")
	
	-- maybe just ragdoll here
	local attackerHum = attacker:FindFirstChild("Humanoid")
	local victimHum = victim:FindFirstChild("Humanoid")	
	
	attackerHum.AutoRotate = false
	
	local attackerAnim:Animator = attackerHum:FindFirstChildWhichIsA("Animator")
	for i,v in pairs(attackerAnim:GetPlayingAnimationTracks()) do
		v:Stop()
	end
	
	local attackerTrack:AnimationTrack = attackerAnim:LoadAnimation(folder:FindFirstChild("AnimationConnect"))
	
--	local victimTrack = victimHum:FindFirstChildWhichIsA("Animator"):LoadAnimation(folder:FindFirstChild("AnimationConnect"))
	--attacker:FindFirstChild("Humanoid"):LoadAnimation(folder:FindFirstChild("AnimationVictim").Value)
	
	local weld = Instance.new("RigidConstraint")
	weld.Attachment0 = attacker["Right Arm"].RightGripAttachment
	weld.Attachment1 = victim:FindFirstChild("Left Arm"):FindFirstChild("LeftGripAttachment")
	weld.Enabled = true
	weld.Parent = attacker
	
	local victimHRP = victim:FindFirstChild("HumanoidRootPart")
	victimHRP.Massless = true		
	victimHum:ChangeState(Enum.HumanoidStateType.Ragdoll)
	
	print("before") -- this gets printed
	
	attackerTrack:Play() -- this animation plays
	
	attackerTrack:GetMarkerReachedSignal("RemoveWeld"):Connect(function()
                -- none of this runs
		print("hallo")
		weld.Enabled = false
		attacker:FindFirstChild("IsLocked").Value = false
		victim:FindFirstChild("IsLocked").Value = false

		victimHRP.Massless = false
		victimHRP.AssemblyLinearVelocity = (attacker:FindFirstChild("Right Arm").CFrame * CFrame.Angles(math.rad(-100), math.rad(30), 0)).LookVector * 150
		DestructionState(victim, attacker.HumanoidRootPart.Position, 2, 0)

		attackerHum.AutoRotate = true

		weld:Destroy()
	end)
	
        -- tried this and also doesn't run
	attackerTrack:GetMarkerReachedSignal("ShoveCamera"):Connect(function(str:string)
		game.ReplicatedStorage.Events.RemoteShoveCamera:FireClient(game.Players:GetPlayerFromCharacter(attacker), str)
	end)
	
	attackerTrack:GetMarkerReachedSignal("test"):Connect(function()
		print("test") -- doesn't get printed
	end)
	
	print("after")  -- this also get printed
	

--	victimTrack:Play()
end

Best few things I can suggest to debug this since no one else has replied is:

Try restarting studio.
Try with a smaller animation or a simpler one. - to see if its your code instead of animation
Make sure names / variables are spelt correctly.

I don’t do animations so that’s the best advice I got.
Best of luck nonetheless.

it still doesn’t work after trying that
i mean i can probably just try to move this to a localscript, but the whole point of making this in a modulescript was to have all the code in one place
thanks though

I would try opening the animation in roblox’s built in animation editor and seeing whether the name of the event is consistent with what you’re looking for in the script since it is still running through the code.

If not, try importing the animation that’s being used, and check if that events name is the same.