I’m not too sure about this, but I beleive it is because when you are loading the Animation, you are playing it as well. So when you are doing animLoaded:GetMarkerReachedSignal(animEvent):Connect(function()
you are actually doing model.Animator:LoadAnimation(animUnloaded):Play():GetMarkerReachedSignal(animEvent)
So when you were loading the animation with this line of code:
local animLoaded = model.Animator:LoadAnimation(animUnloaded):Play()
You actually were Playing the Animation as well… You can’t actually use :GetMarkerReachedSignal() after :Play(). In the future when loading and playing an Animation, try and use two separate lines to load and play. It helps save confusion like this!