Guys, here is the fix for getting stuck right before the Butcher.
	
	
	
		Code:
	
	
		<!-- Butcher -->
	<ToggleTargeting questId="1" combat="True" looting="True" lootRadius="40" killRadius="30" />
	<If condition="IsActiveQuestStep(36) and (Me.IsInTown)"> 
		<UseWaypoint questId="1" x="2980.667" y="2834.59" z="24.90045" actorId="223757" waypointNumber="14" />
		<WaitTimer questId="1" waitTime="1000" /> 
	</If>
	<If condition="IsActiveQuestStep(36) and ZetaDia.CurrentWorldId == 58982">
		<ExploreArea boxTolerance="0.5" boxSize="10" until="ExitFound" exitNameHash="1241437688" />
		<UseObject questId="1" actorId="176001" isPortal="True" destinationWorldId="87707" />
	</If>
	<MoveTo questId="1" name="Cursed Hold" pathPrecision="10" x="213.6774" y="263.5981" z="-25.15802" />
	<UseObject questId="1" actorId="176001" isPortal="True" destinationWorldId="94676" x="213.6774" y="263.5981" z="-25.15802" />
	<WaitTimer questId="1" waitTime="3000" /> 
	<If condition="ZetaDia.CurrentWorldId == 94676">
		<MoveTo questId="1" x="242.8607" y="600.8318" z="0.1000001" name="CH #1" pathPrecision="1" />
		<MoveTo questId="1" x="244.4669" y="464.6767" z="0.1" name="CH #2" pathPrecision="1" />
		<MoveTo questId="1" x="244.9081" y="243.9179" z="0.1000001" name="CH #3" pathPrecision="1" />
		<MoveTo questId="1" x="476.0362" y="242.7303" z="0.1" name="CH #4" pathPrecision="1" />
		<MoveTo questId="1" x="477.2295" y="482.4334" z="0.09999988" name="CH #5" pathPrecision="1" />
		<MoveTo questId="1" x="477.802" y="724.2344" z="0.09999996" name="CH #6" pathPrecision="1" />
		<MoveTo questId="1" x="479.0203" y="961.919" z="0.1" name="CH #7" pathPrecision="1" />
		<MoveTo questId="1" x="359.6146" y="963.184" z="0.1" name="CH #8" pathPrecision="1" />
		<MoveTo questId="1" x="242.7725" y="952.6222" z="0.1" name="CH #9" pathPrecision="1" />
		<MoveTo questId="1" x="242.595" y="716.2607" z="0.1000001" name="CH #10" pathPrecision="1" />
		<MoveTo questId="1" x="359.6436" y="712.381" z="0.1000001" name="CH #11" pathPrecision="1" />
		<MoveTo questId="1" x="361.9736" y="601.6431" z="0.1000001" name="CH #12" pathPrecision="1" />
		<MoveTo questId="1" x="515.6844" y="581.8513" z="0.1000001" name="CH #13" pathPrecision="1" />
		<MoveTo questId="1" x="519.7835" y="644.3128" z="0.1000001" name="CH #14" pathPrecision="1" />
		<MoveTo questId="1" x="674.3" y="640.891" z="0.09999999" name="CH #15" pathPrecision="1" />
		[B]<MoveTo questId="1" x="680.195" y="577.9349" z="0.1000001" name="CH #16" pathPrecision="1" />[/B]
		[B]<MoveTo questId="1" x="616.9235" y="580.7195" z="0.1" name="CH #17" pathPrecision="1" />
		<MoveTo questId="1" x="576.1166" y="576.9247" z="-29.00819" name="CH #18" pathPrecision="1" />
		<MoveTo questId="1" x="541.5632" y="580.5383" z="-49.87576" name="CH #19" pathPrecision="1" />[/B]
		<UseObject questId="72801" stepId="36" actorId="175999" isPortal="True" destinationWorldId="58983" x="541.0331" y="583.2349" z="-49.85939" />
		<WaitTimer questId="72801" stepId="36" waitTime="5000" /> 
	</If>
	<If condition="IsActiveQuestStep(36) and ZetaDia.CurrentWorldId == 58983">
		<ExploreArea boxTolerance="0.6" boxSize="9" until="ExitFound" exitNameHash="356899046" />
		<UseObject questId="1" actorId="158944" isPortal="True" destinationWorldId="78839" />
		<WaitTimer questId="1" waitTime="2000" />
	</If>
	<If condition="IsActiveQuestStep(7) and ZetaDia.CurrentWorldId == 78839">
		<WaitTimer questId="1" waitTime="1000" />
		<SkipCutscene questId="1" />
		<ToggleTargeting questId="1" combat="True" looting="True" lootRadius="90" killRadius="90" />
		<MoveTo questId="1" pathPrecision="1" x="113.3629" y="163.0687" z="0.100001" name="Cross" />
		<MoveTo questId="1" pathPrecision="1" x="155.3759" y="102.0206" z="0.1000011" name="Cross" />
	</If>
	<If condition="IsActiveQuestStep(41) and ZetaDia.CurrentWorldId == 78839">
		<UseObject questId="72801" stepId="41" actorId="175999" isPortal="True" destinationWorldId="135713" x="40.74231" y="41.23431" z="0.1" />
	</If>
	<If condition="IsActiveQuestStep(41) and ZetaDia.CurrentWorldId == 135713">
		<UseTownPortal questId="1" />
	</If>
	 
 
The problem is here in the original code:
	
	
	
		Code:
	
	
		<!-- Butcher -->
	<ToggleTargeting questId="1" combat="True" looting="True" lootRadius="40" killRadius="30" />
	<If condition="IsActiveQuestStep(36) and (Me.IsInTown)"> 
		<UseWaypoint questId="1" x="2980.667" y="2834.59" z="24.90045" actorId="223757" waypointNumber="14" />
		<WaitTimer questId="1" waitTime="1000" /> 
	</If>
	<If condition="IsActiveQuestStep(36) and ZetaDia.CurrentWorldId == 58982">
		<ExploreArea boxTolerance="0.5" boxSize="10" until="ExitFound" exitNameHash="1241437688" />
		<UseObject questId="1" actorId="176001" isPortal="True" destinationWorldId="87707" />
	</If>
	<MoveTo questId="1" name="Cursed Hold" pathPrecision="10" x="213.6774" y="263.5981" z="-25.15802" />
	<UseObject questId="1" actorId="176001" isPortal="True" destinationWorldId="94676" x="213.6774" y="263.5981" z="-25.15802" />
	<WaitTimer questId="1" waitTime="3000" /> 
	<If condition="ZetaDia.CurrentWorldId == 94676">
		<MoveTo questId="1" x="242.8607" y="600.8318" z="0.1000001" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="244.4669" y="464.6767" z="0.1" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="244.9081" y="243.9179" z="0.1000001" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="476.0362" y="242.7303" z="0.1" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="477.2295" y="482.4334" z="0.09999988" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="477.802" y="724.2344" z="0.09999996" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="479.0203" y="961.919" z="0.1" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="359.6146" y="963.184" z="0.1" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="242.7725" y="952.6222" z="0.1" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="242.595" y="716.2607" z="0.1000001" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="359.6436" y="712.381" z="0.1000001" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="361.9736" y="601.6431" z="0.1000001" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="515.6844" y="581.8513" z="0.1000001" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="519.7835" y="644.3128" z="0.1000001" name="CH #" pathPrecision="1" />
[B]		<MoveTo questId="1" x="674.3" y="640.891" z="0.09999999" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="666.7053" y="581.5468" z="0.1" name="CH #" pathPrecision="1" />
		<MoveTo questId="1" x="615.6891" y="584.2549" z="0.1000001" name="CH #" pathPrecision="1" />[/B]
		<UseObject questId="72801" stepId="36" actorId="175999" isPortal="True" destinationWorldId="58983" x="541.0331" y="583.2349" z="-49.85939" />
		<WaitTimer questId="72801" stepId="36" waitTime="5000" /> 
	</If>
	<If condition="IsActiveQuestStep(36) and ZetaDia.CurrentWorldId == 58983">
		<ExploreArea boxTolerance="0.6" boxSize="9" until="ExitFound" exitNameHash="356899046" />
		<UseObject questId="1" actorId="158944" isPortal="True" destinationWorldId="78839" />
		<WaitTimer questId="1" waitTime="2000" />
	</If>
	<If condition="IsActiveQuestStep(7) and ZetaDia.CurrentWorldId == 78839">
		<WaitTimer questId="1" waitTime="1000" />
		<SkipCutscene questId="1" />
		<ToggleTargeting questId="1" combat="True" looting="True" lootRadius="90" killRadius="90" />
		<MoveTo questId="1" pathPrecision="1" x="113.3629" y="163.0687" z="0.100001" name="Cross" />
		<MoveTo questId="1" pathPrecision="1" x="155.3759" y="102.0206" z="0.1000011" name="Cross" />
	</If>
	<If condition="IsActiveQuestStep(41) and ZetaDia.CurrentWorldId == 78839">
		<UseObject questId="72801" stepId="41" actorId="175999" isPortal="True" destinationWorldId="135713" x="40.74231" y="41.23431" z="0.1" />
	</If>
	<If condition="IsActiveQuestStep(41) and ZetaDia.CurrentWorldId == 135713">
		<UseTownPortal questId="1" />
	</If>
	 
 
What those 3 bolded lines do is take you to the top of the stairs and then it will wrap back around and try to enter from the top of the stairs.
I added 4 lines of code to ensure that you stop right before the doorway (CH #16), walk through the doorway (CH #17), to the middle of the stairs (CH #18) and then right to the portal (CH #19). You can verify the change in elevation down the stairs because the z coordinates gets negative.
I'm posting it here and giving you the new .xml file.
All code is owner of Radonic and he gets the props for making this.
Oh, Radonic - I also added the CH #s because for some reason they were not filled out.